xref: /openbmc/linux/drivers/firmware/Kconfig (revision 8bec4337)
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
118cb7cf56SSudeep Hollaconfig ARM_SCPI_PROTOCOL
128cb7cf56SSudeep Holla	tristate "ARM System Control and Power Interface (SCPI) Message Protocol"
138f1498c0SSudeep Holla	depends on MAILBOX
148cb7cf56SSudeep Holla	help
158cb7cf56SSudeep Holla	  System Control and Power Interface (SCPI) Message Protocol is
168cb7cf56SSudeep Holla	  defined for the purpose of communication between the Application
178cb7cf56SSudeep Holla	  Cores(AP) and the System Control Processor(SCP). The MHU peripheral
188cb7cf56SSudeep Holla	  provides a mechanism for inter-processor communication between SCP
198cb7cf56SSudeep Holla	  and AP.
208cb7cf56SSudeep Holla
218cb7cf56SSudeep Holla	  SCP controls most of the power managament on the Application
228cb7cf56SSudeep Holla	  Processors. It offers control and management of: the core/cluster
238cb7cf56SSudeep Holla	  power states, various power domain DVFS including the core/cluster,
248cb7cf56SSudeep Holla	  certain system clocks configuration, thermal sensors and many
258cb7cf56SSudeep Holla	  others.
268cb7cf56SSudeep Holla
278cb7cf56SSudeep Holla	  This protocol library provides interface for all the client drivers
288cb7cf56SSudeep Holla	  making use of the features offered by the SCP.
298cb7cf56SSudeep Holla
30*8bec4337SSudeep Hollaconfig ARM_SCPI_POWER_DOMAIN
31*8bec4337SSudeep Holla	tristate "SCPI power domain driver"
32*8bec4337SSudeep Holla	depends on ARM_SCPI_PROTOCOL || COMPILE_TEST
33*8bec4337SSudeep Holla	default y
34*8bec4337SSudeep Holla	select PM_GENERIC_DOMAINS if PM
35*8bec4337SSudeep Holla	select PM_GENERIC_DOMAINS_OF if PM
36*8bec4337SSudeep Holla	help
37*8bec4337SSudeep Holla	  This enables support for the SCPI power domains which can be
38*8bec4337SSudeep Holla	  enabled or disabled via the SCP firmware
39*8bec4337SSudeep Holla
401da177e4SLinus Torvaldsconfig EDD
415d18639aSChris Wedgwood	tristate "BIOS Enhanced Disk Drive calls determine boot disk"
429b6e3e42SMike Frysinger	depends on X86
431da177e4SLinus Torvalds	help
441da177e4SLinus Torvalds	  Say Y or M here if you want to enable BIOS Enhanced Disk Drive
451da177e4SLinus Torvalds	  Services real mode BIOS calls to determine which disk
461da177e4SLinus Torvalds	  BIOS tries boot from.  This information is then exported via sysfs.
471da177e4SLinus Torvalds
481da177e4SLinus Torvalds	  This option is experimental and is known to fail to boot on some
491da177e4SLinus Torvalds          obscure configurations. Most disk controller BIOS vendors do
501da177e4SLinus Torvalds          not yet implement this feature.
511da177e4SLinus Torvalds
528c4dd606STim Gardnerconfig EDD_OFF
538c4dd606STim Gardner	bool "Sets default behavior for EDD detection to off"
548c4dd606STim Gardner	depends on EDD
558c4dd606STim Gardner	default n
568c4dd606STim Gardner	help
578c4dd606STim Gardner	  Say Y if you want EDD disabled by default, even though it is compiled into the
588c4dd606STim Gardner	  kernel. Say N if you want EDD enabled by default. EDD can be dynamically set
598c4dd606STim Gardner	  using the kernel parameter 'edd={on|skipmbr|off}'.
608c4dd606STim Gardner
6169ac9cd6SBernhard Walleconfig FIRMWARE_MEMMAP
626a108a14SDavid Rientjes    bool "Add firmware-provided memory map to sysfs" if EXPERT
639b6e3e42SMike Frysinger    default X86
6469ac9cd6SBernhard Walle    help
6569ac9cd6SBernhard Walle      Add the firmware-provided (unmodified) memory map to /sys/firmware/memmap.
6669ac9cd6SBernhard Walle      That memory map is used for example by kexec to set up parameter area
6769ac9cd6SBernhard Walle      for the next kernel, but can also be used for debugging purposes.
6869ac9cd6SBernhard Walle
6969ac9cd6SBernhard Walle      See also Documentation/ABI/testing/sysfs-firmware-memmap.
7069ac9cd6SBernhard Walle
711da177e4SLinus Torvaldsconfig EFI_PCDP
721da177e4SLinus Torvalds	bool "Console device selection via EFI PCDP or HCDP table"
731da177e4SLinus Torvalds	depends on ACPI && EFI && IA64
741da177e4SLinus Torvalds	default y if IA64
751da177e4SLinus Torvalds	help
761da177e4SLinus Torvalds	  If your firmware supplies the PCDP table, and you want to
771da177e4SLinus Torvalds	  automatically use the primary console device it describes
781da177e4SLinus Torvalds	  as the Linux console, say Y here.
791da177e4SLinus Torvalds
801da177e4SLinus Torvalds	  If your firmware supplies the HCDP table, and you want to
811da177e4SLinus Torvalds	  use the first serial port it describes as the Linux console,
821da177e4SLinus Torvalds	  say Y here.  If your EFI ConOut path contains only a UART
831da177e4SLinus Torvalds	  device, it will become the console automatically.  Otherwise,
841da177e4SLinus Torvalds	  you must specify the "console=hcdp" kernel boot argument.
851da177e4SLinus Torvalds
861da177e4SLinus Torvalds	  Neither the PCDP nor the HCDP affects naming of serial devices,
871da177e4SLinus Torvalds	  so a serial console may be /dev/ttyS0, /dev/ttyS1, etc, depending
881da177e4SLinus Torvalds	  on how the driver discovers devices.
891da177e4SLinus Torvalds
901da177e4SLinus Torvalds	  You must also enable the appropriate drivers (serial, VGA, etc.)
911da177e4SLinus Torvalds
92631dd1a8SJustin P. Mattock	  See DIG64_HCDPv20_042804.pdf available from
93631dd1a8SJustin P. Mattock	  <http://www.dig64.org/specifications/>
941da177e4SLinus Torvalds
956c54c28eSAbhay Salunkeconfig DELL_RBU
966c54c28eSAbhay Salunke	tristate "BIOS update support for DELL systems via sysfs"
976c52f137SDave Jones	depends on X86
986c54c28eSAbhay Salunke	select FW_LOADER
99d05c39eaSTakashi Iwai	select FW_LOADER_USER_HELPER
1006c54c28eSAbhay Salunke	help
1016c54c28eSAbhay Salunke	 Say m if you want to have the option of updating the BIOS for your
1026c54c28eSAbhay Salunke	 DELL system. Note you need a Dell OpenManage or Dell Update package (DUP)
10309509603SMatt LaPlante	 supporting application to communicate with the BIOS regarding the new
1046c54c28eSAbhay Salunke	 image for the image update to take effect.
1056c54c28eSAbhay Salunke	 See <file:Documentation/dell_rbu.txt> for more details on the driver.
10690563ec4SDoug Warzecha
10790563ec4SDoug Warzechaconfig DCDBAS
10890563ec4SDoug Warzecha	tristate "Dell Systems Management Base Driver"
1090d078f6fSBrian Gerst	depends on X86
11090563ec4SDoug Warzecha	help
11190563ec4SDoug Warzecha	  The Dell Systems Management Base Driver provides a sysfs interface
11290563ec4SDoug Warzecha	  for systems management software to perform System Management
11390563ec4SDoug Warzecha	  Interrupts (SMIs) and Host Control Actions (system power cycle or
11490563ec4SDoug Warzecha	  power off after OS shutdown) on certain Dell systems.
11590563ec4SDoug Warzecha
11690563ec4SDoug Warzecha	  See <file:Documentation/dcdbas.txt> for more details on the driver
11790563ec4SDoug Warzecha	  and the Dell systems on which Dell systems management software makes
11890563ec4SDoug Warzecha	  use of this driver.
11990563ec4SDoug Warzecha
12090563ec4SDoug Warzecha	  Say Y or M here to enable the driver for use by Dell systems
12190563ec4SDoug Warzecha	  management software such as Dell OpenManage.
12290563ec4SDoug Warzecha
1234f5c791aSLennart Poetteringconfig DMIID
1244f5c791aSLennart Poettering    bool "Export DMI identification via sysfs to userspace"
1254f5c791aSLennart Poettering    depends on DMI
1264f5c791aSLennart Poettering    default y
1274f5c791aSLennart Poettering	help
1284f5c791aSLennart Poettering	  Say Y here if you want to query SMBIOS/DMI system identification
1294f5c791aSLennart Poettering	  information from userspace through /sys/class/dmi/id/ or if you want
1304f5c791aSLennart Poettering	  DMI-based module auto-loading.
1314f5c791aSLennart Poettering
132948af1f0SMike Waychisonconfig DMI_SYSFS
133948af1f0SMike Waychison	tristate "DMI table support in sysfs"
134948af1f0SMike Waychison	depends on SYSFS && DMI
135948af1f0SMike Waychison	default n
136948af1f0SMike Waychison	help
137948af1f0SMike Waychison	  Say Y or M here to enable the exporting of the raw DMI table
138948af1f0SMike Waychison	  data via sysfs.  This is useful for consuming the data without
139948af1f0SMike Waychison	  requiring any access to /dev/mem at all.  Tables are found
140948af1f0SMike Waychison	  under /sys/firmware/dmi when this option is enabled and
141948af1f0SMike Waychison	  loaded.
142948af1f0SMike Waychison
143cf074402SArd Biesheuvelconfig DMI_SCAN_MACHINE_NON_EFI_FALLBACK
144cf074402SArd Biesheuvel	bool
145cf074402SArd Biesheuvel
146138fe4e0SKonrad Rzeszutekconfig ISCSI_IBFT_FIND
147138fe4e0SKonrad Rzeszutek	bool "iSCSI Boot Firmware Table Attributes"
1489d24622cSLv Zheng	depends on X86 && ACPI
149138fe4e0SKonrad Rzeszutek	default n
150138fe4e0SKonrad Rzeszutek	help
151138fe4e0SKonrad Rzeszutek	  This option enables the kernel to find the region of memory
152138fe4e0SKonrad Rzeszutek	  in which the ISCSI Boot Firmware Table (iBFT) resides. This
153138fe4e0SKonrad Rzeszutek	  is necessary for iSCSI Boot Firmware Table Attributes module to work
154138fe4e0SKonrad Rzeszutek	  properly.
155138fe4e0SKonrad Rzeszutek
156138fe4e0SKonrad Rzeszutekconfig ISCSI_IBFT
157138fe4e0SKonrad Rzeszutek	tristate "iSCSI Boot Firmware Table Attributes module"
158b33a84a3SMike Christie	select ISCSI_BOOT_SYSFS
1593e0f686eSRandy Dunlap	depends on ISCSI_IBFT_FIND && SCSI && SCSI_LOWLEVEL
160138fe4e0SKonrad Rzeszutek	default	n
161138fe4e0SKonrad Rzeszutek	help
162138fe4e0SKonrad Rzeszutek	  This option enables support for detection and exposing of iSCSI
163138fe4e0SKonrad Rzeszutek	  Boot Firmware Table (iBFT) via sysfs to userspace. If you wish to
164138fe4e0SKonrad Rzeszutek	  detect iSCSI boot parameters dynamically during system boot, say Y.
165138fe4e0SKonrad Rzeszutek	  Otherwise, say N.
166138fe4e0SKonrad Rzeszutek
1674e3d6065SEric Anholtconfig RASPBERRYPI_FIRMWARE
1684e3d6065SEric Anholt	tristate "Raspberry Pi Firmware Driver"
1694e3d6065SEric Anholt	depends on BCM2835_MBOX
1704e3d6065SEric Anholt	help
1714e3d6065SEric Anholt	  This option enables support for communicating with the firmware on the
1724e3d6065SEric Anholt	  Raspberry Pi.
1734e3d6065SEric Anholt
17475f3e8e4SGabriel Somloconfig FW_CFG_SYSFS
17575f3e8e4SGabriel Somlo	tristate "QEMU fw_cfg device support in sysfs"
17675f3e8e4SGabriel Somlo	depends on SYSFS && (ARM || ARM64 || PPC_PMAC || SPARC || X86)
17728c09ec4SArnd Bergmann	depends on HAS_IOPORT_MAP
17875f3e8e4SGabriel Somlo	default n
17975f3e8e4SGabriel Somlo	help
18075f3e8e4SGabriel Somlo	  Say Y or M here to enable the exporting of the QEMU firmware
18175f3e8e4SGabriel Somlo	  configuration (fw_cfg) file entries via sysfs. Entries are
18275f3e8e4SGabriel Somlo	  found under /sys/firmware/fw_cfg when this option is enabled
18375f3e8e4SGabriel Somlo	  and loaded.
18475f3e8e4SGabriel Somlo
18575f3e8e4SGabriel Somloconfig FW_CFG_SYSFS_CMDLINE
18675f3e8e4SGabriel Somlo	bool "QEMU fw_cfg device parameter parsing"
18775f3e8e4SGabriel Somlo	depends on FW_CFG_SYSFS
18875f3e8e4SGabriel Somlo	help
18975f3e8e4SGabriel Somlo	  Allow the qemu_fw_cfg device to be initialized via the kernel
19075f3e8e4SGabriel Somlo	  command line or using a module parameter.
19175f3e8e4SGabriel Somlo	  WARNING: Using incorrect parameters (base address in particular)
19275f3e8e4SGabriel Somlo	  may crash your system.
19375f3e8e4SGabriel Somlo
194916f743dSKumar Galaconfig QCOM_SCM
195916f743dSKumar Gala	bool
196916f743dSKumar Gala	depends on ARM || ARM64
197916f743dSKumar Gala
19850b956f3SAndy Grossconfig QCOM_SCM_32
19950b956f3SAndy Gross	def_bool y
20050b956f3SAndy Gross	depends on QCOM_SCM && ARM
20150b956f3SAndy Gross
20250b956f3SAndy Grossconfig QCOM_SCM_64
20350b956f3SAndy Gross	def_bool y
20450b956f3SAndy Gross	depends on QCOM_SCM && ARM64
20550b956f3SAndy Gross
20698dd64f3SJens Wiklanderconfig HAVE_ARM_SMCCC
20798dd64f3SJens Wiklander	bool
20898dd64f3SJens Wiklander
209f6e734a8SRafał Miłeckisource "drivers/firmware/broadcom/Kconfig"
21074c5b31cSMike Waychisonsource "drivers/firmware/google/Kconfig"
21104851772SMatt Flemingsource "drivers/firmware/efi/Kconfig"
21274c5b31cSMike Waychison
2131da177e4SLinus Torvaldsendmenu
214