- Jun 05, 2024
-
-
TODO: add build documentation to board doc Add android boot flow support for AM62X board based on misc partition to detect reboot reason and boot.img version 4 from android build system. Also add device tree overlay support for Android to enable CSI camera, LVDS screen, HDMI Audio output. This assumes that the `adtb_idx` env variable is a space-separated list of indices. Example: Signed-off-by:
Guillaume La Roque <glaroque@baylibre.com> Co-developed-by:
Mattijs Korpershoek <mkorpershoek@baylibre.com> Signed-off-by:
Mattijs Korpershoek <mkorpershoek@baylibre.com>
-
Mattijs Korpershoek authored
Add a unit test for testing the Android bootmethod. This requires another mmc image (mmc7) to contain the following partitions: - misc: contains the Bootloader Control Block (BCB) - boot_a: contains a fake generic kernel image - vendor_boot_a: contains a fake vendor_boot image Also add BOOTMETH_ANDROID as a dependency on sandbox so that we can test this with: $ ./test/py/test.py --bd sandbox --build -k test_ut # to build the mmc7.img $ ./test/py/test.py --bd sandbox --build -k bootflow_android Signed-off-by:
Mattijs Korpershoek <mkorpershoek@baylibre.com>
-
Mattijs Korpershoek authored
Android boot flow is a bit different than a regular Linux distro. Android relies on multiple partitions in order to boot. A typical boot flow would be: 1. Parse the Bootloader Control Block (BCB, misc partition) 2. If BCB requested bootonce-bootloader, start fastboot and wait. 3. If BCB requested recovery or normal android, run the following: 3.a. Get slot (A/B) from BCB 3.b. Run AVB (Android Verified Boot) on boot partitions 3.c. Load boot and vendor_boot partitions 3.d. Load device-tree, ramdisk and boot The AOSP documentation has more details at [1], [2], [3] This has been implemented via complex boot scripts such as [4]. However, these boot script are neither very maintainable nor generic. Moreover, DISTRO_DEFAULTS is being deprecated [5]. Add a generic Android bootflow implementation for bootstd. For this initial version, only boot image v4 is supported. [1] https://source.android.com/docs/core/architecture/bootloader [2] https://source.android.com/docs/core/architecture/partitions [3] https://source.android.com/docs/core/architecture/partitions/generic-boot [4] https://source.denx.de/u-boot/u-boot/-/blob/master/include/configs/meson64_android.h [5] https://lore.kernel.org/r/all/20230914165615.1058529-17-sjg@chromium.org/ Signed-off-by:
Mattijs Korpershoek <mkorpershoek@baylibre.com>
-
Mattijs Korpershoek authored
The only way to configure the load addresses for both bootimg and vendor_bootimg is by using the "abootimg" command. If we want to use the C API, there is no equivalent. Add set_abootimg_addr() and set_avendor_bootimg_addr() so that we can specify the load address from C. This can be useful for implementing an Android bootmethod. Signed-off-by:
Mattijs Korpershoek <mkorpershoek@baylibre.com>
-
Mattijs Korpershoek authored
Some bootflows might be able to only boot from MMC devices. Add a helper function these bootflows can use. Signed-off-by:
Mattijs Korpershoek <mkorpershoek@baylibre.com>
-
Mattijs Korpershoek authored
When reading a boot image header, we may need to retrieve the header version. Add a helper function for it. Signed-off-by:
Mattijs Korpershoek <mkorpershoek@baylibre.com>
-
Mattijs Korpershoek authored
When calling android_image_get_dtb_by_index() using boot image v3+, we should also pass the vendor_boot ramdisk address. Use get_avendor_bootimg_addr() to do so. Note: on boot image v2, this is harmless since get_avendor_bootimg_addr() returns -1. Signed-off-by:
Mattijs Korpershoek <mkorpershoek@baylibre.com>
-
Mattijs Korpershoek authored
Android boot flow is a bit different than a regular Linux distro. Android relies on multiple partitions in order to boot. A typical boot flow would be: 1. Parse the Bootloader Control Block (BCB, misc partition) 2. If BCB requested bootonce-bootloader, start fastboot and wait. 3. If BCB requested recovery or normal android, run the following: a. Get slot (A/B) from BCB b. Run AVB (Android Verified Boot) on boot partitions c. Load boot and vendor_boot partitions d. Load device-tree, ramdisk and boot The AOSP documentation has more details at [1], [2], [3] This has been implemented via complex boot scripts such as [4]. However, these boot script are neither very maintainable nor generic. Moreover, DISTRO_DEFAULTS is being deprecated [5]. Add a generic Android bootflow implementation for bootstd. For this initial version, only boot image v4 is supported. This has been tested on sandbox using: $ ./test/py/test.py --bd sandbox --build -k test_ut This has also been tested on the Beagle Play board using TI's Android SDK [6]. [1] https://source.android.com/docs/core/architecture/bootloader [2] https://source.android.com/docs/core/architecture/partitions [3] https://source.android.com/docs/core/architecture/partitions/generic-boot [4] https://source.denx.de/u-boot/u-boot/-/blob/master/include/configs/meson64_android.h [5] https://lore.kernel.org/r/all/20230914165615.1058529-17-sjg@chromium.org/ [6] https://software-dl.ti.com/processor-sdk-android/esd/AM62X/09_02_00/docs/android/Overview.html To: Simon Glass <sjg@chromium.org> Cc: Julien Masson <jmasson@baylibre.com> Cc: Guillaume La Roque <glaroque@baylibre.com> Cc: Dmitrii Merkurev <dimorinny@google.com> Cc: Roman Stratiienko <r.stratiienko@gmail.com> Cc: Igor Opaniuk <igor.opaniuk@gmail.com> Cc: u-boot@lists.denx.de Signed-off-by:
Mattijs Korpershoek <mkorpershoek@baylibre.com> --- b4-submit-tracking --- # This section is used internally by b4 prep for tracking purposes. { "series": { "revision": 1, "change-id": "20240605-bootmeth-android-bfc8596e9367", "prefixes": [] } }
-
- Jun 04, 2024
-
-
Tom Rini authored
Prepare v2024.070-rc4
-
Tom Rini authored
Signed-off-by:
Tom Rini <trini@konsulko.com>
-
- Jun 03, 2024
-
-
Tom Rini authored
Merge tag 'u-boot-imx-next-20240603' of https://gitlab.denx.de/u-boot/custodians/u-boot-imx into next CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/20956 - Support different RAM sizes on imx8m phycoce boards. - Support new toradex variants. - Support Samsung 4GB DDR and Realtek RTL8211E PHY on imx8mm-cl-iot-gate. - Convert imx8mm-phycore and imx8mp-phycore boards to use OF_UPSTREAM.
-
Fabio Estevam authored
Newer imx8mm-cl-iot-gate versions are populated with a Realtek RTL8211E PHY instead of the Atheros AR8033. Adapted Compulab's patch from: https://github.com/compulab-yokneam/meta-bsp-imx8mm/blob/iot-gate-imx8_5.10.72/recipes-bsp/u-boot/compulab/imx8mm/0125-imx8mm-net-enable-phy-Realtek-RTL8211E.patch to support both PHYs in U-Boot. Signed-off-by:
Fabio Estevam <festevam@denx.de>
-
Fabio Estevam authored
Newer versions of the imx8mm-cl-iot-gate boards may come populated with a Samsung 4GB DDR model. Add support for it. Signed-off-by:
Fabio Estevam <festevam@denx.de>
-
Benjamin Hahn authored
make it possible to set the RAM timing frequency statically independent from the RAM size. Fixed RAM timing frequency can be used while the RAM size is still determined by the EEPROM image. Signed-off-by:
Benjamin Hahn <B.Hahn@phytec.de> Signed-off-by:
Teresa Remmet <t.remmet@phytec.de>
-
Teresa Remmet authored
We might not be able to always rely on the EEPROM introspection data. So add a config option alternative which configures the RAM size to a fix value. We still try to read the EEPROM introspection data at this point. So we can print the SoM information if available. Signed-off-by:
Teresa Remmet <t.remmet@phytec.de>
-
Teresa Remmet authored
Add support for different RAM sizes and speed grades on the phyCORE-i.MX8MP. Add support for 1GB 1.5GHz, 1GB 2GHz, 4GB 1.5GHz, 4GB 2GHz and 8GB 2GHz RAM. The RAM size and speed grade is detected by the information stored in the EEPROM on the SoM. Co-developed-by:
Benjamin Hahn <B.Hahn@phytec.de> Signed-off-by:
Benjamin Hahn <B.Hahn@phytec.de> Co-developed-by:
Yannic Moog <y.moog@phytec.de> Signed-off-by:
Yannic Moog <y.moog@phytec.de> Co-developed-by:
Yashwanth Varakala <y.varakala@phytec.de> Signed-off-by:
Yashwanth Varakala <y.varakala@phytec.de> Signed-off-by:
Teresa Remmet <t.remmet@phytec.de>
-
Teresa Remmet authored
Use tabs instead of spaces. Signed-off-by:
Teresa Remmet <t.remmet@phytec.de>
-
Yannic Moog authored
The PHYCORE_IMX8MP is used by the phyBOARD-Pollux. Migrate board to OF_UPSTREAM. Linux kernel device tree for the board can be used as is, corresponding U-Boot device tree files are removed. U-Boot tweaks are kept unchanged. Signed-off-by:
Yannic Moog <y.moog@phytec.de> Reviewed-by:
Fabio Estevam <festevam@gmail.com> Acked-by:
Teresa Remmet <t.remmet@phytec.de>
-
Yannic Moog authored
The PHYCORE_IMX8MM is used by the phyBOARD-Polis and the phyGATE-Tauri-L. Migrate both boards to OF_UPSTREAM. Linux kernel device trees for both boards can be used as is, corresponding U-Boot device tree files are removed. U-Boot tweaks are kept unchanged. Signed-off-by:
Yannic Moog <y.moog@phytec.de> Reviewed-by:
Fabio Estevam <festevam@gmail.com> Acked-by:
Teresa Remmet <t.remmet@phytec.de>
-
Emanuele Ghidoli authored
Add new PID4 0090 Verdin iMX8M Mini Quad 4GB WB ET to support the new hardware variant. Signed-off-by:
Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
-
Emanuele Ghidoli authored
Add new PID4 0089 Verdin iMX95 Hexa 16GB WB IT to config block handling. Signed-off-by:
Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
-
Emanuele Ghidoli authored
Add new PID4 0088 Aquila AM69 Octa 32GB WB IT to config block handling. Signed-off-by:
Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
-
Emanuele Ghidoli authored
Add support for SKUs with higher memory sizes. Actual memory size is auto-detected. Signed-off-by:
Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
-
Emanuele Ghidoli authored
Add support for MT53E512M32D1ZW-046 IT:C memory. This 4 GB memory has 17 row bits instead of 16 and requires 380 ns of tRFC (tRFCab) instead of 280 ns due to increased channel density to 16 Gb. Both modifications are retro-compatible with previous memories. Signed-off-by:
Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
-
- Jun 02, 2024
-
-
Marek Vasut authored
Remove R8A779H0 V4M DTs which are now replaced by OF_UPSTREAM counterparts. No functional change expected. This patch finalizes OF_UPSTREAM conversion of R8A779H0 V4M which DTs landed in Linux 6.9 . Signed-off-by:
Marek Vasut <marek.vasut+renesas@mailbox.org> Acked-by:
Sumit Garg <sumit.garg@linaro.org>
-
Marek Vasut authored
Enable OF_UPSTREAM to use upstream DT and add renesas/ prefix to the DEFAULT_DEVICE_TREE. And thereby directly build DTB from dts/upstream/src/ including *-u-boot.dtsi files from arch/$(ARCH)/dts/ directory. This patch finalizes OF_UPSTREAM conversion of R8A779H0 V4M which DTs landed in Linux 6.9 . Signed-off-by:
Marek Vasut <marek.vasut+renesas@mailbox.org> Acked-by:
Sumit Garg <sumit.garg@linaro.org>
-
Adam Ford authored
The ENV size and offset were changed to different values in Beacon's downstream release. Change them to the same values as the downstream for consistent behavior. Signed-off-by:
Adam Ford <aford173@gmail.com> Reviewed-by:
Marek Vasut <marek.vasut+renesas@mailbox.org>
-
Adam Ford authored
Since any changes to the RZ/G2 family go through Marek's tree, update the MAINTAINER file to automatically show his name when running get_maintainer.pl. Without this, he is not copied. Signed-off-by:
Adam Ford <aford173@gmail.com> Reviewed-by:
Marek Vasut <marek.vasut+renesas@mailbox.org>
-
- Jun 01, 2024
-
-
Marek Vasut authored
Reserve 4 kiB of space in 64bit R-Car DTs when those DTs are compiled to permit patching in OpTee-OS /firmware node, /reserved-memory node, possibly also additional /memory@ nodes and RPC node by TFA. This duplicates behavior in arch/arm/dts/Makefile with OF_UPSTREAM. Signed-off-by:
Marek Vasut <marek.vasut+renesas@mailbox.org> Reviewed-by:
Sumit Garg <sumit.garg@linaro.org>
-
Marek Vasut authored
Remove leftover DTSI files after OF_UPSTREAM conversion. Those are no longer used and no longer necessary, remove them. No functional change. Signed-off-by:
Marek Vasut <marek.vasut+renesas@mailbox.org> Acked-by:
Adam Ford <aford173@gmail.com>
-
- May 30, 2024
-
-
https://source.denx.de/u-boot/custodians/u-boot-riscvTom Rini authored
- board: fix support for icicle - board: support Star64 board - andes: minor fixes - riscv: deprecate cache enablement in start.S
-
Tom Rini authored
Javier Martinez Canillas <javier@dowhile0.org> says: Hello, I noticed that the IGEPv2 board did not boot anymore with mainline U-Boot. This was caused by a driver change to allocate its platform data before relocation and U-Boot not having enough pre-relocation heap size for this. This series fixes this issue and also makes the board support more modern, by enabling DM for SPL and migrating the IGEP boards to use upstream DTBs.
-
Javier Martinez Canillas authored
Enable OF_UPSTREAM to use upstream DT and add a ti/omap/ prefix to the DEFAULT_DEVICE_TREE config option. That way, a DTS from the upstream dts/upstream/src/ directory is used instead of the arch/$(ARCH)/dts/ directory. These in turn are removed. Signed-off-by:
Javier Martinez Canillas <javierm@redhat.com> Acked-by:
Sumit Garg <sumit.garg@linaro.org> Reviewed-by:
Enric Balletbo i Serra <eballetbo@gmail.com>
-
Javier Martinez Canillas authored
This change is heavily based on commit e0cc7df9 ("omap3_beagle: Update for DM SPL support"), that did the same update for the OMAP3 Beagle board. Signed-off-by:
Javier Martinez Canillas <javierm@redhat.com> Reviewed-by:
Enric Balletbo i Serra <eballetbo@gmail.com>
-
Javier Martinez Canillas authored
There are no SPI peripherals in neither the IGEPv2 board nor the IGEP COM Module, so there's no reason to have this enabled in the boards defconfig. Signed-off-by:
Javier Martinez Canillas <javierm@redhat.com> Reviewed-by:
Enric Balletbo i Serra <eballetbo@gmail.com>
-
Javier Martinez Canillas authored
The IGEPv2 board boot started to fail since the commit afd4f15a ("spi: omap3_spi: Read platform data in ofdata_to_platdata()"). Because this made the OMAP3 SPI controller driver to allocate its platform data before doing a relocation, but the igep0x00 config sets this pool size to just 1 KiB. Increase the pre-relocation malloc heap size to 16 KiB, as is set by other OMAP3 boards. This not only restores booting but also makes it consistent. Leave the SPL pool size to the previous 1 KiB size since 16 KiB may not be a possible size in that constrained environment and is also the value that is set by other OMAP3 boards. Signed-off-by:
Javier Martinez Canillas <javierm@redhat.com> Reviewed-by:
Enric Balletbo i Serra <eballetbo@gmail.com>
-
Leo Yu-Chi Liang authored
Use CSR_UCCTLCOMMAND instead of CSR_MCCTLCOMMAND to do cache flush operation in M-mode and S-mode. Signed-off-by:
Leo Yu-Chi Liang <ycliang@andestech.com>
-