2 # For a description of the syntax of this configuration file,
3 # see Documentation/kbuild/kconfig-language.txt.
6 menu "Firmware Drivers"
11 config ARM_PSCI_CHECKER
12 bool "ARM PSCI checker"
13 depends on ARM_PSCI_FW && HOTPLUG_CPU && CPU_IDLE && !TORTURE_TEST
15 Run the PSCI checker during startup. This checks that hotplug and
16 suspend operations work correctly when using PSCI.
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.
22 config ARM_SCPI_PROTOCOL
23 tristate "ARM System Control and Power Interface (SCPI) Message Protocol"
24 depends on ARM || ARM64 || COMPILE_TEST
27 System Control and Power Interface (SCPI) Message Protocol is
28 defined for the purpose of communication between the Application
29 Cores(AP) and the System Control Processor(SCP). The MHU peripheral
30 provides a mechanism for inter-processor communication between SCP
33 SCP controls most of the power managament on the Application
34 Processors. It offers control and management of: the core/cluster
35 power states, various power domain DVFS including the core/cluster,
36 certain system clocks configuration, thermal sensors and many
39 This protocol library provides interface for all the client drivers
40 making use of the features offered by the SCP.
42 config ARM_SCPI_POWER_DOMAIN
43 tristate "SCPI power domain driver"
44 depends on ARM_SCPI_PROTOCOL || (COMPILE_TEST && OF)
46 select PM_GENERIC_DOMAINS if PM
48 This enables support for the SCPI power domains which can be
49 enabled or disabled via the SCP firmware
51 config ARM_SDE_INTERFACE
52 bool "ARM Software Delegated Exception Interface (SDEI)"
55 The Software Delegated Exception Interface (SDEI) is an ARM
56 standard for registering callbacks from the platform firmware
57 into the OS. This is typically used to implement RAS notifications.
60 tristate "BIOS Enhanced Disk Drive calls determine boot disk"
63 Say Y or M here if you want to enable BIOS Enhanced Disk Drive
64 Services real mode BIOS calls to determine which disk
65 BIOS tries boot from. This information is then exported via sysfs.
67 This option is experimental and is known to fail to boot on some
68 obscure configurations. Most disk controller BIOS vendors do
69 not yet implement this feature.
72 bool "Sets default behavior for EDD detection to off"
76 Say Y if you want EDD disabled by default, even though it is compiled into the
77 kernel. Say N if you want EDD enabled by default. EDD can be dynamically set
78 using the kernel parameter 'edd={on|skipmbr|off}'.
80 config FIRMWARE_MEMMAP
81 bool "Add firmware-provided memory map to sysfs" if EXPERT
84 Add the firmware-provided (unmodified) memory map to /sys/firmware/memmap.
85 That memory map is used for example by kexec to set up parameter area
86 for the next kernel, but can also be used for debugging purposes.
88 See also Documentation/ABI/testing/sysfs-firmware-memmap.
91 bool "Console device selection via EFI PCDP or HCDP table"
92 depends on ACPI && EFI && IA64
95 If your firmware supplies the PCDP table, and you want to
96 automatically use the primary console device it describes
97 as the Linux console, say Y here.
99 If your firmware supplies the HCDP table, and you want to
100 use the first serial port it describes as the Linux console,
101 say Y here. If your EFI ConOut path contains only a UART
102 device, it will become the console automatically. Otherwise,
103 you must specify the "console=hcdp" kernel boot argument.
105 Neither the PCDP nor the HCDP affects naming of serial devices,
106 so a serial console may be /dev/ttyS0, /dev/ttyS1, etc, depending
107 on how the driver discovers devices.
109 You must also enable the appropriate drivers (serial, VGA, etc.)
111 See DIG64_HCDPv20_042804.pdf available from
112 <http://www.dig64.org/specifications/>
115 tristate "BIOS update support for DELL systems via sysfs"
118 select FW_LOADER_USER_HELPER
120 Say m if you want to have the option of updating the BIOS for your
121 DELL system. Note you need a Dell OpenManage or Dell Update package (DUP)
122 supporting application to communicate with the BIOS regarding the new
123 image for the image update to take effect.
124 See <file:Documentation/dell_rbu.txt> for more details on the driver.
127 tristate "Dell Systems Management Base Driver"
130 The Dell Systems Management Base Driver provides a sysfs interface
131 for systems management software to perform System Management
132 Interrupts (SMIs) and Host Control Actions (system power cycle or
133 power off after OS shutdown) on certain Dell systems.
135 See <file:Documentation/dcdbas.txt> for more details on the driver
136 and the Dell systems on which Dell systems management software makes
139 Say Y or M here to enable the driver for use by Dell systems
140 management software such as Dell OpenManage.
143 bool "Export DMI identification via sysfs to userspace"
147 Say Y here if you want to query SMBIOS/DMI system identification
148 information from userspace through /sys/class/dmi/id/ or if you want
149 DMI-based module auto-loading.
152 tristate "DMI table support in sysfs"
153 depends on SYSFS && DMI
156 Say Y or M here to enable the exporting of the raw DMI table
157 data via sysfs. This is useful for consuming the data without
158 requiring any access to /dev/mem at all. Tables are found
159 under /sys/firmware/dmi when this option is enabled and
162 config DMI_SCAN_MACHINE_NON_EFI_FALLBACK
165 config ISCSI_IBFT_FIND
166 bool "iSCSI Boot Firmware Table Attributes"
167 depends on X86 && ACPI
170 This option enables the kernel to find the region of memory
171 in which the ISCSI Boot Firmware Table (iBFT) resides. This
172 is necessary for iSCSI Boot Firmware Table Attributes module to work
176 tristate "iSCSI Boot Firmware Table Attributes module"
177 select ISCSI_BOOT_SYSFS
178 depends on ISCSI_IBFT_FIND && SCSI && SCSI_LOWLEVEL
181 This option enables support for detection and exposing of iSCSI
182 Boot Firmware Table (iBFT) via sysfs to userspace. If you wish to
183 detect iSCSI boot parameters dynamically during system boot, say Y.
186 config RASPBERRYPI_FIRMWARE
187 tristate "Raspberry Pi Firmware Driver"
188 depends on BCM2835_MBOX
190 This option enables support for communicating with the firmware on the
194 tristate "QEMU fw_cfg device support in sysfs"
195 depends on SYSFS && (ARM || ARM64 || PPC_PMAC || SPARC || X86)
196 depends on HAS_IOPORT_MAP
199 Say Y or M here to enable the exporting of the QEMU firmware
200 configuration (fw_cfg) file entries via sysfs. Entries are
201 found under /sys/firmware/fw_cfg when this option is enabled
204 config FW_CFG_SYSFS_CMDLINE
205 bool "QEMU fw_cfg device parameter parsing"
206 depends on FW_CFG_SYSFS
208 Allow the qemu_fw_cfg device to be initialized via the kernel
209 command line or using a module parameter.
210 WARNING: Using incorrect parameters (base address in particular)
211 may crash your system.
215 depends on ARM || ARM64
216 select RESET_CONTROLLER
220 depends on QCOM_SCM && ARM
224 depends on QCOM_SCM && ARM64
226 config QCOM_SCM_DOWNLOAD_MODE_DEFAULT
227 bool "Qualcomm download mode enabled by default"
230 A device with "download mode" enabled will upon an unexpected
231 warm-restart enter a special debug mode that allows the user to
232 "download" memory content over USB for offline postmortem analysis.
233 The feature can be enabled/disabled on the kernel command line.
235 Say Y here to enable "download mode" by default.
237 config TI_SCI_PROTOCOL
238 tristate "TI System Control Interface (TISCI) Message Protocol"
239 depends on TI_MESSAGE_MANAGER
241 TI System Control Interface (TISCI) Message Protocol is used to manage
242 compute systems such as ARM, DSP etc with the system controller in
243 complex System on Chip(SoC) such as those found on certain keystone
244 generation SoC from TI.
246 System controller provides various facilities including power
247 management function support.
249 This protocol library is used by client drivers to use the features
250 provided by the system controller.
252 config HAVE_ARM_SMCCC
255 source "drivers/firmware/broadcom/Kconfig"
256 source "drivers/firmware/google/Kconfig"
257 source "drivers/firmware/efi/Kconfig"
258 source "drivers/firmware/meson/Kconfig"
259 source "drivers/firmware/tegra/Kconfig"