]> git.ipfire.org Git - people/ms/u-boot.git/blobdiff - cmd/Kconfig
Convert CONFIG_CMD_JFFS2 to Kconfig
[people/ms/u-boot.git] / cmd / Kconfig
index 86554ea36229098581f0c5dd22a40e9ea8090cf3..e4cb6c92b0cc6b1e56c7cd0e3f96d690ffd462ab 100644 (file)
@@ -126,6 +126,18 @@ config CMD_BDI
        help
          Print board info
 
+config CMD_CONFIG
+       bool "config"
+       select BUILD_BIN2C
+       default SANDBOX
+       help
+         Print ".config" contents.
+
+         If this option is enabled, the ".config" file contents are embedded
+         in the U-Boot image and can be printed on the console by the "config"
+         command.  This provides information of which options are enabled on
+         the running U-Boot.
+
 config CMD_CONSOLE
        bool "coninfo"
        default y
@@ -142,6 +154,7 @@ config CMD_CPU
 
 config CMD_LICENSE
        bool "license"
+       select BUILD_BIN2C
        help
          Print GPL license text
 
@@ -181,6 +194,34 @@ config CMD_BOOTEFI
        help
          Boot an EFI image from memory.
 
+config CMD_BOOTEFI_HELLO_COMPILE
+       bool "Compile a standard EFI hello world binary for testing"
+       depends on CMD_BOOTEFI && (ARM || X86)
+       default y
+       help
+         This compiles a standard EFI hello world application with U-Boot so
+         that it can be used with the test/py testing framework. This is useful
+         for testing that EFI is working at a basic level, and for bringing
+         up EFI support on a new architecture.
+
+         No additional space will be required in the resulting U-Boot binary
+         when this option is enabled.
+
+config CMD_BOOTEFI_HELLO
+       bool "Allow booting a standard EFI hello world for testing"
+       depends on CMD_BOOTEFI_HELLO_COMPILE
+       help
+         This adds a standard EFI hello world application to U-Boot so that
+         it can be used with the 'bootefi hello' command. This is useful
+         for testing that EFI is working at a basic level, and for bringing
+         up EFI support on a new architecture.
+
+config CMD_BOOTMENU
+       bool "bootmenu"
+       select MENU
+       help
+         Add an ANSI terminal boot menu command.
+
 config CMD_ELF
        bool "bootelf, bootvx"
        default y
@@ -273,6 +314,22 @@ config CMD_ENV_EXISTS
          Check if a variable is defined in the environment for use in
          shell scripting.
 
+config CMD_ENV_CALLBACK
+       bool "env callbacks - print callbacks and their associated variables"
+       help
+         Some environment variable have callbacks defined by
+         U_BOOT_ENV_CALLBACK. These are called when the variable changes.
+         For example changing "baudrate" adjust the serial baud rate. This
+         command lists the currently defined callbacks.
+
+config CMD_ENV_FLAGS
+       bool "env flags -print variables that have non-default flags"
+       help
+         Some environment variables have special flags that control their
+         behaviour. For example, serial# can only be written once and cannot
+         be deleted. This command shows the variables that have special
+         flags.
+
 endmenu
 
 menu "Memory commands"
@@ -281,7 +338,7 @@ config CMD_MEMORY
        bool "md, mm, nm, mw, cp, cmp, base, loop"
        default y
        help
-         Memeory commands.
+         Memory commands.
            md - memory display
            mm - memory modify (auto-incrementing address)
            nm - memory modify (constant address)
@@ -289,14 +346,77 @@ config CMD_MEMORY
            cp - memory copy
            cmp - memory compare
            base - print or set address offset
-           loop - initinite loop on address range
+           loop - initialize loop on address range
 
 config CMD_CRC32
        bool "crc32"
+       select HASH
        default y
        help
          Compute CRC32.
 
