Thomas Gleixner | ec8f24b | 2019-05-19 13:07:45 +0100 | [diff] [blame] | 1 | # SPDX-License-Identifier: GPL-2.0-only |
Jeremy Kerr | 0508ad1 | 2017-02-01 10:53:41 -0600 | [diff] [blame] | 2 | # |
| 3 | # FSI subsystem |
| 4 | # |
| 5 | |
Vincent Legoll | baa8b94 | 2017-12-03 12:09:26 +0100 | [diff] [blame] | 6 | menuconfig FSI |
Jeremy Kerr | 0508ad1 | 2017-02-01 10:53:41 -0600 | [diff] [blame] | 7 | tristate "FSI support" |
Jeremy Kerr | f6a2f8e | 2018-02-12 15:45:45 +1030 | [diff] [blame] | 8 | depends on OF |
Jeremy Kerr | 2b545cd | 2017-06-06 16:08:42 -0500 | [diff] [blame] | 9 | select CRC4 |
Masahiro Yamada | a7f7f62 | 2020-06-14 01:50:22 +0900 | [diff] [blame] | 10 | help |
Jeremy Kerr | 0508ad1 | 2017-02-01 10:53:41 -0600 | [diff] [blame] | 11 | FSI - the FRU Support Interface - is a simple bus for low-level |
| 12 | access to POWER-based hardware. |
Christopher Bostic | ac0385d | 2017-06-06 16:08:54 -0500 | [diff] [blame] | 13 | |
| 14 | if FSI |
| 15 | |
Benjamin Herrenschmidt | 0ab5fe5 | 2018-06-20 15:22:52 +1000 | [diff] [blame] | 16 | config FSI_NEW_DEV_NODE |
| 17 | bool "Create '/dev/fsi' directory for char devices" |
| 18 | default n |
Masahiro Yamada | a7f7f62 | 2020-06-14 01:50:22 +0900 | [diff] [blame] | 19 | help |
Benjamin Herrenschmidt | 0ab5fe5 | 2018-06-20 15:22:52 +1000 | [diff] [blame] | 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 | |
Christopher Bostic | ac0385d | 2017-06-06 16:08:54 -0500 | [diff] [blame] | 31 | config FSI_MASTER_GPIO |
| 32 | tristate "GPIO-based FSI master" |
| 33 | depends on GPIOLIB |
| 34 | select CRC4 |
Masahiro Yamada | a7f7f62 | 2020-06-14 01:50:22 +0900 | [diff] [blame] | 35 | help |
Christopher Bostic | ac0385d | 2017-06-06 16:08:54 -0500 | [diff] [blame] | 36 | This option enables a FSI master driver using GPIO lines. |
| 37 | |
Christopher Bostic | 7f9e8f7 | 2017-06-06 16:08:57 -0500 | [diff] [blame] | 38 | config FSI_MASTER_HUB |
| 39 | tristate "FSI hub master" |
Masahiro Yamada | a7f7f62 | 2020-06-14 01:50:22 +0900 | [diff] [blame] | 40 | help |
Christopher Bostic | 7f9e8f7 | 2017-06-06 16:08:57 -0500 | [diff] [blame] | 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 | |
Benjamin Herrenschmidt | 6a794a2 | 2018-06-12 09:55:04 +1000 | [diff] [blame] | 46 | config FSI_MASTER_AST_CF |
| 47 | tristate "FSI master based on Aspeed ColdFire coprocessor" |
| 48 | depends on GPIOLIB |
| 49 | depends on GPIO_ASPEED |
Arnd Bergmann | 64999fa | 2018-08-14 00:37:18 +0200 | [diff] [blame] | 50 | select GENERIC_ALLOCATOR |
Masahiro Yamada | a7f7f62 | 2020-06-14 01:50:22 +0900 | [diff] [blame] | 51 | help |
Benjamin Herrenschmidt | 6a794a2 | 2018-06-12 09:55:04 +1000 | [diff] [blame] | 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 | |
Joel Stanley | 606397d | 2019-11-08 15:49:43 +1030 | [diff] [blame] | 56 | config FSI_MASTER_ASPEED |
| 57 | tristate "FSI ASPEED master" |
Brendan Higgins | ea3d147 | 2020-01-31 14:18:32 +1030 | [diff] [blame] | 58 | depends on HAS_IOMEM |
Joel Stanley | 606397d | 2019-11-08 15:49:43 +1030 | [diff] [blame] | 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 | |
Christopher Bostic | 680ca6d | 2017-06-06 16:08:56 -0500 | [diff] [blame] | 65 | config FSI_SCOM |
| 66 | tristate "SCOM FSI client device driver" |
Masahiro Yamada | a7f7f62 | 2020-06-14 01:50:22 +0900 | [diff] [blame] | 67 | help |
Christopher Bostic | 680ca6d | 2017-06-06 16:08:56 -0500 | [diff] [blame] | 68 | This option enables an FSI based SCOM device driver. |
| 69 | |
Benjamin Herrenschmidt | 9f4a8a2 | 2018-05-17 15:58:00 +1000 | [diff] [blame] | 70 | config FSI_SBEFIFO |
| 71 | tristate "SBEFIFO FSI client device driver" |
Guenter Roeck | 32f7f89 | 2018-07-03 06:43:49 -0700 | [diff] [blame] | 72 | depends on OF_ADDRESS |
Masahiro Yamada | a7f7f62 | 2020-06-14 01:50:22 +0900 | [diff] [blame] | 73 | help |
Benjamin Herrenschmidt | 9f4a8a2 | 2018-05-17 15:58:00 +1000 | [diff] [blame] | 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 | |
Eddie James | 7ed98dd | 2018-11-08 15:05:21 -0600 | [diff] [blame] | 78 | config FSI_OCC |
| 79 | tristate "OCC SBEFIFO client device driver" |
| 80 | depends on FSI_SBEFIFO |
Masahiro Yamada | a7f7f62 | 2020-06-14 01:50:22 +0900 | [diff] [blame] | 81 | help |
Eddie James | 7ed98dd | 2018-11-08 15:05:21 -0600 | [diff] [blame] | 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 | |
Christopher Bostic | ac0385d | 2017-06-06 16:08:54 -0500 | [diff] [blame] | 88 | endif |