11da177e4SLinus Torvalds# 21da177e4SLinus Torvalds# For a description of the syntax of this configuration file, 31da177e4SLinus Torvalds# see Documentation/kbuild/kconfig-language.txt. 41da177e4SLinus Torvalds# 51da177e4SLinus Torvalds 61da177e4SLinus Torvaldsmenu "Firmware Drivers" 71da177e4SLinus Torvalds 8bff60792SMark Rutlandconfig ARM_PSCI_FW 9bff60792SMark Rutland bool 10bff60792SMark Rutland 11ea8b1c4aSKevin Brodskyconfig ARM_PSCI_CHECKER 12ea8b1c4aSKevin Brodsky bool "ARM PSCI checker" 1395140ed1SArnd Bergmann depends on ARM_PSCI_FW && HOTPLUG_CPU && CPU_IDLE && !TORTURE_TEST 14ea8b1c4aSKevin Brodsky help 15ea8b1c4aSKevin Brodsky Run the PSCI checker during startup. This checks that hotplug and 16ea8b1c4aSKevin Brodsky suspend operations work correctly when using PSCI. 17ea8b1c4aSKevin Brodsky 18ea8b1c4aSKevin Brodsky The torture tests may interfere with the PSCI checker by turning CPUs 19ea8b1c4aSKevin Brodsky on and off through hotplug, so for now torture tests and PSCI checker 20ea8b1c4aSKevin Brodsky are mutually exclusive. 21ea8b1c4aSKevin Brodsky 22aa4f886fSSudeep Hollaconfig ARM_SCMI_PROTOCOL 23aa4f886fSSudeep Holla bool "ARM System Control and Management Interface (SCMI) Message Protocol" 24aa4f886fSSudeep Holla depends on ARM || ARM64 || COMPILE_TEST 25aa4f886fSSudeep Holla depends on MAILBOX 26aa4f886fSSudeep Holla help 27aa4f886fSSudeep Holla ARM System Control and Management Interface (SCMI) protocol is a 28aa4f886fSSudeep Holla set of operating system-independent software interfaces that are 29aa4f886fSSudeep Holla used in system management. SCMI is extensible and currently provides 30aa4f886fSSudeep Holla interfaces for: Discovery and self-description of the interfaces 31aa4f886fSSudeep Holla it supports, Power domain management which is the ability to place 32aa4f886fSSudeep Holla a given device or domain into the various power-saving states that 33aa4f886fSSudeep Holla it supports, Performance management which is the ability to control 34aa4f886fSSudeep Holla the performance of a domain that is composed of compute engines 35aa4f886fSSudeep Holla such as application processors and other accelerators, Clock 36aa4f886fSSudeep Holla management which is the ability to set and inquire rates on platform 37aa4f886fSSudeep Holla managed clocks and Sensor management which is the ability to read 38aa4f886fSSudeep Holla sensor data, and be notified of sensor value. 39aa4f886fSSudeep Holla 40aa4f886fSSudeep Holla This protocol library provides interface for all the client drivers 41aa4f886fSSudeep Holla making use of the features offered by the SCMI. 42aa4f886fSSudeep Holla 43*898216c9SSudeep Hollaconfig ARM_SCMI_POWER_DOMAIN 44*898216c9SSudeep Holla tristate "SCMI power domain driver" 45*898216c9SSudeep Holla depends on ARM_SCMI_PROTOCOL || (COMPILE_TEST && OF) 46*898216c9SSudeep Holla default y 47*898216c9SSudeep Holla select PM_GENERIC_DOMAINS if PM 48*898216c9SSudeep Holla help 49*898216c9SSudeep Holla This enables support for the SCMI power domains which can be 50*898216c9SSudeep Holla enabled or disabled via the SCP firmware 51*898216c9SSudeep Holla 52*898216c9SSudeep Holla This driver can also be built as a module. If so, the module 53*898216c9SSudeep Holla will be called scmi_pm_domain. Note this may needed early in boot 54*898216c9SSudeep Holla before rootfs may be available. 55*898216c9SSudeep Holla 568cb7cf56SSudeep Hollaconfig ARM_SCPI_PROTOCOL 578cb7cf56SSudeep Holla tristate "ARM System Control and Power Interface (SCPI) Message Protocol" 5892f3e6ebSJean Delvare depends on ARM || ARM64 || COMPILE_TEST 598f1498c0SSudeep Holla depends on MAILBOX 608cb7cf56SSudeep Holla help 618cb7cf56SSudeep Holla System Control and Power Interface (SCPI) Message Protocol is 628cb7cf56SSudeep Holla defined for the purpose of communication between the Application 638cb7cf56SSudeep Holla Cores(AP) and the System Control Processor(SCP). The MHU peripheral 648cb7cf56SSudeep Holla provides a mechanism for inter-processor communication between SCP 658cb7cf56SSudeep Holla and AP. 668cb7cf56SSudeep Holla 678cb7cf56SSudeep Holla SCP controls most of the power managament on the Application 688cb7cf56SSudeep Holla Processors. It offers control and management of: the core/cluster 698cb7cf56SSudeep Holla power states, various power domain DVFS including the core/cluster, 708cb7cf56SSudeep Holla certain system clocks configuration, thermal sensors and many 718cb7cf56SSudeep Holla others. 728cb7cf56SSudeep Holla 738cb7cf56SSudeep Holla This protocol library provides interface for all the client drivers 748cb7cf56SSudeep Holla making use of the features offered by the SCP. 758cb7cf56SSudeep Holla 768bec4337SSudeep Hollaconfig ARM_SCPI_POWER_DOMAIN 778bec4337SSudeep Holla tristate "SCPI power domain driver" 78e517dfe6SArnd Bergmann depends on ARM_SCPI_PROTOCOL || (COMPILE_TEST && OF) 798bec4337SSudeep Holla default y 808bec4337SSudeep Holla select PM_GENERIC_DOMAINS if PM 818bec4337SSudeep Holla help 828bec4337SSudeep Holla This enables support for the SCPI power domains which can be 838bec4337SSudeep Holla enabled or disabled via the SCP firmware 848bec4337SSudeep Holla 85ad6eb31eSJames Morseconfig ARM_SDE_INTERFACE 86ad6eb31eSJames Morse bool "ARM Software Delegated Exception Interface (SDEI)" 87ad6eb31eSJames Morse depends on ARM64 88ad6eb31eSJames Morse help 89ad6eb31eSJames Morse The Software Delegated Exception Interface (SDEI) is an ARM 90ad6eb31eSJames Morse standard for registering callbacks from the platform firmware 91ad6eb31eSJames Morse into the OS. This is typically used to implement RAS notifications. 92ad6eb31eSJames Morse 931da177e4SLinus Torvaldsconfig EDD 945d18639aSChris Wedgwood tristate "BIOS Enhanced Disk Drive calls determine boot disk" 959b6e3e42SMike Frysinger depends on X86 961da177e4SLinus Torvalds help 971da177e4SLinus Torvalds Say Y or M here if you want to enable BIOS Enhanced Disk Drive 981da177e4SLinus Torvalds Services real mode BIOS calls to determine which disk 991da177e4SLinus Torvalds BIOS tries boot from. This information is then exported via sysfs. 1001da177e4SLinus Torvalds 1011da177e4SLinus Torvalds This option is experimental and is known to fail to boot on some 1021da177e4SLinus Torvalds obscure configurations. Most disk controller BIOS vendors do 1031da177e4SLinus Torvalds not yet implement this feature. 1041da177e4SLinus Torvalds 1058c4dd606STim Gardnerconfig EDD_OFF 1068c4dd606STim Gardner bool "Sets default behavior for EDD detection to off" 1078c4dd606STim Gardner depends on EDD 1088c4dd606STim Gardner default n 1098c4dd606STim Gardner help 1108c4dd606STim Gardner Say Y if you want EDD disabled by default, even though it is compiled into the 1118c4dd606STim Gardner kernel. Say N if you want EDD enabled by default. EDD can be dynamically set 1128c4dd606STim Gardner using the kernel parameter 'edd={on|skipmbr|off}'. 1138c4dd606STim Gardner 11469ac9cd6SBernhard Walleconfig FIRMWARE_MEMMAP 1156a108a14SDavid Rientjes bool "Add firmware-provided memory map to sysfs" if EXPERT 1169b6e3e42SMike Frysinger default X86 11769ac9cd6SBernhard Walle help 11869ac9cd6SBernhard Walle Add the firmware-provided (unmodified) memory map to /sys/firmware/memmap. 11969ac9cd6SBernhard Walle That memory map is used for example by kexec to set up parameter area 12069ac9cd6SBernhard Walle for the next kernel, but can also be used for debugging purposes. 12169ac9cd6SBernhard Walle 12269ac9cd6SBernhard Walle See also Documentation/ABI/testing/sysfs-firmware-memmap. 12369ac9cd6SBernhard Walle 1241da177e4SLinus Torvaldsconfig EFI_PCDP 1251da177e4SLinus Torvalds bool "Console device selection via EFI PCDP or HCDP table" 1261da177e4SLinus Torvalds depends on ACPI && EFI && IA64 1271da177e4SLinus Torvalds default y if IA64 1281da177e4SLinus Torvalds help 1291da177e4SLinus Torvalds If your firmware supplies the PCDP table, and you want to 1301da177e4SLinus Torvalds automatically use the primary console device it describes 1311da177e4SLinus Torvalds as the Linux console, say Y here. 1321da177e4SLinus Torvalds 1331da177e4SLinus Torvalds If your firmware supplies the HCDP table, and you want to 1341da177e4SLinus Torvalds use the first serial port it describes as the Linux console, 1351da177e4SLinus Torvalds say Y here. If your EFI ConOut path contains only a UART 1361da177e4SLinus Torvalds device, it will become the console automatically. Otherwise, 1371da177e4SLinus Torvalds you must specify the "console=hcdp" kernel boot argument. 1381da177e4SLinus Torvalds 1391da177e4SLinus Torvalds Neither the PCDP nor the HCDP affects naming of serial devices, 1401da177e4SLinus Torvalds so a serial console may be /dev/ttyS0, /dev/ttyS1, etc, depending 1411da177e4SLinus Torvalds on how the driver discovers devices. 1421da177e4SLinus Torvalds 1431da177e4SLinus Torvalds You must also enable the appropriate drivers (serial, VGA, etc.) 1441da177e4SLinus Torvalds 145631dd1a8SJustin P. Mattock See DIG64_HCDPv20_042804.pdf available from 146631dd1a8SJustin P. Mattock <http://www.dig64.org/specifications/> 1471da177e4SLinus Torvalds 1486c54c28eSAbhay Salunkeconfig DELL_RBU 1496c54c28eSAbhay Salunke tristate "BIOS update support for DELL systems via sysfs" 1506c52f137SDave Jones depends on X86 1516c54c28eSAbhay Salunke select FW_LOADER 152d05c39eaSTakashi Iwai select FW_LOADER_USER_HELPER 1536c54c28eSAbhay Salunke help 1546c54c28eSAbhay Salunke Say m if you want to have the option of updating the BIOS for your 1556c54c28eSAbhay Salunke DELL system. Note you need a Dell OpenManage or Dell Update package (DUP) 15609509603SMatt LaPlante supporting application to communicate with the BIOS regarding the new 1576c54c28eSAbhay Salunke image for the image update to take effect. 1586c54c28eSAbhay Salunke See <file:Documentation/dell_rbu.txt> for more details on the driver. 15990563ec4SDoug Warzecha 16090563ec4SDoug Warzechaconfig DCDBAS 16190563ec4SDoug Warzecha tristate "Dell Systems Management Base Driver" 1620d078f6fSBrian Gerst depends on X86 16390563ec4SDoug Warzecha help 16490563ec4SDoug Warzecha The Dell Systems Management Base Driver provides a sysfs interface 16590563ec4SDoug Warzecha for systems management software to perform System Management 16690563ec4SDoug Warzecha Interrupts (SMIs) and Host Control Actions (system power cycle or 16790563ec4SDoug Warzecha power off after OS shutdown) on certain Dell systems. 16890563ec4SDoug Warzecha 16990563ec4SDoug Warzecha See <file:Documentation/dcdbas.txt> for more details on the driver 17090563ec4SDoug Warzecha and the Dell systems on which Dell systems management software makes 17190563ec4SDoug Warzecha use of this driver. 17290563ec4SDoug Warzecha 17390563ec4SDoug Warzecha Say Y or M here to enable the driver for use by Dell systems 17490563ec4SDoug Warzecha management software such as Dell OpenManage. 17590563ec4SDoug Warzecha 1764f5c791aSLennart Poetteringconfig DMIID 1774f5c791aSLennart Poettering bool "Export DMI identification via sysfs to userspace" 1784f5c791aSLennart Poettering depends on DMI 1794f5c791aSLennart Poettering default y 1804f5c791aSLennart Poettering help 1814f5c791aSLennart Poettering Say Y here if you want to query SMBIOS/DMI system identification 1824f5c791aSLennart Poettering information from userspace through /sys/class/dmi/id/ or if you want 1834f5c791aSLennart Poettering DMI-based module auto-loading. 1844f5c791aSLennart Poettering 185948af1f0SMike Waychisonconfig DMI_SYSFS 186948af1f0SMike Waychison tristate "DMI table support in sysfs" 187948af1f0SMike Waychison depends on SYSFS && DMI 188948af1f0SMike Waychison default n 189948af1f0SMike Waychison help 190948af1f0SMike Waychison Say Y or M here to enable the exporting of the raw DMI table 191948af1f0SMike Waychison data via sysfs. This is useful for consuming the data without 192948af1f0SMike Waychison requiring any access to /dev/mem at all. Tables are found 193948af1f0SMike Waychison under /sys/firmware/dmi when this option is enabled and 194948af1f0SMike Waychison loaded. 195948af1f0SMike Waychison 196cf074402SArd Biesheuvelconfig DMI_SCAN_MACHINE_NON_EFI_FALLBACK 197cf074402SArd Biesheuvel bool 198cf074402SArd Biesheuvel 199138fe4e0SKonrad Rzeszutekconfig ISCSI_IBFT_FIND 200138fe4e0SKonrad Rzeszutek bool "iSCSI Boot Firmware Table Attributes" 2019d24622cSLv Zheng depends on X86 && ACPI 202138fe4e0SKonrad Rzeszutek default n 203138fe4e0SKonrad Rzeszutek help 204138fe4e0SKonrad Rzeszutek This option enables the kernel to find the region of memory 205138fe4e0SKonrad Rzeszutek in which the ISCSI Boot Firmware Table (iBFT) resides. This 206138fe4e0SKonrad Rzeszutek is necessary for iSCSI Boot Firmware Table Attributes module to work 207138fe4e0SKonrad Rzeszutek properly. 208138fe4e0SKonrad Rzeszutek 209138fe4e0SKonrad Rzeszutekconfig ISCSI_IBFT 210138fe4e0SKonrad Rzeszutek tristate "iSCSI Boot Firmware Table Attributes module" 211b33a84a3SMike Christie select ISCSI_BOOT_SYSFS 2123e0f686eSRandy Dunlap depends on ISCSI_IBFT_FIND && SCSI && SCSI_LOWLEVEL 213138fe4e0SKonrad Rzeszutek default n 214138fe4e0SKonrad Rzeszutek help 215138fe4e0SKonrad Rzeszutek This option enables support for detection and exposing of iSCSI 216138fe4e0SKonrad Rzeszutek Boot Firmware Table (iBFT) via sysfs to userspace. If you wish to 217138fe4e0SKonrad Rzeszutek detect iSCSI boot parameters dynamically during system boot, say Y. 218138fe4e0SKonrad Rzeszutek Otherwise, say N. 219138fe4e0SKonrad Rzeszutek 2204e3d6065SEric Anholtconfig RASPBERRYPI_FIRMWARE 2214e3d6065SEric Anholt tristate "Raspberry Pi Firmware Driver" 2224e3d6065SEric Anholt depends on BCM2835_MBOX 2234e3d6065SEric Anholt help 2244e3d6065SEric Anholt This option enables support for communicating with the firmware on the 2254e3d6065SEric Anholt Raspberry Pi. 2264e3d6065SEric Anholt 22775f3e8e4SGabriel Somloconfig FW_CFG_SYSFS 22875f3e8e4SGabriel Somlo tristate "QEMU fw_cfg device support in sysfs" 22975f3e8e4SGabriel Somlo depends on SYSFS && (ARM || ARM64 || PPC_PMAC || SPARC || X86) 23028c09ec4SArnd Bergmann depends on HAS_IOPORT_MAP 23175f3e8e4SGabriel Somlo default n 23275f3e8e4SGabriel Somlo help 23375f3e8e4SGabriel Somlo Say Y or M here to enable the exporting of the QEMU firmware 23475f3e8e4SGabriel Somlo configuration (fw_cfg) file entries via sysfs. Entries are 23575f3e8e4SGabriel Somlo found under /sys/firmware/fw_cfg when this option is enabled 23675f3e8e4SGabriel Somlo and loaded. 23775f3e8e4SGabriel Somlo 23875f3e8e4SGabriel Somloconfig FW_CFG_SYSFS_CMDLINE 23975f3e8e4SGabriel Somlo bool "QEMU fw_cfg device parameter parsing" 24075f3e8e4SGabriel Somlo depends on FW_CFG_SYSFS 24175f3e8e4SGabriel Somlo help 24275f3e8e4SGabriel Somlo Allow the qemu_fw_cfg device to be initialized via the kernel 24375f3e8e4SGabriel Somlo command line or using a module parameter. 24475f3e8e4SGabriel Somlo WARNING: Using incorrect parameters (base address in particular) 24575f3e8e4SGabriel Somlo may crash your system. 24675f3e8e4SGabriel Somlo 247916f743dSKumar Galaconfig QCOM_SCM 248916f743dSKumar Gala bool 249916f743dSKumar Gala depends on ARM || ARM64 250dd4fe5b2SBjorn Andersson select RESET_CONTROLLER 251916f743dSKumar Gala 25250b956f3SAndy Grossconfig QCOM_SCM_32 25350b956f3SAndy Gross def_bool y 25450b956f3SAndy Gross depends on QCOM_SCM && ARM 25550b956f3SAndy Gross 25650b956f3SAndy Grossconfig QCOM_SCM_64 25750b956f3SAndy Gross def_bool y 25850b956f3SAndy Gross depends on QCOM_SCM && ARM64 25950b956f3SAndy Gross 2608c1b7dc9SBjorn Anderssonconfig QCOM_SCM_DOWNLOAD_MODE_DEFAULT 2618c1b7dc9SBjorn Andersson bool "Qualcomm download mode enabled by default" 2628c1b7dc9SBjorn Andersson depends on QCOM_SCM 2638c1b7dc9SBjorn Andersson help 2648c1b7dc9SBjorn Andersson A device with "download mode" enabled will upon an unexpected 2658c1b7dc9SBjorn Andersson warm-restart enter a special debug mode that allows the user to 2668c1b7dc9SBjorn Andersson "download" memory content over USB for offline postmortem analysis. 2678c1b7dc9SBjorn Andersson The feature can be enabled/disabled on the kernel command line. 2688c1b7dc9SBjorn Andersson 2698c1b7dc9SBjorn Andersson Say Y here to enable "download mode" by default. 2708c1b7dc9SBjorn Andersson 271aa276781SNishanth Menonconfig TI_SCI_PROTOCOL 272aa276781SNishanth Menon tristate "TI System Control Interface (TISCI) Message Protocol" 273aa276781SNishanth Menon depends on TI_MESSAGE_MANAGER 274aa276781SNishanth Menon help 275aa276781SNishanth Menon TI System Control Interface (TISCI) Message Protocol is used to manage 276aa276781SNishanth Menon compute systems such as ARM, DSP etc with the system controller in 277aa276781SNishanth Menon complex System on Chip(SoC) such as those found on certain keystone 278aa276781SNishanth Menon generation SoC from TI. 279aa276781SNishanth Menon 280aa276781SNishanth Menon System controller provides various facilities including power 281aa276781SNishanth Menon management function support. 282aa276781SNishanth Menon 283aa276781SNishanth Menon This protocol library is used by client drivers to use the features 284aa276781SNishanth Menon provided by the system controller. 285aa276781SNishanth Menon 28698dd64f3SJens Wiklanderconfig HAVE_ARM_SMCCC 28798dd64f3SJens Wiklander bool 28898dd64f3SJens Wiklander 289f6e734a8SRafał Miłeckisource "drivers/firmware/broadcom/Kconfig" 29074c5b31cSMike Waychisonsource "drivers/firmware/google/Kconfig" 29104851772SMatt Flemingsource "drivers/firmware/efi/Kconfig" 2922c4ddb21SCarlo Caionesource "drivers/firmware/meson/Kconfig" 293ca791d7fSThierry Redingsource "drivers/firmware/tegra/Kconfig" 29474c5b31cSMike Waychison 2951da177e4SLinus Torvaldsendmenu 296