forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
307 lines
11 KiB
307 lines
11 KiB
# SPDX-License-Identifier: GPL-2.0-only |
|
# |
|
# For a description of the syntax of this configuration file, |
|
# see Documentation/kbuild/kconfig-language.rst. |
|
# |
|
|
|
menu "Firmware Drivers" |
|
|
|
source "drivers/firmware/arm_scmi/Kconfig" |
|
|
|
config ARM_SCPI_PROTOCOL |
|
tristate "ARM System Control and Power Interface (SCPI) Message Protocol" |
|
depends on ARM || ARM64 || COMPILE_TEST |
|
depends on MAILBOX |
|
help |
|
System Control and Power Interface (SCPI) Message Protocol is |
|
defined for the purpose of communication between the Application |
|
Cores(AP) and the System Control Processor(SCP). The MHU peripheral |
|
provides a mechanism for inter-processor communication between SCP |
|
and AP. |
|
|
|
SCP controls most of the power management on the Application |
|
Processors. It offers control and management of: the core/cluster |
|
power states, various power domain DVFS including the core/cluster, |
|
certain system clocks configuration, thermal sensors and many |
|
others. |
|
|
|
This protocol library provides interface for all the client drivers |
|
making use of the features offered by the SCP. |
|
|
|
config ARM_SCPI_POWER_DOMAIN |
|
tristate "SCPI power domain driver" |
|
depends on ARM_SCPI_PROTOCOL || (COMPILE_TEST && OF) |
|
default y |
|
select PM_GENERIC_DOMAINS if PM |
|
help |
|
This enables support for the SCPI power domains which can be |
|
enabled or disabled via the SCP firmware |
|
|
|
config ARM_SDE_INTERFACE |
|
bool "ARM Software Delegated Exception Interface (SDEI)" |
|
depends on ARM64 |
|
help |
|
The Software Delegated Exception Interface (SDEI) is an ARM |
|
standard for registering callbacks from the platform firmware |
|
into the OS. This is typically used to implement RAS notifications. |
|
|
|
config EDD |
|
tristate "BIOS Enhanced Disk Drive calls determine boot disk" |
|
depends on X86 |
|
help |
|
Say Y or M here if you want to enable BIOS Enhanced Disk Drive |
|
Services real mode BIOS calls to determine which disk |
|
BIOS tries boot from. This information is then exported via sysfs. |
|
|
|
This option is experimental and is known to fail to boot on some |
|
obscure configurations. Most disk controller BIOS vendors do |
|
not yet implement this feature. |
|
|
|
config EDD_OFF |
|
bool "Sets default behavior for EDD detection to off" |
|
depends on EDD |
|
default n |
|
help |
|
Say Y if you want EDD disabled by default, even though it is compiled into the |
|
kernel. Say N if you want EDD enabled by default. EDD can be dynamically set |
|
using the kernel parameter 'edd={on|skipmbr|off}'. |
|
|
|
config FIRMWARE_MEMMAP |
|
bool "Add firmware-provided memory map to sysfs" if EXPERT |
|
default X86 |
|
help |
|
Add the firmware-provided (unmodified) memory map to /sys/firmware/memmap. |
|
That memory map is used for example by kexec to set up parameter area |
|
for the next kernel, but can also be used for debugging purposes. |
|
|
|
See also Documentation/ABI/testing/sysfs-firmware-memmap. |
|
|
|
config EFI_PCDP |
|
bool "Console device selection via EFI PCDP or HCDP table" |
|
depends on ACPI && EFI && IA64 |
|
default y if IA64 |
|
help |
|
If your firmware supplies the PCDP table, and you want to |
|
automatically use the primary console device it describes |
|
as the Linux console, say Y here. |
|
|
|
If your firmware supplies the HCDP table, and you want to |
|
use the first serial port it describes as the Linux console, |
|
say Y here. If your EFI ConOut path contains only a UART |
|
device, it will become the console automatically. Otherwise, |
|
you must specify the "console=hcdp" kernel boot argument. |
|
|
|
Neither the PCDP nor the HCDP affects naming of serial devices, |
|
so a serial console may be /dev/ttyS0, /dev/ttyS1, etc, depending |
|
on how the driver discovers devices. |
|
|
|
You must also enable the appropriate drivers (serial, VGA, etc.) |
|
|
|
See DIG64_HCDPv20_042804.pdf available from |
|
<http://www.dig64.org/specifications/> |
|
|
|
config DMIID |
|
bool "Export DMI identification via sysfs to userspace" |
|
depends on DMI |
|
default y |
|
help |
|
Say Y here if you want to query SMBIOS/DMI system identification |
|
information from userspace through /sys/class/dmi/id/ or if you want |
|
DMI-based module auto-loading. |
|
|
|
config DMI_SYSFS |
|
tristate "DMI table support in sysfs" |
|
depends on SYSFS && DMI |
|
default n |
|
help |
|
Say Y or M here to enable the exporting of the raw DMI table |
|
data via sysfs. This is useful for consuming the data without |
|
requiring any access to /dev/mem at all. Tables are found |
|
under /sys/firmware/dmi when this option is enabled and |
|
loaded. |
|
|
|
config DMI_SCAN_MACHINE_NON_EFI_FALLBACK |
|
bool |
|
|
|
config ISCSI_IBFT_FIND |
|
bool "iSCSI Boot Firmware Table Attributes" |
|
depends on X86 && ISCSI_IBFT |
|
default n |
|
help |
|
This option enables the kernel to find the region of memory |
|
in which the ISCSI Boot Firmware Table (iBFT) resides. This |
|
is necessary for iSCSI Boot Firmware Table Attributes module to work |
|
properly. |
|
|
|
config ISCSI_IBFT |
|
tristate "iSCSI Boot Firmware Table Attributes module" |
|
select ISCSI_BOOT_SYSFS |
|
select ISCSI_IBFT_FIND if X86 |
|
depends on ACPI && SCSI && SCSI_LOWLEVEL |
|
default n |
|
help |
|
This option enables support for detection and exposing of iSCSI |
|
Boot Firmware Table (iBFT) via sysfs to userspace. If you wish to |
|
detect iSCSI boot parameters dynamically during system boot, say Y. |
|
Otherwise, say N. |
|
|
|
config RASPBERRYPI_FIRMWARE |
|
tristate "Raspberry Pi Firmware Driver" |
|
depends on BCM2835_MBOX |
|
help |
|
This option enables support for communicating with the firmware on the |
|
Raspberry Pi. |
|
|
|
config FW_CFG_SYSFS |
|
tristate "QEMU fw_cfg device support in sysfs" |
|
depends on SYSFS && (ARM || ARM64 || PARISC || PPC_PMAC || SPARC || X86) |
|
depends on HAS_IOPORT_MAP |
|
default n |
|
help |
|
Say Y or M here to enable the exporting of the QEMU firmware |
|
configuration (fw_cfg) file entries via sysfs. Entries are |
|
found under /sys/firmware/fw_cfg when this option is enabled |
|
and loaded. |
|
|
|
config FW_CFG_SYSFS_CMDLINE |
|
bool "QEMU fw_cfg device parameter parsing" |
|
depends on FW_CFG_SYSFS |
|
help |
|
Allow the qemu_fw_cfg device to be initialized via the kernel |
|
command line or using a module parameter. |
|
WARNING: Using incorrect parameters (base address in particular) |
|
may crash your system. |
|
|
|
config INTEL_STRATIX10_SERVICE |
|
tristate "Intel Stratix10 Service Layer" |
|
depends on ARCH_INTEL_SOCFPGA && ARM64 && HAVE_ARM_SMCCC |
|
default n |
|
help |
|
Intel Stratix10 service layer runs at privileged exception level, |
|
interfaces with the service providers (FPGA manager is one of them) |
|
and manages secure monitor call to communicate with secure monitor |
|
software at secure monitor exception level. |
|
|
|
Say Y here if you want Stratix10 service layer support. |
|
|
|
config INTEL_STRATIX10_RSU |
|
tristate "Intel Stratix10 Remote System Update" |
|
depends on INTEL_STRATIX10_SERVICE |
|
help |
|
The Intel Remote System Update (RSU) driver exposes interfaces |
|
access through the Intel Service Layer to user space via sysfs |
|
device attribute nodes. The RSU interfaces report/control some of |
|
the optional RSU features of the Stratix 10 SoC FPGA. |
|
|
|
The RSU provides a way for customers to update the boot |
|
configuration of a Stratix 10 SoC device with significantly reduced |
|
risk of corrupting the bitstream storage and bricking the system. |
|
|
|
Enable RSU support if you are using an Intel SoC FPGA with the RSU |
|
feature enabled and you want Linux user space control. |
|
|
|
Say Y here if you want Intel RSU support. |
|
|
|
config QCOM_SCM |
|
tristate |
|
|
|
config QCOM_SCM_DOWNLOAD_MODE_DEFAULT |
|
bool "Qualcomm download mode enabled by default" |
|
depends on QCOM_SCM |
|
help |
|
A device with "download mode" enabled will upon an unexpected |
|
warm-restart enter a special debug mode that allows the user to |
|
"download" memory content over USB for offline postmortem analysis. |
|
The feature can be enabled/disabled on the kernel command line. |
|
|
|
Say Y here to enable "download mode" by default. |
|
|
|
config SYSFB |
|
bool |
|
default y |
|
depends on X86 || EFI |
|
|
|
config SYSFB_SIMPLEFB |
|
bool "Mark VGA/VBE/EFI FB as generic system framebuffer" |
|
depends on SYSFB |
|
help |
|
Firmwares often provide initial graphics framebuffers so the BIOS, |
|
bootloader or kernel can show basic video-output during boot for |
|
user-guidance and debugging. Historically, x86 used the VESA BIOS |
|
Extensions and EFI-framebuffers for this, which are mostly limited |
|
to x86 BIOS or EFI systems. |
|
This option, if enabled, marks VGA/VBE/EFI framebuffers as generic |
|
framebuffers so the new generic system-framebuffer drivers can be |
|
used instead. If the framebuffer is not compatible with the generic |
|
modes, it is advertised as fallback platform framebuffer so legacy |
|
drivers like efifb, vesafb and uvesafb can pick it up. |
|
If this option is not selected, all system framebuffers are always |
|
marked as fallback platform framebuffers as usual. |
|
|
|
Note: Legacy fbdev drivers, including vesafb, efifb, uvesafb, will |
|
not be able to pick up generic system framebuffers if this option |
|
is selected. You are highly encouraged to enable simplefb as |
|
replacement if you select this option. simplefb can correctly deal |
|
with generic system framebuffers. But you should still keep vesafb |
|
and others enabled as fallback if a system framebuffer is |
|
incompatible with simplefb. |
|
|
|
If unsure, say Y. |
|
|
|
config TI_SCI_PROTOCOL |
|
tristate "TI System Control Interface (TISCI) Message Protocol" |
|
depends on TI_MESSAGE_MANAGER |
|
help |
|
TI System Control Interface (TISCI) Message Protocol is used to manage |
|
compute systems such as ARM, DSP etc with the system controller in |
|
complex System on Chip(SoC) such as those found on certain keystone |
|
generation SoC from TI. |
|
|
|
System controller provides various facilities including power |
|
management function support. |
|
|
|
This protocol library is used by client drivers to use the features |
|
provided by the system controller. |
|
|
|
config TRUSTED_FOUNDATIONS |
|
bool "Trusted Foundations secure monitor support" |
|
depends on ARM && CPU_V7 |
|
help |
|
Some devices (including most early Tegra-based consumer devices on |
|
the market) are booted with the Trusted Foundations secure monitor |
|
active, requiring some core operations to be performed by the secure |
|
monitor instead of the kernel. |
|
|
|
This option allows the kernel to invoke the secure monitor whenever |
|
required on devices using Trusted Foundations. See the functions and |
|
comments in linux/firmware/trusted_foundations.h or the device tree |
|
bindings for "tlm,trusted-foundations" for details on how to use it. |
|
|
|
Choose N if you don't know what this is about. |
|
|
|
config TURRIS_MOX_RWTM |
|
tristate "Turris Mox rWTM secure firmware driver" |
|
depends on ARCH_MVEBU || COMPILE_TEST |
|
depends on HAS_DMA && OF |
|
depends on MAILBOX |
|
select HW_RANDOM |
|
select ARMADA_37XX_RWTM_MBOX |
|
help |
|
This driver communicates with the firmware on the Cortex-M3 secure |
|
processor of the Turris Mox router. Enable if you are building for |
|
Turris Mox, and you will be able to read the device serial number and |
|
other manufacturing data and also utilize the Entropy Bit Generator |
|
for hardware random number generation. |
|
|
|
source "drivers/firmware/arm_ffa/Kconfig" |
|
source "drivers/firmware/broadcom/Kconfig" |
|
source "drivers/firmware/google/Kconfig" |
|
source "drivers/firmware/efi/Kconfig" |
|
source "drivers/firmware/imx/Kconfig" |
|
source "drivers/firmware/meson/Kconfig" |
|
source "drivers/firmware/psci/Kconfig" |
|
source "drivers/firmware/smccc/Kconfig" |
|
source "drivers/firmware/tegra/Kconfig" |
|
source "drivers/firmware/xilinx/Kconfig" |
|
|
|
endmenu
|
|
|