/linux/drivers/fsi/ |
H A 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 …]
|
H A 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 …]
|
H A 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
|
H A D | Makefile | 9 obj-$(CONFIG_FSI_SCOM) += fsi-scom.o 12 obj-$(CONFIG_I2CR_SCOM) += i2cr-scom.o
|
/linux/arch/powerpc/platforms/powernv/ |
H A D | opal-prd.c | 275 struct opal_prd_scom scom; in opal_prd_ioctl() local 288 rc = copy_from_user(&scom, (void __user *)param, sizeof(scom)); in opal_prd_ioctl() 292 scom.rc = opal_xscom_read(scom.chip, scom.addr, in opal_prd_ioctl() 293 (__be64 *)&scom.data); in opal_prd_ioctl() 294 scom.data = be64_to_cpu(scom.data); in opal_prd_ioctl() 296 scom.chip, scom.addr, scom.data, scom.rc); in opal_prd_ioctl() 298 rc = copy_to_user((void __user *)param, &scom, sizeof(scom)); in opal_prd_ioctl() 304 rc = copy_from_user(&scom, (void __user *)param, sizeof(scom)); in opal_prd_ioctl() 308 scom.rc = opal_xscom_write(scom.chip, scom.addr, scom.data); in opal_prd_ioctl() 310 scom.chip, scom.addr, scom.data, scom.rc); in opal_prd_ioctl() [all …]
|
H A 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()
|
H A D | Kconfig | 37 bool "Expose SCOM controllers via debugfs"
|
H A D | opal-hmi.c | 211 "SCOM has set a reserved FIR bit to cause recovery", in print_hmi_event_info()
|
/linux/arch/arm/boot/dts/aspeed/ |
H A 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 …]
|
H A D | ibm-power11-quad.dtsi | 137 scom@1000 { 138 compatible = "ibm,p9-scom"; 165 scom100: scom@1000 { 166 compatible = "ibm,i2cr-scom"; 195 scom101: scom@1000 { 196 compatible = "ibm,i2cr-scom"; 225 scom110: scom@1000 { 226 compatible = "ibm,i2cr-scom"; 255 scom111: scom@1000 { 256 compatible = "ibm,i2cr-scom"; [all …]
|
H A D | aspeed-bmc-ibm-fuji.dts | 2475 scom@1000 { 2476 compatible = "ibm,p9-scom"; 2503 scom500: scom@1000 { 2504 compatible = "ibm,i2cr-scom"; 2533 scom501: scom@1000 { 2534 compatible = "ibm,i2cr-scom"; 2563 scom510: scom@1000 { 2564 compatible = "ibm,i2cr-scom"; 2593 scom511: scom@1000 { 2594 compatible = "ibm,i2cr-scom"; [all …]
|
H A D | aspeed-bmc-ibm-everest.dts | 2509 scom@1000 { 2537 scom500: scom@1000 { 2538 compatible = "ibm,i2cr-scom"; 2569 scom501: scom@1000 { 2570 compatible = "ibm,i2cr-scom"; 2601 scom510: scom@1000 { 2602 compatible = "ibm,i2cr-scom"; 2633 scom511: scom@1000 { 2634 compatible = "ibm,i2cr-scom"; 2665 scom512: scom@1000 { [all …]
|
H A D | ibm-power9-dual.dtsi | 11 scom@1000 { 112 scom@1000 {
|
H A D | aspeed-bmc-opp-tacoma.dts | 205 scom@1000 { 306 scom@1000 {
|
H A D | aspeed-bmc-opp-palmetto.dts | 360 scom@1000 {
|
/linux/Documentation/devicetree/bindings/fsi/ |
H A D | ibm,p9-scom.yaml | 4 $id: http://devicetree.org/schemas/fsi/ibm,p9-scom.yaml# 7 title: IBM FSI-attached SCOM engine 13 The SCOM engine is an interface to the POWER processor PIB (Pervasive 19 - ibm,p9-scom 20 - ibm,i2cr-scom 34 scom@1000 { 35 compatible = "ibm,p9-scom";
|
H A D | ibm,i2cr-fsi-master.yaml | 15 writes or SCOM operations, thereby acting as an FSI master.
|
/linux/include/uapi/linux/ |
H A 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 */
|
/linux/drivers/cpufreq/ |
H A 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()
|
/linux/Documentation/arch/powerpc/ |
H A D | imc.rst | 98 Trace mode, the 64 bit trace SCOM value is initialized with the event 99 information. The CPMCxSEL and CPMC_LOAD in the trace SCOM, specifies the event
|
/linux/drivers/hwmon/occ/ |
H A D | p8_i2c.c | 48 /* address is a scom address; bus-endian */ in p8_i2c_occ_getscom()
|
/linux/arch/powerpc/kernel/ |
H A D | mce_power.c | 686 * On specific SCOM read via MMIO we may get a machine check in mce_handle_ue_error() 688 * case OPAL may have recovery address to re-read SCOM data in in mce_handle_ue_error()
|
H A D | exceptions-64e.S | 1285 * avoid duplication, this code is also used in SCOM bringup of 1288 * into the new core via SCOM. That doesn't process branches, so there 1290 * ever takes any parameters, the SCOM code must also be updated to
|
H A D | head_64.S | 328 * as SCOM before entry).
|
/linux/arch/powerpc/include/asm/ |
H A D | reg.h | 852 #define SPRN_SCOMC 0x114 /* SCOM Access Control */ 853 #define SPRN_SCOMD 0x115 /* SCOM Access DATA */
|