summaryrefslogtreecommitdiff
path: root/cmd/Makefile
AgeCommit message (Collapse)Author
2022-10-11cmd: add temperature commandRobert Marko
Currently, there is no way for users to check the readings from thermal sensors from U-boot console, only some boards print it during boot. So, lets add a simple "temperature" command that allows listing thermal uclass devices and getting their value. Note that the thermal devices are intenionally probed if list is used as almost always they will not get probed otherwise and there is no way for users to manually call probe on a certain device from console. Assumption is made that temperature is returned in degrees C and not milidegrees like in Linux as this is what most drivers seem to return. Signed-off-by: Robert Marko <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-10-11cmd: xxd: add new commandRoger Knecht
Add xxd command to print file content as hexdump to standard out Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Roger Knecht <[email protected]>
2022-10-11cmd: cat: add new commandRoger Knecht
Add cat command to print file content to standard out Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Roger Knecht <[email protected]>
2022-09-16cmd: Drop use of HAVE_BLOCK_DEVICESimon Glass
This condition is not needed for these commands, since BLK is enabled for all boards which use block devices and commands are not available in SPL, so even if SPL_BLK is not enabled, it doesn't affect commands. Signed-off-by: Simon Glass <[email protected]>
2022-09-14Merge tag 'efi-next-2022-09-14' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-efi into next Pull request for efi next UEFI: Implement a command eficonfig to maintain Load Options and boot order via menus.
2022-09-14eficonfig: menu-driven addition of UEFI boot optionMasahisa Kojima
This commit add the "eficonfig" command. The "eficonfig" command implements the menu-driven UEFI boot option maintenance feature. This commit implements the addition of new boot option. User can select the block device volume having efi_simple_file_system_protocol and select the file corresponding to the Boot#### variable. User can also enter the description and optional_data of the BOOT#### variable in utf8. This commit adds "include/efi_config.h", it contains the common definition to be used from other menus such as UEFI Secure Boot key management. Signed-off-by: Masahisa Kojima <[email protected]>
2022-09-13cyclic: Add 'cyclic list' and 'cyclic demo' commandsStefan Roese
This patch adds the cyclic command, which currently only supports the 'list' subcommand, to list all currently registered cyclic functions. Here an example: => cyclic list function: cyclic_demo, cpu-time: 7010 us, frequency: 99.80 times/s function: cyclic_demo2, cpu-time: 1 us, frequency: 1.13 times/s As you can see, the cpu-time is accounted, so that cyclic functions that take too long might be discovered. Additionally the frequency is logged. The 'cyclic demo' commands registers the cyclic_demo() function to be executed all 'cycletime_ms' milliseconds. The only thing this function does is delaying by 'delay_us' microseconds. Signed-off-by: Stefan Roese <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-09-02cmd: Add pause commandSamuel Dionne-Riel
This command is being introduced with the goal of allowing user-friendly "generic use case" U-Boot builds to pause until user input under some situations. The main use case would be when a boot failure happens, to pause until the user has had time to acknowledge the current state. Tested using: make && ./u-boot -v -T -c 'ut lib lib_test_hush_pause' Signed-off-by: Samuel Dionne-Riel <[email protected]> Cc: Simon Glass <[email protected]>
2022-08-12vbe: Add a new vbe commandSimon Glass
Add a command to look at VBE methods and their status. Provide a test for all of this as well. Signed-off-by: Simon Glass <[email protected]>
2022-04-25bootstd: Add a bootmeth commandSimon Glass
Add a 'bootmeth' command to handle listing and ordering of boot methods. Signed-off-by: Simon Glass <[email protected]>
2022-04-25bootstd: Add a bootflow commandSimon Glass
Add a 'bootflow' command to handle listing and selection of bootflow. Signed-off-by: Simon Glass <[email protected]>
2022-04-25bootstd: Add a bootdev commandSimon Glass
Add a 'bootdev' command to handle listing and selection of bootdevs. Disable standard boot for a few boards which otherwise run out of space. Signed-off-by: Simon Glass <[email protected]>
2022-03-15fs/erofs: add filesystem commandsHuang Jianan
Add 'ls' and 'load' commands. Signed-off-by: Huang Jianan <[email protected]>
2022-03-10event: Add a commandSimon Glass
Add a command to show the available events. Signed-off-by: Simon Glass <[email protected]>
2022-01-24cmd: Add Kconfig option for multiprocessor cmdsAshok Reddy Soma
Add Kconfig option(CONFIG_CMD_MP) to enable or disable multiprocessor commands. Compile cmd/mp.c based on CONFIG_CMD_MP. Signed-off-by: Ashok Reddy Soma <[email protected]> Signed-off-by: Michal Simek <[email protected]>
2022-01-18common: remove bedbug debugger supportOvidiu Panait
Commit 98f705c9cefd ("powerpc: remove 4xx support") removed (in 2017) the last code that made use of bedbug debugger support. Since there aren't any boards left that define either CONFIG_CMD_BEDBUG or a real bedbug_init(), drop this feature from u-boot. Signed-off-by: Ovidiu Panait <[email protected]> Reviewed-by: Thomas Huth <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2022-01-15efi: Support the efi command in the appSimon Glass
At present the 'efi' command only works in the EFI payload. Update it to work in the app too, so the memory map can be examined. Signed-off-by: Simon Glass <[email protected]> Signed-off-by: Heinrich Schuchardt <[email protected]>
2021-12-24cmd: kaslrseed: add command to generate value from hwrngChris Morgan
Allow the kaslr-seed value in the chosen node to be set from a hardware rng source. Tested on a Rockchip PX30 (Odroid Go Advance), you must have loaded the devicetree first and prepared it for editing. On my device the workflow goes as follows: setenv dtb_loadaddr "0x01f00000" load mmc 0:1 ${dtb_loadaddr} rk3326-odroid-go2.dtb fdt addr ${dtb_loadaddr} fdt resize kaslrseed and the output can be seen here: fdt print /chosen chosen { kaslr-seed = <0x6f61df74 0x6f7b996c>; stdout-path = "serial2:115200n8"; }; Signed-off-by: Chris Morgan <[email protected]> Reviewed-by: Kever Yang <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-11-11pxe: Move pxe_utils filesSimon Glass
Move the header file into the main include/ directory so we can use it from the bootmethod code. Move the C file into boot/ since it relates to booting. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Artem Lapkin <[email protected]> Tested-by: Artem Lapkin <[email protected]> Reviewed-by: Ramon Fried <[email protected]>
2021-07-27cmd: setexpr: add format string handlingRoland Gaudig
Add format string handling operator to the setexpr command. It allows to use C or Bash like format string expressions to be evaluated with the result being stored inside the environment variable name. setexpr <name> fmt <format> [value]... The following example setexpr foo fmt "%d, 0x%x" 0x100 ff will result in $foo being set to "256, 0xff". Signed-off-by: Roland Gaudig <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-05-13cmd: add support for a new "extension" commandKory Maincent
This patch adds a new "extension" command, which aims at detecting extension boards connected to the hardware platform, and apply the Device Tree overlays that describe the hardware present on those extension boards. In order to enable this mechanism, board-specific code must implement the extension_board_scan() function that fills in a linked list of "struct extension", each describing one extension board. In addition, the board-specific code must select the SUPPORT_EXTENSION_SCAN Kconfig boolean. Based on this: - "extension scan" makes the generic code call the board-specific extension_board_scan() function to retrieve the list of detected extension boards. - "extension list" allows to list the detected extension boards. - "extension apply <number>|all" allows to apply the Device Tree overlay(s) corresponding to one, or all, extension boards The latter requires two environment variables to exist and set one variable to run: - extension_overlay_addr: the RAM address where to load the Device Tree overlays - extension_overlay_cmd: the U-Boot command to load one overlay. Indeed, the location and mechanism to load DT overlays is very setup specific. - extension_overlay_name: set by the command: the name of the DT which will be load during the execution. When calling the command described in the extension_overlay_cmd variable, the variable extension_overlay_name will be defined. So a typical extension_overlay_cmd will look like this: extension_overlay_cmd=load mmc 0:1 $extension_overlay_addr /boot/$extension_overlay_name Here is an example on how to use it: => run loadfdt => fdt addr $fdtaddr => setenv extension_overlay_addr 0x1000 => setenv extension_overlay_cmd 'load mmc 0:1 ${extension_overlay_addr} /boot/${extension_overlay_name}' => extension scan Found 1 extension board(s). => extension apply 0 519 bytes read in 3 ms (168.9 KiB/s) Signed-off-by: Kory Maincent <[email protected]> Reviewed-by: Maxime Ripard <[email protected]>
2021-04-20Add support for stack-protectorJoel Peshkin
Add support for stack protector for UBOOT, SPL, and TPL as well as new pytest for stackprotector Signed-off-by: Joel Peshkin <[email protected]> Adjust UEFI build flags. Signed-off-by: Heinrich Schuchardt <[email protected]>
2021-03-15Merge tag 'v2021.04-rc4' into nextTom Rini
Prepare v2021.04-rc4
2021-03-13cmd: SCP03: enable and provision commandJorge Ramirez-Ortiz
Enable and provision the SCP03 keys on a TEE controlled secured elemt from the U-Boot shell. Executing this command will generate and program new SCP03 encryption keys on the secure element NVM. Depending on the TEE implementation, the keys would then be stored in some persistent storage or better derived from some platform secret (so they can't be lost). Signed-off-by: Jorge Ramirez-Ortiz <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Igor Opaniuk <[email protected]>
2021-03-05cmd: Add a command to display the address mapBin Meng
This adds a new command 'addrmap' to display the address map for non-identity virtual-physical memory mappings. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Priyanka Jain <[email protected]>
2021-01-18cmd: Add a pwm commandPragnesh Patel
Add the command "pwm" for controlling the pwm channels. This command provides pwm invert/config/enable/disable functionalities via PWM uclass drivers Signed-off-by: Pragnesh Patel <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2021-01-15cmd: Add MBR partition layout control utilityMarek Szyprowski
Add a 'mbr' command to let users create or verify MBR partition layout based on the provided text description. The partition layout is alternatively read from the 'mbr_parts' environment variable. This can be used in scripts to help system image flashing tools to ensure proper partition layout. The syntax of the text description of the partition list is similar to the one used by the 'gpt' command. Supported parameters are: name (currently ignored), start (partition start offset in bytes), size (in bytes or '-' to expand it to the whole free area), bootable (boolean flag) and id (MBR partition type). If one wants to create more than 4 partitions, an 'Extended' primary partition (with 0x05 ID) has to be explicitely provided as a one of the first 4 entries. Here is an example how to create a 6 partitions (3 on the 'extended volume'), some of the predefined sizes: > setenv mbr_parts 'name=boot,start=4M,size=128M,bootable,id=0x0e; name=rootfs,size=3072M,id=0x83; name=system-data,size=512M,id=0x83; name=[ext],size=-,id=0x05; name=user,size=-,id=0x83; name=modules,size=100M,id=0x83; name=ramdisk,size=8M,id=0x83' > mbr write mmc 0 Signed-off-by: Marek Szyprowski <[email protected]>
2020-12-13cmd: sandbox: implement exception commandHeinrich Schuchardt
Implement the commands * exception undefined - execute an illegal instruction * exception sigsegv - cause a segment violation Here is a possible output: => exception undefined Illegal instruction pc = 0x55eb8d0a7575, pc_reloc = 0x57575 Resetting ... Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2020-10-29Merge https://gitlab.denx.de/u-boot/custodians/u-boot-fsl-qoriqTom Rini
- Bug fixes and updates on vid, ls1088a lx2160a and other layerscape platforms. - Add optee_rpmb support for LX2 & Kontron sl28 support
2020-10-28cmd: Add a mux commandPratyush Yadav
This command lets the user list, select, and deselect mux controllers introduced with the mux framework on the fly. It has 3 subcommands: list, select, and deselect. List: Lists all the mux present on the system. The muxes are listed for each chip. The chip is identified by its device name. Each chip can have a number of mux controllers. Each is listed in sequence and is assigned a sequential ID based on its position in the mux chip. It lists details like ID, whether the mux is currently selected or not, the current state, the idle state, and the number of states. A sample output would look something like: => mux list a-mux-controller: ID Selected Current State Idle State Num States 0 no unknown as-is 0x4 1 no 0x2 0x2 0x10 2 no 0x73 0x73 0x100 another-mux-controller: ID Selected Current State Idle State Num States 0 no 0x1 0x1 0x4 1 no 0x2 0x2 0x4 Select: Selects a given mux and puts it in the specified state. This subcommand takes 3 arguments: mux chip, mux ID, state to set the mux in. The arguments mux chip and mux ID are used to identify which mux needs to be selected, and then it is selected to the given state. The mux needs to be deselected before it can be selected again in another state. The state should be a hexadecimal number. For example: => mux list a-mux-controller: ID Selected Current State Idle State Num States 0 no 0x1 0x1 0x4 1 no 0x1 0x1 0x4 => mux select a-mux-controller 0 0x3 => mux list a-mux-controller: ID Selected Current State Idle State Num States 0 yes 0x3 0x1 0x4 1 no 0x1 0x1 0x4 Deselect: Deselects a given mux and puts it in its idle state. This subcommand takes 2 arguments: the mux chip and mux ID to identify which mux needs to be deselected. So in the above example, we can deselect mux 0 using: => mux deselect a-mux-controller 0 => mux list a-mux-controller: ID Selected Current State Idle State Num States 0 no 0x1 0x1 0x4 1 no 0x1 0x1 0x4 Signed-off-by: Pratyush Yadav <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2020-10-23cmd: Add a 'misc' command to access miscellaneous devicesBin Meng
Enable the command "misc" for accessing miscellaneous devices with a MISC uclass driver. The command provides listing all MISC devices as well as read and write functionalities via their drivers. Signed-off-by: Bin Meng <[email protected]>
2020-10-23cmd: Split out timer command from the sleep commandBin Meng
CONFIG_CMD_TIMER merits a single file instead of co-exist in the sleep command file. Signed-off-by: Bin Meng <[email protected]>
2020-10-23cmd: Rename CMD_MISC to CMD_SLEEPBin Meng
The "cmd/Kconfig" has a TODO description for CMD_MISC that it should really be named as CMD_SLEEP. Change it in the whole source tree. Signed-off-by: Bin Meng <[email protected]>
2020-10-23cmd: optee_rpmb command for read/write of rpmb from opteeRuchika Gupta
Enable "optee_rpmb" command to write/read named persistent values created on RPMB by opening session with OPTEE AVB TA. This provides easy test for establishing a session with OPTEE TA and storage of persistent data in MMC RPMB. It includes following subcommands: optee_rpmb read_pvalue:read persistent values on rpmb via OPTEE AVB TA optee_rpmb write_pvalue:write persistent values on rpmb via OPTEE AVB TA Signed-off-by: Ruchika Gupta <[email protected]> [Rebased] Signed-off-by: Priyanka Jain <[email protected]>
2020-10-14cmd: Add command to display or save Linux PStore dumpsFrédéric Danis
This patch adds a new pstore command allowing to display or save ramoops logs (oops, panic, console, ftrace and user) generated by a previous kernel crash. PStore parameters can be set in U-Boot configuration file, or at run-time using "pstore set" command. Records size should be the same as the ones used by kernel, and should be a power of 2. This command allows: - to display uncompressed logs - to save compressed or uncompressed logs, compressed logs are saved as a compressed stream, it may need some work to be able to decompress it, e.g. adding a fake header: "printf "\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\x00" | cat - dmesg-ramoops-0.enc.z | gzip -dc" - ECC part is not used to check memory corruption - only 1st FTrace log is displayed or saved Signed-off-by: Frédéric Danis <[email protected]> [trini: Minor updates for current design, correct spacing in rST] Signed-off-by: Tom Rini <[email protected]> Cc: Heinrich Schuchardt <[email protected]> Cc: Wolfgang Denk <[email protected]> Cc: Heiko Schocher <[email protected]>
2020-10-06bloblist: Add a commandSimon Glass
It is helpful to be able to see basic statistics about the bloblist and also to list its contents. Add a 'bloblist' command to handle this. Put the display functions in the bloblist modules rather than in the command code itself. That allows showing a list from SPL, where commands are not available. Also make bloblist_first/next_blob() static as they are not used outside this file. Signed-off-by: Simon Glass <[email protected]>
2020-09-09board: ns3: kconfig: extend board kconfig with specific commandsVladimir Olovyannikov
Extend Kconfig for the board with board-specific commands selection. Signed-off-by: Vladimir Olovyannikov <[email protected]> Signed-off-by: Rayagonda Kokatanur <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2020-08-14xen: pvblock: Add initial support for para-virtualized block driverAnastasiia Lukianenko
Add initial infrastructure for Xen para-virtualized block device. This includes compile-time configuration and the skeleton for the future driver implementation. Add new class UCLASS_PVBLOCK which is going to be a parent for virtual block devices. Add new interface type IF_TYPE_PVBLOCK. Implement basic driver setup by reading XenStore configuration. Signed-off-by: Andrii Anisov <[email protected]> Signed-off-by: Anastasiia Lukianenko <[email protected]> Signed-off-by: Oleksandr Andrushchenko <[email protected]>
2020-08-07fs/squashfs: add filesystem commandsJoao Marcos Costa
Add 'ls' and 'load' commands. Signed-off-by: Joao Marcos Costa <[email protected]>
2020-08-04cmd: add clone commandJohn Chau
This patch adds a feature for block device cloning similar to dd command, this should be useful for boot-strapping a device where usb gadget or networking is not available. For instance one can clone a factory image into a blank emmc from an external sd card. Signed-off-by: John Chau <[email protected]>
2020-07-28cmd: button: add a new 'button' commandPhilippe Reynes
Adds a command 'button' that provides the list of buttons supported by the board, and the state of a button. Reviewed-by: Simon Glass <[email protected]> Signed-off-by: Philippe Reynes <[email protected]>
2020-07-16cmd: drop fitupd commandHeinrich Schuchardt
The `fitupd' command is not used by any board. The `dfu tftp' command provides the same capabilities. So let's drop the `fitupd' command. Signed-off-by: Heinrich Schuchardt <[email protected]>
2020-07-09rtc: add rtc commandRasmus Villemoes
Mostly as an aid for debugging RTC drivers, provide a command that can be used to read/write arbitrary registers (assuming the driver provides the read/write methods or their single-register-at-a-time variants). Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Heiko Schocher <[email protected]> Signed-off-by: Rasmus Villemoes <[email protected]>
2020-07-08cmd: add a panic commandHeiko Stuebner
Even in boot scripts it may be needed to "panic" when all options are exhausted and the device specification specifies hanging instead of resetting the board. So add a new panic command that just wraps around the core panic call in U-Boot and can take an optional message. Signed-off-by: Heiko Stuebner <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2020-07-07cmd: blkls: Add blkls commandNiel Fourie
Add a command to print a list of available block device drivers, and for each, the list of known block devices. Signed-off-by: Niel Fourie <[email protected]> Cc: Simon Glass <[email protected]> Cc: Stefan Roese <[email protected]> Reviewed-by: Simon Glass <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2020-04-30acpi: Add an acpi commandSimon Glass
It is useful to dump ACPI tables in U-Boot to see what has been generated. Add a command to handle this. To allow the command to find the tables, add a position into the global data. Support subcommands to list and dump the tables. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Wolfgang Wallner <[email protected]>
2020-04-17cmd: Add unlz4 commandYusuke Ashiduka
This command is a new command called "unlz4" that decompresses from memory into memory. Used with the CONFIG_CMD_UNLZ4 optionenabled. Signed-off-by: Yusuke Ashiduka <[email protected]> [trini: Use %zd / %zX not %ld / %lX in printf] Signed-off-by: Tom Rini <[email protected]>
2020-02-04cmd: abootimg: Add abootimg commandSam Protsenko
This command can be used to extract fields and image payloads from Android Boot Image. It can be used for example to implement boot flow where dtb is taken from boot.img (as v2 incorporated dtb inside of boot.img). Using this command, one can obtain needed dtb blob from boot.img in scripting manner, and then apply needed dtbo's (from "dtbo" partition) on top of that, providing then the resulting image to bootm command in order to boot the Android. Also right now this command has the sub-command to get an address and size of recovery dtbo from recovery image (for non-A/B devices only, see [1,2] for details). It can be tested like this: => mmc dev 1 => part start mmc 1 boot_a boot_start => part size mmc 1 boot_a boot_size => mmc read $loadaddr $boot_start $boot_size => abootimg get ver => abootimg dump dtb [1] https://source.android.com/devices/bootloader/boot-image-header [2] https://source.android.com/devices/architecture/dto/partitions Signed-off-by: Sam Protsenko <[email protected]> Signed-off-by: Lokesh Vutla <[email protected]>
2020-01-21cmd: add tlv_eeprom commandBaruch Siach
Add support for read/write of ONIE "Tlvinfo" EEPROM data format. TLV stands for Type-Length-Value. The data format is described here: https://opencomputeproject.github.io/onie/design-spec/hw_requirements.html#board-eeprom-information-format Based on U-Boot patch from the Open Compute project: https://github.com/opencomputeproject/onie/blob/ec87e872d46b9805565d2c6124b2f701ef1c07b1/patches/u-boot/common/feature-sys-eeprom-tlv-common.patch Keep only I2C EEPROM support. Use the generic eeprom driver. Fix checkpatch issues. Add support for multiple EEPROM TLV stores on the same system. This is useful in case of SOM and carrier that both provide ID and hardware configuration information. Add option to enable for SPL. This allows selection of RAM configuration based on EEPROM stored board identification. Signed-off-by: Baruch Siach <[email protected]>
2020-01-17common: Drop floppy disk supportSimon Glass
This seems pretty old now. It has not been converted to driver model and is not used by any boards. Drop it. Signed-off-by: Simon Glass <[email protected]>