+config CMD_EEPROM
+       bool "eeprom - EEPROM subsystem"
+       help
+         (deprecated, needs conversion to driver model)
+         Provides commands to read and write EEPROM (Electrically Erasable
+         Programmable Read Only Memory) chips that are connected over an
+         I2C bus.
+
+config CMD_EEPROM_LAYOUT
+       bool "Enable layout-aware eeprom commands"
+       depends on CMD_EEPROM
+       help
+         (deprecated, needs conversion to driver model)
+         When enabled, additional eeprom sub-commands become available.
+
+         eeprom print - prints the contents of the eeprom in a human-readable
+         way (eeprom layout fields, and data formatted to be fit for human
+         consumption).
+
+         eeprom update - allows user to update eeprom fields by specifying
+         the field name, and providing the new data in a human readable format
+         (same format as displayed by the eeprom print command).
+
+         Both commands can either auto detect the layout, or be told which
+         layout to use.
+
+         Feature API:
+         __weak int parse_layout_version(char *str)
+               - override to provide your own layout name parsing
+         __weak void __eeprom_layout_assign(struct eeprom_layout *layout,
+                       int layout_version);
+               - override to setup the layout metadata based on the version
+         __weak int eeprom_layout_detect(unsigned char *data)
+               - override to provide your own algorithm for detecting layout
+                       version
+         eeprom_field.c
+               - contains various printing and updating functions for common
+                       types of eeprom fields. Can be used for defining
+                       custom layouts.
+
+config EEPROM_LAYOUT_HELP_STRING
+         string "Tells user what layout names are supported"
+         depends on CMD_EEPROM_LAYOUT
+         default "<not defined>"
+         help
+           Help printed with the LAYOUT VERSIONS part of the 'eeprom'
+           command's help.
+
+config CMD_MD5SUM
+       bool "md5sum"
+       default n
+       select MD5
+       help
+         Compute MD5 checksum.
+
+config MD5SUM_VERFIY
+       bool "md5sum -v"
+       default n
+       depends on CMD_MD5SUM
+       help
+         Add -v option to verify data against an MD5 checksum.
+
 config LOOPW
        bool "loopw"
        help
@@ -318,10 +438,29 @@ config CMD_MEMINFO
        help
          Display memory information.
 
+config CMD_UNZIP
+       bool "unzip"
+       help
+         Uncompress a zip-compressed memory region.
+
+config CMD_ZIP
+       bool "zip"
+       help
+         Compress a memory region with zlib deflate method.
+
 endmenu
 
 menu "Device access commands"
 
+config CMD_CLK
+       bool "clk - Show clock frequencies"
+       help
+         (deprecated)
+         Shows clock frequences by calling a sock_clk_dump() hook function.
+         This is depreated in favour of using the CLK uclass and accessing
+         clock values from associated drivers. However currently no command
+         exists for this.
+
 config CMD_DM
        bool "dm - Access to driver model information"
        depends on DM
@@ -345,6 +484,57 @@ config CMD_DEMO
          option is to use sandbox and pass the -d point to sandbox's
          u-boot.dtb file.
 
+config CMD_IDE
+       bool "ide - Support for IDE drivers"
+       select IDE
+       help
+         Provides an 'ide' command which allows accessing the IDE drive,
+         reseting the IDE interface, printing the partition table and
+         geting device info. It also enables the 'diskboot' command which
+         permits booting from an IDE drive.
+
+config CMD_IO
+       bool "io - Support for performing I/O accesses"
+       help
+         Provides an 'iod' command to display I/O space and an 'iow' command
+         to write values to the I/O space. This can be useful for manually
+         checking the state of devices during boot when debugging device
+         drivers, etc.
+
+config CMD_IOTRACE
+       bool "iotrace - Support for tracing I/O activity"
+       help
+         Provides an 'iotrace' command which supports recording I/O reads and
+         writes in a trace buffer in memory . It also maintains a checksum
+         of the trace records (even if space is exhausted) so that the
+         sequence of I/O accesses can be verified.
+
+         When debugging drivers it is useful to see what I/O accesses were
+         done and in what order.
+
+         Even if the individual accesses are of little interest it can be
+         useful to verify that the access pattern is consistent each time
+         an operation is performed. In this case a checksum can be used to
+         characterise the operation of a driver. The checksum can be compared
+         across different runs of the operation to verify that the driver is
+         working properly.
+
+         In particular, when performing major refactoring of the driver, where
+         the access pattern should not change, the checksum provides assurance
+         that the refactoring work has not broken the driver.
+
+         This works by sneaking into the io.h heder for an architecture and
+         redirecting I/O accesses through iotrace's tracing mechanism.
+
+         For now no commands are provided to examine the trace buffer. The
+         format is fairly simple, so 'md' is a reasonable substitute.
+
+         Note: The checksum feature is only useful for I/O regions where the
+         contents do not change outside of software control. Where this is not
+         suitable you can fall back to manually comparing the addresses. It
+         might be useful to enhance tracing to only checksum the accesses and
+         not the data read/written.
+
 config CMD_LOADB
        bool "loadb"
        default y
@@ -366,6 +556,14 @@ config CMD_FLASH
            erase - FLASH memory
            protect - enable or disable FLASH write protection
 
