stackprot: Make our test a bit more complex
[pandora-u-boot.git] / cmd / Kconfig
index b25d2b0..f962bb7 100644 (file)
@@ -55,8 +55,17 @@ config SYS_PROMPT
          This string is displayed in the command line to the left of the
          cursor.
 
+config SYS_PROMPT_HUSH_PS2
+       string "Hush shell secondary prompt"
+       depends on HUSH_PARSER
+       default "> "
+       help
+         This defines the secondary prompt string, which is
+         printed when the command interpreter needs more input
+         to complete a command. Usually "> ".
+
 config SYS_XTRACE
-       string "Command execution tracer"
+       bool "Command execution tracer"
        depends on CMDLINE
        default y if CMDLINE
        help
@@ -66,123 +75,6 @@ config SYS_XTRACE
          To enable the tracer a variable "xtrace" needs to be defined in
          the environment.
 
-menu "Autoboot options"
-
-config AUTOBOOT
-       bool "Autoboot"
-       default y
-       help
-         This enables the autoboot.  See doc/README.autoboot for detail.
-
-config AUTOBOOT_KEYED
-       bool "Stop autobooting via specific input key / string"
-       default n
-       help
-         This option enables stopping (aborting) of the automatic
-         boot feature only by issuing a specific input key or
-         string. If not enabled, any input key will abort the
-         U-Boot automatic booting process and bring the device
-         to the U-Boot prompt for user input.
-
-config AUTOBOOT_PROMPT
-       string "Autoboot stop prompt"
-       depends on AUTOBOOT_KEYED
-       default "Autoboot in %d seconds\\n"
-       help
-         This string is displayed before the boot delay selected by
-         CONFIG_BOOTDELAY starts. If it is not defined there is no
-         output indicating that autoboot is in progress.
-
-         Note that this define is used as the (only) argument to a
-         printf() call, so it may contain '%' format specifications,
-         provided that it also includes, sepearated by commas exactly
-         like in a printf statement, the required arguments. It is
-         the responsibility of the user to select only such arguments
-         that are valid in the given context.
-
-config AUTOBOOT_ENCRYPTION
-       bool "Enable encryption in autoboot stopping"
-       depends on AUTOBOOT_KEYED
-       help
-         This option allows a string to be entered into U-Boot to stop the
-         autoboot. The string itself is hashed and compared against the hash
-         in the environment variable 'bootstopkeysha256'. If it matches then
-         boot stops and a command-line prompt is presented.
-
-         This provides a way to ship a secure production device which can also
-         be accessed at the U-Boot command line.
-
-config AUTOBOOT_DELAY_STR
-       string "Delay autobooting via specific input key / string"
-       depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
-       help
-         This option delays the automatic boot feature by issuing
-         a specific input key or string. If CONFIG_AUTOBOOT_DELAY_STR
-         or the environment variable "bootdelaykey" is specified
-         and this string is received from console input before
-         autoboot starts booting, U-Boot gives a command prompt. The
-         U-Boot prompt will time out if CONFIG_BOOT_RETRY_TIME is
-         used, otherwise it never times out.
-
-config AUTOBOOT_STOP_STR
-       string "Stop autobooting via specific input key / string"
-       depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
-       help
-         This option enables stopping (aborting) of the automatic
-         boot feature only by issuing a specific input key or
-         string. If CONFIG_AUTOBOOT_STOP_STR or the environment
-         variable "bootstopkey" is specified and this string is
-         received from console input before autoboot starts booting,
-         U-Boot gives a command prompt. The U-Boot prompt never
-         times out, even if CONFIG_BOOT_RETRY_TIME is used.
-
-config AUTOBOOT_KEYED_CTRLC
-       bool "Enable Ctrl-C autoboot interruption"
-       depends on AUTOBOOT_KEYED && !AUTOBOOT_ENCRYPTION
-       default n
-       help
-         This option allows for the boot sequence to be interrupted
-         by ctrl-c, in addition to the "bootdelaykey" and "bootstopkey".
-         Setting this variable provides an escape sequence from the
-         limited "password" strings.
-
-config AUTOBOOT_STOP_STR_SHA256
-       string "Stop autobooting via SHA256 encrypted password"
-       depends on AUTOBOOT_KEYED && AUTOBOOT_ENCRYPTION
-       help
-         This option adds the feature to only stop the autobooting,
-         and therefore boot into the U-Boot prompt, when the input
-         string / password matches a values that is encypted via
-         a SHA256 hash and saved in the environment.
-
-config AUTOBOOT_USE_MENUKEY
-       bool "Allow a specify key to run a menu from the environment"
-       depends on !AUTOBOOT_KEYED
-       help
-         If a specific key is pressed to stop autoboot, then the commands in
-         the environment variable 'menucmd' are executed before boot starts.
-
-config AUTOBOOT_MENUKEY
-       int "ASCII value of boot key to show a menu"
-       default 0
-       depends on AUTOBOOT_USE_MENUKEY
-       help
-         If this key is pressed to stop autoboot, then the commands in the
-         environment variable 'menucmd' will be executed before boot starts.
-         For example, 33 means "!" in ASCII, so pressing ! at boot would take
-         this action.
-
-config AUTOBOOT_MENU_SHOW
-       bool "Show a menu on boot"
-       depends on CMD_BOOTMENU
-       help
-         This enables the boot menu, controlled by environment variables
-         defined by the board. The menu starts after running the 'preboot'
-         environmnent variable (if enabled) and before handling the boot delay.
-         See README.bootmenu for more details.
-
-endmenu
-
 config BUILD_BIN2C
        bool
 
