[U-Boot] [PATCH 1/2] Move all command code into its own directory
Przemyslaw Marczak
p.marczak at samsung.com
Mon Jan 18 09:28:33 CET 2016
Hello Simon,
On 01/18/2016 04:53 AM, Simon Glass wrote:
> There are a lot of unrelated files in common, including all of the commands.
> Moving them into their own directory makes them easier to find and is more
> logical.
>
> Some commands include non-command code, such as cmd_scsi.c. This should be
> sorted out at some point so that the function can be enabled with or without
> the associated command.
>
> Unfortunately, with m68k I get this error:
>
> m68k: + M5329AFEE
> +arch/m68k/cpu/mcf532x/start.o: In function `_start':
> +arch/m68k/cpu/mcf532x/start.S:159:(.text+0x452): relocation truncated to fit: R_68K_PC16 against symbol `board_init_f' defined in .text.board_init_f section in common/built-in.o
>
> I hope someone can shed some light on what this means. I hope it isn't
> depending on the position of code in the image.
>
> Signed-off-by: Simon Glass <sjg at chromium.org>
> ---
>
> Kconfig | 2 +
> Makefile | 1 +
> cmd/Kconfig | 585 +++++++++++++++++++++++++++++++
> cmd/Makefile | 166 +++++++++
> {common => cmd}/cmd_aes.c | 0
> {common => cmd}/cmd_ambapp.c | 0
> {common => cmd}/cmd_armflash.c | 0
> {common => cmd}/cmd_bdinfo.c | 0
> {common => cmd}/cmd_bedbug.c | 0
> {common => cmd}/cmd_blob.c | 0
> {common => cmd}/cmd_bmp.c | 0
> {common => cmd}/cmd_boot.c | 0
> {common => cmd}/cmd_bootldr.c | 0
> {common => cmd}/cmd_bootm.c | 0
> {common => cmd}/cmd_bootmenu.c | 0
> {common => cmd}/cmd_bootstage.c | 0
> {common => cmd}/cmd_cache.c | 0
> {common => cmd}/cmd_cbfs.c | 0
> {common => cmd}/cmd_clk.c | 0
> {common => cmd}/cmd_console.c | 0
> {common => cmd}/cmd_cplbinfo.c | 0
> {common => cmd}/cmd_cpu.c | 0
> {common => cmd}/cmd_cramfs.c | 0
> {common => cmd}/cmd_dataflash_mmc_mux.c | 0
> {common => cmd}/cmd_date.c | 0
> {common => cmd}/cmd_dcr.c | 0
> {common => cmd}/cmd_demo.c | 0
> {common => cmd}/cmd_dfu.c | 0
> {common => cmd}/cmd_diag.c | 0
> {common => cmd}/cmd_disk.c | 0
> {common => cmd}/cmd_display.c | 0
> {common => cmd}/cmd_dtt.c | 0
> {common => cmd}/cmd_echo.c | 0
> {common => cmd}/cmd_eeprom.c | 0
> {common => cmd}/cmd_efi.c | 0
> {common => cmd}/cmd_elf.c | 0
> {common => cmd}/cmd_ethsw.c | 0
> {common => cmd}/cmd_exit.c | 0
> {common => cmd}/cmd_ext2.c | 0
> {common => cmd}/cmd_ext4.c | 0
> {common => cmd}/cmd_fastboot.c | 0
> {common => cmd}/cmd_fat.c | 0
> {common => cmd}/cmd_fdc.c | 0
> {common => cmd}/cmd_fdt.c | 0
> {common => cmd}/cmd_fitupd.c | 0
> {common => cmd}/cmd_flash.c | 0
> {common => cmd}/cmd_fpga.c | 0
> {common => cmd}/cmd_fpgad.c | 0
> {common => cmd}/cmd_fs.c | 0
> {common => cmd}/cmd_fs_uuid.c | 0
> {common => cmd}/cmd_fuse.c | 0
> {common => cmd}/cmd_gettime.c | 0
> {common => cmd}/cmd_gpio.c | 0
> {common => cmd}/cmd_gpt.c | 0
> {common => cmd}/cmd_hash.c | 0
> {common => cmd}/cmd_help.c | 0
> {common => cmd}/cmd_host.c | 0
> {common => cmd}/cmd_i2c.c | 0
> {common => cmd}/cmd_ide.c | 0
> {common => cmd}/cmd_immap.c | 0
> {common => cmd}/cmd_ini.c | 0
> {common => cmd}/cmd_io.c | 0
> {common => cmd}/cmd_iotrace.c | 0
> {common => cmd}/cmd_irq.c | 0
> {common => cmd}/cmd_itest.c | 0
> {common => cmd}/cmd_jffs2.c | 0
> {common => cmd}/cmd_ldrinfo.c | 0
> {common => cmd}/cmd_led.c | 0
> {common => cmd}/cmd_license.c | 0
> {common => cmd}/cmd_load.c | 0
> {common => cmd}/cmd_log.c | 0
> {common => cmd}/cmd_lzmadec.c | 0
> {common => cmd}/cmd_mac.c | 0
> {common => cmd}/cmd_md5sum.c | 0
> {common => cmd}/cmd_mdio.c | 0
> {common => cmd}/cmd_mem.c | 0
> {common => cmd}/cmd_mfsl.c | 0
> {common => cmd}/cmd_mii.c | 0
> {common => cmd}/cmd_misc.c | 0
> {common => cmd}/cmd_mmc.c | 0
> {common => cmd}/cmd_mmc_spi.c | 0
> {common => cmd}/cmd_mp.c | 0
> {common => cmd}/cmd_mtdparts.c | 0
> {common => cmd}/cmd_nand.c | 0
> {common => cmd}/cmd_net.c | 0
> {common => cmd}/cmd_nvedit.c | 0
> {common => cmd}/cmd_onenand.c | 0
> {common => cmd}/cmd_otp.c | 0
> {common => cmd}/cmd_part.c | 0
> {common => cmd}/cmd_pci.c | 0
> {common => cmd}/cmd_pcmcia.c | 0
> {common => cmd}/cmd_pmic.c | 0
> {common => cmd}/cmd_portio.c | 0
> {common => cmd}/cmd_pxe.c | 0
> {common => cmd}/cmd_read.c | 0
> {common => cmd}/cmd_reginfo.c | 0
> {common => cmd}/cmd_regulator.c | 0
> {common => cmd}/cmd_reiser.c | 0
> {common => cmd}/cmd_remoteproc.c | 0
> {common => cmd}/cmd_sata.c | 0
> {common => cmd}/cmd_scsi.c | 0
> {common => cmd}/cmd_setexpr.c | 0
> {common => cmd}/cmd_sf.c | 0
> {common => cmd}/cmd_sha1sum.c | 0
> {common => cmd}/cmd_softswitch.c | 0
> {common => cmd}/cmd_sound.c | 0
> {common => cmd}/cmd_source.c | 0
> {common => cmd}/cmd_spi.c | 0
> {common => cmd}/cmd_spibootldr.c | 0
> {common => cmd}/cmd_spl.c | 0
> {common => cmd}/cmd_strings.c | 0
> {common => cmd}/cmd_terminal.c | 0
> {common => cmd}/cmd_test.c | 0
> {common => cmd}/cmd_thordown.c | 0
> {common => cmd}/cmd_time.c | 0
> {common => cmd}/cmd_tpm.c | 0
> {common => cmd}/cmd_tpm_test.c | 0
> {common => cmd}/cmd_trace.c | 0
> {common => cmd}/cmd_tsi148.c | 0
> {common => cmd}/cmd_ubi.c | 0
> {common => cmd}/cmd_ubifs.c | 0
> {common => cmd}/cmd_universe.c | 0
> {common => cmd}/cmd_unzip.c | 0
> {common => cmd}/cmd_usb.c | 0
> {common => cmd}/cmd_usb_mass_storage.c | 0
> {common => cmd}/cmd_version.c | 0
> {common => cmd}/cmd_ximg.c | 0
> {common => cmd}/cmd_yaffs2.c | 0
> {common => cmd}/cmd_zfs.c | 0
> {common => cmd}/cmd_zip.c | 0
> common/Kconfig | 586 --------------------------------
> common/Makefile | 156 +--------
> scripts/Makefile.spl | 2 +-
> 133 files changed, 761 insertions(+), 737 deletions(-)
> create mode 100644 cmd/Kconfig
> create mode 100644 cmd/Makefile
> rename {common => cmd}/cmd_aes.c (100%)
> rename {common => cmd}/cmd_ambapp.c (100%)
> rename {common => cmd}/cmd_armflash.c (100%)
> rename {common => cmd}/cmd_bdinfo.c (100%)
> rename {common => cmd}/cmd_bedbug.c (100%)
> rename {common => cmd}/cmd_blob.c (100%)
> rename {common => cmd}/cmd_bmp.c (100%)
> rename {common => cmd}/cmd_boot.c (100%)
> rename {common => cmd}/cmd_bootldr.c (100%)
> rename {common => cmd}/cmd_bootm.c (100%)
> rename {common => cmd}/cmd_bootmenu.c (100%)
> rename {common => cmd}/cmd_bootstage.c (100%)
> rename {common => cmd}/cmd_cache.c (100%)
> rename {common => cmd}/cmd_cbfs.c (100%)
> rename {common => cmd}/cmd_clk.c (100%)
> rename {common => cmd}/cmd_console.c (100%)
> rename {common => cmd}/cmd_cplbinfo.c (100%)
> rename {common => cmd}/cmd_cpu.c (100%)
> rename {common => cmd}/cmd_cramfs.c (100%)
> rename {common => cmd}/cmd_dataflash_mmc_mux.c (100%)
> rename {common => cmd}/cmd_date.c (100%)
> rename {common => cmd}/cmd_dcr.c (100%)
> rename {common => cmd}/cmd_demo.c (100%)
> rename {common => cmd}/cmd_dfu.c (100%)
> rename {common => cmd}/cmd_diag.c (100%)
> rename {common => cmd}/cmd_disk.c (100%)
> rename {common => cmd}/cmd_display.c (100%)
> rename {common => cmd}/cmd_dtt.c (100%)
> rename {common => cmd}/cmd_echo.c (100%)
> rename {common => cmd}/cmd_eeprom.c (100%)
> rename {common => cmd}/cmd_efi.c (100%)
> rename {common => cmd}/cmd_elf.c (100%)
> rename {common => cmd}/cmd_ethsw.c (100%)
> rename {common => cmd}/cmd_exit.c (100%)
> rename {common => cmd}/cmd_ext2.c (100%)
> rename {common => cmd}/cmd_ext4.c (100%)
> rename {common => cmd}/cmd_fastboot.c (100%)
> rename {common => cmd}/cmd_fat.c (100%)
> rename {common => cmd}/cmd_fdc.c (100%)
> rename {common => cmd}/cmd_fdt.c (100%)
> rename {common => cmd}/cmd_fitupd.c (100%)
> rename {common => cmd}/cmd_flash.c (100%)
> rename {common => cmd}/cmd_fpga.c (100%)
> rename {common => cmd}/cmd_fpgad.c (100%)
> rename {common => cmd}/cmd_fs.c (100%)
> rename {common => cmd}/cmd_fs_uuid.c (100%)
> rename {common => cmd}/cmd_fuse.c (100%)
> rename {common => cmd}/cmd_gettime.c (100%)
> rename {common => cmd}/cmd_gpio.c (100%)
> rename {common => cmd}/cmd_gpt.c (100%)
> rename {common => cmd}/cmd_hash.c (100%)
> rename {common => cmd}/cmd_help.c (100%)
> rename {common => cmd}/cmd_host.c (100%)
> rename {common => cmd}/cmd_i2c.c (100%)
> rename {common => cmd}/cmd_ide.c (100%)
> rename {common => cmd}/cmd_immap.c (100%)
> rename {common => cmd}/cmd_ini.c (100%)
> rename {common => cmd}/cmd_io.c (100%)
> rename {common => cmd}/cmd_iotrace.c (100%)
> rename {common => cmd}/cmd_irq.c (100%)
> rename {common => cmd}/cmd_itest.c (100%)
> rename {common => cmd}/cmd_jffs2.c (100%)
> rename {common => cmd}/cmd_ldrinfo.c (100%)
> rename {common => cmd}/cmd_led.c (100%)
> rename {common => cmd}/cmd_license.c (100%)
> rename {common => cmd}/cmd_load.c (100%)
> rename {common => cmd}/cmd_log.c (100%)
> rename {common => cmd}/cmd_lzmadec.c (100%)
> rename {common => cmd}/cmd_mac.c (100%)
> rename {common => cmd}/cmd_md5sum.c (100%)
> rename {common => cmd}/cmd_mdio.c (100%)
> rename {common => cmd}/cmd_mem.c (100%)
> rename {common => cmd}/cmd_mfsl.c (100%)
> rename {common => cmd}/cmd_mii.c (100%)
> rename {common => cmd}/cmd_misc.c (100%)
> rename {common => cmd}/cmd_mmc.c (100%)
> rename {common => cmd}/cmd_mmc_spi.c (100%)
> rename {common => cmd}/cmd_mp.c (100%)
> rename {common => cmd}/cmd_mtdparts.c (100%)
> rename {common => cmd}/cmd_nand.c (100%)
> rename {common => cmd}/cmd_net.c (100%)
> rename {common => cmd}/cmd_nvedit.c (100%)
> rename {common => cmd}/cmd_onenand.c (100%)
> rename {common => cmd}/cmd_otp.c (100%)
> rename {common => cmd}/cmd_part.c (100%)
> rename {common => cmd}/cmd_pci.c (100%)
> rename {common => cmd}/cmd_pcmcia.c (100%)
> rename {common => cmd}/cmd_pmic.c (100%)
> rename {common => cmd}/cmd_portio.c (100%)
> rename {common => cmd}/cmd_pxe.c (100%)
> rename {common => cmd}/cmd_read.c (100%)
> rename {common => cmd}/cmd_reginfo.c (100%)
> rename {common => cmd}/cmd_regulator.c (100%)
> rename {common => cmd}/cmd_reiser.c (100%)
> rename {common => cmd}/cmd_remoteproc.c (100%)
> rename {common => cmd}/cmd_sata.c (100%)
> rename {common => cmd}/cmd_scsi.c (100%)
> rename {common => cmd}/cmd_setexpr.c (100%)
> rename {common => cmd}/cmd_sf.c (100%)
> rename {common => cmd}/cmd_sha1sum.c (100%)
> rename {common => cmd}/cmd_softswitch.c (100%)
> rename {common => cmd}/cmd_sound.c (100%)
> rename {common => cmd}/cmd_source.c (100%)
> rename {common => cmd}/cmd_spi.c (100%)
> rename {common => cmd}/cmd_spibootldr.c (100%)
> rename {common => cmd}/cmd_spl.c (100%)
> rename {common => cmd}/cmd_strings.c (100%)
> rename {common => cmd}/cmd_terminal.c (100%)
> rename {common => cmd}/cmd_test.c (100%)
> rename {common => cmd}/cmd_thordown.c (100%)
> rename {common => cmd}/cmd_time.c (100%)
> rename {common => cmd}/cmd_tpm.c (100%)
> rename {common => cmd}/cmd_tpm_test.c (100%)
> rename {common => cmd}/cmd_trace.c (100%)
> rename {common => cmd}/cmd_tsi148.c (100%)
> rename {common => cmd}/cmd_ubi.c (100%)
> rename {common => cmd}/cmd_ubifs.c (100%)
> rename {common => cmd}/cmd_universe.c (100%)
> rename {common => cmd}/cmd_unzip.c (100%)
> rename {common => cmd}/cmd_usb.c (100%)
> rename {common => cmd}/cmd_usb_mass_storage.c (100%)
> rename {common => cmd}/cmd_version.c (100%)
> rename {common => cmd}/cmd_ximg.c (100%)
> rename {common => cmd}/cmd_yaffs2.c (100%)
> rename {common => cmd}/cmd_zfs.c (100%)
> rename {common => cmd}/cmd_zip.c (100%)
>
> diff --git a/Kconfig b/Kconfig
> index 821b464..d5e503a 100644
> --- a/Kconfig
> +++ b/Kconfig
> @@ -224,6 +224,8 @@ endmenu # Boot images
>
> source "common/Kconfig"
>
> +source "cmd/Kconfig"
> +
> source "dts/Kconfig"
>
> source "net/Kconfig"
> diff --git a/Makefile b/Makefile
> index 5882c30..6a67efb 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -667,6 +667,7 @@ libs-y += drivers/usb/musb/
> libs-y += drivers/usb/musb-new/
> libs-y += drivers/usb/phy/
> libs-y += drivers/usb/ulpi/
> +libs-y += cmd/
> libs-y += common/
> libs-$(CONFIG_API) += api/
> libs-$(CONFIG_HAS_POST) += post/
> diff --git a/cmd/Kconfig b/cmd/Kconfig
> new file mode 100644
> index 0000000..2ed0263
> --- /dev/null
> +++ b/cmd/Kconfig
> @@ -0,0 +1,585 @@
> +menu "Command line interface"
> +
> +config HUSH_PARSER
> + bool "Use hush shell"
> + select SYS_HUSH_PARSER
> + help
> + This option enables the "hush" shell (from Busybox) as command line
> + interpreter, thus enabling powerful command line syntax like
> + if...then...else...fi conditionals or `&&' and '||'
> + constructs ("shell scripts").
> +
> + If disabled, you get the old, much simpler behaviour with a somewhat
> + smaller memory footprint.
> +
> +config SYS_HUSH_PARSER
> + bool
> + help
> + Backward compatibility.
> +
> +config SYS_PROMPT
> + string "Shell prompt"
> + default "=> "
> + help
> + This string is displayed in the command line to the left of the
> + cursor.
> +
> +menu "Autoboot options"
> +
> +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
> + default n
> +
> +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.
> +
> +endmenu
> +
> +comment "Commands"
> +
> +menu "Info commands"
> +
> +config CMD_BDI
> + bool "bdinfo"
> + default y
> + help
> + Print board info
> +
> +config CMD_CONSOLE
> + bool "coninfo"
> + default y
> + help
> + Print console devices and information.
> +
> +config CMD_CPU
> + bool "cpu"
> + help
> + Print information about available CPUs. This normally shows the
> + number of CPUs, type (e.g. manufacturer, architecture, product or
> + internal name) and clock frequency. Other information may be
> + available depending on the CPU driver.
> +
> +config CMD_LICENSE
> + bool "license"
> + help
> + Print GPL license text
> +
> +endmenu
> +
> +menu "Boot commands"
> +
> +config CMD_BOOTD
> + bool "bootd"
> + default y
> + help
> + Run the command stored in the environment "bootcmd", i.e.
> + "bootd" does the same thing as "run bootcmd".
> +
> +config CMD_BOOTM
> + bool "bootm"
> + default y
> + help
> + Boot an application image from the memory.
> +
> +config CMD_ELF
> + bool "bootelf, bootvx"
> + default y
> + help
> + Boot an ELF/vxWorks image from the memory.
> +
> +config CMD_GO
> + bool "go"
> + default y
> + help
> + Start an application at a given address.
> +
> +config CMD_RUN
> + bool "run"
> + default y
> + help
> + Run the command in the given environment variable.
> +
> +config CMD_IMI
> + bool "iminfo"
> + default y
> + help
> + Print header information for application image.
> +
> +config CMD_IMLS
> + bool "imls"
> + default y
> + help
> + List all images found in flash
> +
> +config CMD_XIMG
> + bool "imxtract"
> + default y
> + help
> + Extract a part of a multi-image.
> +
> +config CMD_POWEROFF
> + bool
> +
> +endmenu
> +
> +menu "Environment commands"
> +
> +config CMD_EXPORTENV
> + bool "env export"
> + default y
> + help
> + Export environments.
> +
> +config CMD_IMPORTENV
> + bool "env import"
> + default y
> + help
> + Import environments.
> +
> +config CMD_EDITENV
> + bool "editenv"
> + default y
> + help
> + Edit environment variable.
> +
> +config CMD_SAVEENV
> + bool "saveenv"
> + default y
> + help
> + Save all environment variables into the compiled-in persistent
> + storage.
> +
> +config CMD_ENV_EXISTS
> + bool "env exists"
> + default y
> + help
> + Check if a variable is defined in the environment for use in
> + shell scripting.
> +
> +endmenu
> +
> +menu "Memory commands"
> +
> +config CMD_MEMORY
> + bool "md, mm, nm, mw, cp, cmp, base, loop"
> + default y
> + help
> + Memeory commands.
> + md - memory display
> + mm - memory modify (auto-incrementing address)
> + nm - memory modify (constant address)
> + mw - memory write (fill)
> + cp - memory copy
> + cmp - memory compare
> + base - print or set address offset
> + loop - initinite loop on address range
> +
> +config CMD_CRC32
> + bool "crc32"
> + default y
> + help
> + Compute CRC32.
> +
> +config LOOPW
> + bool "loopw"
> + help
> + Infinite write loop on address range
> +
> +config CMD_MEMTEST
> + bool "memtest"
> + help
> + Simple RAM read/write test.
> +
> +config CMD_MX_CYCLIC
> + bool "mdc, mwc"
> + help
> + mdc - memory display cyclic
> + mwc - memory write cyclic
> +
> +config CMD_MEMINFO
> + bool "meminfo"
> + help
> + Display memory information.
> +
> +endmenu
> +
> +menu "Device access commands"
> +
> +config CMD_DM
> + bool "dm - Access to driver model information"
> + depends on DM
> + default y
> + help
> + Provides access to driver model data structures and information,
> + such as a list of devices, list of uclasses and the state of each
> + device (e.g. activated). This is not required for operation, but
> + can be useful to see the state of driver model for debugging or
> + interest.
> +
> +config CMD_DEMO
> + bool "demo - Demonstration commands for driver model"
> + depends on DM
> + help
> + Provides a 'demo' command which can be used to play around with
> + driver model. To use this properly you will need to enable one or
> + both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
> + Otherwise you will always get an empty list of devices. The demo
> + devices are defined in the sandbox device tree, so the easiest
> + option is to use sandbox and pass the -d point to sandbox's
> + u-boot.dtb file.
> +
> +config CMD_LOADB
> + bool "loadb"
> + default y
> + help
> + Load a binary file over serial line.
> +
> +config CMD_LOADS
> + bool "loads"
> + default y
> + help
> + Load an S-Record file over serial line
> +
> +config CMD_FLASH
> + bool "flinfo, erase, protect"
> + default y
> + help
> + NOR flash support.
> + flinfo - print FLASH memory information
> + erase - FLASH memory
> + protect - enable or disable FLASH write protection
> +
> +config CMD_ARMFLASH
> + depends on FLASH_CFI_DRIVER
> + bool "armflash"
> + help
> + ARM Ltd reference designs flash partition access
> +
> +config CMD_NAND
> + bool "nand"
> + help
> + NAND support.
> +
> +config CMD_SF
> + bool "sf"
> + help
> + SPI Flash support
> +
> +config CMD_SPI
> + bool "sspi"
> + help
> + SPI utility command.
> +
> +config CMD_I2C
> + bool "i2c"
> + help
> + I2C support.
> +
> +config CMD_USB
> + bool "usb"
> + help
> + USB support.
> +
> +config CMD_FPGA
> + bool "fpga"
> + default y
> + help
> + FPGA support.
> +
> +config CMD_REMOTEPROC
> + bool "remoteproc"
> + depends on REMOTEPROC
> + help
> + Support for Remote Processor control
> +
> +config CMD_GPIO
> + bool "gpio"
> + help
> + GPIO support.
> +
> +endmenu
> +
> +
> +menu "Shell scripting commands"
> +
> +config CMD_ECHO
> + bool "echo"
> + default y
> + help
> + Echo args to console
> +
> +config CMD_ITEST
> + bool "itest"
> + default y
> + help
> + Return true/false on integer compare.
> +
> +config CMD_SOURCE
> + bool "source"
> + default y
> + help
> + Run script from memory
> +
> +config CMD_SETEXPR
> + bool "setexpr"
> + default y
> + help
> + Evaluate boolean and math expressions and store the result in an env
> + variable.
> + Also supports loading the value at a memory location into a variable.
> + If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
> +
> +endmenu
> +
> +menu "Network commands"
> +
> +config CMD_NET
> + bool "bootp, tftpboot"
> + select NET
> + default y
> + help
> + Network commands.
> + bootp - boot image via network using BOOTP/TFTP protocol
> + tftpboot - boot image via network using TFTP protocol
> +
> +config CMD_TFTPPUT
> + bool "tftp put"
> + help
> + TFTP put command, for uploading files to a server
> +
> +config CMD_TFTPSRV
> + bool "tftpsrv"
> + help
> + Act as a TFTP server and boot the first received file
> +
> +config CMD_RARP
> + bool "rarpboot"
> + help
> + Boot image via network using RARP/TFTP protocol
> +
> +config CMD_DHCP
> + bool "dhcp"
> + help
> + Boot image via network using DHCP/TFTP protocol
> +
> +config CMD_NFS
> + bool "nfs"
> + default y
> + help
> + Boot image via network using NFS protocol.
> +
> +config CMD_PING
> + bool "ping"
> + help
> + Send ICMP ECHO_REQUEST to network host
> +
> +config CMD_CDP
> + bool "cdp"
> + help
> + Perform CDP network configuration
> +
> +config CMD_SNTP
> + bool "sntp"
> + help
> + Synchronize RTC via network
> +
> +config CMD_DNS
> + bool "dns"
> + help
> + Lookup the IP of a hostname
> +
> +config CMD_LINK_LOCAL
> + bool "linklocal"
> + help
> + Acquire a network IP address using the link-local protocol
> +
> +endmenu
> +
> +menu "Misc commands"
> +
> +config CMD_AMBAPP
> + bool "ambapp"
> + depends on LEON3
> + default y
> + help
> + Lists AMBA Plug-n-Play information.
> +
> +config SYS_AMBAPP_PRINT_ON_STARTUP
> + bool "Show AMBA PnP info on startup"
> + depends on CMD_AMBAPP
> + default n
> + help
> + Show AMBA Plug-n-Play information on startup.
> +
> +config CMD_TIME
> + bool "time"
> + help
> + Run commands and summarize execution time.
> +
> +# TODO: rename to CMD_SLEEP
> +config CMD_MISC
> + bool "sleep"
> + default y
> + help
> + Delay execution for some time
> +
> +config CMD_TIMER
> + bool "timer"
> + help
> + Access the system timer.
> +
> +config CMD_SETGETDCR
> + bool "getdcr, setdcr, getidcr, setidcr"
> + depends on 4xx
> + default y
> + help
> + getdcr - Get an AMCC PPC 4xx DCR's value
> + setdcr - Set an AMCC PPC 4xx DCR's value
> + getidcr - Get a register value via indirect DCR addressing
> + setidcr - Set a register value via indirect DCR addressing
> +
> +config CMD_SOUND
> + bool "sound"
> + depends on SOUND
> + help
> + This provides basic access to the U-Boot's sound support. The main
> + feature is to play a beep.
> +
> + sound init - set up sound system
> + sound play - play a sound
> +
> +endmenu
> +
> +config CMD_BOOTSTAGE
> + bool "Enable the 'bootstage' command"
> + depends on BOOTSTAGE
> + help
> + Add a 'bootstage' command which supports printing a report
> + and un/stashing of bootstage data.
> +
> +menu "Power commands"
> +config CMD_PMIC
> + bool "Enable Driver Model PMIC command"
> + depends on DM_PMIC
> + help
> + This is the pmic command, based on a driver model pmic's API.
> + Command features are unchanged:
> + - list - list pmic devices
> + - pmic dev <id> - show or [set] operating pmic device (NEW)
> + - pmic dump - dump registers
> + - pmic read address - read byte of register at address
> + - pmic write address - write byte to register at address
> + The only one change for this command is 'dev' subcommand.
> +
> +config CMD_REGULATOR
> + bool "Enable Driver Model REGULATOR command"
> + depends on DM_REGULATOR
> + help
> + This command is based on driver model regulator's API.
> + User interface features:
> + - list - list regulator devices
> + - regulator dev <id> - show or [set] operating regulator device
> + - regulator info - print constraints info
> + - regulator status - print operating status
> + - regulator value <val] <-f> - print/[set] voltage value [uV]
> + - regulator current <val> - print/[set] current value [uA]
> + - regulator mode <id> - print/[set] operating mode id
> + - regulator enable - enable the regulator output
> + - regulator disable - disable the regulator output
> +
> + 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.
> +
> +endmenu
> +
> +menu "Security commands"
> +config CMD_TPM
> + bool "Enable the 'tpm' command"
> + depends on TPM
> + help
> + This provides a means to talk to a TPM from the command line. A wide
> + range of commands if provided - see 'tpm help' for details. The
> + command requires a suitable TPM on your board and the correct driver
> + must be enabled.
> +
> +config CMD_TPM_TEST
> + bool "Enable the 'tpm test' command"
> + depends on CMD_TPM
> + help
> + This provides a a series of tests to confirm that the TPM is working
> + correctly. The tests cover initialisation, non-volatile RAM, extend,
> + global lock and checking that timing is within expectations. The
> + tests pass correctly on Infineon TPMs but may need to be adjusted
> + for other devices.
> +
> +endmenu
> +
> +endmenu
> diff --git a/cmd/Makefile b/cmd/Makefile
> new file mode 100644
> index 0000000..880a886
> --- /dev/null
> +++ b/cmd/Makefile
> @@ -0,0 +1,166 @@
> +#
> +# (C) Copyright 2004-2006
> +# Wolfgang Denk, DENX Software Engineering, wd at denx.de.
> +#
> +# SPDX-License-Identifier: GPL-2.0+
> +#
> +
> +ifndef CONFIG_SPL_BUILD
> +# core command
> +obj-y += cmd_boot.o
> +obj-$(CONFIG_CMD_BOOTM) += cmd_bootm.o
> +obj-y += cmd_help.o
> +obj-y += cmd_version.o
> +
> +# command
> +obj-$(CONFIG_CMD_AES) += cmd_aes.o
> +obj-$(CONFIG_CMD_AMBAPP) += cmd_ambapp.o
> +obj-$(CONFIG_CMD_ARMFLASH) += cmd_armflash.o
> +obj-$(CONFIG_SOURCE) += cmd_source.o
> +obj-$(CONFIG_CMD_SOURCE) += cmd_source.o
> +obj-$(CONFIG_CMD_BDI) += cmd_bdinfo.o
> +obj-$(CONFIG_CMD_BEDBUG) += cmd_bedbug.o
> +obj-$(CONFIG_CMD_BMP) += cmd_bmp.o
> +obj-$(CONFIG_CMD_BOOTMENU) += cmd_bootmenu.o
> +obj-$(CONFIG_CMD_BOOTLDR) += cmd_bootldr.o
> +obj-$(CONFIG_CMD_BOOTSTAGE) += cmd_bootstage.o
> +obj-$(CONFIG_CMD_CACHE) += cmd_cache.o
> +obj-$(CONFIG_CMD_CBFS) += cmd_cbfs.o
> +obj-$(CONFIG_CMD_CLK) += cmd_clk.o
> +obj-$(CONFIG_CMD_CONSOLE) += cmd_console.o
> +obj-$(CONFIG_CMD_CPLBINFO) += cmd_cplbinfo.o
> +obj-$(CONFIG_CMD_CPU) += cmd_cpu.o
> +obj-$(CONFIG_DATAFLASH_MMC_SELECT) += cmd_dataflash_mmc_mux.o
> +obj-$(CONFIG_CMD_DATE) += cmd_date.o
> +obj-$(CONFIG_CMD_DEMO) += cmd_demo.o
> +obj-$(CONFIG_CMD_SOUND) += cmd_sound.o
> +ifdef CONFIG_4xx
> +obj-$(CONFIG_CMD_SETGETDCR) += cmd_dcr.o
> +endif
> +ifdef CONFIG_POST
> +obj-$(CONFIG_CMD_DIAG) += cmd_diag.o
> +endif
> +obj-$(CONFIG_CMD_DISPLAY) += cmd_display.o
> +obj-$(CONFIG_CMD_DTT) += cmd_dtt.o
> +obj-$(CONFIG_CMD_ECHO) += cmd_echo.o
> +obj-$(CONFIG_ENV_IS_IN_EEPROM) += cmd_eeprom.o
> +obj-$(CONFIG_CMD_EEPROM) += cmd_eeprom.o
> +obj-$(CONFIG_EFI_STUB) += cmd_efi.o
> +obj-$(CONFIG_CMD_ELF) += cmd_elf.o
> +obj-$(CONFIG_SYS_HUSH_PARSER) += cmd_exit.o
> +obj-$(CONFIG_CMD_EXT4) += cmd_ext4.o
> +obj-$(CONFIG_CMD_EXT2) += cmd_ext2.o
> +obj-$(CONFIG_CMD_FAT) += cmd_fat.o
> +obj-$(CONFIG_CMD_FDC) += cmd_fdc.o
> +obj-$(CONFIG_OF_LIBFDT) += cmd_fdt.o
> +obj-$(CONFIG_CMD_FITUPD) += cmd_fitupd.o
> +obj-$(CONFIG_CMD_FLASH) += cmd_flash.o
> +ifdef CONFIG_FPGA
> +obj-$(CONFIG_CMD_FPGA) += cmd_fpga.o
> +endif
> +obj-$(CONFIG_CMD_FPGAD) += cmd_fpgad.o
> +obj-$(CONFIG_CMD_FS_GENERIC) += cmd_fs.o
> +obj-$(CONFIG_CMD_FUSE) += cmd_fuse.o
> +obj-$(CONFIG_CMD_GETTIME) += cmd_gettime.o
> +obj-$(CONFIG_CMD_GPIO) += cmd_gpio.o
> +obj-$(CONFIG_CMD_I2C) += cmd_i2c.o
> +obj-$(CONFIG_CMD_IOTRACE) += cmd_iotrace.o
> +obj-$(CONFIG_CMD_HASH) += cmd_hash.o
> +obj-$(CONFIG_CMD_IDE) += cmd_ide.o
> +obj-$(CONFIG_CMD_IMMAP) += cmd_immap.o
> +obj-$(CONFIG_CMD_INI) += cmd_ini.o
> +obj-$(CONFIG_CMD_IRQ) += cmd_irq.o
> +obj-$(CONFIG_CMD_ITEST) += cmd_itest.o
> +obj-$(CONFIG_CMD_JFFS2) += cmd_jffs2.o
> +obj-$(CONFIG_CMD_CRAMFS) += cmd_cramfs.o
> +obj-$(CONFIG_CMD_LDRINFO) += cmd_ldrinfo.o
> +obj-$(CONFIG_CMD_LED) += cmd_led.o
> +obj-$(CONFIG_CMD_LICENSE) += cmd_license.o
> +obj-y += cmd_load.o
> +obj-$(CONFIG_LOGBUFFER) += cmd_log.o
> +obj-$(CONFIG_ID_EEPROM) += cmd_mac.o
> +obj-$(CONFIG_CMD_MD5SUM) += cmd_md5sum.o
> +obj-$(CONFIG_CMD_MEMORY) += cmd_mem.o
> +obj-$(CONFIG_CMD_IO) += cmd_io.o
> +obj-$(CONFIG_CMD_MFSL) += cmd_mfsl.o
> +obj-$(CONFIG_CMD_MII) += cmd_mii.o
> +ifdef CONFIG_PHYLIB
> +obj-$(CONFIG_CMD_MII) += cmd_mdio.o
> +endif
> +obj-$(CONFIG_CMD_MISC) += cmd_misc.o
> +obj-$(CONFIG_CMD_MMC) += cmd_mmc.o
> +obj-$(CONFIG_CMD_MMC_SPI) += cmd_mmc_spi.o
> +obj-$(CONFIG_MP) += cmd_mp.o
> +obj-$(CONFIG_CMD_MTDPARTS) += cmd_mtdparts.o
> +obj-$(CONFIG_CMD_NAND) += cmd_nand.o
> +obj-$(CONFIG_CMD_NET) += cmd_net.o
> +obj-$(CONFIG_CMD_ONENAND) += cmd_onenand.o
> +obj-$(CONFIG_CMD_OTP) += cmd_otp.o
> +obj-$(CONFIG_CMD_PART) += cmd_part.o
> +ifdef CONFIG_PCI
> +obj-$(CONFIG_CMD_PCI) += cmd_pci.o
> +endif
> +obj-y += cmd_pcmcia.o
> +obj-$(CONFIG_CMD_PORTIO) += cmd_portio.o
> +obj-$(CONFIG_CMD_PXE) += cmd_pxe.o
> +obj-$(CONFIG_CMD_READ) += cmd_read.o
> +obj-$(CONFIG_CMD_REGINFO) += cmd_reginfo.o
> +obj-$(CONFIG_CMD_REISER) += cmd_reiser.o
> +obj-$(CONFIG_CMD_REMOTEPROC) += cmd_remoteproc.o
> +obj-$(CONFIG_SANDBOX) += cmd_host.o
> +obj-$(CONFIG_CMD_SATA) += cmd_sata.o
> +obj-$(CONFIG_CMD_SF) += cmd_sf.o
> +obj-$(CONFIG_CMD_SCSI) += cmd_scsi.o
> +obj-$(CONFIG_CMD_SHA1SUM) += cmd_sha1sum.o
> +obj-$(CONFIG_CMD_SETEXPR) += cmd_setexpr.o
> +obj-$(CONFIG_CMD_SOFTSWITCH) += cmd_softswitch.o
> +obj-$(CONFIG_CMD_SPI) += cmd_spi.o
> +obj-$(CONFIG_CMD_SPIBOOTLDR) += cmd_spibootldr.o
> +obj-$(CONFIG_CMD_STRINGS) += cmd_strings.o
> +obj-$(CONFIG_CMD_TERMINAL) += cmd_terminal.o
> +obj-$(CONFIG_CMD_TIME) += cmd_time.o
> +obj-$(CONFIG_CMD_TRACE) += cmd_trace.o
> +obj-$(CONFIG_SYS_HUSH_PARSER) += cmd_test.o
> +obj-$(CONFIG_CMD_TPM) += cmd_tpm.o
> +obj-$(CONFIG_CMD_TPM_TEST) += cmd_tpm_test.o
> +obj-$(CONFIG_CMD_TSI148) += cmd_tsi148.o
> +obj-$(CONFIG_CMD_UBI) += cmd_ubi.o
> +obj-$(CONFIG_CMD_UBIFS) += cmd_ubifs.o
> +obj-$(CONFIG_CMD_UNIVERSE) += cmd_universe.o
> +obj-$(CONFIG_CMD_UNZIP) += cmd_unzip.o
> +ifdef CONFIG_LZMA
> +obj-$(CONFIG_CMD_LZMADEC) += cmd_lzmadec.o
> +endif
> +
> +obj-$(CONFIG_CMD_USB) += cmd_usb.o
> +obj-$(CONFIG_CMD_FASTBOOT) += cmd_fastboot.o
> +obj-$(CONFIG_CMD_FS_UUID) += cmd_fs_uuid.o
> +
> +obj-$(CONFIG_CMD_USB_MASS_STORAGE) += cmd_usb_mass_storage.o
> +obj-$(CONFIG_CMD_THOR_DOWNLOAD) += cmd_thordown.o
> +obj-$(CONFIG_CMD_XIMG) += cmd_ximg.o
> +obj-$(CONFIG_YAFFS2) += cmd_yaffs2.o
> +obj-$(CONFIG_CMD_SPL) += cmd_spl.o
> +obj-$(CONFIG_CMD_ZIP) += cmd_zip.o
> +obj-$(CONFIG_CMD_ZFS) += cmd_zfs.o
> +
> +obj-$(CONFIG_CMD_DFU) += cmd_dfu.o
> +obj-$(CONFIG_CMD_GPT) += cmd_gpt.o
> +obj-$(CONFIG_CMD_ETHSW) += cmd_ethsw.o
> +
> +# Power
> +obj-$(CONFIG_CMD_PMIC) += cmd_pmic.o
> +obj-$(CONFIG_CMD_REGULATOR) += cmd_regulator.o
> +endif # !CONFIG_SPL_BUILD
> +
> +ifdef CONFIG_SPL_BUILD
> +ifdef CONFIG_SPL_SATA_SUPPORT
> +obj-$(CONFIG_CMD_SCSI) += cmd_scsi.o
> +endif
> +endif # CONFIG_SPL_BUILD
> +
> +obj-$(CONFIG_CMD_BLOB) += cmd_blob.o
> +
> +# core command
> +obj-y += cmd_nvedit.o
> +obj-y += cmd_disk.o
> diff --git a/common/cmd_aes.c b/cmd/cmd_aes.c
> similarity index 100%
> rename from common/cmd_aes.c
> rename to cmd/cmd_aes.c
> diff --git a/common/cmd_ambapp.c b/cmd/cmd_ambapp.c
> similarity index 100%
> rename from common/cmd_ambapp.c
> rename to cmd/cmd_ambapp.c
> diff --git a/common/cmd_armflash.c b/cmd/cmd_armflash.c
> similarity index 100%
> rename from common/cmd_armflash.c
> rename to cmd/cmd_armflash.c
> diff --git a/common/cmd_bdinfo.c b/cmd/cmd_bdinfo.c
> similarity index 100%
> rename from common/cmd_bdinfo.c
> rename to cmd/cmd_bdinfo.c
> diff --git a/common/cmd_bedbug.c b/cmd/cmd_bedbug.c
> similarity index 100%
> rename from common/cmd_bedbug.c
> rename to cmd/cmd_bedbug.c
> diff --git a/common/cmd_blob.c b/cmd/cmd_blob.c
> similarity index 100%
> rename from common/cmd_blob.c
> rename to cmd/cmd_blob.c
> diff --git a/common/cmd_bmp.c b/cmd/cmd_bmp.c
> similarity index 100%
> rename from common/cmd_bmp.c
> rename to cmd/cmd_bmp.c
> diff --git a/common/cmd_boot.c b/cmd/cmd_boot.c
> similarity index 100%
> rename from common/cmd_boot.c
> rename to cmd/cmd_boot.c
> diff --git a/common/cmd_bootldr.c b/cmd/cmd_bootldr.c
> similarity index 100%
> rename from common/cmd_bootldr.c
> rename to cmd/cmd_bootldr.c
> diff --git a/common/cmd_bootm.c b/cmd/cmd_bootm.c
> similarity index 100%
> rename from common/cmd_bootm.c
> rename to cmd/cmd_bootm.c
> diff --git a/common/cmd_bootmenu.c b/cmd/cmd_bootmenu.c
> similarity index 100%
> rename from common/cmd_bootmenu.c
> rename to cmd/cmd_bootmenu.c
> diff --git a/common/cmd_bootstage.c b/cmd/cmd_bootstage.c
> similarity index 100%
> rename from common/cmd_bootstage.c
> rename to cmd/cmd_bootstage.c
> diff --git a/common/cmd_cache.c b/cmd/cmd_cache.c
> similarity index 100%
> rename from common/cmd_cache.c
> rename to cmd/cmd_cache.c
> diff --git a/common/cmd_cbfs.c b/cmd/cmd_cbfs.c
> similarity index 100%
> rename from common/cmd_cbfs.c
> rename to cmd/cmd_cbfs.c
> diff --git a/common/cmd_clk.c b/cmd/cmd_clk.c
> similarity index 100%
> rename from common/cmd_clk.c
> rename to cmd/cmd_clk.c
> diff --git a/common/cmd_console.c b/cmd/cmd_console.c
> similarity index 100%
> rename from common/cmd_console.c
> rename to cmd/cmd_console.c
> diff --git a/common/cmd_cplbinfo.c b/cmd/cmd_cplbinfo.c
> similarity index 100%
> rename from common/cmd_cplbinfo.c
> rename to cmd/cmd_cplbinfo.c
> diff --git a/common/cmd_cpu.c b/cmd/cmd_cpu.c
> similarity index 100%
> rename from common/cmd_cpu.c
> rename to cmd/cmd_cpu.c
> diff --git a/common/cmd_cramfs.c b/cmd/cmd_cramfs.c
> similarity index 100%
> rename from common/cmd_cramfs.c
> rename to cmd/cmd_cramfs.c
> diff --git a/common/cmd_dataflash_mmc_mux.c b/cmd/cmd_dataflash_mmc_mux.c
> similarity index 100%
> rename from common/cmd_dataflash_mmc_mux.c
> rename to cmd/cmd_dataflash_mmc_mux.c
> diff --git a/common/cmd_date.c b/cmd/cmd_date.c
> similarity index 100%
> rename from common/cmd_date.c
> rename to cmd/cmd_date.c
> diff --git a/common/cmd_dcr.c b/cmd/cmd_dcr.c
> similarity index 100%
> rename from common/cmd_dcr.c
> rename to cmd/cmd_dcr.c
> diff --git a/common/cmd_demo.c b/cmd/cmd_demo.c
> similarity index 100%
> rename from common/cmd_demo.c
> rename to cmd/cmd_demo.c
> diff --git a/common/cmd_dfu.c b/cmd/cmd_dfu.c
> similarity index 100%
> rename from common/cmd_dfu.c
> rename to cmd/cmd_dfu.c
> diff --git a/common/cmd_diag.c b/cmd/cmd_diag.c
> similarity index 100%
> rename from common/cmd_diag.c
> rename to cmd/cmd_diag.c
> diff --git a/common/cmd_disk.c b/cmd/cmd_disk.c
> similarity index 100%
> rename from common/cmd_disk.c
> rename to cmd/cmd_disk.c
> diff --git a/common/cmd_display.c b/cmd/cmd_display.c
> similarity index 100%
> rename from common/cmd_display.c
> rename to cmd/cmd_display.c
> diff --git a/common/cmd_dtt.c b/cmd/cmd_dtt.c
> similarity index 100%
> rename from common/cmd_dtt.c
> rename to cmd/cmd_dtt.c
> diff --git a/common/cmd_echo.c b/cmd/cmd_echo.c
> similarity index 100%
> rename from common/cmd_echo.c
> rename to cmd/cmd_echo.c
> diff --git a/common/cmd_eeprom.c b/cmd/cmd_eeprom.c
> similarity index 100%
> rename from common/cmd_eeprom.c
> rename to cmd/cmd_eeprom.c
> diff --git a/common/cmd_efi.c b/cmd/cmd_efi.c
> similarity index 100%
> rename from common/cmd_efi.c
> rename to cmd/cmd_efi.c
> diff --git a/common/cmd_elf.c b/cmd/cmd_elf.c
> similarity index 100%
> rename from common/cmd_elf.c
> rename to cmd/cmd_elf.c
> diff --git a/common/cmd_ethsw.c b/cmd/cmd_ethsw.c
> similarity index 100%
> rename from common/cmd_ethsw.c
> rename to cmd/cmd_ethsw.c
> diff --git a/common/cmd_exit.c b/cmd/cmd_exit.c
> similarity index 100%
> rename from common/cmd_exit.c
> rename to cmd/cmd_exit.c
> diff --git a/common/cmd_ext2.c b/cmd/cmd_ext2.c
> similarity index 100%
> rename from common/cmd_ext2.c
> rename to cmd/cmd_ext2.c
> diff --git a/common/cmd_ext4.c b/cmd/cmd_ext4.c
> similarity index 100%
> rename from common/cmd_ext4.c
> rename to cmd/cmd_ext4.c
> diff --git a/common/cmd_fastboot.c b/cmd/cmd_fastboot.c
> similarity index 100%
> rename from common/cmd_fastboot.c
> rename to cmd/cmd_fastboot.c
> diff --git a/common/cmd_fat.c b/cmd/cmd_fat.c
> similarity index 100%
> rename from common/cmd_fat.c
> rename to cmd/cmd_fat.c
> diff --git a/common/cmd_fdc.c b/cmd/cmd_fdc.c
> similarity index 100%
> rename from common/cmd_fdc.c
> rename to cmd/cmd_fdc.c
> diff --git a/common/cmd_fdt.c b/cmd/cmd_fdt.c
> similarity index 100%
> rename from common/cmd_fdt.c
> rename to cmd/cmd_fdt.c
> diff --git a/common/cmd_fitupd.c b/cmd/cmd_fitupd.c
> similarity index 100%
> rename from common/cmd_fitupd.c
> rename to cmd/cmd_fitupd.c
> diff --git a/common/cmd_flash.c b/cmd/cmd_flash.c
> similarity index 100%
> rename from common/cmd_flash.c
> rename to cmd/cmd_flash.c
> diff --git a/common/cmd_fpga.c b/cmd/cmd_fpga.c
> similarity index 100%
> rename from common/cmd_fpga.c
> rename to cmd/cmd_fpga.c
> diff --git a/common/cmd_fpgad.c b/cmd/cmd_fpgad.c
> similarity index 100%
> rename from common/cmd_fpgad.c
> rename to cmd/cmd_fpgad.c
> diff --git a/common/cmd_fs.c b/cmd/cmd_fs.c
> similarity index 100%
> rename from common/cmd_fs.c
> rename to cmd/cmd_fs.c
> diff --git a/common/cmd_fs_uuid.c b/cmd/cmd_fs_uuid.c
> similarity index 100%
> rename from common/cmd_fs_uuid.c
> rename to cmd/cmd_fs_uuid.c
> diff --git a/common/cmd_fuse.c b/cmd/cmd_fuse.c
> similarity index 100%
> rename from common/cmd_fuse.c
> rename to cmd/cmd_fuse.c
> diff --git a/common/cmd_gettime.c b/cmd/cmd_gettime.c
> similarity index 100%
> rename from common/cmd_gettime.c
> rename to cmd/cmd_gettime.c
> diff --git a/common/cmd_gpio.c b/cmd/cmd_gpio.c
> similarity index 100%
> rename from common/cmd_gpio.c
> rename to cmd/cmd_gpio.c
> diff --git a/common/cmd_gpt.c b/cmd/cmd_gpt.c
> similarity index 100%
> rename from common/cmd_gpt.c
> rename to cmd/cmd_gpt.c
> diff --git a/common/cmd_hash.c b/cmd/cmd_hash.c
> similarity index 100%
> rename from common/cmd_hash.c
> rename to cmd/cmd_hash.c
> diff --git a/common/cmd_help.c b/cmd/cmd_help.c
> similarity index 100%
> rename from common/cmd_help.c
> rename to cmd/cmd_help.c
> diff --git a/common/cmd_host.c b/cmd/cmd_host.c
> similarity index 100%
> rename from common/cmd_host.c
> rename to cmd/cmd_host.c
> diff --git a/common/cmd_i2c.c b/cmd/cmd_i2c.c
> similarity index 100%
> rename from common/cmd_i2c.c
> rename to cmd/cmd_i2c.c
> diff --git a/common/cmd_ide.c b/cmd/cmd_ide.c
> similarity index 100%
> rename from common/cmd_ide.c
> rename to cmd/cmd_ide.c
> diff --git a/common/cmd_immap.c b/cmd/cmd_immap.c
> similarity index 100%
> rename from common/cmd_immap.c
> rename to cmd/cmd_immap.c
> diff --git a/common/cmd_ini.c b/cmd/cmd_ini.c
> similarity index 100%
> rename from common/cmd_ini.c
> rename to cmd/cmd_ini.c
> diff --git a/common/cmd_io.c b/cmd/cmd_io.c
> similarity index 100%
> rename from common/cmd_io.c
> rename to cmd/cmd_io.c
> diff --git a/common/cmd_iotrace.c b/cmd/cmd_iotrace.c
> similarity index 100%
> rename from common/cmd_iotrace.c
> rename to cmd/cmd_iotrace.c
> diff --git a/common/cmd_irq.c b/cmd/cmd_irq.c
> similarity index 100%
> rename from common/cmd_irq.c
> rename to cmd/cmd_irq.c
> diff --git a/common/cmd_itest.c b/cmd/cmd_itest.c
> similarity index 100%
> rename from common/cmd_itest.c
> rename to cmd/cmd_itest.c
> diff --git a/common/cmd_jffs2.c b/cmd/cmd_jffs2.c
> similarity index 100%
> rename from common/cmd_jffs2.c
> rename to cmd/cmd_jffs2.c
> diff --git a/common/cmd_ldrinfo.c b/cmd/cmd_ldrinfo.c
> similarity index 100%
> rename from common/cmd_ldrinfo.c
> rename to cmd/cmd_ldrinfo.c
> diff --git a/common/cmd_led.c b/cmd/cmd_led.c
> similarity index 100%
> rename from common/cmd_led.c
> rename to cmd/cmd_led.c
> diff --git a/common/cmd_license.c b/cmd/cmd_license.c
> similarity index 100%
> rename from common/cmd_license.c
> rename to cmd/cmd_license.c
> diff --git a/common/cmd_load.c b/cmd/cmd_load.c
> similarity index 100%
> rename from common/cmd_load.c
> rename to cmd/cmd_load.c
> diff --git a/common/cmd_log.c b/cmd/cmd_log.c
> similarity index 100%
> rename from common/cmd_log.c
> rename to cmd/cmd_log.c
> diff --git a/common/cmd_lzmadec.c b/cmd/cmd_lzmadec.c
> similarity index 100%
> rename from common/cmd_lzmadec.c
> rename to cmd/cmd_lzmadec.c
> diff --git a/common/cmd_mac.c b/cmd/cmd_mac.c
> similarity index 100%
> rename from common/cmd_mac.c
> rename to cmd/cmd_mac.c
> diff --git a/common/cmd_md5sum.c b/cmd/cmd_md5sum.c
> similarity index 100%
> rename from common/cmd_md5sum.c
> rename to cmd/cmd_md5sum.c
> diff --git a/common/cmd_mdio.c b/cmd/cmd_mdio.c
> similarity index 100%
> rename from common/cmd_mdio.c
> rename to cmd/cmd_mdio.c
> diff --git a/common/cmd_mem.c b/cmd/cmd_mem.c
> similarity index 100%
> rename from common/cmd_mem.c
> rename to cmd/cmd_mem.c
> diff --git a/common/cmd_mfsl.c b/cmd/cmd_mfsl.c
> similarity index 100%
> rename from common/cmd_mfsl.c
> rename to cmd/cmd_mfsl.c
> diff --git a/common/cmd_mii.c b/cmd/cmd_mii.c
> similarity index 100%
> rename from common/cmd_mii.c
> rename to cmd/cmd_mii.c
> diff --git a/common/cmd_misc.c b/cmd/cmd_misc.c
> similarity index 100%
> rename from common/cmd_misc.c
> rename to cmd/cmd_misc.c
> diff --git a/common/cmd_mmc.c b/cmd/cmd_mmc.c
> similarity index 100%
> rename from common/cmd_mmc.c
> rename to cmd/cmd_mmc.c
> diff --git a/common/cmd_mmc_spi.c b/cmd/cmd_mmc_spi.c
> similarity index 100%
> rename from common/cmd_mmc_spi.c
> rename to cmd/cmd_mmc_spi.c
> diff --git a/common/cmd_mp.c b/cmd/cmd_mp.c
> similarity index 100%
> rename from common/cmd_mp.c
> rename to cmd/cmd_mp.c
> diff --git a/common/cmd_mtdparts.c b/cmd/cmd_mtdparts.c
> similarity index 100%
> rename from common/cmd_mtdparts.c
> rename to cmd/cmd_mtdparts.c
> diff --git a/common/cmd_nand.c b/cmd/cmd_nand.c
> similarity index 100%
> rename from common/cmd_nand.c
> rename to cmd/cmd_nand.c
> diff --git a/common/cmd_net.c b/cmd/cmd_net.c
> similarity index 100%
> rename from common/cmd_net.c
> rename to cmd/cmd_net.c
> diff --git a/common/cmd_nvedit.c b/cmd/cmd_nvedit.c
> similarity index 100%
> rename from common/cmd_nvedit.c
> rename to cmd/cmd_nvedit.c
> diff --git a/common/cmd_onenand.c b/cmd/cmd_onenand.c
> similarity index 100%
> rename from common/cmd_onenand.c
> rename to cmd/cmd_onenand.c
> diff --git a/common/cmd_otp.c b/cmd/cmd_otp.c
> similarity index 100%
> rename from common/cmd_otp.c
> rename to cmd/cmd_otp.c
> diff --git a/common/cmd_part.c b/cmd/cmd_part.c
> similarity index 100%
> rename from common/cmd_part.c
> rename to cmd/cmd_part.c
> diff --git a/common/cmd_pci.c b/cmd/cmd_pci.c
> similarity index 100%
> rename from common/cmd_pci.c
> rename to cmd/cmd_pci.c
> diff --git a/common/cmd_pcmcia.c b/cmd/cmd_pcmcia.c
> similarity index 100%
> rename from common/cmd_pcmcia.c
> rename to cmd/cmd_pcmcia.c
> diff --git a/common/cmd_pmic.c b/cmd/cmd_pmic.c
> similarity index 100%
> rename from common/cmd_pmic.c
> rename to cmd/cmd_pmic.c
> diff --git a/common/cmd_portio.c b/cmd/cmd_portio.c
> similarity index 100%
> rename from common/cmd_portio.c
> rename to cmd/cmd_portio.c
> diff --git a/common/cmd_pxe.c b/cmd/cmd_pxe.c
> similarity index 100%
> rename from common/cmd_pxe.c
> rename to cmd/cmd_pxe.c
> diff --git a/common/cmd_read.c b/cmd/cmd_read.c
> similarity index 100%
> rename from common/cmd_read.c
> rename to cmd/cmd_read.c
> diff --git a/common/cmd_reginfo.c b/cmd/cmd_reginfo.c
> similarity index 100%
> rename from common/cmd_reginfo.c
> rename to cmd/cmd_reginfo.c
> diff --git a/common/cmd_regulator.c b/cmd/cmd_regulator.c
> similarity index 100%
> rename from common/cmd_regulator.c
> rename to cmd/cmd_regulator.c
> diff --git a/common/cmd_reiser.c b/cmd/cmd_reiser.c
> similarity index 100%
> rename from common/cmd_reiser.c
> rename to cmd/cmd_reiser.c
> diff --git a/common/cmd_remoteproc.c b/cmd/cmd_remoteproc.c
> similarity index 100%
> rename from common/cmd_remoteproc.c
> rename to cmd/cmd_remoteproc.c
> diff --git a/common/cmd_sata.c b/cmd/cmd_sata.c
> similarity index 100%
> rename from common/cmd_sata.c
> rename to cmd/cmd_sata.c
> diff --git a/common/cmd_scsi.c b/cmd/cmd_scsi.c
> similarity index 100%
> rename from common/cmd_scsi.c
> rename to cmd/cmd_scsi.c
> diff --git a/common/cmd_setexpr.c b/cmd/cmd_setexpr.c
> similarity index 100%
> rename from common/cmd_setexpr.c
> rename to cmd/cmd_setexpr.c
> diff --git a/common/cmd_sf.c b/cmd/cmd_sf.c
> similarity index 100%
> rename from common/cmd_sf.c
> rename to cmd/cmd_sf.c
> diff --git a/common/cmd_sha1sum.c b/cmd/cmd_sha1sum.c
> similarity index 100%
> rename from common/cmd_sha1sum.c
> rename to cmd/cmd_sha1sum.c
> diff --git a/common/cmd_softswitch.c b/cmd/cmd_softswitch.c
> similarity index 100%
> rename from common/cmd_softswitch.c
> rename to cmd/cmd_softswitch.c
> diff --git a/common/cmd_sound.c b/cmd/cmd_sound.c
> similarity index 100%
> rename from common/cmd_sound.c
> rename to cmd/cmd_sound.c
> diff --git a/common/cmd_source.c b/cmd/cmd_source.c
> similarity index 100%
> rename from common/cmd_source.c
> rename to cmd/cmd_source.c
> diff --git a/common/cmd_spi.c b/cmd/cmd_spi.c
> similarity index 100%
> rename from common/cmd_spi.c
> rename to cmd/cmd_spi.c
> diff --git a/common/cmd_spibootldr.c b/cmd/cmd_spibootldr.c
> similarity index 100%
> rename from common/cmd_spibootldr.c
> rename to cmd/cmd_spibootldr.c
> diff --git a/common/cmd_spl.c b/cmd/cmd_spl.c
> similarity index 100%
> rename from common/cmd_spl.c
> rename to cmd/cmd_spl.c
> diff --git a/common/cmd_strings.c b/cmd/cmd_strings.c
> similarity index 100%
> rename from common/cmd_strings.c
> rename to cmd/cmd_strings.c
> diff --git a/common/cmd_terminal.c b/cmd/cmd_terminal.c
> similarity index 100%
> rename from common/cmd_terminal.c
> rename to cmd/cmd_terminal.c
> diff --git a/common/cmd_test.c b/cmd/cmd_test.c
> similarity index 100%
> rename from common/cmd_test.c
> rename to cmd/cmd_test.c
> diff --git a/common/cmd_thordown.c b/cmd/cmd_thordown.c
> similarity index 100%
> rename from common/cmd_thordown.c
> rename to cmd/cmd_thordown.c
> diff --git a/common/cmd_time.c b/cmd/cmd_time.c
> similarity index 100%
> rename from common/cmd_time.c
> rename to cmd/cmd_time.c
> diff --git a/common/cmd_tpm.c b/cmd/cmd_tpm.c
> similarity index 100%
> rename from common/cmd_tpm.c
> rename to cmd/cmd_tpm.c
> diff --git a/common/cmd_tpm_test.c b/cmd/cmd_tpm_test.c
> similarity index 100%
> rename from common/cmd_tpm_test.c
> rename to cmd/cmd_tpm_test.c
> diff --git a/common/cmd_trace.c b/cmd/cmd_trace.c
> similarity index 100%
> rename from common/cmd_trace.c
> rename to cmd/cmd_trace.c
> diff --git a/common/cmd_tsi148.c b/cmd/cmd_tsi148.c
> similarity index 100%
> rename from common/cmd_tsi148.c
> rename to cmd/cmd_tsi148.c
> diff --git a/common/cmd_ubi.c b/cmd/cmd_ubi.c
> similarity index 100%
> rename from common/cmd_ubi.c
> rename to cmd/cmd_ubi.c
> diff --git a/common/cmd_ubifs.c b/cmd/cmd_ubifs.c
> similarity index 100%
> rename from common/cmd_ubifs.c
> rename to cmd/cmd_ubifs.c
> diff --git a/common/cmd_universe.c b/cmd/cmd_universe.c
> similarity index 100%
> rename from common/cmd_universe.c
> rename to cmd/cmd_universe.c
> diff --git a/common/cmd_unzip.c b/cmd/cmd_unzip.c
> similarity index 100%
> rename from common/cmd_unzip.c
> rename to cmd/cmd_unzip.c
> diff --git a/common/cmd_usb.c b/cmd/cmd_usb.c
> similarity index 100%
> rename from common/cmd_usb.c
> rename to cmd/cmd_usb.c
> diff --git a/common/cmd_usb_mass_storage.c b/cmd/cmd_usb_mass_storage.c
> similarity index 100%
> rename from common/cmd_usb_mass_storage.c
> rename to cmd/cmd_usb_mass_storage.c
> diff --git a/common/cmd_version.c b/cmd/cmd_version.c
> similarity index 100%
> rename from common/cmd_version.c
> rename to cmd/cmd_version.c
> diff --git a/common/cmd_ximg.c b/cmd/cmd_ximg.c
> similarity index 100%
> rename from common/cmd_ximg.c
> rename to cmd/cmd_ximg.c
> diff --git a/common/cmd_yaffs2.c b/cmd/cmd_yaffs2.c
> similarity index 100%
> rename from common/cmd_yaffs2.c
> rename to cmd/cmd_yaffs2.c
> diff --git a/common/cmd_zfs.c b/cmd/cmd_zfs.c
> similarity index 100%
> rename from common/cmd_zfs.c
> rename to cmd/cmd_zfs.c
> diff --git a/common/cmd_zip.c b/cmd/cmd_zip.c
> similarity index 100%
> rename from common/cmd_zip.c
> rename to cmd/cmd_zip.c
> diff --git a/common/Kconfig b/common/Kconfig
> index 9d446bf..067545d 100644
> --- a/common/Kconfig
> +++ b/common/Kconfig
> @@ -1,522 +1,3 @@
> -menu "Command line interface"
> -
> -config HUSH_PARSER
> - bool "Use hush shell"
> - select SYS_HUSH_PARSER
> - help
> - This option enables the "hush" shell (from Busybox) as command line
> - interpreter, thus enabling powerful command line syntax like
> - if...then...else...fi conditionals or `&&' and '||'
> - constructs ("shell scripts").
> -
> - If disabled, you get the old, much simpler behaviour with a somewhat
> - smaller memory footprint.
> -
> -config SYS_HUSH_PARSER
> - bool
> - help
> - Backward compatibility.
> -
> -config SYS_PROMPT
> - string "Shell prompt"
> - default "=> "
> - help
> - This string is displayed in the command line to the left of the
> - cursor.
> -
> -menu "Autoboot options"
> -
> -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
> - default n
> -
> -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.
> -
> -endmenu
> -
> -comment "Commands"
> -
> -menu "Info commands"
> -
> -config CMD_BDI
> - bool "bdinfo"
> - default y
> - help
> - Print board info
> -
> -config CMD_CONSOLE
> - bool "coninfo"
> - default y
> - help
> - Print console devices and information.
> -
> -config CMD_CPU
> - bool "cpu"
> - help
> - Print information about available CPUs. This normally shows the
> - number of CPUs, type (e.g. manufacturer, architecture, product or
> - internal name) and clock frequency. Other information may be
> - available depending on the CPU driver.
> -
> -config CMD_LICENSE
> - bool "license"
> - help
> - Print GPL license text
> -
> -endmenu
> -
> -menu "Boot commands"
> -
> -config CMD_BOOTD
> - bool "bootd"
> - default y
> - help
> - Run the command stored in the environment "bootcmd", i.e.
> - "bootd" does the same thing as "run bootcmd".
> -
> -config CMD_BOOTM
> - bool "bootm"
> - default y
> - help
> - Boot an application image from the memory.
> -
> -config CMD_ELF
> - bool "bootelf, bootvx"
> - default y
> - help
> - Boot an ELF/vxWorks image from the memory.
> -
> -config CMD_GO
> - bool "go"
> - default y
> - help
> - Start an application at a given address.
> -
> -config CMD_RUN
> - bool "run"
> - default y
> - help
> - Run the command in the given environment variable.
> -
> -config CMD_IMI
> - bool "iminfo"
> - default y
> - help
> - Print header information for application image.
> -
> -config CMD_IMLS
> - bool "imls"
> - default y
> - help
> - List all images found in flash
> -
> -config CMD_XIMG
> - bool "imxtract"
> - default y
> - help
> - Extract a part of a multi-image.
> -
> -config CMD_POWEROFF
> - bool
> -
> -endmenu
> -
> -menu "Environment commands"
> -
> -config CMD_EXPORTENV
> - bool "env export"
> - default y
> - help
> - Export environments.
> -
> -config CMD_IMPORTENV
> - bool "env import"
> - default y
> - help
> - Import environments.
> -
> -config CMD_EDITENV
> - bool "editenv"
> - default y
> - help
> - Edit environment variable.
> -
> -config CMD_SAVEENV
> - bool "saveenv"
> - default y
> - help
> - Save all environment variables into the compiled-in persistent
> - storage.
> -
> -config CMD_ENV_EXISTS
> - bool "env exists"
> - default y
> - help
> - Check if a variable is defined in the environment for use in
> - shell scripting.
> -
> -endmenu
> -
> -menu "Memory commands"
> -
> -config CMD_MEMORY
> - bool "md, mm, nm, mw, cp, cmp, base, loop"
> - default y
> - help
> - Memeory commands.
> - md - memory display
> - mm - memory modify (auto-incrementing address)
> - nm - memory modify (constant address)
> - mw - memory write (fill)
> - cp - memory copy
> - cmp - memory compare
> - base - print or set address offset
> - loop - initinite loop on address range
> -
> -config CMD_CRC32
> - bool "crc32"
> - default y
> - help
> - Compute CRC32.
> -
> -config LOOPW
> - bool "loopw"
> - help
> - Infinite write loop on address range
> -
> -config CMD_MEMTEST
> - bool "memtest"
> - help
> - Simple RAM read/write test.
> -
> -config CMD_MX_CYCLIC
> - bool "mdc, mwc"
> - help
> - mdc - memory display cyclic
> - mwc - memory write cyclic
> -
> -config CMD_MEMINFO
> - bool "meminfo"
> - help
> - Display memory information.
> -
> -endmenu
> -
> -menu "Device access commands"
> -
> -config CMD_DM
> - bool "dm - Access to driver model information"
> - depends on DM
> - default y
> - help
> - Provides access to driver model data structures and information,
> - such as a list of devices, list of uclasses and the state of each
> - device (e.g. activated). This is not required for operation, but
> - can be useful to see the state of driver model for debugging or
> - interest.
> -
> -config CMD_DEMO
> - bool "demo - Demonstration commands for driver model"
> - depends on DM
> - help
> - Provides a 'demo' command which can be used to play around with
> - driver model. To use this properly you will need to enable one or
> - both of the demo devices (DM_DEMO_SHAPE and DM_DEMO_SIMPLE).
> - Otherwise you will always get an empty list of devices. The demo
> - devices are defined in the sandbox device tree, so the easiest
> - option is to use sandbox and pass the -d point to sandbox's
> - u-boot.dtb file.
> -
> -config CMD_LOADB
> - bool "loadb"
> - default y
> - help
> - Load a binary file over serial line.
> -
> -config CMD_LOADS
> - bool "loads"
> - default y
> - help
> - Load an S-Record file over serial line
> -
> -config CMD_FLASH
> - bool "flinfo, erase, protect"
> - default y
> - help
> - NOR flash support.
> - flinfo - print FLASH memory information
> - erase - FLASH memory
> - protect - enable or disable FLASH write protection
> -
> -config CMD_ARMFLASH
> - depends on FLASH_CFI_DRIVER
> - bool "armflash"
> - help
> - ARM Ltd reference designs flash partition access
> -
> -config CMD_NAND
> - bool "nand"
> - help
> - NAND support.
> -
> -config CMD_SF
> - bool "sf"
> - help
> - SPI Flash support
> -
> -config CMD_SPI
> - bool "sspi"
> - help
> - SPI utility command.
> -
> -config CMD_I2C
> - bool "i2c"
> - help
> - I2C support.
> -
> -config CMD_USB
> - bool "usb"
> - help
> - USB support.
> -
> -config CMD_FPGA
> - bool "fpga"
> - default y
> - help
> - FPGA support.
> -
> -config CMD_REMOTEPROC
> - bool "remoteproc"
> - depends on REMOTEPROC
> - help
> - Support for Remote Processor control
> -
> -config CMD_GPIO
> - bool "gpio"
> - help
> - GPIO support.
> -
> -endmenu
> -
> -
> -menu "Shell scripting commands"
> -
> -config CMD_ECHO
> - bool "echo"
> - default y
> - help
> - Echo args to console
> -
> -config CMD_ITEST
> - bool "itest"
> - default y
> - help
> - Return true/false on integer compare.
> -
> -config CMD_SOURCE
> - bool "source"
> - default y
> - help
> - Run script from memory
> -
> -config CMD_SETEXPR
> - bool "setexpr"
> - default y
> - help
> - Evaluate boolean and math expressions and store the result in an env
> - variable.
> - Also supports loading the value at a memory location into a variable.
> - If CONFIG_REGEX is enabled, setexpr also supports a gsub function.
> -
> -endmenu
> -
> -menu "Network commands"
> -
> -config CMD_NET
> - bool "bootp, tftpboot"
> - select NET
> - default y
> - help
> - Network commands.
> - bootp - boot image via network using BOOTP/TFTP protocol
> - tftpboot - boot image via network using TFTP protocol
> -
> -config CMD_TFTPPUT
> - bool "tftp put"
> - help
> - TFTP put command, for uploading files to a server
> -
> -config CMD_TFTPSRV
> - bool "tftpsrv"
> - help
> - Act as a TFTP server and boot the first received file
> -
> -config CMD_RARP
> - bool "rarpboot"
> - help
> - Boot image via network using RARP/TFTP protocol
> -
> -config CMD_DHCP
> - bool "dhcp"
> - help
> - Boot image via network using DHCP/TFTP protocol
> -
> -config CMD_NFS
> - bool "nfs"
> - default y
> - help
> - Boot image via network using NFS protocol.
> -
> -config CMD_PING
> - bool "ping"
> - help
> - Send ICMP ECHO_REQUEST to network host
> -
> -config CMD_CDP
> - bool "cdp"
> - help
> - Perform CDP network configuration
> -
> -config CMD_SNTP
> - bool "sntp"
> - help
> - Synchronize RTC via network
> -
> -config CMD_DNS
> - bool "dns"
> - help
> - Lookup the IP of a hostname
> -
> -config CMD_LINK_LOCAL
> - bool "linklocal"
> - help
> - Acquire a network IP address using the link-local protocol
> -
> -endmenu
> -
> -menu "Misc commands"
> -
> -config CMD_AMBAPP
> - bool "ambapp"
> - depends on LEON3
> - default y
> - help
> - Lists AMBA Plug-n-Play information.
> -
> -config SYS_AMBAPP_PRINT_ON_STARTUP
> - bool "Show AMBA PnP info on startup"
> - depends on CMD_AMBAPP
> - default n
> - help
> - Show AMBA Plug-n-Play information on startup.
> -
> -config CMD_TIME
> - bool "time"
> - help
> - Run commands and summarize execution time.
> -
> -# TODO: rename to CMD_SLEEP
> -config CMD_MISC
> - bool "sleep"
> - default y
> - help
> - Delay execution for some time
> -
> -config CMD_TIMER
> - bool "timer"
> - help
> - Access the system timer.
> -
> -config CMD_SETGETDCR
> - bool "getdcr, setdcr, getidcr, setidcr"
> - depends on 4xx
> - default y
> - help
> - getdcr - Get an AMCC PPC 4xx DCR's value
> - setdcr - Set an AMCC PPC 4xx DCR's value
> - getidcr - Get a register value via indirect DCR addressing
> - setidcr - Set a register value via indirect DCR addressing
> -
> -config CMD_SOUND
> - bool "sound"
> - depends on SOUND
> - help
> - This provides basic access to the U-Boot's sound support. The main
> - feature is to play a beep.
> -
> - sound init - set up sound system
> - sound play - play a sound
> -
> -endmenu
> -
> menu "Boot timing"
>
> config BOOTSTAGE
> @@ -565,13 +46,6 @@ config BOOTSTAGE_USER_COUNT
> a new ID will be allocated from this stash. If you exceed
> the limit, recording will stop.
>
> -config CMD_BOOTSTAGE
> - bool "Enable the 'bootstage' command"
> - depends on BOOTSTAGE
> - help
> - Add a 'bootstage' command which supports printing a report
> - and un/stashing of bootstage data.
> -
> config BOOTSTAGE_FDT
> bool "Store boot timing information in the OS device tree"
> depends on BOOTSTAGE
> @@ -623,66 +97,6 @@ config BOOTSTAGE_STASH_SIZE
>
> endmenu
>
> -menu "Power commands"
> -config CMD_PMIC
> - bool "Enable Driver Model PMIC command"
> - depends on DM_PMIC
> - help
> - This is the pmic command, based on a driver model pmic's API.
> - Command features are unchanged:
> - - list - list pmic devices
> - - pmic dev <id> - show or [set] operating pmic device (NEW)
> - - pmic dump - dump registers
> - - pmic read address - read byte of register at address
> - - pmic write address - write byte to register at address
> - The only one change for this command is 'dev' subcommand.
> -
> -config CMD_REGULATOR
> - bool "Enable Driver Model REGULATOR command"
> - depends on DM_REGULATOR
> - help
> - This command is based on driver model regulator's API.
> - User interface features:
> - - list - list regulator devices
> - - regulator dev <id> - show or [set] operating regulator device
> - - regulator info - print constraints info
> - - regulator status - print operating status
> - - regulator value <val] <-f> - print/[set] voltage value [uV]
> - - regulator current <val> - print/[set] current value [uA]
> - - regulator mode <id> - print/[set] operating mode id
> - - regulator enable - enable the regulator output
> - - regulator disable - disable the regulator output
> -
> - 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.
> -
> -endmenu
> -
> -menu "Security commands"
> -config CMD_TPM
> - bool "Enable the 'tpm' command"
> - depends on TPM
> - help
> - This provides a means to talk to a TPM from the command line. A wide
> - range of commands if provided - see 'tpm help' for details. The
> - command requires a suitable TPM on your board and the correct driver
> - must be enabled.
> -
> -config CMD_TPM_TEST
> - bool "Enable the 'tpm test' command"
> - depends on CMD_TPM
> - help
> - This provides a a series of tests to confirm that the TPM is working
> - correctly. The tests cover initialisation, non-volatile RAM, extend,
> - global lock and checking that timing is within expectations. The
> - tests pass correctly on Infineon TPMs but may need to be adjusted
> - for other devices.
> -
> -endmenu
> -
> -endmenu
> -
> config CONSOLE_RECORD
> bool "Console recording"
> help
> diff --git a/common/Makefile b/common/Makefile
> index 2a1d9f8..fcf972d 100644
> --- a/common/Makefile
> +++ b/common/Makefile
> @@ -31,11 +31,7 @@ obj-$(CONFIG_SYS_GENERIC_BOARD) += board_r.o
> obj-$(CONFIG_DISPLAY_BOARDINFO) += board_info.o
> obj-$(CONFIG_DISPLAY_BOARDINFO_LATE) += board_info.o
>
> -# core command
> -obj-y += cmd_boot.o
> -obj-$(CONFIG_CMD_BOOTM) += cmd_bootm.o bootm.o bootm_os.o
> -obj-y += cmd_help.o
> -obj-y += cmd_version.o
> +obj-$(CONFIG_CMD_BOOTM) += bootm.o bootm_os.o
>
> # environment
> obj-y += env_attr.o
> @@ -58,143 +54,17 @@ obj-$(CONFIG_ENV_IS_IN_REMOTE) += env_remote.o
> obj-$(CONFIG_ENV_IS_IN_UBI) += env_ubi.o
> obj-$(CONFIG_ENV_IS_NOWHERE) += env_nowhere.o
>
> -# command
> -obj-$(CONFIG_CMD_AES) += cmd_aes.o
> -obj-$(CONFIG_CMD_AMBAPP) += cmd_ambapp.o
> -obj-$(CONFIG_CMD_ARMFLASH) += cmd_armflash.o
> -obj-$(CONFIG_SOURCE) += cmd_source.o
> -obj-$(CONFIG_CMD_SOURCE) += cmd_source.o
> -obj-$(CONFIG_CMD_BDI) += cmd_bdinfo.o
> -obj-$(CONFIG_CMD_BEDBUG) += bedbug.o cmd_bedbug.o
> -obj-$(CONFIG_CMD_BMP) += cmd_bmp.o
> -obj-$(CONFIG_CMD_BOOTMENU) += cmd_bootmenu.o
> -obj-$(CONFIG_CMD_BOOTLDR) += cmd_bootldr.o
> -obj-$(CONFIG_CMD_BOOTSTAGE) += cmd_bootstage.o
> -obj-$(CONFIG_CMD_CACHE) += cmd_cache.o
> -obj-$(CONFIG_CMD_CBFS) += cmd_cbfs.o
> -obj-$(CONFIG_CMD_CLK) += cmd_clk.o
> -obj-$(CONFIG_CMD_CONSOLE) += cmd_console.o
> -obj-$(CONFIG_CMD_CPLBINFO) += cmd_cplbinfo.o
> -obj-$(CONFIG_CMD_CPU) += cmd_cpu.o
> -obj-$(CONFIG_DATAFLASH_MMC_SELECT) += cmd_dataflash_mmc_mux.o
> -obj-$(CONFIG_CMD_DATE) += cmd_date.o
> -obj-$(CONFIG_CMD_DEMO) += cmd_demo.o
> -obj-$(CONFIG_CMD_SOUND) += cmd_sound.o
> -ifdef CONFIG_4xx
> -obj-$(CONFIG_CMD_SETGETDCR) += cmd_dcr.o
> -endif
> -ifdef CONFIG_POST
> -obj-$(CONFIG_CMD_DIAG) += cmd_diag.o
> -endif
> -obj-$(CONFIG_CMD_DISPLAY) += cmd_display.o
> -obj-$(CONFIG_CMD_DTT) += cmd_dtt.o
> -obj-$(CONFIG_CMD_ECHO) += cmd_echo.o
> -obj-$(CONFIG_ENV_IS_IN_EEPROM) += cmd_eeprom.o
> -obj-$(CONFIG_CMD_EEPROM) += cmd_eeprom.o
> -obj-$(CONFIG_EFI_STUB) += cmd_efi.o
> -obj-$(CONFIG_CMD_ELF) += cmd_elf.o
> -obj-$(CONFIG_SYS_HUSH_PARSER) += cmd_exit.o
> -obj-$(CONFIG_CMD_EXT4) += cmd_ext4.o
> -obj-$(CONFIG_CMD_EXT2) += cmd_ext2.o
> -obj-$(CONFIG_CMD_FAT) += cmd_fat.o
> -obj-$(CONFIG_CMD_FDC) += cmd_fdc.o
> -obj-$(CONFIG_OF_LIBFDT) += cmd_fdt.o fdt_support.o
> -obj-$(CONFIG_CMD_FITUPD) += cmd_fitupd.o
> -obj-$(CONFIG_CMD_FLASH) += cmd_flash.o
> -ifdef CONFIG_FPGA
> -obj-$(CONFIG_CMD_FPGA) += cmd_fpga.o
> -endif
> -obj-$(CONFIG_CMD_FPGAD) += cmd_fpgad.o
> -obj-$(CONFIG_CMD_FS_GENERIC) += cmd_fs.o
> -obj-$(CONFIG_CMD_FUSE) += cmd_fuse.o
> -obj-$(CONFIG_CMD_GETTIME) += cmd_gettime.o
> -obj-$(CONFIG_CMD_GPIO) += cmd_gpio.o
> -obj-$(CONFIG_CMD_I2C) += cmd_i2c.o
> -obj-$(CONFIG_CMD_IOTRACE) += cmd_iotrace.o
> -obj-$(CONFIG_CMD_HASH) += cmd_hash.o
> -obj-$(CONFIG_CMD_IDE) += cmd_ide.o
> -obj-$(CONFIG_CMD_IMMAP) += cmd_immap.o
> -obj-$(CONFIG_CMD_INI) += cmd_ini.o
> -obj-$(CONFIG_CMD_IRQ) += cmd_irq.o
> -obj-$(CONFIG_CMD_ITEST) += cmd_itest.o
> -obj-$(CONFIG_CMD_JFFS2) += cmd_jffs2.o
> -obj-$(CONFIG_CMD_CRAMFS) += cmd_cramfs.o
> -obj-$(CONFIG_CMD_LDRINFO) += cmd_ldrinfo.o
> -obj-$(CONFIG_CMD_LED) += cmd_led.o
> -obj-$(CONFIG_CMD_LICENSE) += cmd_license.o
> -obj-y += cmd_load.o
> -obj-$(CONFIG_LOGBUFFER) += cmd_log.o
> -obj-$(CONFIG_ID_EEPROM) += cmd_mac.o
> -obj-$(CONFIG_CMD_MD5SUM) += cmd_md5sum.o
> -obj-$(CONFIG_CMD_MEMORY) += cmd_mem.o
> -obj-$(CONFIG_CMD_IO) += cmd_io.o
> -obj-$(CONFIG_CMD_MFSL) += cmd_mfsl.o
> +obj-$(CONFIG_CMD_BEDBUG) += bedbug.o
> +obj-$(CONFIG_OF_LIBFDT) += fdt_support.o
> +
> obj-$(CONFIG_MII) += miiphyutil.o
> obj-$(CONFIG_CMD_MII) += miiphyutil.o
> obj-$(CONFIG_PHYLIB) += miiphyutil.o
> -obj-$(CONFIG_CMD_MII) += cmd_mii.o
> -ifdef CONFIG_PHYLIB
> -obj-$(CONFIG_CMD_MII) += cmd_mdio.o
> -endif
> -obj-$(CONFIG_CMD_MISC) += cmd_misc.o
> -obj-$(CONFIG_CMD_MMC) += cmd_mmc.o
> -obj-$(CONFIG_CMD_MMC_SPI) += cmd_mmc_spi.o
> -obj-$(CONFIG_MP) += cmd_mp.o
> -obj-$(CONFIG_CMD_MTDPARTS) += cmd_mtdparts.o
> -obj-$(CONFIG_CMD_NAND) += cmd_nand.o
> -obj-$(CONFIG_CMD_NET) += cmd_net.o
> -obj-$(CONFIG_CMD_ONENAND) += cmd_onenand.o
> -obj-$(CONFIG_CMD_OTP) += cmd_otp.o
> -obj-$(CONFIG_CMD_PART) += cmd_part.o
> -ifdef CONFIG_PCI
> -obj-$(CONFIG_CMD_PCI) += cmd_pci.o
> -endif
> -obj-y += cmd_pcmcia.o
> -obj-$(CONFIG_CMD_PORTIO) += cmd_portio.o
> -obj-$(CONFIG_CMD_PXE) += cmd_pxe.o
> -obj-$(CONFIG_CMD_READ) += cmd_read.o
> -obj-$(CONFIG_CMD_REGINFO) += cmd_reginfo.o
> -obj-$(CONFIG_CMD_REISER) += cmd_reiser.o
> -obj-$(CONFIG_CMD_REMOTEPROC) += cmd_remoteproc.o
> -obj-$(CONFIG_SANDBOX) += cmd_host.o
> -obj-$(CONFIG_CMD_SATA) += cmd_sata.o
> -obj-$(CONFIG_CMD_SF) += cmd_sf.o
> -obj-$(CONFIG_CMD_SCSI) += cmd_scsi.o
> -obj-$(CONFIG_CMD_SHA1SUM) += cmd_sha1sum.o
> -obj-$(CONFIG_CMD_SETEXPR) += cmd_setexpr.o
> -obj-$(CONFIG_CMD_SOFTSWITCH) += cmd_softswitch.o
> -obj-$(CONFIG_CMD_SPI) += cmd_spi.o
> -obj-$(CONFIG_CMD_SPIBOOTLDR) += cmd_spibootldr.o
> -obj-$(CONFIG_CMD_STRINGS) += cmd_strings.o
> -obj-$(CONFIG_CMD_TERMINAL) += cmd_terminal.o
> -obj-$(CONFIG_CMD_TIME) += cmd_time.o
> -obj-$(CONFIG_CMD_TRACE) += cmd_trace.o
> -obj-$(CONFIG_SYS_HUSH_PARSER) += cmd_test.o
> -obj-$(CONFIG_CMD_TPM) += cmd_tpm.o
> -obj-$(CONFIG_CMD_TPM_TEST) += cmd_tpm_test.o
> -obj-$(CONFIG_CMD_TSI148) += cmd_tsi148.o
> -obj-$(CONFIG_CMD_UBI) += cmd_ubi.o
> -obj-$(CONFIG_CMD_UBIFS) += cmd_ubifs.o
> -obj-$(CONFIG_CMD_UNIVERSE) += cmd_universe.o
> -obj-$(CONFIG_CMD_UNZIP) += cmd_unzip.o
> -ifdef CONFIG_LZMA
> -obj-$(CONFIG_CMD_LZMADEC) += cmd_lzmadec.o
> -endif
> +
> ifdef CONFIG_CMD_USB
> -obj-y += cmd_usb.o
> obj-y += usb.o usb_hub.o
> obj-$(CONFIG_USB_STORAGE) += usb_storage.o
> endif
> -obj-$(CONFIG_CMD_FASTBOOT) += cmd_fastboot.o
> -obj-$(CONFIG_CMD_FS_UUID) += cmd_fs_uuid.o
> -
> -obj-$(CONFIG_CMD_USB_MASS_STORAGE) += cmd_usb_mass_storage.o
> -obj-$(CONFIG_CMD_THOR_DOWNLOAD) += cmd_thordown.o
> -obj-$(CONFIG_CMD_XIMG) += cmd_ximg.o
> -obj-$(CONFIG_YAFFS2) += cmd_yaffs2.o
> -obj-$(CONFIG_CMD_SPL) += cmd_spl.o
> -obj-$(CONFIG_CMD_ZIP) += cmd_zip.o
> -obj-$(CONFIG_CMD_ZFS) += cmd_zfs.o
>
> # others
> obj-$(CONFIG_BOOTSTAGE) += bootstage.o
> @@ -214,14 +84,8 @@ obj-$(CONFIG_MODEM_SUPPORT) += modem.o
> obj-$(CONFIG_UPDATE_TFTP) += update.o
> obj-$(CONFIG_DFU_TFTP) += update.o
> obj-$(CONFIG_USB_KEYBOARD) += usb_kbd.o
> -obj-$(CONFIG_CMD_DFU) += cmd_dfu.o
> -obj-$(CONFIG_CMD_GPT) += cmd_gpt.o
> -obj-$(CONFIG_CMD_ETHSW) += cmd_ethsw.o
>
> -# Power
> -obj-$(CONFIG_CMD_PMIC) += cmd_pmic.o
> -obj-$(CONFIG_CMD_REGULATOR) += cmd_regulator.o
> -endif
> +endif # !CONFIG_SPL_BUILD
>
> ifdef CONFIG_SPL_BUILD
> obj-$(CONFIG_ENV_IS_IN_FLASH) += env_flash.o
> @@ -232,9 +96,6 @@ ifdef CONFIG_SPL_USB_HOST_SUPPORT
> obj-$(CONFIG_SPL_USB_SUPPORT) += usb.o usb_hub.o
> obj-$(CONFIG_USB_STORAGE) += usb_storage.o
> endif
> -ifdef CONFIG_SPL_SATA_SUPPORT
> -obj-$(CONFIG_CMD_SCSI) += cmd_scsi.o
> -endif
> # environment
> ifdef CONFIG_SPL_ENV_SUPPORT
> obj-$(CONFIG_SPL_ENV_SUPPORT) += env_attr.o
> @@ -248,8 +109,6 @@ obj-$(CONFIG_ENV_IS_IN_SPI_FLASH) += env_sf.o
> obj-$(CONFIG_ENV_IS_IN_FLASH) += env_flash.o
> endif
> endif
> -# core command
> -obj-y += cmd_nvedit.o
> #environment
> obj-y += env_common.o
> #others
> @@ -287,8 +146,6 @@ obj-y += fb_nand.o
> endif
> endif
>
> -obj-$(CONFIG_CMD_BLOB) += cmd_blob.o
> -
> # We always have this since drivers/ddr/fs/interactive.c needs it
> obj-y += cli_simple.o
>
> @@ -297,6 +154,5 @@ obj-y += cli_readline.o
> obj-y += command.o
> obj-y += s_record.o
> obj-y += xyzModem.o
> -obj-y += cmd_disk.o
>
> CFLAGS_env_embedded.o := -Wa,--no-warn -DENV_CRC=$(shell tools/envcrc 2>/dev/null)
> diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl
> index 96f414a..dff16b9 100644
> --- a/scripts/Makefile.spl
> +++ b/scripts/Makefile.spl
> @@ -53,7 +53,7 @@ libs-$(HAVE_VENDOR_COMMON_LIB) += board/$(VENDOR)/common/
>
> libs-$(CONFIG_SPL_FRAMEWORK) += common/spl/
> libs-y += common/init/
> -libs-$(CONFIG_SPL_LIBCOMMON_SUPPORT) += common/
> +libs-$(CONFIG_SPL_LIBCOMMON_SUPPORT) += common/ cmd/
> libs-$(CONFIG_SPL_LIBDISK_SUPPORT) += disk/
> libs-y += drivers/
> libs-y += dts/
>
Acked-by: Przemyslaw Marczak <p.marczak at samsung.com>
Best regards,
--
Przemyslaw Marczak
Samsung R&D Institute Poland
Samsung Electronics
p.marczak at samsung.com
More information about the U-Boot
mailing list