1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 20508ad1fSJeremy Kerr# 30508ad1fSJeremy Kerr# FSI subsystem 40508ad1fSJeremy Kerr# 50508ad1fSJeremy Kerr 6baa8b941SVincent Legollmenuconfig FSI 70508ad1fSJeremy Kerr tristate "FSI support" 8f6a2f8ebSJeremy Kerr depends on OF 92b545cd8SJeremy Kerr select CRC4 10a7f7f624SMasahiro Yamada help 110508ad1fSJeremy Kerr FSI - the FRU Support Interface - is a simple bus for low-level 120508ad1fSJeremy Kerr access to POWER-based hardware. 13ac0385d9SChristopher Bostic 14ac0385d9SChristopher Bosticif FSI 15ac0385d9SChristopher Bostic 160ab5fe53SBenjamin Herrenschmidtconfig FSI_NEW_DEV_NODE 170ab5fe53SBenjamin Herrenschmidt bool "Create '/dev/fsi' directory for char devices" 180ab5fe53SBenjamin Herrenschmidt default n 19a7f7f624SMasahiro Yamada help 200ab5fe53SBenjamin Herrenschmidt This option causes char devices created for FSI devices to be 210ab5fe53SBenjamin Herrenschmidt located under a common /dev/fsi/ directory. Set to N unless your 220ab5fe53SBenjamin Herrenschmidt userspace has been updated to handle the new location. 230ab5fe53SBenjamin Herrenschmidt 240ab5fe53SBenjamin Herrenschmidt Additionally, it also causes the char device names to be offset 250ab5fe53SBenjamin Herrenschmidt by one so that chip 0 will have /dev/scom1 and chip1 /dev/scom2 260ab5fe53SBenjamin Herrenschmidt to match old userspace expectations. 270ab5fe53SBenjamin Herrenschmidt 280ab5fe53SBenjamin Herrenschmidt New userspace will use udev rules to generate predictable access 290ab5fe53SBenjamin Herrenschmidt symlinks in /dev/fsi/by-path when this option is enabled. 300ab5fe53SBenjamin Herrenschmidt 31ac0385d9SChristopher Bosticconfig FSI_MASTER_GPIO 32ac0385d9SChristopher Bostic tristate "GPIO-based FSI master" 33ac0385d9SChristopher Bostic depends on GPIOLIB 34ac0385d9SChristopher Bostic select CRC4 35a7f7f624SMasahiro Yamada help 36ac0385d9SChristopher Bostic This option enables a FSI master driver using GPIO lines. 37ac0385d9SChristopher Bostic 387f9e8f76SChristopher Bosticconfig FSI_MASTER_HUB 397f9e8f76SChristopher Bostic tristate "FSI hub master" 40a7f7f624SMasahiro Yamada help 417f9e8f76SChristopher Bostic This option enables a FSI hub master driver. Hub is a type of FSI 427f9e8f76SChristopher Bostic master that is connected to the upstream master via a slave. Hubs 437f9e8f76SChristopher Bostic allow chaining of FSI links to an arbitrary depth. This allows for 447f9e8f76SChristopher Bostic a high target device fanout. 457f9e8f76SChristopher Bostic 466a794a27SBenjamin Herrenschmidtconfig FSI_MASTER_AST_CF 476a794a27SBenjamin Herrenschmidt tristate "FSI master based on Aspeed ColdFire coprocessor" 486a794a27SBenjamin Herrenschmidt depends on GPIOLIB 496a794a27SBenjamin Herrenschmidt depends on GPIO_ASPEED 5064999fa7SArnd Bergmann select GENERIC_ALLOCATOR 51a7f7f624SMasahiro Yamada help 526a794a27SBenjamin Herrenschmidt This option enables a FSI master using the AST2400 and AST2500 GPIO 536a794a27SBenjamin Herrenschmidt lines driven by the internal ColdFire coprocessor. This requires 546a794a27SBenjamin Herrenschmidt the corresponding machine specific ColdFire firmware to be available. 556a794a27SBenjamin Herrenschmidt 56606397d6SJoel Stanleyconfig FSI_MASTER_ASPEED 57606397d6SJoel Stanley tristate "FSI ASPEED master" 58ea3d147aSBrendan Higgins depends on HAS_IOMEM 59606397d6SJoel Stanley help 60606397d6SJoel Stanley This option enables a FSI master that is present behind an OPB bridge 61606397d6SJoel Stanley in the AST2600. 62606397d6SJoel Stanley 63606397d6SJoel Stanley Enable it for your BMC kernel in an OpenPower or IBM Power system. 64606397d6SJoel Stanley 6553e89e3eSEddie Jamesconfig FSI_MASTER_I2CR 6653e89e3eSEddie James tristate "IBM I2C Responder virtual FSI master" 6753e89e3eSEddie James depends on I2C 6853e89e3eSEddie James help 6953e89e3eSEddie James This option enables a virtual FSI master in order to access a CFAM 7053e89e3eSEddie James behind an IBM I2C Responder (I2CR) chip. The I2CR is an I2C device 7153e89e3eSEddie James that translates I2C commands to CFAM or SCOM operations, effectively 7253e89e3eSEddie James implementing an FSI master and bus. 7353e89e3eSEddie James 74680ca6dcSChristopher Bosticconfig FSI_SCOM 75680ca6dcSChristopher Bostic tristate "SCOM FSI client device driver" 76a7f7f624SMasahiro Yamada help 77680ca6dcSChristopher Bostic This option enables an FSI based SCOM device driver. 78680ca6dcSChristopher Bostic 799f4a8a2dSBenjamin Herrenschmidtconfig FSI_SBEFIFO 809f4a8a2dSBenjamin Herrenschmidt tristate "SBEFIFO FSI client device driver" 8132f7f89dSGuenter Roeck depends on OF_ADDRESS 82a7f7f624SMasahiro Yamada help 839f4a8a2dSBenjamin Herrenschmidt This option enables an FSI based SBEFIFO device driver. The SBEFIFO is 849f4a8a2dSBenjamin Herrenschmidt a pipe-like FSI device for communicating with the self boot engine 859f4a8a2dSBenjamin Herrenschmidt (SBE) on POWER processors. 869f4a8a2dSBenjamin Herrenschmidt 877ed98dddSEddie Jamesconfig FSI_OCC 887ed98dddSEddie James tristate "OCC SBEFIFO client device driver" 897ed98dddSEddie James depends on FSI_SBEFIFO 90a7f7f624SMasahiro Yamada help 917ed98dddSEddie James This option enables an SBEFIFO based On-Chip Controller (OCC) device 927ed98dddSEddie James driver. The OCC is a device embedded on a POWER processor that collects 937ed98dddSEddie James and aggregates sensor data from the processor and system. The OCC can 947ed98dddSEddie James provide the raw sensor data as well as perform thermal and power 957ed98dddSEddie James management on the system. 967ed98dddSEddie James 97*c0b34bedSEddie Jamesconfig I2CR_SCOM 98*c0b34bedSEddie James tristate "IBM I2C Responder SCOM driver" 99*c0b34bedSEddie James depends on FSI_MASTER_I2CR 100*c0b34bedSEddie James help 101*c0b34bedSEddie James This option enables an I2C Responder based SCOM device driver. The 102*c0b34bedSEddie James I2CR has the capability to directly perform SCOM operations instead 103*c0b34bedSEddie James of using the FSI2PIB engine. 104*c0b34bedSEddie James 105ac0385d9SChristopher Bosticendif 106