char: Fix Kconfig indentation
[linux-2.6-microblaze.git] / drivers / char / ipmi / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 #
3 # IPMI device configuration
4 #
5
6 menuconfig IPMI_HANDLER
7        tristate 'IPMI top-level message handler'
8        depends on HAS_IOMEM
9        select IPMI_DMI_DECODE if DMI
10        help
11          This enables the central IPMI message handler, required for IPMI
12          to work.
13
14          IPMI is a standard for managing sensors (temperature,
15          voltage, etc.) in a system.
16
17          See <file:Documentation/IPMI.txt> for more details on the driver.
18
19          If unsure, say N.
20
21 config IPMI_DMI_DECODE
22        select IPMI_PLAT_DATA
23        bool
24
25 config IPMI_PLAT_DATA
26        bool
27
28 if IPMI_HANDLER
29
30 config IPMI_PANIC_EVENT
31        bool 'Generate a panic event to all BMCs on a panic'
32        help
33          When a panic occurs, this will cause the IPMI message handler to,
34          by default, generate an IPMI event describing the panic to each
35          interface registered with the message handler.  This is always
36          available, the module parameter for ipmi_msghandler named
37          panic_op can be set to "event" to chose this value, this config
38          simply causes the default value to be set to "event".
39
40 config IPMI_PANIC_STRING
41         bool 'Generate OEM events containing the panic string'
42         depends on IPMI_PANIC_EVENT
43         help
44           When a panic occurs, this will cause the IPMI message handler to,
45           by default, generate IPMI OEM type f0 events holding the IPMB
46           address of the panic generator (byte 4 of the event), a sequence
47           number for the string (byte 5 of the event) and part of the
48           string (the rest of the event).  Bytes 1, 2, and 3 are the normal
49           usage for an OEM event.  You can fetch these events and use the
50           sequence numbers to piece the string together.  This config
51           parameter sets the default value to generate these events,
52           the module parameter for ipmi_msghandler named panic_op can
53           be set to "string" to chose this value, this config simply
54           causes the default value to be set to "string".
55
56 config IPMI_DEVICE_INTERFACE
57        tristate 'Device interface for IPMI'
58        help
59          This provides an IOCTL interface to the IPMI message handler so
60          userland processes may use IPMI.  It supports poll() and select().
61
62 config IPMI_SI
63        tristate 'IPMI System Interface handler'
64        select IPMI_PLAT_DATA
65        help
66          Provides a driver for System Interfaces (KCS, SMIC, BT).
67          Currently, only KCS and SMIC are supported.  If
68          you are using IPMI, you should probably say "y" here.
69
70 config IPMI_SSIF
71        tristate 'IPMI SMBus handler (SSIF)'
72        select I2C
73        help
74          Provides a driver for a SMBus interface to a BMC, meaning that you
75          have a driver that must be accessed over an I2C bus instead of a
76          standard interface.  This module requires I2C support.
77
78 config IPMI_POWERNV
79        depends on PPC_POWERNV
80        tristate 'POWERNV (OPAL firmware) IPMI interface'
81        help
82          Provides a driver for OPAL firmware-based IPMI interfaces.
83
84 config IPMI_WATCHDOG
85        tristate 'IPMI Watchdog Timer'
86        help
87          This enables the IPMI watchdog timer.
88
89 config IPMI_POWEROFF
90        tristate 'IPMI Poweroff'
91        help
92          This enables a function to power off the system with IPMI if
93          the IPMI management controller is capable of this.
94
95 endif # IPMI_HANDLER
96
97 config IPMI_KCS_BMC
98         tristate
99
100 config ASPEED_KCS_IPMI_BMC
101         depends on ARCH_ASPEED || COMPILE_TEST
102         select IPMI_KCS_BMC
103         select REGMAP_MMIO
104         tristate "Aspeed KCS IPMI BMC driver"
105         help
106           Provides a driver for the KCS (Keyboard Controller Style) IPMI
107           interface found on Aspeed SOCs (AST2400 and AST2500).
108
109           The driver implements the BMC side of the KCS contorller, it
110           provides the access of KCS IO space for BMC side.
111
112 config NPCM7XX_KCS_IPMI_BMC
113         depends on ARCH_NPCM7XX || COMPILE_TEST
114         select IPMI_KCS_BMC
115         select REGMAP_MMIO
116         tristate "NPCM7xx KCS IPMI BMC driver"
117         help
118           Provides a driver for the KCS (Keyboard Controller Style) IPMI
119           interface found on Nuvoton NPCM7xx SOCs.
120
121           The driver implements the BMC side of the KCS contorller, it
122           provides the access of KCS IO space for BMC side.
123
124           This support is also available as a module.  If so, the module
125           will be called kcs_bmc_npcm7xx.
126
127 config ASPEED_BT_IPMI_BMC
128         depends on ARCH_ASPEED || COMPILE_TEST
129        depends on REGMAP && REGMAP_MMIO && MFD_SYSCON
130         tristate "BT IPMI bmc driver"
131         help
132           Provides a driver for the BT (Block Transfer) IPMI interface
133           found on Aspeed SOCs (AST2400 and AST2500). The driver
134           implements the BMC side of the BT interface.
135
136 config IPMB_DEVICE_INTERFACE
137         tristate 'IPMB Interface handler'
138         depends on I2C
139         depends on I2C_SLAVE
140         help
141           Provides a driver for a device (Satellite MC) to
142           receive requests and send responses back to the BMC via
143           the IPMB interface. This module requires I2C support.