| .. | .. |
|---|
| 1 | +# SPDX-License-Identifier: GPL-2.0-only |
|---|
| 1 | 2 | # |
|---|
| 2 | 3 | # For a description of the syntax of this configuration file, |
|---|
| 3 | | -# see Documentation/kbuild/kconfig-language.txt. |
|---|
| 4 | +# see Documentation/kbuild/kconfig-language.rst. |
|---|
| 4 | 5 | # |
|---|
| 5 | 6 | |
|---|
| 6 | 7 | menu "Firmware Drivers" |
|---|
| 7 | 8 | |
|---|
| 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 && CPU_IDLE && !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 | 9 | config ARM_SCMI_PROTOCOL |
|---|
| 23 | | - bool "ARM System Control and Management Interface (SCMI) Message Protocol" |
|---|
| 10 | + tristate "ARM System Control and Management Interface (SCMI) Message Protocol" |
|---|
| 24 | 11 | depends on ARM || ARM64 || COMPILE_TEST |
|---|
| 25 | | - depends on MAILBOX |
|---|
| 12 | + depends on MAILBOX || HAVE_ARM_SMCCC_DISCOVERY |
|---|
| 26 | 13 | help |
|---|
| 27 | 14 | ARM System Control and Management Interface (SCMI) protocol is a |
|---|
| 28 | 15 | set of operating system-independent software interfaces that are |
|---|
| .. | .. |
|---|
| 85 | 72 | config ARM_SDE_INTERFACE |
|---|
| 86 | 73 | bool "ARM Software Delegated Exception Interface (SDEI)" |
|---|
| 87 | 74 | depends on ARM64 |
|---|
| 75 | + depends on ACPI_APEI_GHES |
|---|
| 88 | 76 | help |
|---|
| 89 | 77 | The Software Delegated Exception Interface (SDEI) is an ARM |
|---|
| 90 | 78 | standard for registering callbacks from the platform firmware |
|---|
| .. | .. |
|---|
| 145 | 133 | See DIG64_HCDPv20_042804.pdf available from |
|---|
| 146 | 134 | <http://www.dig64.org/specifications/> |
|---|
| 147 | 135 | |
|---|
| 148 | | -config DELL_RBU |
|---|
| 149 | | - tristate "BIOS update support for DELL systems via sysfs" |
|---|
| 150 | | - depends on X86 |
|---|
| 151 | | - select FW_LOADER |
|---|
| 152 | | - select FW_LOADER_USER_HELPER |
|---|
| 153 | | - help |
|---|
| 154 | | - Say m if you want to have the option of updating the BIOS for your |
|---|
| 155 | | - DELL system. Note you need a Dell OpenManage or Dell Update package (DUP) |
|---|
| 156 | | - supporting application to communicate with the BIOS regarding the new |
|---|
| 157 | | - image for the image update to take effect. |
|---|
| 158 | | - See <file:Documentation/dell_rbu.txt> for more details on the driver. |
|---|
| 159 | | - |
|---|
| 160 | | -config DCDBAS |
|---|
| 161 | | - tristate "Dell Systems Management Base Driver" |
|---|
| 162 | | - depends on X86 |
|---|
| 163 | | - help |
|---|
| 164 | | - The Dell Systems Management Base Driver provides a sysfs interface |
|---|
| 165 | | - for systems management software to perform System Management |
|---|
| 166 | | - Interrupts (SMIs) and Host Control Actions (system power cycle or |
|---|
| 167 | | - power off after OS shutdown) on certain Dell systems. |
|---|
| 168 | | - |
|---|
| 169 | | - See <file:Documentation/dcdbas.txt> for more details on the driver |
|---|
| 170 | | - and the Dell systems on which Dell systems management software makes |
|---|
| 171 | | - use of this driver. |
|---|
| 172 | | - |
|---|
| 173 | | - Say Y or M here to enable the driver for use by Dell systems |
|---|
| 174 | | - management software such as Dell OpenManage. |
|---|
| 175 | | - |
|---|
| 176 | 136 | config DMIID |
|---|
| 177 | 137 | bool "Export DMI identification via sysfs to userspace" |
|---|
| 178 | 138 | depends on DMI |
|---|
| .. | .. |
|---|
| 227 | 187 | |
|---|
| 228 | 188 | config FW_CFG_SYSFS |
|---|
| 229 | 189 | tristate "QEMU fw_cfg device support in sysfs" |
|---|
| 230 | | - depends on SYSFS && (ARM || ARM64 || PPC_PMAC || SPARC || X86) |
|---|
| 190 | + depends on SYSFS && (ARM || ARM64 || PARISC || PPC_PMAC || SPARC || X86) |
|---|
| 231 | 191 | depends on HAS_IOPORT_MAP |
|---|
| 232 | 192 | default n |
|---|
| 233 | 193 | help |
|---|
| .. | .. |
|---|
| 245 | 205 | WARNING: Using incorrect parameters (base address in particular) |
|---|
| 246 | 206 | may crash your system. |
|---|
| 247 | 207 | |
|---|
| 208 | +config INTEL_STRATIX10_SERVICE |
|---|
| 209 | + tristate "Intel Stratix10 Service Layer" |
|---|
| 210 | + depends on (ARCH_STRATIX10 || ARCH_AGILEX) && HAVE_ARM_SMCCC |
|---|
| 211 | + default n |
|---|
| 212 | + help |
|---|
| 213 | + Intel Stratix10 service layer runs at privileged exception level, |
|---|
| 214 | + interfaces with the service providers (FPGA manager is one of them) |
|---|
| 215 | + and manages secure monitor call to communicate with secure monitor |
|---|
| 216 | + software at secure monitor exception level. |
|---|
| 217 | + |
|---|
| 218 | + Say Y here if you want Stratix10 service layer support. |
|---|
| 219 | + |
|---|
| 220 | +config INTEL_STRATIX10_RSU |
|---|
| 221 | + tristate "Intel Stratix10 Remote System Update" |
|---|
| 222 | + depends on INTEL_STRATIX10_SERVICE |
|---|
| 223 | + help |
|---|
| 224 | + The Intel Remote System Update (RSU) driver exposes interfaces |
|---|
| 225 | + access through the Intel Service Layer to user space via sysfs |
|---|
| 226 | + device attribute nodes. The RSU interfaces report/control some of |
|---|
| 227 | + the optional RSU features of the Stratix 10 SoC FPGA. |
|---|
| 228 | + |
|---|
| 229 | + The RSU provides a way for customers to update the boot |
|---|
| 230 | + configuration of a Stratix 10 SoC device with significantly reduced |
|---|
| 231 | + risk of corrupting the bitstream storage and bricking the system. |
|---|
| 232 | + |
|---|
| 233 | + Enable RSU support if you are using an Intel SoC FPGA with the RSU |
|---|
| 234 | + feature enabled and you want Linux user space control. |
|---|
| 235 | + |
|---|
| 236 | + Say Y here if you want Intel RSU support. |
|---|
| 237 | + |
|---|
| 248 | 238 | config QCOM_SCM |
|---|
| 249 | | - bool |
|---|
| 239 | + tristate "Qcom SCM driver" |
|---|
| 250 | 240 | depends on ARM || ARM64 |
|---|
| 251 | 241 | depends on HAVE_ARM_SMCCC |
|---|
| 252 | 242 | select RESET_CONTROLLER |
|---|
| 253 | | - |
|---|
| 254 | | -config QCOM_SCM_32 |
|---|
| 255 | | - def_bool y |
|---|
| 256 | | - depends on QCOM_SCM && ARM |
|---|
| 257 | | - |
|---|
| 258 | | -config QCOM_SCM_64 |
|---|
| 259 | | - def_bool y |
|---|
| 260 | | - depends on QCOM_SCM && ARM64 |
|---|
| 261 | 243 | |
|---|
| 262 | 244 | config QCOM_SCM_DOWNLOAD_MODE_DEFAULT |
|---|
| 263 | 245 | bool "Qualcomm download mode enabled by default" |
|---|
| .. | .. |
|---|
| 292 | 274 | This protocol library is used by client drivers to use the features |
|---|
| 293 | 275 | provided by the system controller. |
|---|
| 294 | 276 | |
|---|
| 295 | | -config HAVE_ARM_SMCCC |
|---|
| 296 | | - bool |
|---|
| 277 | +config TRUSTED_FOUNDATIONS |
|---|
| 278 | + bool "Trusted Foundations secure monitor support" |
|---|
| 279 | + depends on ARM && CPU_V7 |
|---|
| 280 | + help |
|---|
| 281 | + Some devices (including most early Tegra-based consumer devices on |
|---|
| 282 | + the market) are booted with the Trusted Foundations secure monitor |
|---|
| 283 | + active, requiring some core operations to be performed by the secure |
|---|
| 284 | + monitor instead of the kernel. |
|---|
| 285 | + |
|---|
| 286 | + This option allows the kernel to invoke the secure monitor whenever |
|---|
| 287 | + required on devices using Trusted Foundations. See the functions and |
|---|
| 288 | + comments in linux/firmware/trusted_foundations.h or the device tree |
|---|
| 289 | + bindings for "tlm,trusted-foundations" for details on how to use it. |
|---|
| 290 | + |
|---|
| 291 | + Choose N if you don't know what this is about. |
|---|
| 292 | + |
|---|
| 293 | +config TURRIS_MOX_RWTM |
|---|
| 294 | + tristate "Turris Mox rWTM secure firmware driver" |
|---|
| 295 | + depends on ARCH_MVEBU || COMPILE_TEST |
|---|
| 296 | + depends on HAS_DMA && OF |
|---|
| 297 | + depends on MAILBOX |
|---|
| 298 | + select HW_RANDOM |
|---|
| 299 | + select ARMADA_37XX_RWTM_MBOX |
|---|
| 300 | + help |
|---|
| 301 | + This driver communicates with the firmware on the Cortex-M3 secure |
|---|
| 302 | + processor of the Turris Mox router. Enable if you are building for |
|---|
| 303 | + Turris Mox, and you will be able to read the device serial number and |
|---|
| 304 | + other manufacturing data and also utilize the Entropy Bit Generator |
|---|
| 305 | + for hardware random number generation. |
|---|
| 297 | 306 | |
|---|
| 298 | 307 | source "drivers/firmware/broadcom/Kconfig" |
|---|
| 299 | 308 | source "drivers/firmware/google/Kconfig" |
|---|
| 300 | 309 | source "drivers/firmware/efi/Kconfig" |
|---|
| 310 | +source "drivers/firmware/imx/Kconfig" |
|---|
| 301 | 311 | source "drivers/firmware/meson/Kconfig" |
|---|
| 312 | +source "drivers/firmware/psci/Kconfig" |
|---|
| 313 | +source "drivers/firmware/smccc/Kconfig" |
|---|
| 302 | 314 | source "drivers/firmware/tegra/Kconfig" |
|---|
| 315 | +source "drivers/firmware/xilinx/Kconfig" |
|---|
| 303 | 316 | |
|---|
| 304 | 317 | endmenu |
|---|