xref: /kernel/linux/linux-5.10/drivers/fsi/Kconfig (revision 8c2ecf20)
18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
28c2ecf20Sopenharmony_ci#
38c2ecf20Sopenharmony_ci# FSI subsystem
48c2ecf20Sopenharmony_ci#
58c2ecf20Sopenharmony_ci
68c2ecf20Sopenharmony_cimenuconfig FSI
78c2ecf20Sopenharmony_ci	tristate "FSI support"
88c2ecf20Sopenharmony_ci	depends on OF
98c2ecf20Sopenharmony_ci	select CRC4
108c2ecf20Sopenharmony_ci	help
118c2ecf20Sopenharmony_ci	  FSI - the FRU Support Interface - is a simple bus for low-level
128c2ecf20Sopenharmony_ci	  access to POWER-based hardware.
138c2ecf20Sopenharmony_ci
148c2ecf20Sopenharmony_ciif FSI
158c2ecf20Sopenharmony_ci
168c2ecf20Sopenharmony_ciconfig FSI_NEW_DEV_NODE
178c2ecf20Sopenharmony_ci	bool "Create '/dev/fsi' directory for char devices"
188c2ecf20Sopenharmony_ci	default n
198c2ecf20Sopenharmony_ci	help
208c2ecf20Sopenharmony_ci	This option causes char devices created for FSI devices to be
218c2ecf20Sopenharmony_ci	located under a common /dev/fsi/ directory. Set to N unless your
228c2ecf20Sopenharmony_ci	userspace has been updated to handle the new location.
238c2ecf20Sopenharmony_ci
248c2ecf20Sopenharmony_ci	Additionally, it also causes the char device names to be offset
258c2ecf20Sopenharmony_ci	by one so that chip 0 will have /dev/scom1 and chip1 /dev/scom2
268c2ecf20Sopenharmony_ci	to match old userspace expectations.
278c2ecf20Sopenharmony_ci
288c2ecf20Sopenharmony_ci	New userspace will use udev rules to generate predictable access
298c2ecf20Sopenharmony_ci	symlinks in /dev/fsi/by-path when this option is enabled.
308c2ecf20Sopenharmony_ci
318c2ecf20Sopenharmony_ciconfig FSI_MASTER_GPIO
328c2ecf20Sopenharmony_ci	tristate "GPIO-based FSI master"
338c2ecf20Sopenharmony_ci	depends on GPIOLIB
348c2ecf20Sopenharmony_ci	select CRC4
358c2ecf20Sopenharmony_ci	help
368c2ecf20Sopenharmony_ci	This option enables a FSI master driver using GPIO lines.
378c2ecf20Sopenharmony_ci
388c2ecf20Sopenharmony_ciconfig FSI_MASTER_HUB
398c2ecf20Sopenharmony_ci	tristate "FSI hub master"
408c2ecf20Sopenharmony_ci	help
418c2ecf20Sopenharmony_ci	This option enables a FSI hub master driver.  Hub is a type of FSI
428c2ecf20Sopenharmony_ci	master that is connected to the upstream master via a slave.  Hubs
438c2ecf20Sopenharmony_ci	allow chaining of FSI links to an arbitrary depth.  This allows for
448c2ecf20Sopenharmony_ci	a high target device fanout.
458c2ecf20Sopenharmony_ci
468c2ecf20Sopenharmony_ciconfig FSI_MASTER_AST_CF
478c2ecf20Sopenharmony_ci	tristate "FSI master based on Aspeed ColdFire coprocessor"
488c2ecf20Sopenharmony_ci	depends on GPIOLIB
498c2ecf20Sopenharmony_ci	depends on GPIO_ASPEED
508c2ecf20Sopenharmony_ci	select GENERIC_ALLOCATOR
518c2ecf20Sopenharmony_ci	help
528c2ecf20Sopenharmony_ci	This option enables a FSI master using the AST2400 and AST2500 GPIO
538c2ecf20Sopenharmony_ci	lines driven by the internal ColdFire coprocessor. This requires
548c2ecf20Sopenharmony_ci	the corresponding machine specific ColdFire firmware to be available.
558c2ecf20Sopenharmony_ci
568c2ecf20Sopenharmony_ciconfig FSI_MASTER_ASPEED
578c2ecf20Sopenharmony_ci	tristate "FSI ASPEED master"
588c2ecf20Sopenharmony_ci	depends on HAS_IOMEM
598c2ecf20Sopenharmony_ci	help
608c2ecf20Sopenharmony_ci	 This option enables a FSI master that is present behind an OPB bridge
618c2ecf20Sopenharmony_ci	 in the AST2600.
628c2ecf20Sopenharmony_ci
638c2ecf20Sopenharmony_ci	 Enable it for your BMC kernel in an OpenPower or IBM Power system.
648c2ecf20Sopenharmony_ci
658c2ecf20Sopenharmony_ciconfig FSI_SCOM
668c2ecf20Sopenharmony_ci	tristate "SCOM FSI client device driver"
678c2ecf20Sopenharmony_ci	help
688c2ecf20Sopenharmony_ci	This option enables an FSI based SCOM device driver.
698c2ecf20Sopenharmony_ci
708c2ecf20Sopenharmony_ciconfig FSI_SBEFIFO
718c2ecf20Sopenharmony_ci	tristate "SBEFIFO FSI client device driver"
728c2ecf20Sopenharmony_ci	depends on OF_ADDRESS
738c2ecf20Sopenharmony_ci	help
748c2ecf20Sopenharmony_ci	This option enables an FSI based SBEFIFO device driver. The SBEFIFO is
758c2ecf20Sopenharmony_ci	a pipe-like FSI device for communicating with the self boot engine
768c2ecf20Sopenharmony_ci	(SBE) on POWER processors.
778c2ecf20Sopenharmony_ci
788c2ecf20Sopenharmony_ciconfig FSI_OCC
798c2ecf20Sopenharmony_ci	tristate "OCC SBEFIFO client device driver"
808c2ecf20Sopenharmony_ci	depends on FSI_SBEFIFO
818c2ecf20Sopenharmony_ci	help
828c2ecf20Sopenharmony_ci	This option enables an SBEFIFO based On-Chip Controller (OCC) device
838c2ecf20Sopenharmony_ci	driver. The OCC is a device embedded on a POWER processor that collects
848c2ecf20Sopenharmony_ci	and aggregates sensor data from the processor and system. The OCC can
858c2ecf20Sopenharmony_ci	provide the raw sensor data as well as perform thermal and power
868c2ecf20Sopenharmony_ci	management on the system.
878c2ecf20Sopenharmony_ci
888c2ecf20Sopenharmony_ciendif
89