Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
[linux-2.6-microblaze.git] / drivers / firmware / Kconfig
1 #
2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
4 #
5
6 menu "Firmware Drivers"
7
8 config ARM_PSCI_FW
9         bool
10
11 config ARM_PSCI_CHECKER
12         bool "ARM PSCI checker"
13         depends on ARM_PSCI_FW && HOTPLUG_CPU && !TORTURE_TEST
14         help
15           Run the PSCI checker during startup. This checks that hotplug and
16           suspend operations work correctly when using PSCI.
17
18           The torture tests may interfere with the PSCI checker by turning CPUs
19           on and off through hotplug, so for now torture tests and PSCI checker
20           are mutually exclusive.
21
22 config ARM_SCPI_PROTOCOL
23         tristate "ARM System Control and Power Interface (SCPI) Message Protocol"
24         depends on MAILBOX
25         help
26           System Control and Power Interface (SCPI) Message Protocol is
27           defined for the purpose of communication between the Application
28           Cores(AP) and the System Control Processor(SCP). The MHU peripheral
29           provides a mechanism for inter-processor communication between SCP
30           and AP.
31
32           SCP controls most of the power managament on the Application
33           Processors. It offers control and management of: the core/cluster
34           power states, various power domain DVFS including the core/cluster,
35           certain system clocks configuration, thermal sensors and many
36           others.
37
38           This protocol library provides interface for all the client drivers
39           making use of the features offered by the SCP.
40
41 config ARM_SCPI_POWER_DOMAIN
42         tristate "SCPI power domain driver"
43         depends on ARM_SCPI_PROTOCOL || (COMPILE_TEST && OF)
44         default y
45         select PM_GENERIC_DOMAINS if PM
46         help
47           This enables support for the SCPI power domains which can be
48           enabled or disabled via the SCP firmware
49
50 config EDD
51         tristate "BIOS Enhanced Disk Drive calls determine boot disk"
52         depends on X86
53         help
54           Say Y or M here if you want to enable BIOS Enhanced Disk Drive
55           Services real mode BIOS calls to determine which disk
56           BIOS tries boot from.  This information is then exported via sysfs.
57
58           This option is experimental and is known to fail to boot on some
59           obscure configurations. Most disk controller BIOS vendors do
60           not yet implement this feature.
61
62 config EDD_OFF
63         bool "Sets default behavior for EDD detection to off"
64         depends on EDD
65         default n
66         help
67           Say Y if you want EDD disabled by default, even though it is compiled into the
68           kernel. Say N if you want EDD enabled by default. EDD can be dynamically set
69           using the kernel parameter 'edd={on|skipmbr|off}'.
70
71 config FIRMWARE_MEMMAP
72     bool "Add firmware-provided memory map to sysfs" if EXPERT
73     default X86
74     help
75       Add the firmware-provided (unmodified) memory map to /sys/firmware/memmap.
76       That memory map is used for example by kexec to set up parameter area
77       for the next kernel, but can also be used for debugging purposes.
78
79       See also Documentation/ABI/testing/sysfs-firmware-memmap.
80
81 config EFI_PCDP
82         bool "Console device selection via EFI PCDP or HCDP table"
83         depends on ACPI && EFI && IA64
84         default y if IA64
85         help
86           If your firmware supplies the PCDP table, and you want to
87           automatically use the primary console device it describes
88           as the Linux console, say Y here.
89
90           If your firmware supplies the HCDP table, and you want to
91           use the first serial port it describes as the Linux console,
92           say Y here.  If your EFI ConOut path contains only a UART
93           device, it will become the console automatically.  Otherwise,
94           you must specify the "console=hcdp" kernel boot argument.
95
96           Neither the PCDP nor the HCDP affects naming of serial devices,
97           so a serial console may be /dev/ttyS0, /dev/ttyS1, etc, depending
98           on how the driver discovers devices.
99
100           You must also enable the appropriate drivers (serial, VGA, etc.)
101
102           See DIG64_HCDPv20_042804.pdf available from
103           <http://www.dig64.org/specifications/> 
104
105 config DELL_RBU
106         tristate "BIOS update support for DELL systems via sysfs"
107         depends on X86
108         select FW_LOADER
109         select FW_LOADER_USER_HELPER
110         help
111          Say m if you want to have the option of updating the BIOS for your
112          DELL system. Note you need a Dell OpenManage or Dell Update package (DUP)
113          supporting application to communicate with the BIOS regarding the new
114          image for the image update to take effect.
115          See <file:Documentation/dell_rbu.txt> for more details on the driver.
116
117 config DCDBAS
118         tristate "Dell Systems Management Base Driver"
119         depends on X86
120         help
121           The Dell Systems Management Base Driver provides a sysfs interface
122           for systems management software to perform System Management
123           Interrupts (SMIs) and Host Control Actions (system power cycle or
124           power off after OS shutdown) on certain Dell systems.
125
126           See <file:Documentation/dcdbas.txt> for more details on the driver
127           and the Dell systems on which Dell systems management software makes
128           use of this driver.
129
130           Say Y or M here to enable the driver for use by Dell systems
131           management software such as Dell OpenManage.
132
133 config DMIID
134     bool "Export DMI identification via sysfs to userspace"
135     depends on DMI
136     default y
137         help
138           Say Y here if you want to query SMBIOS/DMI system identification
139           information from userspace through /sys/class/dmi/id/ or if you want
140           DMI-based module auto-loading.
141
142 config DMI_SYSFS
143         tristate "DMI table support in sysfs"
144         depends on SYSFS && DMI
145         default n
146         help
147           Say Y or M here to enable the exporting of the raw DMI table
148           data via sysfs.  This is useful for consuming the data without
149           requiring any access to /dev/mem at all.  Tables are found
150           under /sys/firmware/dmi when this option is enabled and
151           loaded.
152
153 config DMI_SCAN_MACHINE_NON_EFI_FALLBACK
154         bool
155
156 config ISCSI_IBFT_FIND
157         bool "iSCSI Boot Firmware Table Attributes"
158         depends on X86 && ACPI
159         default n
160         help
161           This option enables the kernel to find the region of memory
162           in which the ISCSI Boot Firmware Table (iBFT) resides. This
163           is necessary for iSCSI Boot Firmware Table Attributes module to work
164           properly.
165
166 config ISCSI_IBFT
167         tristate "iSCSI Boot Firmware Table Attributes module"
168         select ISCSI_BOOT_SYSFS
169         depends on ISCSI_IBFT_FIND && SCSI && SCSI_LOWLEVEL
170         default n
171         help
172           This option enables support for detection and exposing of iSCSI
173           Boot Firmware Table (iBFT) via sysfs to userspace. If you wish to
174           detect iSCSI boot parameters dynamically during system boot, say Y.
175           Otherwise, say N.
176
177 config RASPBERRYPI_FIRMWARE
178         tristate "Raspberry Pi Firmware Driver"
179         depends on BCM2835_MBOX
180         help
181           This option enables support for communicating with the firmware on the
182           Raspberry Pi.
183
184 config FW_CFG_SYSFS
185         tristate "QEMU fw_cfg device support in sysfs"
186         depends on SYSFS && (ARM || ARM64 || PPC_PMAC || SPARC || X86)
187         depends on HAS_IOPORT_MAP
188         default n
189         help
190           Say Y or M here to enable the exporting of the QEMU firmware
191           configuration (fw_cfg) file entries via sysfs. Entries are
192           found under /sys/firmware/fw_cfg when this option is enabled
193           and loaded.
194
195 config FW_CFG_SYSFS_CMDLINE
196         bool "QEMU fw_cfg device parameter parsing"
197         depends on FW_CFG_SYSFS
198         help
199           Allow the qemu_fw_cfg device to be initialized via the kernel
200           command line or using a module parameter.
201           WARNING: Using incorrect parameters (base address in particular)
202           may crash your system.
203
204 config QCOM_SCM
205         bool
206         depends on ARM || ARM64
207         select RESET_CONTROLLER
208
209 config QCOM_SCM_32
210         def_bool y
211         depends on QCOM_SCM && ARM
212
213 config QCOM_SCM_64
214         def_bool y
215         depends on QCOM_SCM && ARM64
216
217 config TI_SCI_PROTOCOL
218         tristate "TI System Control Interface (TISCI) Message Protocol"
219         depends on TI_MESSAGE_MANAGER
220         help
221           TI System Control Interface (TISCI) Message Protocol is used to manage
222           compute systems such as ARM, DSP etc with the system controller in
223           complex System on Chip(SoC) such as those found on certain keystone
224           generation SoC from TI.
225
226           System controller provides various facilities including power
227           management function support.
228
229           This protocol library is used by client drivers to use the features
230           provided by the system controller.
231
232 config HAVE_ARM_SMCCC
233         bool
234
235 source "drivers/firmware/broadcom/Kconfig"
236 source "drivers/firmware/google/Kconfig"
237 source "drivers/firmware/efi/Kconfig"
238 source "drivers/firmware/meson/Kconfig"
239 source "drivers/firmware/tegra/Kconfig"
240
241 endmenu