- Apr 09, 2020
-
-
Add a test for the dm drivers command. Also fix a null pointer dereference revealed by said test. Signed-off-by:
Sean Anderson <seanga2@gmail.com> Reviewed-by:
Bin Meng <bmeng.cn@gmail.com> Tested-by:
Bin Meng <bmeng.cn@gmail.com> Reviewed-by:
Simon Glass <sjg@chromium.org>
-
- Mar 31, 2020
-
-
%s/a EMMC/an eMMC/g Signed-off-by:
Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by:
Jaehoon Chung <jh80.chung@samsung.com>
-
- Mar 28, 2020
-
-
Heinrich Schuchardt authored
Sub-nodes of /reserved-memory may be disabled. In this case we should not reserve memory in the memory map. Reported-by:
Patrick DELAUNAY <patrick.delaunay@st.com> Fixes: fef907b2 ("efi_loader: create reservations after ft_board_setup") Signed-off-by:
Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by:
Atish Patra <atish.patra@wdc.com>
-
Heinrich Schuchardt authored
On 32 bit systems fix warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] Fixes: a415d61e ("cmd: map addresses to sysmem in efidebug memmap") Signed-off-by:
Heinrich Schuchardt <xypron.glpk@gmx.de>
-
- Mar 17, 2020
-
-
Currently, bootefi only parses memory reservation block to setup EFI reserved memory mappings. However, it doesn't parse the reserved-memory[1] device tree node that also can contain the reserved memory regions. Add capability to parse reserved-memory node and update the EFI memory mappings accordingly. 1. <U-Boot source>/doc/device-tree-bindings/reserved-memory/reserved-memory.txt] Signed-off-by:
Atish Patra <atish.patra@wdc.com> Fix an endless loop. The /reserved-memory node may have children without reg property. Remove a superfluous debug statement. Signed-off-by:
Heinrich Schuchardt <xypron.glpk@gmx.de>
-
Heinrich Schuchardt authored
Addresses in the sandbox's device tree are in the sandbox's virtual address space. If we want to compare memory reservations in the device-tree with the output of 'efidebug memmap', we need to convert back to this address space. Adjust the output of the 'efidebug memmap' command. Signed-off-by:
Heinrich Schuchardt <xypron.glpk@gmx.de>
-
Heinrich Schuchardt authored
Some memory reservations are made in ft_board_setup(). Ensure that we create reserved memory map entries after ft_board_setup(). The downside of this patch is that if bootefi is called multiple times with an devicetree argument superfluous reservations for the old copies of the device tree will exist. But that is still better than missing a reservation. Deleting the superfluous reservations is not possible because reservations in the memory map are rounded to page size and may be coallesced. Signed-off-by:
Heinrich Schuchardt <xypron.glpk@gmx.de>
-
- Mar 13, 2020
-
-
4dbc107f ("cmd: gpio: Correct do_gpio() return value") correctly changed the behaviour of the gpio command to return CMD_RET_SUCCESS or CMD_RET_FAILURE, but any existing script which expects the return value to be the pin value is broken by this change. Reinstate the legacy behaviour for `gpio input` only. Fixes: 4dbc107f ("cmd: gpio: Correct do_gpio() return value") Signed-off-by:
Alex Kiernan <alex.kiernan@gmail.com> Signed-off-by:
Alex Kiernan <alex.kiernan@hivehome.com> Reviewed-by:
Simon Glass <sjg@chromium.org>
-
- Mar 11, 2020
-
-
Heinrich Schuchardt authored
Add the missing line feed at the error message if the variable referred to by 'efidebug boot rm' does not exist. Shorten the format string by using the variable name instead of the number of the boot variable. Signed-off-by:
Heinrich Schuchardt <xypron.glpk@gmx.de>
-
There is a wrong usage of utf8_utf16_strncpy() in "boot rm" command, and then it will end up with a failure of this command due to a wrong value of an interim variable ("var_name16"). Signed-off-by:
AKASHI Takahiro <takahiro.akashi@linaro.org> Reviewed-by:
Heinrich Schuchardt <xypron.glpk@gmx.de>
-
- Mar 03, 2020
-
-
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>
-
- Feb 28, 2020
-
-
Following kernel's proposal for an arch-agnostic initrd loading mechanism [1] let's implement the U-boot counterpart. This new approach has a number of advantages compared to what we did up to now. The file is loaded into memory only when requested limiting the area of TOCTOU attacks. Users will be allowed to place the initramfs file on any u-boot accessible partition instead of just the ESP one. Finally this is an attempt of a generic interface across architectures in the linux kernel so it makes sense to support that. The file location is intentionally only supported as a config option argument(CONFIG_EFI_INITRD_FILESPEC), in an effort to enhance security. Although U-boot is not responsible for verifying the integrity of the initramfs, we can enhance the offered security by only accepting a built-in option, which will be naturally verified by UEFI Secure Boot. This can easily change in the future if needed and configure that via ENV or UEFI variable. [1] https://lore.kernel.org/linux-efi/20200207202637.GA3464906@rani.riverdale.lan/T/#m4a25eb33112fab7a22faa0fd65d4d663209af32f Signed-off-by:
Ilias Apalodimas <ilias.apalodimas@linaro.org> Signed-off-by:
Heinrich Schuchardt <xypron.glpk@gmx.de>
-
- Feb 26, 2020
-
-
Heinrich Schuchardt authored
UEFI spec 2.8 errata A replaces the RuntimeServicesSupported variable defined in UEFI spec 2.8 by the configuration table EFI_RT_PROPERTIES_TABLE. So let's follow suit. Cc: Ard Biesheuvel <ardb@kernel.org> Signed-off-by:
Heinrich Schuchardt <xypron.glpk@gmx.de> Tested-by:
Ard Biesheuvel <ardb@kernel.org>
-
- Feb 19, 2020
-
-
Heinrich Schuchardt authored
In the function description use the correct parameter name. Mention EFI_FDT_USE_INTERNAL. Signed-off-by:
Heinrich Schuchardt <xypron.glpk@gmx.de>
-
- Feb 09, 2020
-
-
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>
-
- Feb 07, 2020
-
-
Tom Rini authored
Based on reading the text of the license comment this appears to be the BSD-2-Clause license but with an imperfect word match as BSD-2-Clause was not (as far as I recall) a common license choice at the time the code was written. Cc: Wolfgang Denk <wd@denx.de> Signed-off-by:
Tom Rini <trini@konsulko.com>
-
Use the correct return value in function do_gpio() and update commands documentation with the return values from command_ret_t enum. CMD_RET_SUCCESS is returned on command success and CMD_RET_FAILURE is returned on command failure. The command was returning the pin value, which caused confusion when debugging (#define DEBUG). Signed-off-by:
Luka Kovacic <luka.kovacic@sartura.hr> Tested-by:
Robert Marko <robert.marko@sartura.hr>
-
- Feb 06, 2020
-
-
Simon Glass authored
At present dm/device.h includes the linux-compatible features. This requires including linux/compat.h which in turn includes a lot of headers. One of these is malloc.h which we thus end up including in every file in U-Boot. Apart from the inefficiency of this, it is problematic for sandbox which needs to use the system malloc() in some files. Move the compatibility features into a separate header file. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
At present devres.h is included in all files that include dm.h but few make use of it. Also this pulls in linux/compat which adds several more headers. Drop the automatic inclusion and require files to include devres themselves. This provides a good indication of which files use devres. Signed-off-by:
Simon Glass <sjg@chromium.org> Reviewed-by:
Anatolij Gustschin <agust@denx.de>
-
This adds a subcommand to dm to dump out what drivers are installed, and their compatible strings. I have found this useful in ensuring that I have the correct drivers compiled, and that I have put in the correct compatible strings. Signed-off-by Sean Anderson <seanga2@gmail.com> Reviewed-by:
Simon Glass <sjg@chromium.org>
-
The command tpm (and tpm2) search the tpm and use it. On sandbox, there are two tpm (tpm 1.x and tpm 2.0). So the command tpm and tpm2 are always executed with the first tpm (tpm 1.x), and the command tpm2 always fails. This add a subcommand device to command tpm and command tpm2. Then the command tpm and tpm2 use the device selected with the subcommand device. To be compatible with previous behaviour, if the subcommand device is not used before a tpm (or tpm2) command, the device 0 is selected. Signed-off-by:
Philippe Reynes <philippe.reynes@softathome.com> Reviewed-by:
Miquel Raynal <miquel.raynal@bootlin.com>
-
- Feb 04, 2020
-
-
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>
-
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>
-
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>
-
- Jan 30, 2020
-
-
Tom Rini authored
New analysis by the tool has shown that we have some cases where we weren't handling the error exit condition correctly. When we ran into the ENOMEM case we wouldn't exit the function and thus incorrect things could happen. Rework the unwinding such that we don't need a helper function now and free what we may have allocated. Fixes: 18030d04 ("GPT: fix memory leaks identified by Coverity") Reported-by: Coverity (CID: 275475, 275476) Cc: Alison Chaiken <alison@she-devel.com> Cc: Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com> Cc: Jordy <jordy@simplyhacker.com> Signed-off-by:
Tom Rini <trini@konsulko.com> Reviewed-by:
Simon Goldschmidt <simon.k.r.goldschmidt@gmail.com>
-
- Jan 28, 2020
-
-
Some PMICs (such as the DA9063) have non-contiguous register maps. Attempting to read the non implemented registers returns an error rather than a dummy value which causes 'pmic dump' to terminate prematurely. Fix this by allowing the PMIC driver to return -ENODATA for such registers, which will then be displayed as '--' by pmic dump. Use a single error code rather than any error code so that we can distinguish between a hardware failure reading the PMIC and a non implemented register known to the driver. Signed-off-by:
Martin Fuzzey <martin.fuzzey@flowbird.group>
-
If we didn't unbind the sata from block device, the same devices would be added after sata remove, This patch is to resolve this issue as below: => sata info SATA#0: (3.0 Gbps) SATA#1: (3.0 Gbps) Device 0: Model: INTEL SSDSA2BW300G3D Firm: 4PC10362 Ser#: BTPR247005PY30 Type: Hard Disk Supports 48-bit addressing Capacity: 286168.1 MB = 279.4 GB (586072368 x 512) Device 1: Model: INTEL SSDSA2BW300G3D Firm: 4PC10362 Ser#: BTPR247005VX30 Type: Hard Disk Supports 48-bit addressing Capacity: 286168.1 MB = 279.4 GB (586072368 x 512) => sata stop => sata info SATA#0: (3.0 Gbps) SATA#1: (3.0 Gbps) Device 0: Model: INTEL SSDSA2BW300G3D Firm: 4PC10362 Ser#: BTPR247005PY300 Type: Hard Disk Supports 48-bit addressing Capacity: 286168.1 MB = 279.4 GB (586072368 x 512) Device 1: Model: INTEL SSDSA2BW300G3D Firm: 4PC10362 Ser#: BTPR247005VX300 Type: Hard Disk Supports 48-bit addressing Capacity: 286168.1 MB = 279.4 GB (586072368 x 512) Device 2: Model: INTEL SSDSA2BW300G3D Firm: 4PC10362 Ser#: BTPR247005PY300 Type: Hard Disk Supports 48-bit addressing Capacity: 286168.1 MB = 279.4 GB (586072368 x 512) Device 3: Model: INTEL SSDSA2BW300G3D Firm: 4PC10362 Ser#: BTPR247005VX300 Type: Hard Disk Supports 48-bit addressing Capacity: 286168.1 MB = 279.4 GB (586072368 x 512) Signed-off-by:
Peng Ma <peng.ma@nxp.com> Reviewed-by:
Simon Glass <sjg@chromium.org>
-
- Jan 27, 2020
-
-
The 'sspi' command hard-coded 1 MHz bus frequency for all transmissions. Allow changing that at runtime by specifying '@freq' bus frequency in Hz. Signed-off-by:
Marek Vasut <marex@denx.de> Cc: Tom Rini <trini@konsulko.com> Reviewed-by:
Lukasz Majewski <lukma@denx.de> Reviewed-by:
Jagan Teki <jagan@amarulasolutions.com>
-
- Jan 24, 2020
-
-
This is not really a CONFIG since it is not intended to be set by boards. Move it into the compiler header with other similar defines, and rename it. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
These functions relate to memory init so move them into the init header. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
This function has a very generic name which does not adequately describe its purpose. Rename it and move it to image.h, since it relates to reading a script from an image. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
These three globals relate to image handling. Move them to the image header file. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
These global variables are quite short and generic. In fact the same name is more often used locally for struct members and function arguments. Add a image_ prefix to make them easier to distinguish. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Move this function out of common.h and into a relevant header file. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
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 <sjg@chromium.org>
-
These are filesystem functions and belong in the filesystem header file. Move them. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
This function belongs in the network header file. Move it. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
This function belongs more in flash.h than common.h so move it. Also remove the space before the bracket in some calls. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
This patch modify the loop in mtd erase command to erase one by one the blocks in the requested area. It solves issue on "mtd erase" command on nand with existing bad block, the command is interrupted on the first bad block with the trace: "Skipping bad block at 0xffffffffffffffff" In MTD driver (nand/raw), when a bad block is present on the MTD device, the erase_op.fail_addr is not updated and we have the initial value MTD_FAIL_ADDR_UNKNOWN = (ULL)-1. This case seems normal in nand_base.c:nand_erase_nand(), we have the 2 exit cases during the loop: 1/ we have a bad block (nand_block_checkbad) instr->state = MTD_ERASE_FAILED loop interrupted (goto erase_exit) 2/ if block erase failed (status & NAND_STATUS_FAIL) instr->state = MTD_ERASE_FAILED; instr->fail_addr = ((loff_t)page << chip->page_shift); loop interrupted (goto erase_exit) So erase_op.fail_addr can't be used if bad blocks were present in the erased area; we need to use mtd_erase only one block to detect and skip these existing bad blocks (as it is done in nand_util.c). Signed-off-by:
Patrick Delaunay <patrick.delaunay@st.com> Reviewed-by:
Miquel Raynal <miquel.raynal@bootlin.com>
-
- Jan 23, 2020
-
-
Remove unused variable to silence compiler warning Signed-off-by:
Joel Johnson <mrjoel@lixil.net>
-