+config CMD_GPT
+       bool "GPT (GUID Partition Table) command"
+       select PARTITION_UUIDS
+       select EFI_PARTITION
+       help
+         Enable the 'gpt' command to ready and write GPT style partition
+         tables.
+
 config CMD_ARMFLASH
        #depends on FLASH_CFI_DRIVER
        bool "armflash"
@@ -379,9 +577,36 @@ config CMD_MMC
 
 config CMD_NAND
        bool "nand"
+       default y if NAND_SUNXI
        help
          NAND support.
 
+if CMD_NAND
+config CMD_NAND_TRIMFFS
+       bool "nand write.trimffs"
+       default y if ARCH_SUNXI
+       help
+         Allows one to skip empty pages when flashing something on a NAND.
+
+config CMD_NAND_LOCK_UNLOCK
+       bool "nand lock/unlock"
+       help
+         NAND locking support.
+
+config CMD_NAND_TORTURE
+       bool "nand torture"
+       help
+         NAND torture support.
+
+endif # CMD_NAND
+
+config CMD_PART
+       bool "part"
+       select PARTITION_UUIDS
+       help
+         Read and display information about the partition table on
+         various media.
+
 config CMD_SF
        bool "sf"
        help
@@ -420,6 +645,48 @@ config CMD_FPGA
        help
          FPGA support.
 
+config CMD_FPGA_LOADBP
+       bool "fpga loadbp - load partial bitstream (Xilinx only)"
+       depends on CMD_FPGA
+       help
+         Supports loading an FPGA device from a bitstream buffer containing
+         a partial bitstream.
+
+config CMD_FPGA_LOADFS
+       bool "fpga loadfs - load bitstream from FAT filesystem (Xilinx only)"
+       depends on CMD_FPGA
+       help
+         Supports loading an FPGA device from a FAT filesystem.
+
+config CMD_FPGA_LOADMK
+       bool "fpga loadmk - load bitstream from image"
+       depends on CMD_FPGA
+       help
+         Supports loading an FPGA device from a image generated by mkimage.
+
+config CMD_FPGA_LOADP
+       bool "fpga loadp - load partial bitstream"
+       depends on CMD_FPGA
+       help
+         Supports loading an FPGA device from a bitstream buffer containing
+         a partial bitstream.
+
+config CMD_FPGAD
+       bool "fpgad - dump FPGA registers"
+       help
+         (legacy, needs conversion to driver model)
+         Provides a way to dump FPGA registers by calling the board-specific
+         fpga_get_reg() function. This functions similarly to the 'md'
+         command.
+
+config CMD_FUSE
+       bool "fuse - support for the fuse subssystem"
+       help
+         (deprecated - needs conversion to driver model)
+         This allows reading, sensing, programming or overriding fuses
+         which control the behaviour of the device. The command uses the
+         fuse_...() API.
+
 config CMD_REMOTEPROC
        bool "remoteproc"
        depends on REMOTEPROC
@@ -431,6 +698,11 @@ config CMD_GPIO
        help
          GPIO support.
 
+config CMD_FDC
+       bool "fdcboot - Boot from floppy device"
+       help
+         The 'fdtboot' command allows booting an image from a floppy disk.
+
 endmenu
 
 
@@ -496,6 +768,12 @@ config CMD_DHCP
        help
          Boot image via network using DHCP/TFTP protocol
 
+config CMD_PXE
+       bool "pxe"
+       select MENU
+       help
+         Boot image via network using PXE protocol
+
 config CMD_NFS
        bool "nfs"
        default y
@@ -532,23 +810,48 @@ config CMD_LINK_LOCAL
        help
          Acquire a network IP address using the link-local protocol
 
+config CMD_ETHSW
+       bool "ethsw"
+       help
+         Allow control of L2 Ethernet switch commands. These are supported
+         by the vsc9953 Ethernet driver at present. Sub-commands allow
+         operations such as enabling / disabling a port and
+         viewing/maintaining the filtering database (FDB)
+
 endmenu
 
 menu "Misc commands"
 
-config CMD_AMBAPP
-       bool "ambapp"
-       depends on LEON3
-       default y
+config CMD_BMP
+       bool "Enable 'bmp' command"
+       depends on LCD || DM_VIDEO || VIDEO
+       help
+         This provides a way to obtain information about a BMP-format iamge
+         and to display it. BMP (which presumably stands for BitMaP) is a
+         file format defined by Microsoft which supports images of various
+         depths, formats and compression methods. Headers on the file
+         determine the formats used. This command can be used by first loading
+         the image into RAM, then using this command to look at it or display
+         it.
+
+config CMD_BSP
+       bool "Enable board-specific commands"
        help
