aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2024-03-01arm: dts: Refactor device trees using "&{/aliases}" syntaxEmanuele Ghidoli5-35/+43
Use the common syntax to define aliases. Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Tested-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> # Verdin iMX8M Plus Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2024-03-01toradex: common: Use SETTINGS_R event to read toradex config blockEmanuele Ghidoli1-38/+54
Use SETTINGS_R event to read toradex config block and checkboard() to print board info. Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Tested-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> # Verdin iMX8M Plus Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2024-03-01toradex: Remove not necessary model prints from checkboard()Emanuele Ghidoli13-120/+8
Sysinfo prints the model obtained from device tree, checkboard() take info from hardware and tdx_checkboard() use the model retrieved by toradex config block. Remove the print from checkboard() function because the model obtained from toradex config block is the most complete. If toradex config block is missing the model info from device tree is enough. Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Tested-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> # Verdin iMX8M Plus Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2024-03-01toradex: Fix recursive call to checkboardEmanuele Ghidoli1-1/+0
Since checkboard() is used instead of show_board_info(), in case toradex config block is missing or malformed, checkboard is recursively called. It prints a long list of "MISSING TORADEX CONFIG BLOCK" till the stack is full. Fixes: edb0ecd18708 ("toradex: Use checkboard() instead of show_board_info()") Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Tested-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> # Verdin iMX8M Plus Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2024-03-01configs: Resync with savedefconfigTom Rini487-654/+44
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <trini@konsulko.com>
2024-02-28board: rzg2l: Support reset via Renesas RAA215300 PMICPaul Barker2-8/+2
With the SYSRESET subsystem enabled we do not need to implement reset_cpu() in the board directory. Signed-off-by: Paul Barker <paul.barker.ct@bp.renesas.com> Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2024-02-28pmic: raa215300: Bind sysreset driverPaul Barker1-0/+9
If SYSRESET support is enabled for the RAA215300 PMIC, we need to bind the raa215300_sysreset driver as a child device of the PMIC. Signed-off-by: Paul Barker <paul.barker.ct@bp.renesas.com> Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2024-02-28sysreset: Support reset via Renesas RAA215300 PMICPaul Barker3-0/+65
This patch adds support for resetting a board via the RAA215300 PMIC. Note that the RAA215300 documentation names the available reset types differently to u-boot: * A "warm" reset via the RAA215300 PMIC will fully reset the SoC (CPU & GPIOs), so this corresponds to SYSRESET_COLD. * A "cold" reset via the RAA215300 PMIC will cycle all power supply rails, so this corresponds to SYSRESET_POWER. Signed-off-by: Paul Barker <paul.barker.ct@bp.renesas.com> Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2024-02-28board: rzg2l: Enable access to Renesas RAA215300 PMICPaul Barker1-0/+3
Enable the appropriate PMIC driver as well as the `pmic` command. Signed-off-by: Paul Barker <paul.barker.ct@bp.renesas.com> Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2024-02-28pmic: Add Renesas RAA215300 PMIC driverPaul Barker3-0/+51
The RZ/G2L SMARC module is powered via a Renesas RAA215300 PMIC which provides several voltage converters, a real time clock (RTC) and reset control. A basic driver is implemented for this device so that we can read, write and dump the PMIC registers. The raa215300_bind() function is added as a stub, binding of the sysreset driver will be added in a later patch. Additional features of this PMIC (such as reset control) may be supported by future patches. Signed-off-by: Paul Barker <paul.barker.ct@bp.renesas.com> Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2024-02-28i2c: rzg2l: Add I2C driver for RZ/G2L familyPaul Barker5-0/+635
This driver supports the I2C module on the Renesas RZ/G2L (R9A07G044) SoC, also known as the RIIC module. This patch is based on both the u-boot driver in the Renesas RZ BSP 3.0.5 release [1] (commit 7fcc1fdc2534), and the Linux v6.7 driver (commit 0dd3ee311255). Support for deblocking the I2C bus is included as this may be needed after triggering a reset via the Power Management IC (PMIC) over I2C (the PMIC asserts the reset line before the SoC completes the I2C write transaction with obvious bus locking effects). If the SDA line is observed to be low during initialisation, we automatically attempt to deblock. [1]: https://github.com/renesas-rz/renesas-u-boot-cip Signed-off-by: Paul Barker <paul.barker.ct@bp.renesas.com> Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2024-02-28arm: dts: rzg2l: Sync with Linux v6.7Paul Barker6-22/+118
Pull in the recent changes to the RZ/G2L device tree and related dtsi files so that we're aligned with Linux v6.7 (commit 0dd3ee311255). Signed-off-by: Paul Barker <paul.barker.ct@bp.renesas.com> Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2024-02-28clk: renesas: Confirm all clock & reset changes on RZ/G2LPaul Barker1-4/+13
When enabling/disabling a clock or reset signal, confirm that the change has completed before returning from the function. A somewhat arbitrary 100ms timeout is defined to ensure that the system doesn't lock up in the case of an error. Since we need to dynamically determine if we're waiting for a 0 bit or a 1 bit, it's easier to use wait_for_bit_32() than readl_poll_timeout(). This change is needed for reliable initialization of the I2C driver which is added in a following patch. Signed-off-by: Paul Barker <paul.barker.ct@bp.renesas.com> Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2024-02-27Merge patch series "Dockerfile: Build coreboot from source"Tom Rini3-15/+20
To make our CI loops more robust, switch to building and providing the coreboot binary we test with rather than download from a Google Drive link.
2024-02-27CI: Move to latest container imageTom Rini3-3/+3
This moves us to our latest container image, which is now based on the current "Jammy" tag. Signed-off-by: Tom Rini <trini@konsulko.com>
2024-02-27CI: Switch to using coreboot from our imageTom Rini2-12/+6
Instead of downloading coreboot binaries from a Google drive location, use the ones we have built ourselves. Signed-off-by: Tom Rini <trini@konsulko.com>
2024-02-27Dockerfile: Build coreboot from sourceTom Rini1-0/+11
To make CI runs rely less on external servers, build a coreboot release from source and populate /opt/coreboot with the output. Signed-off-by: Tom Rini <trini@konsulko.com>
2024-02-26Prepare v2024.04-rc3v2024.04-rc3Tom Rini2-2/+2
Signed-off-by: Tom Rini <trini@konsulko.com>
2024-02-24Merge tag 'u-boot-imx-master-20240224' of ↵WIP/24Feb2024Tom Rini23-8/+362
https://source.denx.de/u-boot/custodians/u-boot-imx - Enable the thermal driver for the imx8m phycore boards. - Convert imx53-qsb to watchdog driver to fix the 'reset' command. - Remove multiline string from imx6dl-sielaff. - Add SPI boot support for imxrt1050-evk. - Convert opos6uldev to watchdog driver to fix the 'reset' command.
2024-02-24opos6uldev: Convert to watchdog driver modelSébastien Szymanski2-0/+13
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: Sébastien Szymanski <sebastien.szymanski@armadeus.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2024-02-24imx53-qsb: Convert to watchdog driver modelFabio Estevam2-0/+16
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@gmail.com>
2024-02-24imx8mm-phygate-tauri-l_defconfig: Enable CONFIG_IMX_TMUBenjamin Hahn1-0/+1
Enable the imx thermal driver to prevent booting when the system is too hot. Signed-off-by: Benjamin Hahn <B.Hahn@phytec.de>
2024-02-24phycore-imx8mm_defconfig: Enable CONFIG_IMX_TMUBenjamin Hahn1-0/+1
Enable the imx thermal driver to prevent booting when the system is too hot. Signed-off-by: Benjamin Hahn <B.Hahn@phytec.de>
2024-02-24phycore-imx8mp_defconfig: Enable CONFIG_IMX_TMUBenjamin Hahn1-0/+1
Enable the imx thermal driver to prevent booting when the system is too hot. Signed-off-by: Benjamin Hahn <B.Hahn@phytec.de>
2024-02-24configs: imx93_var_som: Add fastboot support.Mathieu Othacehe1-0/+6
Enable the `fastboot` command. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2024-02-24configs: imx93_var_som: Add USB support.Mathieu Othacehe1-0/+9
Enable the `usb` command and some USB drivers. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2024-02-24arm: dts: imx93-var-som-symphony: Add USB support.Mathieu Othacehe1-0/+18
Enable both usbotg1 and usbotg2 ports. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2024-02-24arm: dts: imx93: Add USB support.Mathieu Othacehe1-0/+58
Copied from: https://lore.kernel.org/linux-devicetree/20240131114324.3722428-6-xu.yang_2@nxp.com/ Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2024-02-24board: imx6dl-sielaff: spl.c: Remove multiline stringFrieder Schrempf1-2/+2
Remove the malformed multiline string and fix the checkpatch warning. Reported-by: Dan Carpenter <dan.carpenter@linaro.org> Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de>
2024-02-24imx: imxrt1050-evk: Add documentation for SPI bootJesse Taube1-0/+30
Add documentation for SPI boot. Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com>
2024-02-24imx: imxrt1050-evk: Add support for SPI flash bootingJesse Taube11-6/+207
Add support for booting the imxrt1050-evk from spi. Add imximage config and the ability for SPL to boot from NOR. Enable binman in Kconfig and device tree for imxrt* as it is used to prepend fspi_header.bin to SPL and u-boot.img. Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com>
2024-02-23Merge tag 'u-boot-amlogic-fixes-20240223' of ↵Tom Rini4-0/+4
https://source.denx.de/u-boot/custodians/u-boot-amlogic - fix AVB oom error for Khadas VIM3 Android configs
2024-02-23configs: khadas-vim3*_android: fix AVB oom errorMattijs Korpershoek4-0/+4
When booting Android with AVB enabled, an OOM is observed: => avb init ${mmcdev} => avb verify _a ## Android Verified Boot 2.0 version 1.1.0 read_is_device_unlocked not supported yet read_rollback_index not supported yet avb_util.c:182: ERROR: Failed to allocate memory. OOM error occurred during verification A custom malloc length of 128MB is required as documented in commit 285a83b12bdf ("configs: meson64_android: increase SYS_MALLOC_LEN to 128M for AVB") However, this 128M custom malloc length was not ported to Kconfig in commit 7cfbba36e9f8 ("Convert CONFIG_SYS_MALLOC_LEN to Kconfig") Add it back to fix AVB verification on VIM3/VIM3L. Fixes: 7cfbba36e9f8 ("Convert CONFIG_SYS_MALLOC_LEN to Kconfig") Co-developed-by: Guillaume La Roque <glaroque@baylibre.com> Signed-off-by: Guillaume La Roque <glaroque@baylibre.com> Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org> Reviewed-by: Igor Opaniuk <igor.opaniuk@gmail.com> Link: https://lore.kernel.org/r/20240209-vim3-avb-malloc-v1-1-91427d8c19ab@baylibre.com Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
2024-02-22Merge branch 'qcom-fixes-2024.04' of ↵Tom Rini1-2/+2
https://gitlab.denx.de/u-boot/custodians/u-boot-snapdragon - Two fixes for the qcom-pmic button driver
2024-02-20Merge patch series "board/ti: k3 boards: Stop using findfdt"WIP/20Feb2024Tom Rini28-48/+205
Nishanth Menon <nm@ti.com> says: This is a wide cleanup to switch to setting fdtfile using env_set instead of scripted magic. 'fdtfile' is expected to be set by default. This allows the stdboot triggered efi loaders to find the correct OS device tree file even if regular boot process is interrupted by user intervention.
2024-02-20include: env: ti: Drop default_findfdtNishanth Menon1-12/+0
We shouldn't need finfdt anymore. Drop the env script. Reviewed-by: Jonathan Humphreys <j-humphreys@ti.com> Reviewed-by: Roger Quadros <rogerq@kernel.org> Signed-off-by: Nishanth Menon <nm@ti.com>
2024-02-20board: beagle: beagleplay: Set fdtfile from C code instead of findfdt scriptNishanth Menon3-2/+16
Stop using the findfdt script and switch to setting the fdtfile from C code. Reviewed-by: Jonathan Humphreys <j-humphreys@ti.com> Reviewed-by: Roger Quadros <rogerq@kernel.org> Signed-off-by: Nishanth Menon <nm@ti.com>
2024-02-20board: beagle: beagleboneai64: Set fdtfile from C code instead of findfdt scriptNishanth Menon3-2/+16
Stop using the findfdt script and switch to setting the fdtfile from C code. Reviewed-by: Jonathan Humphreys <j-humphreys@ti.com> Reviewed-by: Roger Quadros <rogerq@kernel.org> Signed-off-by: Nishanth Menon <nm@ti.com>
2024-02-20board: ti: j721s2: Set fdtfile from C code instead of findfdt scriptNishanth Menon2-8/+8
We now can provide a map and have the standard fdtfile variable set from code itself. This allows for bootstd to "just work". While at this, replace findfdt in environment with a warning as it is no longer needed. Reviewed-by: Jonathan Humphreys <j-humphreys@ti.com> Reviewed-by: Roger Quadros <rogerq@kernel.org> Signed-off-by: Nishanth Menon <nm@ti.com>
2024-02-20board: ti: j721e: Set fdtfile from C code instead of findfdt scriptNishanth Menon2-10/+8
We now can provide a map and have the standard fdtfile variable set from code itself. This allows for bootstd to "just work". While at this, replace findfdt in environment with a warning as it is no longer needed. Reviewed-by: Jonathan Humphreys <j-humphreys@ti.com> Reviewed-by: Roger Quadros <rogerq@kernel.org> Signed-off-by: Nishanth Menon <nm@ti.com>
2024-02-20board: ti: am65x: Set fdtfile from C code instead of findfdt scriptNishanth Menon2-3/+2
We now can provide a map and have the standard fdtfile variable set from code itself. This allows for bootstd to "just work". While at this, replace findfdt in environment with a warning as it is no longer needed. Reviewed-by: Jonathan Humphreys <j-humphreys@ti.com> Reviewed-by: Roger Quadros <rogerq@kernel.org> Signed-off-by: Nishanth Menon <nm@ti.com>
2024-02-20board: ti: am64x: Set fdtfile from C code instead of findfdt scriptNishanth Menon2-9/+8
We now can provide a map and have the standard fdtfile variable set from code itself. This allows for bootstd to "just work". While at this, replace findfdt in environment with a warning as it is no longer needed. Reviewed-by: Jonathan Humphreys <j-humphreys@ti.com> Reviewed-by: Roger Quadros <rogerq@kernel.org> Signed-off-by: Nishanth Menon <nm@ti.com>
2024-02-20board: ti: am62x: Set fdtfile from C code instead of findfdt scriptNishanth Menon3-1/+11
Stop using the findfdt script and switch to setting the fdtfile from C code. While at this, replace findfdt in environment with a warning as it is no longer needed Reviewed-by: Jonathan Humphreys <j-humphreys@ti.com> Reviewed-by: Roger Quadros <rogerq@kernel.org> Signed-off-by: Nishanth Menon <nm@ti.com>
2024-02-20board: ti: am62ax: Set fdtfile from C code instead of findfdt scriptNishanth Menon3-1/+11
Stop using the findfdt script and switch to setting the fdtfile from C code. While at this, replace findfdt in environment with a warning as it is no longer needed Reviewed-by: Jonathan Humphreys <j-humphreys@ti.com> Reviewed-by: Roger Quadros <rogerq@kernel.org> Signed-off-by: Nishanth Menon <nm@ti.com>
2024-02-20board: ti: common: Introduce a common fdt ops libraryNishanth Menon4-0/+119
Introduce a common fdt operations library for basic device tree operations that are common between various boards. The first library to introduce here is the capability to set up fdtfile as a standard variable as part of board identification rather than depend on scripted ifdeffery. Reviewed-by: Jonathan Humphreys <j-humphreys@ti.com> Reviewed-by: Roger Quadros <rogerq@kernel.org> Signed-off-by: Nishanth Menon <nm@ti.com>
2024-02-20board: ti: Add missing common/Kconfig referencesNishanth Menon3-0/+6
Add missing board/ti/common/Kconfig references for the platforms that missed it. The intent is for the common Kconfig to be usable across TI reference boards as required. Reported-by: Tom Rini <trini@konsulko.com> Signed-off-by: Nishanth Menon <nm@ti.com>
2024-02-20Merge https://gitlab.denx.de/u-boot/custodians/u-boot-usbTom Rini3-6/+8
2024-02-20Merge https://gitlab.denx.de/u-boot/custodians/u-boot-samsungTom Rini41-24/+5538
2024-02-19usb: ehci-mx6: Add i.MX93 supportMathieu Othacehe2-4/+4
i.MX93 uses the same USB IP as i.MX8MM. It can then reuse the ehci-mx6 driver. Reviewed-by: Marek Vasut <marex@denx.de> Signed-off-by: Mathieu Othacehe <othacehe@gnu.org> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2024-02-19common: usb-hub: Reset USB 3.0 hubs onlyShantur Rathore1-2/+4
Additional testing of the changes introduced in commit 33e06dcbe57a "common: usb-hub: Reset hub port before scanning") revealed that some USB 2.0 and 3.0 flash drives didn't work in U-Boot on some Allwinner SoCs that support USB 2.0 interfaces only. More precisely, some of the tested USB 2.0 and 3.0 flash drives failed to be detected and work on an OrangePi Zero 3, based on the Allwinner H616 SoC that supports USB 2.0 only, while the same USB flash drives worked just fine on a Pine64 H64, based on the Allwinner H6 SoC that supports both USB 2.0 and USB 3.0 interfaces. The USB ID of the above-mentioned USB 3.0 flash drive that failed to work is 1f75:0917 (Innostor Technology Corporation IS917 Mass storage), it is 32 GB in size and sold under the PNY brand. The mentioned USB 2.0 drive is some inexpensive no-name drive with an invalid USB ID. Resetting USB 3.0 hubs only, which this patch introduces to the USB hub resets, has been tested to work as expected, resolving the identified issues on the Allwinner H616, while not introducing any new issues on other tested Allwinner SoCs. Thus, let's fix it that way. According to the USB 3.0 specification, resetting a USB 3.0 port is required when an attached USB device transitions between different states, such as when it resumes from suspend. Though, the Linux kernel performs additional USB 3.0 port resets upon initial USB device attachment, as visible in commit 07194ab7be63 ("USB: Reset USB 3.0 devices on (re)discovery") in the kernel source, to ensure proper state of the USB 3.0 hub port and proper USB mode negotiation during the initial USB device attachment and enumeration. These additional types of USB port resets don't exist for USB 2.0 hubs, according the USB 2.0 specification. The resets seem to be added to the USB 3.0 specification as part of the port and device mode negotiation. The Linux kernel resets USB 3.0 (i.e. SuperSpeed) hubs only, as visible in commit 10d674a82e55 ("USB: When hot reset for USB3 fails, try warm reset.") in the kernel source. The check for SuperSpeed hubs is performed in a way that also applies to newer SuperSpeed Plus (USB 3.1 or 3.2) hubs as well, which hopefully makes it future proof. Fixes: 33e06dcbe57a ("common: usb-hub: Reset hub port before scanning") Link: https://lore.kernel.org/u-boot/20240207102327.35125-1-i@shantur.com/T/#u Link: https://lore.kernel.org/u-boot/20240201164604.13315fa6@donnerap.manchester.arm.com/T/#u Signed-off-by: Shantur Rathore <i@shantur.com> Helped-by: Dragan Simic <dsimic@manjaro.org> Tested-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Dragan Simic <dsimic@manjaro.org> Reviewed-by: Marek Vasut <marex@denx.de>