191 lines
		
	
	
		
			5.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			191 lines
		
	
	
		
			5.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
# 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_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_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 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.
 |