| 1 | # SPDX-License-Identifier: GPL-2.0-only |
| 2 | # |
| 3 | # FSI subsystem |
| 4 | # |
| 5 | |
| 6 | menuconfig 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 | |
| 14 | if FSI |
| 15 | |
| 16 | config 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 | |
| 31 | config 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 | |
| 38 | config 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 | |
| 46 | config 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 | |
| 56 | config 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 | |
| 65 | config FSI_SCOM |
| 66 | tristate "SCOM FSI client device driver" |
| 67 | help |
| 68 | This option enables an FSI based SCOM device driver. |
| 69 | |
| 70 | config FSI_SBEFIFO |
| 71 | tristate "SBEFIFO FSI client device driver" |
| 72 | depends on OF_ADDRESS |
| 73 | help |
| 74 | This option enables an FSI based SBEFIFO device driver. The SBEFIFO is |
| 75 | a pipe-like FSI device for communicating with the self boot engine |
| 76 | (SBE) on POWER processors. |
| 77 | |
| 78 | config FSI_OCC |
| 79 | tristate "OCC SBEFIFO client device driver" |
| 80 | depends on FSI_SBEFIFO |
| 81 | help |
| 82 | This option enables an SBEFIFO based On-Chip Controller (OCC) device |
| 83 | driver. The OCC is a device embedded on a POWER processor that collects |
| 84 | and aggregates sensor data from the processor and system. The OCC can |
| 85 | provide the raw sensor data as well as perform thermal and power |
| 86 | management on the system. |
| 87 | |
| 88 | endif |