-         Lists AMBA Plug-n-Play information.
+         (deprecated: instead, please define a Kconfig option for each command)
+
+         Some boards have board-specific commands which are only enabled
+         during developemnt and need to be turned off for production. This
+         option provides a way to control this. The commands that are enabled
+         vary depending on the board.
 
-config SYS_AMBAPP_PRINT_ON_STARTUP
-       bool "Show AMBA PnP info on startup"
-       depends on CMD_AMBAPP
+config CMD_BKOPS_ENABLE
+       bool "mmc bkops enable"
+       depends on CMD_MMC
        default n
        help
-         Show AMBA Plug-n-Play information on startup.
+         Enable command for setting manual background operations handshake
+         on a eMMC device. The feature is optionally available on eMMC devices
+         conforming to standard >= 4.41.
 
 config CMD_BLOCK_CACHE
        bool "blkcache - control and stats for block cache"
@@ -566,11 +869,43 @@ config CMD_CACHE
        help
          Enable the "icache" and "dcache" commands
 
+config CMD_DISPLAY
+       bool "Enable the 'display' command, for character displays"
+       help
+         (this needs porting to driver model)
+         This enables the 'display' command which allows a string to be
+         displayed on a simple board-specific display. Implement
+         display_putc() to use it.
+
+config CMD_LED
+       bool "led"
+       default y if LED
+       help
+         Enable the 'led' command which allows for control of LEDs supported
+         by the board. The LEDs can be listed with 'led list' and controlled
+         with led on/off/togle/blink. Any LED drivers can be controlled with
+         this command, e.g. led_gpio.
+
+config CMD_DATE
+       bool "date"
+       default y if DM_RTC
+       help
+         Enable the 'date' command for getting/setting the time/date in RTC
+         devices.
+
 config CMD_TIME
        bool "time"
        help
          Run commands and summarize execution time.
 
+config CMD_GETTIME
+       bool "gettime - read elapsed time"
+       help
+         Enable the 'gettime' command which reads the elapsed time since
+         U-Boot started running. This shows the time in seconds and
+         milliseconds. See also the 'bootstage' command which provides more
+         flexibility for boot timing.
+
 # TODO: rename to CMD_SLEEP
 config CMD_MISC
        bool "sleep"
@@ -610,6 +945,9 @@ config CMD_QFW
          This provides access to the QEMU firmware interface.  The main
          feature is to allow easy loading of files passed to qemu-system
          via -kernel / -initrd
+
+source "cmd/mvebu/Kconfig"
+
 endmenu
 
 config CMD_BOOTSTAGE
@@ -656,6 +994,69 @@ config CMD_REGULATOR
 endmenu
 
 menu "Security commands"
+config CMD_AES
+       bool "Enable the 'aes' command"
+       select AES
+       help
+         This provides a means to encrypt and decrypt data using the AES
+         (Advanced Encryption Standard). This algorithm uses a symetric key
+         and is widely used as a streaming cipher. Different key lengths are
+         supported by the algorithm but this command only supports 128 bits
+         at present.
+
+config CMD_BLOB
+       bool "Enable the 'blob' command"
+       help
+         This is used with the Freescale secure boot mechanism.
+
+         Freescale's SEC block has built-in Blob Protocol which provides
+         a method for protecting user-defined data across system power
+         cycles. SEC block protects data in a data structure called a Blob,
+         which provides both confidentiality and integrity protection.
+
+         Encapsulating data as a blob
+         Each time that the Blob Protocol is used to protect data, a
+         different randomly generated key is used to encrypt the data.
+         This random key is itself encrypted using a key which is derived
+         from SoC's non-volatile secret key and a 16 bit Key identifier.
+         The resulting encrypted key along with encrypted data is called a
+         blob. The non-volatile secure key is available for use only during
+         secure boot.
+
+         During decapsulation, the reverse process is performed to get back
+         the original data.
+
+         Sub-commands:
+            blob enc - encapsulating data as a cryptgraphic blob
+           blob dec - decapsulating cryptgraphic blob to get the data
+
+         Syntax:
+
+         blob enc src dst len km
+
+         Encapsulate and create blob of data $len bytes long
+         at address $src and store the result at address $dst.
+         $km is the 16 byte key modifier is also required for
+         generation/use as key for cryptographic operation. Key
+         modifier should be 16 byte long.
+
+         blob dec src dst len km
+
+         Decapsulate the  blob of data at address $src and
+         store result of $len byte at addr $dst.
+         $km is the 16 byte key modifier is also required for
+         generation/use as key for cryptographic operation. Key
+         modifier should be 16 byte long.
+
+config CMD_HASH
+       bool "Support 'hash' command"
+       select HASH
+       help
+         This provides a way to hash data in memory using various supported
+         algorithms (such as SHA1, MD5, CRC32). The computed digest can be
+         saved to memory or to an environment variable. It is also possible
+         to verify a hash against data in memory.
+
 config CMD_TPM
        bool "Enable the 'tpm' command"
        depends on TPM
