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