| /kernel/linux/linux-6.6/drivers/fsi/ |
| D | fsi-scom.c | 3 * SCOM FSI Client device driver 22 /* SCOM engine register set */ 47 /* SCOM address encodings */ 51 /* SCOM indirect stuff */ 145 static int put_indirect_scom_form0(struct scom_device *scom, uint64_t value, in put_indirect_scom_form0() argument 156 rc = __put_scom(scom, ind_data, ind_addr, status); in put_indirect_scom_form0() 160 rc = __get_scom(scom, &ind_data, addr, status); in put_indirect_scom_form0() 170 static int put_indirect_scom_form1(struct scom_device *scom, uint64_t value, in put_indirect_scom_form1() argument 180 return __put_scom(scom, ind_data, ind_addr, status); in put_indirect_scom_form1() 183 static int get_indirect_scom_form0(struct scom_device *scom, uint64_t *value, in get_indirect_scom_form0() argument [all …]
|
| D | i2cr-scom.c | 37 struct i2cr_scom *scom = filep->private_data; in i2cr_scom_read() local 44 ret = fsi_master_i2cr_read(scom->i2cr, (u32)*offset, &data); in i2cr_scom_read() 58 struct i2cr_scom *scom = filep->private_data; in i2cr_scom_write() local 69 ret = fsi_master_i2cr_write(scom->i2cr, (u32)*offset, data); in i2cr_scom_write() 87 struct i2cr_scom *scom; in i2cr_scom_probe() local 94 scom = devm_kzalloc(dev, sizeof(*scom), GFP_KERNEL); in i2cr_scom_probe() 95 if (!scom) in i2cr_scom_probe() 98 scom->i2cr = to_fsi_master_i2cr(fsi_dev->slave->master); in i2cr_scom_probe() 99 dev_set_drvdata(dev, scom); in i2cr_scom_probe() 101 scom->dev.type = &fsi_cdev_type; in i2cr_scom_probe() [all …]
|
| D | Kconfig | 71 that translates I2C commands to CFAM or SCOM operations, effectively 75 tristate "SCOM FSI client device driver" 77 This option enables an FSI based SCOM device driver. 98 tristate "IBM I2C Responder SCOM driver" 101 This option enables an I2C Responder based SCOM device driver. The 102 I2CR has the capability to directly perform SCOM operations instead
|
| D | Makefile | 9 obj-$(CONFIG_FSI_SCOM) += fsi-scom.o 12 obj-$(CONFIG_I2CR_SCOM) += i2cr-scom.o
|
| /kernel/linux/linux-5.10/drivers/fsi/ |
| D | fsi-scom.c | 3 * SCOM FSI Client device driver 21 /* SCOM engine register set */ 46 /* SCOM address encodings */ 50 /* SCOM indirect stuff */ 145 static int put_indirect_scom_form0(struct scom_device *scom, uint64_t value, in put_indirect_scom_form0() argument 156 rc = __put_scom(scom, ind_data, ind_addr, status); in put_indirect_scom_form0() 161 rc = __get_scom(scom, &ind_data, addr, status); in put_indirect_scom_form0() 175 static int put_indirect_scom_form1(struct scom_device *scom, uint64_t value, in put_indirect_scom_form1() argument 185 return __put_scom(scom, ind_data, ind_addr, status); in put_indirect_scom_form1() 188 static int get_indirect_scom_form0(struct scom_device *scom, uint64_t *value, in get_indirect_scom_form0() argument [all …]
|
| D | Kconfig | 66 tristate "SCOM FSI client device driver" 68 This option enables an FSI based SCOM device driver.
|
| D | Makefile | 8 obj-$(CONFIG_FSI_SCOM) += fsi-scom.o
|
| /kernel/linux/linux-6.6/arch/powerpc/platforms/powernv/ |
| D | opal-prd.c | 273 struct opal_prd_scom scom; in opal_prd_ioctl() local 286 rc = copy_from_user(&scom, (void __user *)param, sizeof(scom)); in opal_prd_ioctl() 290 scom.rc = opal_xscom_read(scom.chip, scom.addr, in opal_prd_ioctl() 291 (__be64 *)&scom.data); in opal_prd_ioctl() 292 scom.data = be64_to_cpu(scom.data); in opal_prd_ioctl() 294 scom.chip, scom.addr, scom.data, scom.rc); in opal_prd_ioctl() 296 rc = copy_to_user((void __user *)param, &scom, sizeof(scom)); in opal_prd_ioctl() 302 rc = copy_from_user(&scom, (void __user *)param, sizeof(scom)); in opal_prd_ioctl() 306 scom.rc = opal_xscom_write(scom.chip, scom.addr, scom.data); in opal_prd_ioctl() 308 scom.chip, scom.addr, scom.data, scom.rc); in opal_prd_ioctl() [all …]
|
| D | opal-xscom.c | 3 * PowerNV SCOM bus debugfs interface 197 root = debugfs_create_dir("scom", arch_debugfs_dir); in scom_debug_init() 202 for_each_node_with_property(dn, "scom-controller") { in scom_debug_init()
|
| D | Kconfig | 37 bool "Expose SCOM controllers via debugfs"
|
| /kernel/linux/linux-5.10/arch/powerpc/platforms/powernv/ |
| D | opal-prd.c | 269 struct opal_prd_scom scom; in opal_prd_ioctl() local 282 rc = copy_from_user(&scom, (void __user *)param, sizeof(scom)); in opal_prd_ioctl() 286 scom.rc = opal_xscom_read(scom.chip, scom.addr, in opal_prd_ioctl() 287 (__be64 *)&scom.data); in opal_prd_ioctl() 288 scom.data = be64_to_cpu(scom.data); in opal_prd_ioctl() 290 scom.chip, scom.addr, scom.data, scom.rc); in opal_prd_ioctl() 292 rc = copy_to_user((void __user *)param, &scom, sizeof(scom)); in opal_prd_ioctl() 298 rc = copy_from_user(&scom, (void __user *)param, sizeof(scom)); in opal_prd_ioctl() 302 scom.rc = opal_xscom_write(scom.chip, scom.addr, scom.data); in opal_prd_ioctl() 304 scom.chip, scom.addr, scom.data, scom.rc); in opal_prd_ioctl() [all …]
|
| D | opal-xscom.c | 3 * PowerNV SCOM bus debugfs interface 197 root = debugfs_create_dir("scom", powerpc_debugfs_root); in scom_debug_init() 202 for_each_node_with_property(dn, "scom-controller") { in scom_debug_init()
|
| D | Kconfig | 51 bool "Expose SCOM controllers via debugfs"
|
| /kernel/linux/linux-6.6/arch/arm/boot/dts/aspeed/ |
| D | ibm-power10-quad.dtsi | 19 scom100: scom@1000 { 20 compatible = "ibm,i2cr-scom"; 47 scom101: scom@1000 { 48 compatible = "ibm,i2cr-scom"; 75 scom110: scom@1000 { 76 compatible = "ibm,i2cr-scom"; 103 scom111: scom@1000 { 104 compatible = "ibm,i2cr-scom"; 131 scom112: scom@1000 { 132 compatible = "ibm,i2cr-scom"; [all …]
|
| D | aspeed-bmc-ibm-everest.dts | 2514 scom@1000 { 2542 scom500: scom@1000 { 2543 compatible = "ibm,i2cr-scom"; 2574 scom501: scom@1000 { 2575 compatible = "ibm,i2cr-scom"; 2606 scom510: scom@1000 { 2607 compatible = "ibm,i2cr-scom"; 2638 scom511: scom@1000 { 2639 compatible = "ibm,i2cr-scom"; 2670 scom512: scom@1000 { [all …]
|
| D | ibm-power9-dual.dtsi | 11 scom@1000 { 112 scom@1000 {
|
| /kernel/linux/linux-5.10/include/uapi/linux/ |
| D | fsi.h | 9 * /dev/scom "raw" ioctl interface 18 /* Structure for SCOM read/write */ 20 __u64 addr; /* SCOM address, supports indirect */ 21 __u64 data; /* SCOM data (in for write, out for read) */ 45 /* Flags for SCOM check */ 49 /* Flags for SCOM reset */
|
| /kernel/linux/linux-6.6/include/uapi/linux/ |
| D | fsi.h | 9 * /dev/scom "raw" ioctl interface 18 /* Structure for SCOM read/write */ 20 __u64 addr; /* SCOM address, supports indirect */ 21 __u64 data; /* SCOM data (in for write, out for read) */ 45 /* Flags for SCOM check */ 49 /* Flags for SCOM reset */
|
| /kernel/linux/linux-6.6/arch/powerpc/kernel/ |
| D | misc_64.S | 179 * SCOM access functions for 970 (FX only for now) 195 /* rotate 24 bits SCOM address 8 bits left and mask out it's low 8 bits 202 /* do the actual scom read */ 213 * the scom on any of the bogus CPUs yet, but may have to be done 229 /* rotate 24 bits SCOM address 8 bits left and mask out it's low 8 bits
|
| /kernel/linux/linux-5.10/arch/powerpc/kernel/ |
| D | misc_64.S | 200 * SCOM access functions for 970 (FX only for now) 216 /* rotate 24 bits SCOM address 8 bits left and mask out it's low 8 bits 223 /* do the actual scom read */ 234 * the scom on any of the bogus CPUs yet, but may have to be done 250 /* rotate 24 bits SCOM address 8 bits left and mask out it's low 8 bits
|
| /kernel/linux/linux-5.10/drivers/cpufreq/ |
| D | maple-cpufreq.c | 32 #define SCOM_PCR 0x0aa001 /* PCR scom addr */ 47 #define SCOM_PSR 0x408001 /* PSR scom addr */ 75 * SCOM based frequency switching for 970FX rev3
|
| /kernel/linux/linux-6.6/drivers/cpufreq/ |
| D | maple-cpufreq.c | 32 #define SCOM_PCR 0x0aa001 /* PCR scom addr */ 47 #define SCOM_PSR 0x408001 /* PSR scom addr */ 75 * SCOM based frequency switching for 970FX rev3
|
| D | pmac64-cpufreq.c | 38 #define SCOM_PCR 0x0aa001 /* PCR scom addr */ 53 #define SCOM_PSR 0x408001 /* PSR scom addr */ 145 * SCOM based frequency switching for 970FX rev3 444 freq_method = "SCOM"; in g5_neo2_cpufreq_init()
|
| /kernel/linux/linux-5.10/arch/arm/boot/dts/ |
| D | ibm-power9-dual.dtsi | 11 scom@1000 { 112 scom@1000 {
|
| /kernel/linux/linux-6.6/Documentation/devicetree/bindings/fsi/ |
| D | ibm,i2cr-fsi-master.yaml | 15 writes or SCOM operations, thereby acting as an FSI master.
|