summaryrefslogtreecommitdiff
path: root/cmd/Kconfig
Commit message (Collapse)AuthorAgeFilesLines
* cmd: Add a pwm commandPragnesh Patel2021-01-181-0/+6
| | | | | | | | | 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 <pragnesh.patel@sifive.com> Reviewed-by: Simon Glass <sjg@chromium.org>
* cmd: CMD_CPU depends on CPUHeinrich Schuchardt2021-01-161-0/+1
| | | | | | | | | | | | | | | | | | | Compiling with CONFIG_CMD_CPU=y and CONFIG_CPU=n fails with: aarch64-linux-gnu-ld.bfd: cmd/built-in.o: in function `print_cpu_list': /home/user/u-boot/cmd/cpu.c:34: undefined reference to `cpu_get_desc' aarch64-linux-gnu-ld.bfd: /home/user/u-boot/cmd/cpu.c:39: undefined reference to `cpu_get_info' Segmentation fault (core dumped) make: *** [Makefile:1757: u-boot] Error 139 make: *** Deleting file 'u-boot' See error report in https://stackoverflow.com/questions/64678347. Add the missing build dependency. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
* cmd: Add MBR partition layout control utilityMarek Szyprowski2021-01-151-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 <m.szyprowski@samsung.com>
* dm: treewide: Rename 'platdata' variables to just 'plat'Simon Glass2020-12-131-1/+1
| | | | | | | | | | We use 'priv' for private data but often use 'platdata' for platform data. We can't really use 'pdata' since that is ambiguous (it could mean private or platform data). Rename some of the latter variables to end with 'plat' for consistency. Signed-off-by: Simon Glass <sjg@chromium.org>
* cmd: sandbox: implement exception commandHeinrich Schuchardt2020-12-131-1/+1
| | | | | | | | | | | | | | | | | 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 <xypron.glpk@gmx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
* cmd: Kconfig: migrate CONFIG_SYS_PROMPT_HUSH_PS2Patrick Delaunay2020-12-011-0/+9
| | | | | | | | | Move CONFIG_SYS_PROMPT_HUSH_PS2 in Kconfig, depending on CONFIG_HUSH_PARSER, and remove the default value defined in cli_hush.c under __U_BOOT__. Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com> Reviewed-by: Simon Glass <sjg@chromium.org>
* cmd: log: Add commands to manipulate filtersSean Anderson2020-10-301-0/+1
| | | | | | | | | | | | | This adds several commands to add, list, and remove log filters. Due to the complexity of adding a filter, `log filter-list` uses options instead of positional arguments. These commands have been added as subcommands to log by using a dash to join the subcommand and subsubcommand. This is stylistic, and they could be converted to proper subsubcommands if it is wished. Signed-off-by: Sean Anderson <seanga2@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
* Merge https://gitlab.denx.de/u-boot/custodians/u-boot-fsl-qoriqTom Rini2020-10-291-0/+8
|\ | | | | | | | | | | - Bug fixes and updates on vid, ls1088a lx2160a and other layerscape platforms. - Add optee_rpmb support for LX2 & Kontron sl28 support
| * cmd: optee_rpmb command for read/write of rpmb from opteeRuchika Gupta2020-10-231-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 <ruchika.gupta@nxp.com> [Rebased] Signed-off-by: Priyanka Jain <priyanka.jain@nxp.com>
* | cmd: Add a mux commandPratyush Yadav2020-10-281-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 <p.yadav@ti.com> Reviewed-by: Simon Glass <sjg@chromium.org>
* | cmd: Add a 'misc' command to access miscellaneous devicesBin Meng2020-10-231-0/+8
| | | | | | | | | | | | | | | | 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 <bin.meng@windriver.com>
* | cmd: Rename CMD_MISC to CMD_SLEEPBin Meng2020-10-231-2/+1
|/ | | | | | | 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 <bin.meng@windriver.com>
* cmd: Add command to display or save Linux PStore dumpsFrédéric Danis2020-10-141-0/+71
| | | | | | | | | | | | | | | | | | | | | | | | | 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 <frederic.danis@collabora.com> [trini: Minor updates for current design, correct spacing in rST] Signed-off-by: Tom Rini <trini@konsulko.com> Cc: Heinrich Schuchardt <xypron.glpk@gmx.de> Cc: Wolfgang Denk <wd@denx.de> Cc: Heiko Schocher <hs@denx.de>
* Kconfig: Move autoboot options under boot optionsSimon Glass2020-10-091-117/+0
| | | | | | | | At present the autoboot options are in cmd/Kconfig but they don't really relate to commands. They relate to booting, so move this menu under the boot menu. Signed-off-by: Simon Glass <sjg@chromium.org>
* bloblist: Add a commandSimon Glass2020-10-061-0/+9
| | | | | | | | | | | | | | 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 <sjg@chromium.org>
* sntp: use udp frameworkWIP/30Sep2020-next2Philippe Reynes2020-09-301-0/+1
| | | | | | | | | | This commits update the support of sntp to use the framework udp. This change allows to remove all the reference to sntp in the main network file net/net.c. Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> Reviewed-by: Simon Glass <sjg@chromium.org>
* cmd: irq: disable CMD_IRQ for riscv archPragnesh Patel2020-09-301-1/+1
| | | | | | | | | For RISC-V arch, no need for CMD_IRQ so disable the same. Signed-off-by: Pragnesh Patel <pragnesh.patel@sifive.com> Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Rick Chen <rick@andestech.com> Reviewed-by: Bin Meng <bin.meng@windriver.com>
* cmd: mem: fix range of bitflip testWIP/2020-09-18-assorted-bugfixesRalph Siemsen2020-09-181-0/+12
| | | | | | | | | | | | | | | | | | | | | | | The bitflip test uses two equal sized memory buffers. This is achieved by splitting the range of memory into two pieces. The address of the second buffer, as well as the length of each buffer, were not correctly calculated. This caused bitflip test to access beyond the end of range. This patch fixes the pointer arithmetic problem. A second problem arises because u-boot "mtest" command expects the ending address to be inclusive. When computing (end - start) this results in missing 1 byte of the requested length. The bitflip test expects a count rather than an "ending" address. Thus it fails to test the last word of the requested range. Fixed by using (end - start + 1). Added Kconfig option to optionally disable the bitflip test, since it does add significantly to the time taken for "mtest". Fixes: 8e434cb705d463bc8cff935160e4fb4c77cb99ab ("cmd: mem: Add bitflip memory test to alternate mtest") Signed-off-by: Ralph Siemsen <ralph.siemsen@linaro.org> Reviewed-by: Stefan Roese <sr@denx.de>
* cmd: Kconfig: Change dependency for CMD_ADCMichal Simek2020-08-271-1/+1
| | | | | | | | | | | | | | | | CMD_ADC selected DM_REGULATOR unconditionally without enabling DM. That's why change select to depends on to cover it. Kconfig is showing this issue as: WARNING: unmet direct dependencies detected for REGMAP Depends on [n]: DM [=n] Selected by [y]: - DM_REGULATOR_PBIAS [=y] && DM_REGULATOR [=y] Signed-off-by: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Tom Rini <trini@konsulko.com> [trini: Update CMD_ADC=y configs to enable DM_REGULATOR now] Signed-off-by: Tom Rini <trini@konsulko.com>
* cmd: provide command sbiHeinrich Schuchardt2020-08-251-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Provide a command to display information about the SBI implementation. The output might look like: => sbi SBI 0.2 OpenSBI Extensions: sbi_set_timer sbi_console_putchar sbi_console_getchar sbi_clear_ipi sbi_send_ipi sbi_remote_fence_i sbi_remote_sfence_vma sbi_remote_sfence_vma_asid sbi_shutdown SBI Base Functionality Timer Extension IPI Extension RFENCE Extension Hart State Management Extension The command can be used to construct a unit test checking that the communication with the SEE is working. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Atish Patra <atish.patra@wdc.com> Reviewed-by: Bin Meng <bin.meng@windriver.com> Tested-by: Bin Meng <bin.meng@windriver.com> Reviewed-by: Pragnesh Patel <pragnesh.patel@openfive.com> Tested-by: Pragnesh Patel <pragnesh.patel@openfive.com> Reviewed-by: Rick Chen <rick@andestech.com> Tested-by: Rick Chen <rick@andestech.com>
* xen: pvblock: Add initial support for para-virtualized block driverAnastasiia Lukianenko2020-08-141-0/+7
| | | | | | | | | | | | | | | 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 <andrii_anisov@epam.com> Signed-off-by: Anastasiia Lukianenko <anastasiia_lukianenko@epam.com> Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@epam.com>
* fs/squashfs: add filesystem commandsJoao Marcos Costa2020-08-071-0/+6
| | | | | | Add 'ls' and 'load' commands. Signed-off-by: Joao Marcos Costa <joaomarcos.costa@bootlin.com>
* cmd: Update the memory-search commandSimon Glass2020-08-071-1/+1
| | | | | | | | | | | | | | Add various fixes and improvements to this command that were missed in the original version. Unfortunately I forgot to send v2. - Fix Kconfig name - Use a separate variable for the remaining search length - Correct a minor bug - Move into a separate test suite - Add -q flag to the 'quiet' test to test operation when console is enabled - Enable the feature for sandbox Signed-off-by: Simon Glass <sjg@chromium.org>
* cmd: add clone commandJohn Chau2020-08-041-0/+8
| | | | | | | | | 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 <john@harmon.hk>
* cmd: env: add env select commandPatrick Delaunay2020-07-311-0/+5
| | | | | | | Add the new command 'env select' to force the persistent storage of environment, saved in gd->env_load_prio. Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
* cmd: env: add env load commandPatrick Delaunay2020-07-311-0/+6
| | | | | | | Add the new command env load to load the environment from the current location gd->env_load_prio. Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>
* cmd: button: add a new 'button' commandPhilippe Reynes2020-07-281-0/+11
| | | | | | | | Adds a command 'button' that provides the list of buttons supported by the board, and the state of a button. Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
* cmd: env: add option for quiet output on env infoPatrick Delaunay2020-07-261-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | The "env info" can be use for test with -d and -p parameter, in scripting case the output of the command is not needed. This patch allows to deactivate this output with a new option "-q". For example, we can save the environment if default environment is used and persistent storage is managed with: if env info -p -d -q; then env save; fi Without the quiet option, I have the unnecessary traces First boot: Default environment is used Environment can be persisted Saving Environment to EXT4... File System is consistent Next boot: Environment was loaded from persistent storage Environment can be persisted Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
* efi_selftest: enable 'bootefi hello'Heinrich Schuchardt2020-07-161-0/+1
| | | | | | | In our Python tests we want to run 'bootefi hello'. Enable it by default when compiling with CMD_BOOTEFI_SELFTEST. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
* cmd: drop fitupd commandHeinrich Schuchardt2020-07-161-7/+0
| | | | | | | | | 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 <xypron.glpk@gmx.de>
* rtc: add rtc commandRasmus Villemoes2020-07-091-0/+6
| | | | | | | | | | | 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 <sjg@chromium.org> Reviewed-by: Heiko Schocher <hs@denx.de> Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
* cmd: Add a memory-search commandSimon Glass2020-07-081-0/+14
| | | | | | | | | | | | | It is useful to be able to find hex values and strings in a memory range. Add a command to support this. cmd: Fix 'md' and add a memory-search command At present 'md.q' is broken. This series provides a fix for this. It also implements a new memory-search command called 'ms'. It allows searching memory for hex and string data. END Signed-off-by: Simon Glass <sjg@chromium.org>
* cmd: blkls: Add blkls commandNiel Fourie2020-07-071-0/+7
| | | | | | | | | | | 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 <lusus@denx.de> Cc: Simon Glass <sjg@chromium.org> Cc: Stefan Roese <sr@denx.de> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Stefan Roese <sr@denx.de>
* cmd: fitupd: move config check to KconfigHeinrich Schuchardt2020-06-021-0/+1
| | | | | | | Configuration checks should not be in the C files but in the Kconfig files. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Tom Rini <trini@konsulko.com>
* cmd: zip: automatically pull in gzip()Michael Walle2020-05-251-0/+1
| | | | | | | | | | | | | | | Move the CONFIG_GZIP_COMPRESSED from a config.h macro to a Kconfig menu item. It is not selectable by a user because there is no reason to do so. Instead it will be automatically selected by the stuff which uses gzip(), like the zip command. Remove it from the config_whitelist.txt. Also remove CONFIG_GZIP_COMPRESS_DEF_SZ as this was never used on any board. The default seems to be sane, otherwise it should be added as a Kconfig option. Signed-off-by: Michael Walle <michael@walle.cc> Reviewed-by: Simon Glass <sjg@chromium.org>
* cmd: unzip: automatically select CONFIG_GZIPMichael Walle2020-05-251-0/+1
| | | | | | | | unzip calls gzwrite() which is provided in lib/gunzip.c. Make sure it is automatically pulled in if the user selects CMD_UNZIP. Signed-off-by: Michael Walle <michael@walle.cc> Reviewed-by: Heinrich Schuchardt <xypron.glkp@gmx.de>
* treewide: mem: Move mtest related defines to KconfigWIP/2020-05-07-more-kconfig-migrationsAshok Reddy Soma2020-05-081-0/+16
| | | | | | | | | | | Move below defines which are used by mtest utility to Kconfig. CONFIG_SYS_MEMTEST_START CONFIG_SYS_MEMTEST_END Signed-off-by: Ashok Reddy Soma <ashok.reddy.soma@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com> [trini: Fix kmcoge5ne board, re-run migration as well] Signed-off-by: Tom Rini <trini@konsulko.com>
* acpi: Add an acpi commandSimon Glass2020-04-301-0/+14
| | | | | | | | | | | | | 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 <sjg@chromium.org> Reviewed-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com>
* Merge tag 'mmc-2020-4-22' of https://gitlab.denx.de/u-boot/custodians/u-boot-mmcTom Rini2020-04-221-11/+15
|\ | | | | | | | | | | | | - iproc_sdhci memory leak fix and enable R1B resp quirk - more mmc cmds and several mmc updates from Heinirich - Use bounce buffer for tmio sdhci - Alignment check for tmio sdhci
| * mmc: adjust Kconfig for mmc sub-commandsHeinrich Schuchardt2020-04-221-11/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | All sub-commands of the mmc command should be shown in the Kconfig menu next to the mmc command. This includes: * mmc bkops * mmc rpmb * mmc swrite The mmc rpmb sub-command is not usable without CONFIG_SUPPORT_EMMC_RPMB. Add the missing dependency. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
* | Merge tag 'for-v2020.07' of https://gitlab.denx.de/u-boot/custodians/u-boot-ubiTom Rini2020-04-211-0/+8
|\ \ | | | | | | | | | new ubi command for renaming an UBI volume
| * | cmd: ubi: add a command to rename volumePhilippe Reynes2020-04-201-0/+8
| |/ | | | | | | | | | | | | | | | | This commit adds the command ubi rename to rename an ubi volume. The format of the command is: ubi rename <oldname> <newname>. To enable this command, the option CMD_UBI_RENAME must be selected. Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com> Reviewed-by: Simon Glass <sjg@chromium.org>
* | Kconfig: fix typos in CMD_BEDBUG descriptionHeinrich Schuchardt2020-04-171-1/+1
| | | | | | | | | | | | | | | | Fix documentation bug reported by 'make refcheckdocs'. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Patrick Delaunay <patrick.delaunay@st.com>
* | cmd: Add unlz4 commandYusuke Ashiduka2020-04-171-0/+7
|/ | | | | | | | | | 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 <ashiduka@fujitsu.com> [trini: Use %zd / %zX not %ld / %lX in printf] Signed-off-by: Tom Rini <trini@konsulko.com>
* lib: elf: Move the generic elf loading/validating functions to libKeerthy2020-03-031-0/+1
| | | | | | | | | | | | | Move the generic elf loading/validating functions to lib/ so that they can be re-used and accessed by code existing outside cmd. While at it remove the duplicate static version of load_elf_image_phdr under arch/arm/mach-imx/imx_bootaux.c. Signed-off-by: Keerthy <j-keerthy@ti.com> Suggested-by: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com> Reviewed-by: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
* cmd: mdc/mwc: normalize disjoint MX_CYCLIC usageJoel Johnson2020-02-091-7/+1
| | | | | | | | | | | Both CMD_MX_CYCLIC and MX_CYCLIC are in use and defined in Kconfig, but only the non-CMD version currently does anything. This changes all usages to prefer the CMD_MX_CYCLIC option (since it's only affecting addition of the commands), and switches defconfigs using the non-CMD version to use the CMD version. Signed-off-by: Joel Johnson <mrjoel@lixil.net> Reviewed-by: Tom Rini <trini@konsulko.com>
* doc: android: Convert to Sphinx formatSam Protsenko2020-02-041-1/+1
| | | | | | | | | | | | | | Convert Android documentation from regular txt format to Sphinx (RST). Also add Android index.rst file and reference it in root index.rst, so that Android documentation is visible. Test: $ make htmldocs $ xdg-open doc/output/index.html Signed-off-by: Sam Protsenko <joe.skb7@gmail.com> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
* doc: android: Add documentation for Android Boot ImageSam Protsenko2020-02-041-0/+2
| | | | | | | | Describe Android Boot Image format, how its support is implemented in U-Boot and associated commands usage. Signed-off-by: Sam Protsenko <joe.skb7@gmail.com> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
* cmd: abootimg: Add abootimg commandSam Protsenko2020-02-041-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 <joe.skb7@gmail.com> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
* cmd: add tlv_eeprom commandBaruch Siach2020-01-211-0/+14
| | | | | | | | | | | | | | | | | | | | | | | 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 <baruch@tkos.co.il>