6a11e5c67a
This change adds an initial IPMI driver for powerpc OPAL firmware. The interface is exposed entirely through firmware: we have two functions to send and receive IPMI messages, and an interrupt notification from the firmware to signify that a message is available. Signed-off-by: Jeremy Kerr <jk@ozlabs.org> Signed-off-by: Corey Minyard <cminyard@mvista.com>
91 lines
3.0 KiB
Plaintext
91 lines
3.0 KiB
Plaintext
#
|
|
# IPMI device configuration
|
|
#
|
|
|
|
menuconfig IPMI_HANDLER
|
|
tristate 'IPMI top-level message handler'
|
|
depends on HAS_IOMEM
|
|
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/IPMI.txt> for more details on the driver.
|
|
|
|
If unsure, say N.
|
|
|
|
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
|
|
generate an IPMI event describing the panic to each interface
|
|
registered with the message handler.
|
|
|
|
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
|
|
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.
|
|
|
|
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'
|
|
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_PROBE_DEFAULTS
|
|
bool 'Probe for all possible IPMI system interfaces by default'
|
|
default n
|
|
depends on IPMI_SI
|
|
help
|
|
Modern systems will usually expose IPMI interfaces via a discoverable
|
|
firmware mechanism such as ACPI or DMI. Older systems do not, and so
|
|
the driver is forced to probe hardware manually. This may cause boot
|
|
delays. Say "n" here to disable this manual probing. IPMI will then
|
|
only be available on older systems if the "ipmi_si_intf.trydefaults=1"
|
|
boot argument is passed.
|
|
|
|
config IPMI_SSIF
|
|
tristate 'IPMI SMBus handler (SSIF)'
|
|
select 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_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
|