- Mar 02, 2021
-
-
Simon Glass authored
This code is still using the old command typedef. It was not noticed since this file is not currently built. It is using a non-existent option in the Makefile. Drop this file since it is not needed for correct operation. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
Comparing a hex dump on the U-Boot command line with the contents of a file on the host system is fairly easy and convenient to do manually if it is small. But the format used hexdump by default differs from that shown by U-Boot. Add a note about how to make them the same. (For large dumps, writing the data to the network with tftpput, or to a USB stick with ext4save is easiest.) Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
Provide a man-page for the md command. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
Add notes about how to make binman produce verbose logging when building. Add a comment on how to do this. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
This is printed twice but we only need one message, since there is very little processing in between them. Drop the second one, since all branches of the switch() already have output. Update the U-Boot message to include the phase being jumped to. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Patrick Delaunay authored
Remove the unused function set_dacr/get_dacr Serie-cc: Ard Biesheuvel <ardb@kernel.org> Serie-cc: R Sricharan <r.sricharan@ti.com> Signed-off-by:
Patrick Delaunay <patrick.delaunay@foss.st.com>
-
Patrick Delaunay authored
Remove the unused weak function arm_init_domains used to change the DACR value. Signed-off-by:
Patrick Delaunay <patrick.delaunay@foss.st.com>
-
Patrick Delaunay authored
Remove the arm_init_domains and the DACR update, as it is now done in ARMv7 CP15 level. Signed-off-by:
Patrick Delaunay <patrick.delaunay@foss.st.com>
-
Patrick Delaunay authored
Update the initial value of Domain Access Control Register (DACR) and set by default the access permission to client (DACR_Dn_CLIENT = 1U) for each of the 16 domains and no more to all-supervisor (DACR_Dn_MANAGER = 3U). This patch allows to activate the domain checking in MMU against the permission bits in the translation tables and avoids prefetching issue on ARMv7 [1]. Today it was already done for OMAP2 architecture ./arch/arm/mach-omap2/omap-cache.c::arm_init_domains introduced by commit de63ac27 ("ARM: mmu: Set domain permissions to client access") which fixes lot of speculative prefetch aborts seen on OMAP5 secure devices. [1] https://developer.arm.com/documentation/ddi0406/b/System-Level-Architecture/Virtual-Memory-System-Architecture--VMSA-/Memory-access-control/The-Execute-Never--XN--attribute-and-instruction-prefetching Signed-off-by:
Patrick Delaunay <patrick.delaunay@st.com> Reported-by:
Ard Biesheuvel <ardb@kernel.org> Signed-off-by:
Patrick Delaunay <patrick.delaunay@foss.st.com>
-
Patrick Delaunay authored
Align TTB_SECT define value with previous value. Signed-off-by:
Patrick Delaunay <patrick.delaunay@foss.st.com>
-
Patrick Delaunay authored
The normal memory (other that DCACHE_OFF) should be executable by default, only the device memory (DCACHE_OFF) used for peripheral access should have the bit execute never (TTB_SECT_XN_MASK). Signed-off-by:
Patrick Delaunay <patrick.delaunay@foss.st.com>
-
Patrick Delaunay authored
Overidde the weak function dram_bank_mmu_setup() to set the DDR (preloc case) or the SYSRAM (in SPL case) executable before to enable the MMU and configure DACR. This weak function is called in dcache_enable/mmu_setup. This patchs avoids a permission access issue when the DDR is marked executable (by calling mmu_set_region_dcache_behaviour with DCACHE_DEFAULT_OPTION) after MMU setup and domain access permission activation with DACR in dcache_enable. Signed-off-by:
Patrick Delaunay <patrick.delaunay@foss.st.com>
-
Patrick Delaunay authored
Mark the top of ram, used for relocated U-Boot as a normal memory (cacheable and executable) to avoid permission access issue when U-Boot jumps to this relocated code. When MMU is activated in pre-reloc stage; only the beginning of DDR is marked executable. This patch avoids access issue when DACR is correctly managed. Signed-off-by:
Patrick Delaunay <patrick.delaunay@foss.st.com>
-
Harald Seiler authored
Historically, the reset_cpu() function had an `addr` parameter which was meant to pass in an address of the reset vector location, where the CPU should reset to. This feature is no longer used anywhere in U-Boot as all reset_cpu() implementations now ignore the passed value. Generic code has been added which always calls reset_cpu() with `0` which means this feature can no longer be used easily anyway. Over time, many implementations seem to have "misunderstood" the existence of this parameter as a way to customize/parameterize the reset (e.g. COLD vs WARM resets). As this is not properly supported, the code will almost always not do what it is intended to (because all call-sites just call reset_cpu() with 0). To avoid confusion and to clean up the codebase from unused left-overs of the past, remove the `addr` parameter entirely. Code which intends to support different kinds of resets should be rewritten as a sysreset driver instead. This transformation was done with the following coccinelle patch: @@ expression argvalue; @@ - reset_cpu(argvalue) + reset_cpu() @@ identifier argname; type argtype; @@ - reset_cpu(argtype argname) + reset_cpu(void) { ... } Signed-off-by:
Harald Seiler <hws@denx.de> Reviewed-by:
Simon Glass <sjg@chromium.org>
-
Harald Seiler authored
This reverts commit 576007ae. The parameter passed to reset_cpu() no longer holds a meaning as all call-sites now pass the value 0. Thus, branching on it is essentially dead code and will just confuse future readers. Revert soft-reset support and just always perform a hard-reset for now. This is a preparation for removal of the reset_cpu() parameter across the entire tree in a later patch. Fixes: 576007ae ("lpc32xx: cpu: add support for soft reset") Cc: Sylvain Lemieux <slemieux@tycoint.com> Signed-off-by:
Harald Seiler <hws@denx.de>
-
Harald Seiler authored
The current implementation of reset_cpu() in the ns3 board code does not archieve what it is supposed to (according to the comments), due to a number of reasons: 1. The argument to reset_cpu() is _not_ actually passed from the `reset` command, but is set to 0 in all call-sites (in this specific case, see arch/arm/lib/reset.c). Thus, performing different kinds of resets based on its value will not work as expected. 2. Contrary to its documentation, the passed argument is not interpreted, but a static `L3_RESET` define is used. The other comment properly notes that this will always perform a L3 reset, though. 3. The "parsing" of the static `L3_RESET` value is not even using the upper and lower nibble as stated in the comment, but uses the last two decimal digits of the value. This is currently one of the only implementations left in U-Boot, which make "use" of the value passed to reset_cpu(). As this is done under false assumption (the value does not have any meaning anymore), it makes sense to bring it into line with the rest and start ignoring the parameter. This is a preparation for removal of the reset_cpu() parameter across the entire tree in a later patch. Fixes: b5a152e7 ("board: ns3: default reset type to L3") Cc: Bharat Gooty <bharat.gooty@broadcom.com> Cc: Rayagonda Kokatanur <rayagonda.kokatanur@broadcom.com> Signed-off-by:
Harald Seiler <hws@denx.de> Reviewed-by:
Simon Glass <sjg@chromium.org>
-
Harald Seiler authored
nds32 is one of the only architectures which still have a reset_cpu() implementation that makes use of the `addr` parameter. The rest of U-Boot now ignores it and passes 0 everywhere. It turns out that even here, reset_cpu() is no longer referenced anywhere; reset is either not implemented (e.g. ae3xx) or realized using a WDT (e.g. ag101). Remove this left-over implementation in preparation for the removal of the `addr` parameter in the entire tree. Cc: Rick Chen <rick@andestech.com> Signed-off-by:
Harald Seiler <hws@denx.de> Reviewed-by:
Simon Glass <sjg@chromium.org> Reviewed-by:
Rick Chen <rick@andestech.com>
-
Tom Rini authored
Signed-off-by:
Tom Rini <trini@konsulko.com>
-
- Mar 01, 2021
-
-
Heinrich Schuchardt authored
In drivers we use a family of printing functions including pr_err() and pr_cont(). CONFIG_LOGLEVEL is used to control which of these lead to output via printf(). Our logging functions allow finer grained control of output. So replace printf() by the matching logging functions. The usage of CONFIG_LOGLEVEL remains unchanged. Signed-off-by:
Heinrich Schuchardt <xypron.glpk@gmx.de>
-
Marek Behún authored
When the btrfs_read_fs_root() function is searching a ROOT_ITEM with location key offset other than -1, it currently fails via BUG_ON. The offset can have other value than -1, though. This can happen for example if a subvolume is renamed: $ btrfs subvolume create X && sync Create subvolume './X' $ btrfs inspect-internal dump-tree /dev/root | grep -B 2 'name: X$ location key (270 ROOT_ITEM 18446744073709551615) type DIR transid 283 data_len 0 name_len 1 name: X $ mv X Y && sync $ btrfs inspect-internal dump-tree /dev/root | grep -B 2 'name: Y$ location key (270 ROOT_ITEM 0) type DIR transid 285 data_len 0 name_len 1 name: Y As can be seen the offset changed from -1ULL to 0. Do not fail in this case. Signed-off-by:
Marek Behún <marek.behun@nic.cz> Cc: David Sterba <dsterba@suse.com> Cc: Qu Wenruo <wqu@suse.com> Cc: Tom Rini <trini@konsulko.com>
-
- Feb 28, 2021
-
-
Tom Rini authored
As Stephen is no longer actively maintaining the uboot-test-hooks repository, switch to using the instance on our GitLab. Acked-by:
Stephen Warren <swarren@wwwdotorg.org> Signed-off-by:
Tom Rini <trini@konsulko.com>
-
Heinrich Schuchardt authored
The U-Boot source moves to https://source.denx.de/u-boot/u-boot.git effective 2021-02-28. Signed-off-by:
Heinrich Schuchardt <xypron.glpk@gmx.de>
-
- Feb 27, 2021
-
-
https://gitlab.denx.de/u-boot/custodians/u-boot-efiTom Rini authored
Pull request for efi-2021-04-rc3-2 Bug fixes: * debug build for mkeficapsule * limit output length for VenHw, VenMedia * ACPI tables must be in EfiACPIReclaimMemory
-
- Feb 26, 2021
-
-
-
https://gitlab.denx.de/u-boot/custodians/u-boot-spiTom Rini authored
- new GigaDevice flash ids - fixes for imx, nxp_spi drivers
-
https://gitlab.denx.de/u-boot/custodians/u-boot-stmTom Rini authored
- Add USB host boot support in stm32mp1 config - Enable uefi related commands for STMicroelectronics STM32MP15 boards - Remove duplicate uart nodes in stm32mp15 device tree
-
Heinrich Schuchardt authored
Add missing GUID short text used in the efidebug tables and efidebug dh sub-commands. Signed-off-by:
Heinrich Schuchardt <xypron.glpk@gmx.de>
-
Heinrich Schuchardt authored
Correct missing descriptions and typos in efi_loader.h. Signed-off-by:
Heinrich Schuchardt <xypron.glpk@gmx.de>
-
Heinrich Schuchardt authored
VenHw and VenMedia device path nodes may carry vendor defined data of arbitrary length. When converting a device path node to text ensure that we do not overrun our internal buffer. In our implementation of EFI_DEVICE_PATH_TO_TEXT_PROTOCOL.ConvertDevicePathToText() we could first determine the output length and then allocate buffers but that would nearly double the code size. Therefore keep the preallocated buffers and truncate excessive device paths instead. Signed-off-by:
Heinrich Schuchardt <xypron.glpk@gmx.de>
-
Klaus Heinrich Kiwi authored
Fix a missing comma sign (,) from a printf(), that is only reachable if DEBUG is defined, in which case the build fails with: tools/mkeficapsule.c:266:36: error: expected ‘)’ before ‘bin’ 266 | printf("\tbin: %s\n\ttype: %pUl\n" bin, guid); | ^~~~ | ) Signed-off-by:
Klaus Heinrich Kiwi <klaus@linux.vnet.ibm.com> Reviewed-by:
Heinrich Schuchardt <xypron.glpk@gmx.de>
-
Heinrich Schuchardt authored
tools/mkeficapsule.c is used to prepare test files for testing the UEFI sub-system. Signed-off-by:
Heinrich Schuchardt <xypron.glpk@gmx.de>
-
Heinrich Schuchardt authored
The UEFI spec does not allow ACPI tables to be in runtime services memory. It recommends EfiACPIReclaimMemory. Remove a superfluous check that the allocated pages are 16 byte aligned. EFI pages are 4 KiB aligned. Fixes: 86df34d4 ("efi_loader: Install ACPI configuration tables") Signed-off-by:
Heinrich Schuchardt <xypron.glpk@gmx.de>
-
Ilias Apalodimas authored
The board can boot with UEFI. With the latest changes in U-Boot's EFI subsystem we also have support for EFI runtime variables, without SetVariable support. We can also store the EFI variables in a file on the ESP partition and preserve them across reboots. The env and efidebug commands are missing in order to configure EFI variables and the efibootmgr though. Since U-Boot's default config enables other EFI related commands (e.g bootefi), let's add the env related and efidebug commands and allow users to do that Signed-off-by:
Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by:
Patrick Delaunay <patrick.delaunay@foss.st.com>
-
Patrick Delaunay authored
Remove duplicated uart nodes introduced with commit 62f95af9 ("ARM: dts: stm32mp1: DT alignment with Linux kernel v5.9-rc4"), because the uart nodes wasn't correctly ordered in alphabetic order. Only cosmetic: the generated device tree don't change. Signed-off-by:
Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by:
Patrice Chotard <patrice.chotard@foss.st.com>
-
Marek Vasut authored
Add support for booting from USB pen drive, since USB host port is available on the STM32MP1. Signed-off-by:
Marek Vasut <marex@denx.de> Cc: Patrice Chotard <patrice.chotard@foss.st.com> Cc: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by:
Patrick Delaunay <patrick.delaunay@foss.st.com>
-
Patrice Chotard authored
Since commit 8745b9eb ("usb: gadget: add super speed support") ums was no more functional on platform which use dwc2_udc_otg driver. This was due to a too restrictive test which checked that the gadget driver speed was either FS or HS. So all gadget driver with max speed set to speed higher than HS (SS in case of composite gadget driver in our case) are not allowed, which is wrong. Update the speed test in usb_gadget_register_driver() and in dwc2_gadget_start() to allow all gadget driver speed equal or higher than FS. Tested on stm32mp157c-ev1 board. Fixes: c791c843 ("usb: dwc2: convert driver to DM_USB_GADGET") Signed-off-by:
Patrice Chotard <patrice.chotard@foss.st.com>
-
Stefan Brüns authored
The OUT endpoint can just be ignored as it is not used, just as the corresponding Set_Report request for IN-only interfaces. E.g. the Linux gadget hid keyboard also provides an interrupt endpoint. Also cleanup confusing debug messages like "found set protocol", which is printed when a keyboard device is found, while the Set_Protocol request is issued quite some time later. Signed-off-by:
Stefan Brüns <stefan.bruens@rwth-aachen.de>
-
Heiko Schocher authored
add support for the UUU commands ACmd and UCmd. Enable them through the Kconfig option CONFIG_FASTBOOT_UUU_SUPPORT base was commit in NXP kernel 9b149c2a2882: ("MLK-18591-3 android: Add FSL android fastboot support") and ported it to current mainline. Tested this patch on imx6ul based board. Signed-off-by:
Heiko Schocher <hs@denx.de> Acked-by:
Patrick Delaunay <patrick.delaunay@foss.st.com>
-
Sean Anderson authored
This documents the way U-Boot understands partitions specifications. This also updates the fastboot documentation for the changes in the previous commit. Signed-off-by:
Sean Anderson <sean.anderson@seco.com> Reviewed-by:
Simon Glass <sjg@chromium.org>
-
Sean Anderson authored
This anchor is only for the k210 partition layout, so rename it appropriately. This keeps it from conflicting with the (to be added) anchor for U-Boot partitions in general. Signed-off-by:
Sean Anderson <sean.anderson@seco.com> Reviewed-by:
Simon Glass <sjg@chromium.org>
-