1# SPDX-License-Identifier: GPL-2.0-only 2# 3# FSI subsystem 4# 5 6menuconfig FSI 7 tristate "FSI support" 8 depends on OF 9 select CRC4 10 help 11 FSI - the FRU Support Interface - is a simple bus for low-level 12 access to POWER-based hardware. 13 14if FSI 15 16config FSI_NEW_DEV_NODE 17 bool "Create '/dev/fsi' directory for char devices" 18 default n 19 help 20 This option causes char devices created for FSI devices to be 21 located under a common /dev/fsi/ directory. Set to N unless your 22 userspace has been updated to handle the new location. 23 24 Additionally, it also causes the char device names to be offset 25 by one so that chip 0 will have /dev/scom1 and chip1 /dev/scom2 26 to match old userspace expectations. 27 28 New userspace will use udev rules to generate predictable access 29 symlinks in /dev/fsi/by-path when this option is enabled. 30 31config FSI_MASTER_GPIO 32 tristate "GPIO-based FSI master" 33 depends on GPIOLIB 34 select CRC4 35 help 36 This option enables a FSI master driver using GPIO lines. 37 38config FSI_MASTER_HUB 39 tristate "FSI hub master" 40 help 41 This option enables a FSI hub master driver. Hub is a type of FSI 42 master that is connected to the upstream master via a slave. Hubs 43 allow chaining of FSI links to an arbitrary depth. This allows for 44 a high target device fanout. 45 46config FSI_MASTER_AST_CF 47 tristate "FSI master based on Aspeed ColdFire coprocessor" 48 depends on GPIOLIB 49 depends on GPIO_ASPEED 50 select GENERIC_ALLOCATOR 51 help 52 This option enables a FSI master using the AST2400 and AST2500 GPIO 53 lines driven by the internal ColdFire coprocessor. This requires 54 the corresponding machine specific ColdFire firmware to be available. 55 56config FSI_MASTER_ASPEED 57 tristate "FSI ASPEED master" 58 depends on HAS_IOMEM 59 help 60 This option enables a FSI master that is present behind an OPB bridge 61 in the AST2600. 62 63 Enable it for your BMC kernel in an OpenPower or IBM Power system. 64 65config FSI_MASTER_I2CR 66 tristate "IBM I2C Responder virtual FSI master" 67 depends on I2C 68 help 69 This option enables a virtual FSI master in order to access a CFAM 70 behind an IBM I2C Responder (I2CR) chip. The I2CR is an I2C device 71 that translates I2C commands to CFAM or SCOM operations, effectively 72 implementing an FSI master and bus. 73 74config FSI_SCOM 75 tristate "SCOM FSI client device driver" 76 help 77 This option enables an FSI based SCOM device driver. 78 79config FSI_SBEFIFO 80 tristate "SBEFIFO FSI client device driver" 81 depends on OF_ADDRESS 82 help 83 This option enables an FSI based SBEFIFO device driver. The SBEFIFO is 84 a pipe-like FSI device for communicating with the self boot engine 85 (SBE) on POWER processors. 86 87config FSI_OCC 88 tristate "OCC SBEFIFO client device driver" 89 depends on FSI_SBEFIFO 90 help 91 This option enables an SBEFIFO based On-Chip Controller (OCC) device 92 driver. The OCC is a device embedded on a POWER processor that collects 93 and aggregates sensor data from the processor and system. The OCC can 94 provide the raw sensor data as well as perform thermal and power 95 management on the system. 96 97config I2CR_SCOM 98 tristate "IBM I2C Responder SCOM driver" 99 depends on FSI_MASTER_I2CR 100 help 101 This option enables an I2C Responder based SCOM device driver. The 102 I2CR has the capability to directly perform SCOM operations instead 103 of using the FSI2PIB engine. 104 105endif 106