@@ -677,7 +1078,41 @@ config CMD_TPM_TEST
 
 endmenu
 
+menu "Firmware commands"
+config CMD_CROS_EC
+       bool "Enable crosec command"
+       depends on CROS_EC
+       default y
+       help
+         Enable command-line access to the Chrome OS EC (Embedded
+         Controller). This provides the 'crosec' command which has
+         a number of sub-commands for performing EC tasks such as
+         updating its flash, accessing a small saved context area
+         and talking to the I2C bus behind the EC (if there is one).
+endmenu
+
 menu "Filesystem commands"
+config CMD_CBFS
+       bool "Enable the 'cbfs' command"
+       depends on FS_CBFS
+       help
+         Define this to enable support for reading from a Coreboot
+         filesystem. This is a ROM-based filesystem used for accessing files
+         on systems that use coreboot as the first boot-loader and then load
+         U-Boot to actually boot the Operating System. Available commands are
+         cbfsinit, cbfsinfo, cbfsls and cbfsload.
+
+config CMD_CRAMFS
+       bool "Enable the 'cramfs' command"
+       depends on FS_CRAMFS
+       help
+         This provides commands for dealing with CRAMFS (Compressed ROM
+         filesystem). CRAMFS is useful when space is tight since files are
+         compressed. Two commands are provided:
+
+            cramfsls   - lists files in a cramfs image
+            cramfsload - loads a file from a cramfs image
+
 config CMD_EXT2
        bool "ext2 command support"
        help
@@ -704,12 +1139,65 @@ config CMD_FS_GENERIC
        help
          Enables filesystem commands (e.g. load, ls) that work for multiple
          fs types.
+
+config CMD_FS_UUID
+       bool "fsuuid command"
+       help
+         Enables fsuuid command for filesystem UUID.
+
+config CMD_JFFS2
+       bool "jffs2 command"
+       help
+         Enables commands to support the JFFS2 (Journalling Flash File System
+         version 2) filesystem. This enables fsload, ls and fsinfo which
+         provide the ability to load files, list directories and obtain
+         filesystem information.
+
+config CMD_MTDPARTS
+       depends on ARCH_SUNXI
+       bool "MTD partition support"
+       help
+         MTD partition support
+
+config MTDIDS_DEFAULT
+       string "Default MTD IDs"
+       depends on CMD_MTDPARTS
+       help
+         Defines a default MTD ID
+
+config MTDPARTS_DEFAULT
+       string "Default MTD partition scheme"
+       depends on CMD_MTDPARTS
+       help
+         Defines a default MTD partitioning scheme in the Linux MTD command
+         line partitions format
+
+endmenu
+
+menu "Debug commands"
+
+config CMD_BEDBUG
+       bool "bedbug"
+       help
+         The bedbug (emBEDded deBUGger) command provides debugging features
+         for some PowerPC processors. For details please see the
+         docuemntation in doc/README.beddbug
+
+config CMD_DIAG
+       bool "diag - Board diagnostics"
+       help
+         This command provides access to board diagnostic tests. These are
+         called Power-on Self Tests (POST). The command allows listing of
+         available tests and running either all the tests, or specific tests
+         identified by name.
+
 endmenu
 
 config CMD_UBI
        tristate "Enable UBI - Unsorted block images commands"
        select CRC32
        select MTD_UBI
+       default y if NAND_SUNXI
        help
          UBI is a software layer above MTD layer which admits use of LVM-like
          logical volumes on top of MTD devices, hides some complexities of
@@ -718,4 +1206,14 @@ config CMD_UBI
          (www.linux-mtd.infradead.org). Activate this option if you want
          to use U-Boot UBI commands.
 
+config CMD_UBIFS
+       tristate "Enable UBIFS - Unsorted block images filesystem commands"
+       depends on CMD_UBI
+       select CRC32
+       select RBTREE if ARCH_SUNXI
+       select LZO if ARCH_SUNXI
+       default y if NAND_SUNXI
+       help
+         UBIFS is a file system for flash devices which works on top of UBI.
+
 endmenu