summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-09-09ARM: dts: renesas: Minimize R8A779G0 V4H RPC SPI DT nodeMarek Vasut
The RPC SPI DT node is now part of mainline Linux DT, remove the duplicate content from U-Boot DT extras. The SPI flash DT node name has been changed from "spi-flash@0" to "flash@0", reflect this change in this patch. Retain "bank-width" and "num-cs" DT properties which are used by U-Boot. Retain "spi-rx-bus-width" and "spi-tx-bus-width" DT properties to indicate the bus should always be operated in 1-1-1 mode as the U-Boot RPC SPI driver does not support higher bus width modes yet. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2024-09-09mtd: spi: renesas: Add R-Car Gen4 DT compatibleMarek Vasut
Add device tree compatible string "renesas,rcar-gen4-rpc-if" to the driver to match on upstream RPC DT node in R-Car Gen4 DTs. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2024-09-09mtd: spi: renesas: Configure RPC PHY timing registersMarek Vasut
Make sure RPC PHY timing registers are configured before performing bus access. These registers might have been left unconfigured or may have been configured by a prior stage bootloader and leaving them unconfigured or misconfigured would interfere with U-Boot operation. Set PHYOFFSET1 DDRTMG field to 3 which enables DDR timing adjustment when SPIDRE or DRDRE = 0 and set PHYOFFSET2 OCTTMG field to 4 which makes the interface operate in Serial flash or HyperFlash mode. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2024-09-09mtd: spi: renesas: Configure DRDRENR registerMarek Vasut
Make sure DRDRENR register is configured before performing external address space read. This register might have been configured by a prior stage bootloader and leaving it unconfigured would interfere with U-Boot operation. Since U-Boot RPC SPI driver does not support DDR data transfer mode yet, set this register unconditionally to 0. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2024-09-09mtd: spi: renesas: Write DRDMCR register onceMarek Vasut
Instead of writing DRDMCR with 0 first and then overwriting DRDMCR again in case any dummy bytes have to be sent out, write DRDMCR in every case with the amount of dummy bytes that have to be sent out. In case no dummy bytes have to be sent out, the value written into DRDMCR is zero, so no dummy bytes are sent out. No functional change. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2024-09-09mtd: spi: renesas: Write DREAR register onceMarek Vasut
Instead of writing DREAR with 0 first and then overwriting DREAR again in case of 4 byte addressing mode, write DREAR in every case once with the correct content right away. No functional change. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2024-09-09mtd: rpc: renesas: Add R-Car Gen4 DT compatibleMarek Vasut
Add device tree compatible string "renesas,rcar-gen4-rpc-if" to the driver to match on upstream RPC DT node in R-Car Gen4 DTs. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2024-09-04Merge https://gitlab.denx.de/u-boot/custodians/u-boot-marvellTom Rini
CI: https://dev.azure.com/sr0718/u-boot/_build/results?buildId=374&view=results - Turris Omnia DDR speed change with reset button (Marek)
2024-09-03arm: mvebu: turris_omnia: Switch DDR speed to 1333H when reset 9 is selectedMarek Behún
Users experiencing random kernel crashes due to new versions of Marvell's DDR training algorithm can solve the issue by setting DDR speed to 1333H. But if kernel crashes, it has to be done in U-Boot, which is impossible without UART connection. In order to make it easier for users, use the rescue button mechanism: when rescue mode 9 is selected (that is when 10 LEDs are ON), U-Boot will train DDR in 1333H mode and also update EEPROM so that subsequent boot will use this mode. User has to use the `eeprom` command in U-Boot or `omnia-eeprom` command in OS to switch back to 1600K mode. Signed-off-by: Marek Behún <kabel@kernel.org> Reviewed-by: Stefan Roese <sr@denx.de>
2024-09-03arm: mvebu: turris_omnia: Use the i2c_eeprom misc driver for EEPROM reading ↵Marek Behún
in U-Boot proper Use the i2c_eeprom miscellaneous driver for reading Turris Omnia EEPROM in U-Boot proper. Keep using dm_i2c_read() in SPL build, since adding the i2c_eeprom driver to SPL build increases the image by 1.5 KiB. Signed-off-by: Marek Behún <kabel@kernel.org> Reviewed-by: Stefan Roese <sr@denx.de>
2024-09-03arm: mvebu: turris_omnia: Rename variable holding EEPROM udeviceMarek Behún
Rename the variable holding the EEPROM udevice from `chip` to `eeprom`. Signed-off-by: Marek Behún <kabel@kernel.org> Reviewed-by: Stefan Roese <sr@denx.de>
2024-09-02Prepare v2024.10-rc4v2024.10-rc4Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2024-09-01Merge tag 'dm-pull-1sep24' of https://gitlab.denx.de/u-boot/custodians/u-boot-dmTom Rini
Minor fixes for qconfig and patman
2024-09-01qconfig: Fix an incorrect format-string with negative valueSimon Glass
This is not allowed, so use ljust() instead. This fixes the 'qconfig -i -I help' command. Signed-off-by: Simon Glass <sjg@chromium.org> Fixes: 1bd43060b3e ("moveconfig: Use f strings where possible")
2024-09-01patman: Resolve python string vs. regex escaping syntaxBrian Norris
Python strings have their own notion of backslash-escaping, and that can conflict with the intentions for strings passed to the 're' module. In particular, I get warnings like this: tools/patman/../patman/commit.py:9: SyntaxWarning: invalid escape sequence '\s' re_subject_tag = re.compile('([^:\s]*):\s*(.*)') We should use a raw string (r'...') so that all escaping is passed into the regex module, not interpreted within the string itself. Signed-off-by: Brian Norris <computersforpeace@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2024-08-29Merge tag 'u-boot-imx-master-20240829' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-imx CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/22162 - Fix an issue with "tools/buildman/buildman imx8ulp_evk" failing every other time.
2024-08-29mach-imx: do not use if_changed more than once per targetJerome Forissier
doc/develop/makefiles.rst has the following note: if_changed should not be used more than once per target. It stores the executed command in a corresponding .cmd file and multiple calls would result in overwrites and unwanted results when the target is up to date and only the tests on changed commands trigger execution of commands. The mach-imx Makefile does not follow this recommandation, so fix it by implementing a single command that performs both the cpp_cfg and imx9_check actions. This change fixes an issue with "tools/buildman/buildman imx8ulp_evk" failing every other time [1]. [1] https://lists.denx.de/pipermail/u-boot/2024-August/563192.html Fixes: f637dfe8c468 ("mach-imx: Add i.MX93 binman support.") Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
2024-08-28bootstage: Fix unstash of records from SPLJonas Karlman
The commit b81e31a1e6c5 ("bootstash: Do not provide a default address for all") changed a bootstage unstash call to bootstage stash, this has resulted in bootstage records stashed in SPL no longer get unstaged in U-Boot proper. Fix this by changing back to a unstage call. Fixes: b81e31a1e6c5 ("bootstash: Do not provide a default address for all") Signed-off-by: Jonas Karlman <jonas@kwiboo.se> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@konsulko.com>
2024-08-24Merge tag 'efi-2024-10-rc4' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-efi Pull request efi-2024-10-rc4 Documentation: * Add description of the pwm command UEFI * Correct printf codes in mkeficapsule * Allow CONFIG_EFI_LOADER_BOUNCE_BUFFER on all architectures * Free memory in efi_get_dp_from_boot()
2024-08-24efi_loader: allow EFI_LOADER_BOUNCE_BUFFER on all architecturesHeinrich Schuchardt
There not only ARM64 boards but also RISC-V boards that require a bounce buffer to read block devices. Drop the architecture restriction. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-08-24doc: document the pwm commandEmil Kronborg
Signed-off-by: Emil Kronborg <emil.kronborg@protonmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2024-08-24tools/mkeficapsule: correct printf codesHeinrich Schuchardt
uint64_t is defined as unsigned long long on 32-bit ARM. Use PRIX64 for printing uint64_t. This avoid a build failure on 32-bit systems: tools/mkeficapsule.c: In function 'dump_capsule_auth_header': tools/mkeficapsule.c:694:66: warning: format '%lX' expects argument of type 'long unsigned int', but argument 2 has type 'uint64_t' {aka 'long long unsigned int'} [-Wformat=] 694 | printf("EFI_FIRMWARE_IMAGE_AUTH.MONOTONIC_COUNT\t\t: %08lX\n", | ~~~~^ | | | long unsigned int | %08llX Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Mark Kettenis <kettenis@openbsd.org>
2024-08-24efi_loader: fix memory freeing in efi_get_dp_from_boot()Ilias Apalodimas
efi_get_var() allocates memory which must be freed after the variable is used. Since the device path is duplicated after we deserialize the load options free the memory used for the variable payload Fixes: db61e70e0d2a efi_loader: efi_dp_from_lo() should skip VenMedia node Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Heinric Schuchardt <heinrich.schuchardt@canonical.com>
2024-08-22Merge tag 'u-boot-dfu-20240822' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-dfu u-boot-dfu-20240822 - Fix crash in BCB on invalid block device (reported by coverity) - Fix booting Android kernel without a ramdisk using fastboot - Fix ux500 gadget driver ops based on CONFIG_USB_MUSB_HOST
2024-08-22usb: gadget: ux500: Do not redefine ops if CONFIG_USB_MUSB_HOST setMarek Vasut
In case CONFIG_USB_MUSB_HOST is set, the ux500_gadget_ops get overridden to musb_usb_ops . Simply set the ops one way or the other depending on whether CONFIG_USB_MUSB_HOST is set or not. Fixes: ac4bf5d48a9e ("usb: gadget: ux500: Convert interrupt handling to usb_gadget_generic_ops") Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org> Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Link: https://lore.kernel.org/r/20240818200425.89045-1-marek.vasut+renesas@mailbox.org Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
2024-08-22boot: android: fix booting without a ramdiskMichael Walle
android_image_get_ramdisk() will return an error if there is no ramdisk. Using the android image without a ramdisk worked until commit 1ce8e10f3b4b ("image: Fix up ANDROID_BOOT_IMAGE ramdisk code") because the return code wasn't checked until then. Return -ENOENT in case there is no ramdisk and translate that into -ENOPKG in the calling code, which will then indicate "no ramdisk" to its caller (boot_get_ramdisk()). This way, we can get rid of the "*rd_data = *rd_len = 0;" in the error path, too. With this, I'm able to boot a linux kernel using fastboot again: fastboot --base 0x41000000 --header-version 2 --dtb /path/to/dtb \ --cmdline "root=/dev/mmcblk0p1 rootwait" boot path/to/Image Signed-off-by: Michael Walle <mwalle@kernel.org> Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Reviewed-by: Simon Glass <sjg@chromium.org> Link: https://lore.kernel.org/r/20240729213657.2550935-1-mwalle@kernel.org Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
2024-08-22cmd: bcb: Fix segfault on invalid block deviceMattijs Korpershoek
When blk_get_dev() fails, block NULL and gets de-referenced in the error path by a printf(), resulting in a crash. This can be reproduced on sandbox with: $ ./u-boot --command "bcb load mmc 0 0" Fix the message by using the functions arguments (iface, devnum) instead. Note: partition (being a global static initialized) can be used safely. This issue has been reported by coverity [1] [1] https://lore.kernel.org/all/20240723141844.GF989285@bill-the-cat/ Fixes: dfeb4f0d7935 ("cmd: bcb: extend BCB C API to allow read/write the fields") Reviewed-by: Dmitrii Merkurev <dimorinny@google.com> Link: https://lore.kernel.org/r/20240724-bcb-crash-v1-1-44caff15bce4@baylibre.com Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
2024-08-21CI: Update to latest DockerfileTom Rini
This primarily updates our python cache. Signed-off-by: Tom Rini <trini@konsulko.com>
2024-08-21Dockerfile: Update to namespace for some labelsTom Rini
Using "MAINTAINER" and "Description" have been replaced with org.opencontainers.image namespace variables. Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Rini <trini@konsulko.com>
2024-08-21pytest: requirements.txt: Resync with the rest of the projectTom Rini
In order to build the docker container, which contains a download cache of python modules, we need to have our versions be in sync in each requirements file. Update some of the cases where which are older than the rest of the project. Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Rini <trini@konsulko.com>
2024-08-19Prepare v2024.10-rc3v2024.10-rc3Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2024-08-15am335x_hs_evm_spi_defconfig: Add MAINTAINERS entryTom Rini
Add this to the existing entry for similar boards. Signed-off-by: Tom Rini <trini@konsulko.com>
2024-08-15defconfig: Add a config for AM335x High Security EVM with SPI Boot supportAndrew Davis
Add a new defconfig file for the AM335x High Security EVM. This config is specific for the case of SPI booting. Signed-off-by: Andrew Davis <afd@ti.com>
2024-08-15scripts/decodecode: update from Linux v6.10Heinrich Schuchardt
For decoding RISC-V dumps we need to update the script. Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2024-08-15maintainers: Update list of maintainers for Corstone-1000Hugues Kamba Mpiana
- Add new maintainer: Hugues KAMBA MPIANA - Remove maintainer: Xueliang ZHONG - Update contact information for current maintainer. Signed-off-by: Hugues KAMBA MPIANA <hugues.kambampiana@arm.com>
2024-08-13Merge tag 'u-boot-imx-master-20240813' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-imx CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/22014 - Convert tqma6q_mba6 to watchdog DM to fix reset. - Convert tqma6q_mba6 to PMIC and I2C DM. - Convert tqma6q_mba6 to OF_UPSTREAM. - Do not print the board name twice on tqma6. - Enable CMD_ERASEENV for imx8mm/mp Phytec boards. - Add imx8ulp binman support. - Fix imx8 build when CONFIG_IMX_BOOTAUX is set.
2024-08-13tqma6: Do not print the board name twiceFabio Estevam
Currently, the devicetree model as well as the board variant name are shown: ... Model: TQ TQMa6S/DL on MBa6x Board: TQMa6DL on a MBa6x ... Unselect the CONFIG_DISPLAY_BOARDINFO option so that the board name is printed only once in board_late_init() instead. Signed-off-by: Fabio Estevam <festevam@denx.de>
2024-08-13tqma6: Convert to PMIC and I2C driver modelFabio Estevam
Currently, the power_init_board() function is not executed because CONFIG_POWER_LEGACY is not selected. Convert to PMIC driver model, which allows removing board I2C code in favor of the I2C driver model. Signed-off-by: Fabio Estevam <festevam@denx.de>
2024-08-13imx6-tqma6: Convert to OF_UPSTREAMFabio Estevam
Instead of using the local imx6-tqma6 devicetree copies from U-Boot, convert the imx6-tqma6 target to OF_UPSTREAM so that the upstream kernel devicetrees can be used instead. Signed-off-by: Fabio Estevam <festevam@denx.de>
2024-08-13tqma6q_mba6: Convert to watchdog driver modelFabio Estevam
Commit 68dcbdd594d4 ("ARM: imx: Add weak default reset_cpu()") caused the 'reset' command in U-Boot to not cause a board reset. Fix it by switching to the watchdog driver model via sysreset, which is the preferred method for implementing the watchdog reset. Signed-off-by: Fabio Estevam <festevam@denx.de>
2024-08-13imx: imx8: fix build when CONFIG_IMX_BOOTAUX is setMax Krummenacher
Use correct function name. Fixes: e8cd1f60d964 ("imx: imx8: bootaux: Add i.MX8 M4 boot support") Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2024-08-13imx8ulp_evk: enable binman supportGary Bisson
Enable binman support and add documentation for the imx8ul-evk board. Signed-off-by: Gary Bisson <bisson.gary@gmail.com>
2024-08-13mach-imx: Add i.MX 8ULP binman supportGary Bisson
- Re-use i.MX 93 Makefile target as similar boot process - Create imx8ulp-u-boot.dtsi for binman image architecture - Create both SPL and U-Boot containers configuration Key differences between the 93 and 8ULP SPL container are: - No LPDDR training library needed for 8ULP - 8ULP requires a uPower binary (RISC-V core) for power management - 8ULP also requires a M33 binary to work properly Signed-off-by: Gary Bisson <bisson.gary@gmail.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2024-08-13spl: binman: Disable u_boot_any symbols for i.MX 8ULP boardsGary Bisson
This is extending commit da96f93cda9 ("spl: binman: Disable u_boot_any symbols for i.MX93 boards") to i.MX 8ULP boards. Signed-off-by: Gary Bisson <bisson.gary@gmail.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2024-08-13tools: imx8image: add upower image supportGary Bisson
Part of the upower management was included in a previous commit [1]. This patch only adds the bits required to properly parse a config file that would include the binary as follows: IMAGE PWR upower.bin [1] 6ec65c8558f (tools: image: support i.MX93) Signed-off-by: Gary Bisson <bisson.gary@gmail.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2024-08-13tools: imx8image: fix soc variable for ULPGary Bisson
Currently the ULP token sets the soc as IMX9, making it impossible to differentiate the two families of processors. However, since the 8ULP requires specific binaries like upower which do not exist in 93, they need to be separated. Fixes: 6ec65c8558f (tools: image: support i.MX93) Signed-off-by: Gary Bisson <bisson.gary@gmail.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2024-08-12Merge tag 'u-boot-rockchip-20240812' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-rockchip Please pull the updates for rockchip platform: - Add board support: RK3566: Radxa ROCK 3 Model C Radxa ZERO 3W/3E Xunlong Orange Pi 3B RK3568J: Radxa ROCK 3B RK3308B: Radxa ROCK S0 RK3588: Radxa ROCK 5 ITX FriendlyElec CM3588 NAS board - dw-mmc: allow 4-bit mode; - dts and config updates; CI: https://source.denx.de/u-boot/custodians/u-boot-rockchip/-/pipelines/21997
2024-08-12Merge https://source.denx.de/u-boot/custodians/u-boot-usbTom Rini
2024-08-12Merge tag 'ubifixes-for-v2024-10-rc3' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-ubi ubi fixes for v2024.10-rc3 - ubi memleak fixes from Alexander - ubifs: mount fails after power cycle fixed from Ravi commit ported from kernel commit 304790c038bc4af4f19774705409db27eafb09fc HS: fixed checkpatch Error ERROR: Remove Gerrit Change-Id's before submitting upstream #213: Change-Id: I487ae4d172e228e72ac31d158d668f209142bce0 removed this line from commit message. - memleak fixes from Michael in ubifs, missing ubifs_iput(inode) after ubifs_iget() calls. Special thanks to all of them for detecting/fixing and testing this patches!
2024-08-12Merge tag 'efi-2024-10-rc3' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-efi Pull request efi-2024-10-rc3 UEFI: * efi_loader: use list_count_nodes() in efi_protocols_per_handle() * efi_loader: correct description of efi_get_distro_fdt_name * boot: set correct block device name in set_efi_bootdev() * configs: enable efidebug and EFI http boot on QEMU aarch64 Other: * Makefile: don't use CFLAGS for environment text file