216 lines · 6.7 KB · Text
RawDownload
# SPDX-License-Identifier: GPL-2.0-only## IPMI device configuration# menuconfig IPMI_HANDLER	tristate 'IPMI top-level message handler'	depends on HAS_IOMEM	select IPMI_DMI_DECODE if DMI	help	  This enables the central IPMI message handler, required for IPMI	  to work. 	  IPMI is a standard for managing sensors (temperature,	  voltage, etc.) in a system. 	  See <file:Documentation/driver-api/ipmi.rst> for more details on the driver. 	  If unsure, say N. config IPMI_DMI_DECODE	select IPMI_PLAT_DATA	bool config IPMI_PLAT_DATA	bool if IPMI_HANDLER config IPMI_PANIC_EVENT	bool 'Generate a panic event to all BMCs on a panic'	help	  When a panic occurs, this will cause the IPMI message handler to,	  by default, generate an IPMI event describing the panic to each	  interface registered with the message handler.  This is always	  available, the module parameter for ipmi_msghandler named	  panic_op can be set to "event" to chose this value, this config	  simply causes the default value to be set to "event". config IPMI_PANIC_STRING	bool 'Generate OEM events containing the panic string'	depends on IPMI_PANIC_EVENT	help	  When a panic occurs, this will cause the IPMI message handler to,	  by default, generate IPMI OEM type f0 events holding the IPMB	  address of the panic generator (byte 4 of the event), a sequence	  number for the string (byte 5 of the event) and part of the	  string (the rest of the event).  Bytes 1, 2, and 3 are the normal	  usage for an OEM event.  You can fetch these events and use the	  sequence numbers to piece the string together.  This config	  parameter sets the default value to generate these events,	  the module parameter for ipmi_msghandler named panic_op can	  be set to "string" to chose this value, this config simply	  causes the default value to be set to "string". config IPMI_DEVICE_INTERFACE	tristate 'Device interface for IPMI'	help	  This provides an IOCTL interface to the IPMI message handler so	  userland processes may use IPMI.  It supports poll() and select(). config IPMI_SI	tristate 'IPMI System Interface handler'	select IPMI_PLAT_DATA	help	  Provides a driver for System Interfaces (KCS, SMIC, BT).	  Currently, only KCS and SMIC are supported.  If	  you are using IPMI, you should probably say "y" here. config IPMI_SI_ASYNC_INIT	bool 'Asynchronous initialization of IPMI System Interface'	depends on IPMI_SI	default n	help	  Offloads individual SMI inits. It speeds up the boot time.	  It also introduces a very small risk that something else might fail	  if it depends on synchronous IPMI init. config IPMI_SSIF	tristate 'IPMI SMBus handler (SSIF)'	depends on I2C	help	  Provides a driver for a SMBus interface to a BMC, meaning that you	  have a driver that must be accessed over an I2C bus instead of a	  standard interface.  This module requires I2C support. config IPMI_IPMB	tristate 'IPMI IPMB interface'	depends on I2C && I2C_SLAVE	help	  Provides a driver for a system running right on the IPMB bus.	  It supports normal system interface messages to a BMC on the IPMB	  bus, and it also supports direct messaging on the bus using	  IPMB direct messages.  This module requires I2C support. config IPMI_LS2K	bool 'Loongson-2K IPMI interface'	depends on LOONGARCH	select MFD_LS2K_BMC_CORE	help	  Provides a driver for Loongson-2K IPMI interfaces. config IPMI_POWERNV	depends on PPC_POWERNV	tristate 'POWERNV (OPAL firmware) IPMI interface'	help	  Provides a driver for OPAL firmware-based IPMI interfaces. config IPMI_WATCHDOG	tristate 'IPMI Watchdog Timer'	help	  This enables the IPMI watchdog timer. config IPMI_POWEROFF	tristate 'IPMI Poweroff'	help	  This enables a function to power off the system with IPMI if	  the IPMI management controller is capable of this. endif # IPMI_HANDLER config IPMI_KCS_BMC	tristate config ASPEED_KCS_IPMI_BMC	depends on ARCH_ASPEED || COMPILE_TEST	select IPMI_KCS_BMC	select REGMAP_MMIO	tristate "Aspeed KCS IPMI BMC driver"	help	  Provides a driver for the KCS (Keyboard Controller Style) IPMI	  interface found on Aspeed SOCs (AST2400 and AST2500). 	  The driver implements the BMC side of the KCS contorller, it	  provides the access of KCS IO space for BMC side. config NPCM7XX_KCS_IPMI_BMC	depends on ARCH_NPCM || COMPILE_TEST	select IPMI_KCS_BMC	select REGMAP_MMIO	tristate "NPCM KCS IPMI BMC driver"	help	  Provides a driver for the KCS (Keyboard Controller Style) IPMI	  interface found on Nuvoton NPCM SOCs. 	  The driver implements the BMC side of the KCS contorller, it	  provides the access of KCS IO space for BMC side. 	  This support is also available as a module.  If so, the module	  will be called kcs_bmc_npcm7xx. config IPMI_KCS_BMC_CDEV_IPMI	depends on IPMI_KCS_BMC	tristate "IPMI character device interface for BMC KCS devices"	help	  Provides a BMC-side character device implementing IPMI	  semantics for KCS IPMI devices. 	  Say YES if you wish to expose KCS devices on the BMC for IPMI	  purposes. 	  This support is also available as a module. The module will be	  called kcs_bmc_cdev_ipmi. config IPMI_KCS_BMC_SERIO	depends on IPMI_KCS_BMC && SERIO	tristate "SerIO adaptor for BMC KCS devices"	help	  Adapts the BMC KCS device for the SerIO subsystem. This allows users	  to take advantage of userspace interfaces provided by SerIO where	  appropriate. 	  Say YES if you wish to expose KCS devices on the BMC via SerIO	  interfaces. 	  This support is also available as a module. The module will be	  called kcs_bmc_serio. config ASPEED_BT_IPMI_BMC	depends on ARCH_ASPEED || COMPILE_TEST	depends on MFD_SYSCON	select REGMAP_MMIO	tristate "BT IPMI bmc driver"	help	  Provides a driver for the BT (Block Transfer) IPMI interface	  found on Aspeed SOCs (AST2400 and AST2500). The driver	  implements the BMC side of the BT interface. config SSIF_IPMI_BMC	tristate "SSIF IPMI BMC driver"	depends on I2C && I2C_SLAVE	help	  This enables the IPMI SMBus system interface (SSIF) at the	  management (BMC) side. 	  The driver implements the BMC side of the SMBus system	  interface (SSIF). config SSIF_IPMI_BMC_KUNIT_TEST	bool "KUnit tests for SSIF IPMI BMC driver" if !KUNIT_ALL_TESTS	depends on KUNIT=y	depends on SSIF_IPMI_BMC	default KUNIT_ALL_TESTS	help	  This option builds unit tests that exercise the SSIF BMC state	  machine, including request handling, response transmission,	  and error paths such as aborted or truncated transfers. config IPMB_DEVICE_INTERFACE	tristate 'IPMB Interface handler'	depends on I2C	depends on I2C_SLAVE	help	  Provides a driver for a device (Satellite MC) to	  receive requests and send responses back to the BMC via	  the IPMB interface. This module requires I2C support.