@@ -192,7 +84,8 @@ menu "Info commands"
 
 config CMD_ACPI
        bool "acpi"
-       default y if ACPIGEN
+       depends on ACPIGEN
+       default y
        help
          List and dump ACPI tables. ACPI (Advanced Configuration and Power
          Interface) is used mostly on x86 for providing information to the
@@ -204,6 +97,13 @@ config CMD_ACPI
          between the firmware and OS, and is particularly useful when you
          want to make hardware changes without the OS needing to be adjusted.
 
+config CMD_ADDRMAP
+       bool "addrmap"
+       depends on ADDR_MAP
+       default y
+       help
+         List non-identity virtual-physical memory mappings for 32-bit CPUs.
+
 config CMD_BDI
        bool "bdinfo"
        default y
@@ -230,6 +130,7 @@ config CMD_CONSOLE
 
 config CMD_CPU
        bool "cpu"
+       depends on CPU
        help
          Print information about available CPUs. This normally shows the
          number of CPUs, type (e.g. manufacturer, architecture, product or
@@ -431,6 +332,18 @@ config CMD_FDT
        help
          Do FDT related setup before booting into the Operating System.
 
+config SUPPORT_EXTENSION_SCAN
+       bool
+
+config CMD_EXTENSION
+       bool "Extension board management command"
+       select CMD_FDT
+       depends on SUPPORT_EXTENSION_SCAN
+       help
+         Enables the "extension" command, which allows to detect
+         extension boards connected to the system, and apply
+         corresponding Device Tree overlays.
+
 config CMD_GO
        bool "go"
        default y
@@ -1035,6 +948,12 @@ config CMD_GPIO
        help
          GPIO support.
 
+config CMD_PWM
+       bool "pwm"
+       depends on DM_PWM
+       help
+         Control PWM channels, this allows invert/config/enable/disable PWM channels.
+
 config CMD_GPT
        bool "GPT (GUID Partition Table) command"
        select EFI_PARTITION
@@ -1142,8 +1061,25 @@ config CMD_LSBLK
          Print list of available block device drivers, and for each, the list
          of known block devices.
 
+config CMD_MBR
+       bool "MBR (Master Boot Record) command"
+       select DOS_PARTITION
+       select HAVE_BLOCK_DEVICE
+       help
+         Enable the 'mbr' command to ready and write MBR (Master Boot Record)
+         style partition tables.
+
+config CMD_MISC
+       bool "misc"
+       depends on MISC
+       help
+         Enable the command "misc" for accessing miscellaneous devices with
+         a MISC uclass driver. The command provides listing all MISC devices
+         as well as read and write functionalities via their drivers.
+
 config CMD_MMC
        bool "mmc"
+       depends on MMC
        help
          MMC memory mapped support.
 
@@ -1183,6 +1119,14 @@ config CMD_CLONE
          initial flashing by external block device without network
          or usb support.
 
+config CMD_OPTEE_RPMB
+       bool "Enable read/write support on RPMB via OPTEE"
+       depends on SUPPORT_EMMC_RPMB && OPTEE
+       help
+         Enable the commands for reading, writing persistent named values
+         in the Replay Protection Memory Block partition in eMMC by
+         using Persistent Objects in OPTEE
+
 config CMD_MTD
        bool "mtd"
        depends on MTD
@@ -1190,6 +1134,12 @@ config CMD_MTD
        help
          MTD commands support.
 
+config CMD_MUX
+       bool "mux"
+       depends on MULTIPLEXER
+       help
+        List, select, and deselect mux controllers on the fly.
+
 config CMD_NAND
        bool "nand"
        default y if NAND_SUNXI
@@ -1258,6 +1208,7 @@ config CMD_PCI
 
 config CMD_PINMUX
        bool "pinmux - show pins muxing"
+       depends on PINCTRL
        default y if PINCTRL
        help
          Parse all available pin-controllers and show pins muxing. This
@@ -1371,6 +1322,7 @@ config CMD_UNIVERSE
 
 config CMD_USB
        bool "usb"
+       depends on USB
        select HAVE_BLOCK_DEVICE
        help
          USB support.
@@ -1407,6 +1359,7 @@ config CMD_PVBLOCK
 config CMD_VIRTIO
        bool "virtio"
        depends on VIRTIO
+       depends on HAVE_BLOCK_DEVICE
        default y if VIRTIO
        help
          VirtIO block device support
@@ -1777,7 +1730,7 @@ config CMD_EFIDEBUG
 
 config CMD_EXCEPTION
        bool "exception - raise exception"
-       depends on ARM || RISCV || X86
+       depends on ARM || RISCV || SANDBOX || X86
        help
          Enable the 'exception' command which allows to raise an exception.
 
@@ -1825,8 +1778,7 @@ config CMD_RNG
        help
          Print bytes from the hardware random number generator.
 
-# TODO: rename to CMD_SLEEP
-config CMD_MISC
+config CMD_SLEEP
        bool "sleep"
        default y
        help
@@ -1868,6 +1820,77 @@ config CMD_QFW
          feature is to allow easy loading of files passed to qemu-system
          via -kernel / -initrd
 
+config CMD_PSTORE
+       bool "pstore"
+       help
+         This provides access to Linux PStore with Rammoops backend. The main
+         feature is to allow to display or save PStore records.
+
+         See doc/pstore.rst for more information.
+
+if CMD_PSTORE
+
+config CMD_PSTORE_MEM_ADDR
+       hex "Memory Address"
+       depends on CMD_PSTORE
+       help
+         Base addr used for PStore ramoops memory, should be identical to
+         ramoops.mem_address parameter used by kernel
+
+config CMD_PSTORE_MEM_SIZE
+       hex "Memory size"
+       depends on CMD_PSTORE
+       default "0x10000"
+       help
+         Size of PStore ramoops memory, should be identical to ramoops.mem_size
+         parameter used by kernel, a power of 2 and larger than the sum of the
+         record sizes
+
+config CMD_PSTORE_RECORD_SIZE
+       hex "Dump record size"
+       depends on CMD_PSTORE
+       default "0x1000"
+       help
+         Size of each dump done on oops/panic, should be identical to
+         ramoops.record_size parameter used by kernel and a power of 2
+         Must be non-zero
+
+config CMD_PSTORE_CONSOLE_SIZE
+       hex "Kernel console log size"
+       depends on CMD_PSTORE
+       default "0x1000"
+       help
+         Size of kernel console log, should be identical to
+         ramoops.console_size parameter used by kernel and a power of 2
+         Must be non-zero
+
+config CMD_PSTORE_FTRACE_SIZE
+       hex "FTrace log size"
+       depends on CMD_PSTORE
+       default "0x1000"
+       help
+         Size of ftrace log, should be identical to ramoops.ftrace_size
+         parameter used by kernel and a power of 2
+
+config CMD_PSTORE_PMSG_SIZE
+       hex "User space message log size"
+       depends on CMD_PSTORE
+       default "0x1000"
+       help
+         Size of user space message log, should be identical to
+         ramoops.pmsg_size parameter used by kernel and a power of 2
+
+config CMD_PSTORE_ECC_SIZE
+       int "ECC size"
+       depends on CMD_PSTORE
+       default "0"
+       help
+       if non-zero, the option enables ECC support and specifies ECC buffer
+       size in bytes (1 is a special value, means 16 bytes ECC), should be
+       identical to ramoops.ramoops_ecc parameter used by kernel
+
+endif
+
 source "cmd/mvebu/Kconfig"
 
 config CMD_TERMINAL
@@ -1933,7 +1956,7 @@ config CMD_REGULATOR
 
          The '-f' (force) option can be used for set the value which exceeds
          the limits, which are found in device-tree and are kept in regulator's
-         uclass platdata structure.
+         uclass plat structure.
 
 endmenu
 
@@ -1950,6 +1973,8 @@ config CMD_AES
 
 config CMD_BLOB
        bool "Enable the 'blob' command"
+       depends on !MX6ULL && !MX6SLL && !MX6SL
+       select IMX_HAB if ARCH_MX6 || ARCH_MX7 || ARCH_MX7ULP || ARCH_IMX8M
        help
          This is used with the Freescale secure boot mechanism.
 
@@ -2021,12 +2046,19 @@ config HASH_VERIFY
        help
          Add -v option to verify data against a hash.
 
+config CMD_SCP03
+       bool "scp03 - SCP03 enable and rotate/provision operations"
+       depends on SCP03
+       help
+         This command provides access to a Trusted Application
+         running in a TEE to request Secure Channel Protocol 03
+         (SCP03) enablement and/or rotation of its SCP03 keys.
+
 config CMD_TPM_V1
        bool
 
 config CMD_TPM_V2
        bool
-       select CMD_LOG
 
 config CMD_TPM
        bool "Enable the 'tpm' command"
@@ -2235,6 +2267,15 @@ config CMD_BEDBUG
          for some PowerPC processors. For details please see the
          documentation in doc/README.bedbug.
 
+config CMD_CBSYSINFO
+       bool "cbsysinfo"
+       depends on X86
+       default y if SYS_COREBOOT
+       help
+         This provides information about the coreboot sysinfo table stored in
+         memory by coreboot before jumping to U-Boot. It can be useful for
+         debugging the beaaviour of coreboot or U-Boot.
+
 config CMD_DIAG
        bool "diag - Board diagnostics"
        help
@@ -2264,6 +2305,7 @@ config CMD_KGDB
 config CMD_LOG
        bool "log - Generation, control and access to logging"
        select LOG
+       select GETOPT
        help
          This provides access to logging features. It allows the output of
          log data to be controlled to a limited extent (setting up the default
@@ -2295,6 +2337,15 @@ config CMD_AVB
            avb read_part_hex - read data from partition and output to stdout
            avb write_part - write data to partition
            avb verify - run full verification chain
+
+config CMD_STACKPROTECTOR_TEST
+       bool "Test command for stack protector"
+       depends on STACKPROTECTOR
+       help
+         Enable stackprot_test command
+         The stackprot_test command will force a stack overrun to test
+         the stack smashing detection mechanisms.
+
 endmenu
 
 config CMD_UBI