Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   1) # SPDX-License-Identifier: GPL-2.0-only
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   2) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   3) # For a description of the syntax of this configuration file,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   4) # see Documentation/kbuild/kconfig-language.rst.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   5) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   6) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   7) menu "Firmware Drivers"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   8) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300   9) config ARM_SCMI_PROTOCOL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  10) 	tristate "ARM System Control and Management Interface (SCMI) Message Protocol"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  11) 	depends on ARM || ARM64 || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  12) 	depends on MAILBOX || HAVE_ARM_SMCCC_DISCOVERY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  13) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  14) 	  ARM System Control and Management Interface (SCMI) protocol is a
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  15) 	  set of operating system-independent software interfaces that are
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  16) 	  used in system management. SCMI is extensible and currently provides
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  17) 	  interfaces for: Discovery and self-description of the interfaces
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  18) 	  it supports, Power domain management which is the ability to place
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  19) 	  a given device or domain into the various power-saving states that
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  20) 	  it supports, Performance management which is the ability to control
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  21) 	  the performance of a domain that is composed of compute engines
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  22) 	  such as application processors and other accelerators, Clock
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  23) 	  management which is the ability to set and inquire rates on platform
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  24) 	  managed clocks and Sensor management which is the ability to read
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  25) 	  sensor data, and be notified of sensor value.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  26) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  27) 	  This protocol library provides interface for all the client drivers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  28) 	  making use of the features offered by the SCMI.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  29) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  30) config ARM_SCMI_POWER_DOMAIN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  31) 	tristate "SCMI power domain driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  32) 	depends on ARM_SCMI_PROTOCOL || (COMPILE_TEST && OF)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  33) 	default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  34) 	select PM_GENERIC_DOMAINS if PM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  35) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  36) 	  This enables support for the SCMI power domains which can be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  37) 	  enabled or disabled via the SCP firmware
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  38) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  39) 	  This driver can also be built as a module.  If so, the module
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  40) 	  will be called scmi_pm_domain. Note this may needed early in boot
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  41) 	  before rootfs may be available.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  42) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  43) config ARM_SCPI_PROTOCOL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  44) 	tristate "ARM System Control and Power Interface (SCPI) Message Protocol"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  45) 	depends on ARM || ARM64 || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  46) 	depends on MAILBOX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  47) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  48) 	  System Control and Power Interface (SCPI) Message Protocol is
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  49) 	  defined for the purpose of communication between the Application
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  50) 	  Cores(AP) and the System Control Processor(SCP). The MHU peripheral
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  51) 	  provides a mechanism for inter-processor communication between SCP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  52) 	  and AP.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  53) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  54) 	  SCP controls most of the power managament on the Application
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  55) 	  Processors. It offers control and management of: the core/cluster
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  56) 	  power states, various power domain DVFS including the core/cluster,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  57) 	  certain system clocks configuration, thermal sensors and many
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  58) 	  others.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  59) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  60) 	  This protocol library provides interface for all the client drivers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  61) 	  making use of the features offered by the SCP.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  62) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  63) config ARM_SCPI_POWER_DOMAIN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  64) 	tristate "SCPI power domain driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  65) 	depends on ARM_SCPI_PROTOCOL || (COMPILE_TEST && OF)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  66) 	default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  67) 	select PM_GENERIC_DOMAINS if PM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  68) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  69) 	  This enables support for the SCPI power domains which can be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  70) 	  enabled or disabled via the SCP firmware
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  71) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  72) config ARM_SDE_INTERFACE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  73) 	bool "ARM Software Delegated Exception Interface (SDEI)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  74) 	depends on ARM64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  75) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  76) 	  The Software Delegated Exception Interface (SDEI) is an ARM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  77) 	  standard for registering callbacks from the platform firmware
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  78) 	  into the OS. This is typically used to implement RAS notifications.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  79) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  80) config EDD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  81) 	tristate "BIOS Enhanced Disk Drive calls determine boot disk"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  82) 	depends on X86
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  83) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  84) 	  Say Y or M here if you want to enable BIOS Enhanced Disk Drive
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  85) 	  Services real mode BIOS calls to determine which disk
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  86) 	  BIOS tries boot from.  This information is then exported via sysfs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  87) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  88) 	  This option is experimental and is known to fail to boot on some
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  89)           obscure configurations. Most disk controller BIOS vendors do
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  90)           not yet implement this feature.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  91) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  92) config EDD_OFF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  93) 	bool "Sets default behavior for EDD detection to off"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  94) 	depends on EDD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  95) 	default n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  96) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  97) 	  Say Y if you want EDD disabled by default, even though it is compiled into the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  98) 	  kernel. Say N if you want EDD enabled by default. EDD can be dynamically set
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  99) 	  using the kernel parameter 'edd={on|skipmbr|off}'.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) config FIRMWARE_MEMMAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102)     bool "Add firmware-provided memory map to sysfs" if EXPERT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103)     default X86
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104)     help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105)       Add the firmware-provided (unmodified) memory map to /sys/firmware/memmap.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106)       That memory map is used for example by kexec to set up parameter area
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107)       for the next kernel, but can also be used for debugging purposes.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109)       See also Documentation/ABI/testing/sysfs-firmware-memmap.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) config EFI_PCDP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) 	bool "Console device selection via EFI PCDP or HCDP table"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) 	depends on ACPI && EFI && IA64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) 	default y if IA64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) 	  If your firmware supplies the PCDP table, and you want to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) 	  automatically use the primary console device it describes
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) 	  as the Linux console, say Y here.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) 	  If your firmware supplies the HCDP table, and you want to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) 	  use the first serial port it describes as the Linux console,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) 	  say Y here.  If your EFI ConOut path contains only a UART
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) 	  device, it will become the console automatically.  Otherwise,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) 	  you must specify the "console=hcdp" kernel boot argument.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) 	  Neither the PCDP nor the HCDP affects naming of serial devices,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) 	  so a serial console may be /dev/ttyS0, /dev/ttyS1, etc, depending
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128) 	  on how the driver discovers devices.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) 	  You must also enable the appropriate drivers (serial, VGA, etc.)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) 	  See DIG64_HCDPv20_042804.pdf available from
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133) 	  <http://www.dig64.org/specifications/> 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) config DMIID
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136)     bool "Export DMI identification via sysfs to userspace"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137)     depends on DMI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138)     default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) 	  Say Y here if you want to query SMBIOS/DMI system identification
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) 	  information from userspace through /sys/class/dmi/id/ or if you want
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) 	  DMI-based module auto-loading.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) config DMI_SYSFS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) 	tristate "DMI table support in sysfs"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) 	depends on SYSFS && DMI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) 	default n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149) 	  Say Y or M here to enable the exporting of the raw DMI table
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) 	  data via sysfs.  This is useful for consuming the data without
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) 	  requiring any access to /dev/mem at all.  Tables are found
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) 	  under /sys/firmware/dmi when this option is enabled and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) 	  loaded.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) config DMI_SCAN_MACHINE_NON_EFI_FALLBACK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) 	bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) config ISCSI_IBFT_FIND
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) 	bool "iSCSI Boot Firmware Table Attributes"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) 	depends on X86 && ISCSI_IBFT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) 	default n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) 	  This option enables the kernel to find the region of memory
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164) 	  in which the ISCSI Boot Firmware Table (iBFT) resides. This
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) 	  is necessary for iSCSI Boot Firmware Table Attributes module to work
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) 	  properly.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) config ISCSI_IBFT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169) 	tristate "iSCSI Boot Firmware Table Attributes module"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) 	select ISCSI_BOOT_SYSFS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171) 	select ISCSI_IBFT_FIND if X86
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) 	depends on ACPI && SCSI && SCSI_LOWLEVEL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173) 	default	n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175) 	  This option enables support for detection and exposing of iSCSI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176) 	  Boot Firmware Table (iBFT) via sysfs to userspace. If you wish to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) 	  detect iSCSI boot parameters dynamically during system boot, say Y.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) 	  Otherwise, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) config RASPBERRYPI_FIRMWARE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) 	tristate "Raspberry Pi Firmware Driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182) 	depends on BCM2835_MBOX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184) 	  This option enables support for communicating with the firmware on the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) 	  Raspberry Pi.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) config FW_CFG_SYSFS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188) 	tristate "QEMU fw_cfg device support in sysfs"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) 	depends on SYSFS && (ARM || ARM64 || PARISC || PPC_PMAC || SPARC || X86)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) 	depends on HAS_IOPORT_MAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) 	default n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) 	  Say Y or M here to enable the exporting of the QEMU firmware
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194) 	  configuration (fw_cfg) file entries via sysfs. Entries are
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195) 	  found under /sys/firmware/fw_cfg when this option is enabled
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) 	  and loaded.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198) config FW_CFG_SYSFS_CMDLINE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) 	bool "QEMU fw_cfg device parameter parsing"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200) 	depends on FW_CFG_SYSFS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) 	  Allow the qemu_fw_cfg device to be initialized via the kernel
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203) 	  command line or using a module parameter.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204) 	  WARNING: Using incorrect parameters (base address in particular)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) 	  may crash your system.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207) config INTEL_STRATIX10_SERVICE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) 	tristate "Intel Stratix10 Service Layer"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209) 	depends on (ARCH_STRATIX10 || ARCH_AGILEX) && HAVE_ARM_SMCCC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210) 	default n
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212) 	  Intel Stratix10 service layer runs at privileged exception level,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213) 	  interfaces with the service providers (FPGA manager is one of them)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 214) 	  and manages secure monitor call to communicate with secure monitor
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 215) 	  software at secure monitor exception level.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 216) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 217) 	  Say Y here if you want Stratix10 service layer support.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 218) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 219) config INTEL_STRATIX10_RSU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 220) 	tristate "Intel Stratix10 Remote System Update"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 221) 	depends on INTEL_STRATIX10_SERVICE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 222) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 223) 	  The Intel Remote System Update (RSU) driver exposes interfaces
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 224) 	  access through the Intel Service Layer to user space via sysfs
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 225) 	  device attribute nodes. The RSU interfaces report/control some of
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 226) 	  the optional RSU features of the Stratix 10 SoC FPGA.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 227) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 228) 	  The RSU provides a way for customers to update the boot
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 229) 	  configuration of a Stratix 10 SoC device with significantly reduced
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 230) 	  risk of corrupting the bitstream storage and bricking the system.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 231) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 232) 	  Enable RSU support if you are using an Intel SoC FPGA with the RSU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 233) 	  feature enabled and you want Linux user space control.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 234) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 235) 	  Say Y here if you want Intel RSU support.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 236) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 237) config QCOM_SCM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 238) 	tristate "Qcom SCM driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 239) 	depends on ARM || ARM64
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 240) 	depends on HAVE_ARM_SMCCC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 241) 	select RESET_CONTROLLER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 242) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 243) config QCOM_SCM_DOWNLOAD_MODE_DEFAULT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 244) 	bool "Qualcomm download mode enabled by default"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 245) 	depends on QCOM_SCM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 246) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 247) 	  A device with "download mode" enabled will upon an unexpected
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 248) 	  warm-restart enter a special debug mode that allows the user to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 249) 	  "download" memory content over USB for offline postmortem analysis.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 250) 	  The feature can be enabled/disabled on the kernel command line.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 251) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 252) 	  Say Y here to enable "download mode" by default.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 253) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 254) config ROCKCHIP_SIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 255) 	tristate "Rockchip SIP interface"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 256) 	depends on HAVE_ARM_SMCCC && ARCH_ROCKCHIP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 257) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 258) 	  Say Y here if you want to enable SIP callbacks for Rockchip platforms
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 259) 	  This option enables support for communicating with the ATF.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 260) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 261) config TI_SCI_PROTOCOL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 262) 	tristate "TI System Control Interface (TISCI) Message Protocol"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 263) 	depends on TI_MESSAGE_MANAGER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 264) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 265) 	  TI System Control Interface (TISCI) Message Protocol is used to manage
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 266) 	  compute systems such as ARM, DSP etc with the system controller in
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 267) 	  complex System on Chip(SoC) such as those found on certain keystone
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 268) 	  generation SoC from TI.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 269) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 270) 	  System controller provides various facilities including power
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 271) 	  management function support.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 272) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 273) 	  This protocol library is used by client drivers to use the features
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 274) 	  provided by the system controller.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 275) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 276) config TRUSTED_FOUNDATIONS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 277) 	bool "Trusted Foundations secure monitor support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 278) 	depends on ARM && CPU_V7
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 279) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 280) 	  Some devices (including most early Tegra-based consumer devices on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 281) 	  the market) are booted with the Trusted Foundations secure monitor
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 282) 	  active, requiring some core operations to be performed by the secure
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 283) 	  monitor instead of the kernel.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 284) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 285) 	  This option allows the kernel to invoke the secure monitor whenever
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 286) 	  required on devices using Trusted Foundations. See the functions and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 287) 	  comments in linux/firmware/trusted_foundations.h or the device tree
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 288) 	  bindings for "tlm,trusted-foundations" for details on how to use it.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 289) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 290) 	  Choose N if you don't know what this is about.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 291) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 292) config TURRIS_MOX_RWTM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 293) 	tristate "Turris Mox rWTM secure firmware driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 294) 	depends on ARCH_MVEBU || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 295) 	depends on HAS_DMA && OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 296) 	depends on MAILBOX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 297) 	select HW_RANDOM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 298) 	select ARMADA_37XX_RWTM_MBOX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 299) 	help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 300) 	  This driver communicates with the firmware on the Cortex-M3 secure
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 301) 	  processor of the Turris Mox router. Enable if you are building for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 302) 	  Turris Mox, and you will be able to read the device serial number and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 303) 	  other manufacturing data and also utilize the Entropy Bit Generator
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 304) 	  for hardware random number generation.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 305) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 306) source "drivers/firmware/broadcom/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 307) source "drivers/firmware/google/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 308) source "drivers/firmware/efi/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 309) source "drivers/firmware/imx/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 310) source "drivers/firmware/meson/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 311) source "drivers/firmware/psci/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 312) source "drivers/firmware/smccc/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 313) source "drivers/firmware/tegra/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 314) source "drivers/firmware/xilinx/Kconfig"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 315) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 316) endmenu