summaryrefslogtreecommitdiff
path: root/arch/arm
AgeCommit message (Collapse)Author
2024-10-16ARM: dts: stm32: Switch to using upstream DT on DH STM32 DHSOMMarek Vasut
Enable OF_UPSTREAM to use upstream DT and add st/ prefix to the DEFAULT_DEVICE_TREE. And thereby directly build DTB from dts/upstream/src/ including *-u-boot.dtsi from arch/$(ARCH)/dts/ directory. The previous setup used generic SoC prefix like stm32mp15xx-dhco* for generic DTs which could be used on any STM32MP15xx DHSOM variant. The new setup uses specific SoC prefix stm32mp157c-dhco* to match Linux DT names. Since the hardware present on STM32MP153 and STM32MP157 is not enabled in the board configuration and not supported by U-Boot except for the DSI host, using the existing Linux DTs poses no issue even on plain STM32MP151A based SoMs. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Patrick Delaunay <[email protected]>
2024-10-16ARM: dts: stm32: Duplicate cpu0-opp-table node into stm32mp15-u-boot.dtsiMarek Vasut
The cpu0-opp-table {} node does not exist in upstream Linux stm32mp151.dtsi file, in order to enable conversion to OF_UPSTREAM, duplicate the node from current U-Boot stm32mp151.dtsi into stm32mp15-u-boot.dtsi. This makes STM32 DTs buildable even with OF_UPSTREAM enabled. No functional change, since the current U-Boot stm32mp151.dtsi already contains the cpu0-opp-table {} node, stm32mp15-u-boot.dtsi is applied at the end, and does not bring in any new content. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Patrick Delaunay <[email protected]>
2024-10-15layerscape: use the lmb API's to add RAM memorySughosh Ganu
The EFI memory allocations are now being done through the LMB module, and hence the memory map is maintained by the LMB module. Use the lmb_arch_add_memory() API function to add the usable RAM memory to the LMB's memory map. Signed-off-by: Sughosh Ganu <[email protected]>
2024-10-15stm32mp: remove efi_add_known_memory() function definitionSughosh Ganu
The efi_add_known_memory() function for the stm32mp platforms is adding the EFI_CONVENTIONAL_MEMORY type. This memory is now being handled through the LMB module -- the lmb_add_memory() adds this memory to the memory map. Remove the definition of the now superfluous efi_add_known_memory() function. Signed-off-by: Sughosh Ganu <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-10-15ti: k3: remove efi_add_known_memory() function definitionSughosh Ganu
The efi_add_known_memory() function for the TI K3 platforms is adding the EFI_CONVENTIONAL_MEMORY type. This memory is now being handled through the LMB module -- the lmb_add_memory() adds this memory to the memory map. Remove the definition of the now superfluous efi_add_known_memory() function. Signed-off-by: Sughosh Ganu <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]> Reviewed-by: Simon Glass <[email protected]>
2024-10-14dts: Deduplicate dtbs targetMarek Vasut
The dtbs: target is almost identical in all architecture Makefiles. All architecture Makefiles include scripts/Makefile.dts . Deduplicate the dtbs: target into scripts/Makefile.dts . No functional change. Reviewed-by: Sumit Garg <[email protected]> Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Simon Glass <[email protected]> Tested-by: Caleb Connolly <[email protected]> #qcom, OF_UPSTREAM
2024-10-14Merge tag 'u-boot-amlogic-next-20241014' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-amlogic - Add Libre Computer boards into proper libre-computer board directory - Add new Boards: - Libre Computer aml-s905d3-cc - Libre Computer aml-a311d-cc - Add capsule update to libretech-ac and the new boards since they have an onboard SPI nor flash - Fix HDMI support after sync to v6.11 and regulator enable from Marek - Fix khadas-vim3 android config for android-mainline kernel - Disable meson64 boot targets when configs are not eavailable
2024-10-14Merge branch 'u-boot-nand-20241012' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-nand-flash This merge request add support for BCMBCA raw nand driver for bcm96846 board that switch using OF_UPSTREAM and allow use onfi ecc params when they are available in the atmel nand controller The patches pass the pipeline CI: https://source.denx.de/u-boot/custodians/u-boot-nand-flash/-/pipelines/22638
2024-10-14dts: meson-g12-common-u-boot: do not disable canvasNeil Armstrong
We were disabling canvas, which causes meson vpu probe failure, just stop and leave canvas alone. Fixes: ce9fa7bffc5 ("ARM: dts: meson-g12a: add U-Boot specific DT for graphics") Link: https://lore.kernel.org/r/20241008-u-boot-topic-g12-do-not-disable-canvas-v1-1-b89659370012@linaro.org Signed-off-by: Neil Armstrong <[email protected]>
2024-10-14ARM: meson: add support for Libre Computer aml-s905d3-ccNeil Armstrong
Add support for the Libre Computer aml-s905d3-cc "Solitude" board: https://libre.computer/products/aml-s905d3-cc/ The Solitude board has a Credit Card form factor, similar to the the previous "Le Potato" card, but with the Amlogic A311D SoC, MIPI DSI and CSI connectors. PoE header and a single USB2 Type-C connector replacing the microUSB one for power and USB 2.0. The board has an embedded SPI NOR flash, and EFI Capsule support is added. The GUID is dynamically generated for the board, to get it: => efidebug capsule esrt ======================================== ESRT: fw_resource_count=1 ESRT: fw_resource_count_max=1 ESRT: fw_resource_version=1 [entry 0]============================== ESRT: fw_class=4302C3CB-2502-5EFE-87E0-894A8A322893 ESRT: fw_type=unknown ESRT: fw_version=0 ESRT: lowest_supported_fw_version=0 ESRT: capsule_flags=0 ESRT: last_attempt_version=0 ESRT: last_attempt_status=success ======================================== On the host (with the aml_encrypt_g12a result binary): $ eficapsule --guid 4302C3CB-2502-5EFE-87E0-894A8A322893 -i 1 u-boot.bin u-boot.cap On the board (from USB disk containing u-boot.cap at root): => load usb 0:1 $kernel_addr_r u-boot.cap => efidebug capsule update $kernel_addr_r The binary will then be flashed on the SPI. Link: https://lore.kernel.org/r/20240920-u-boot-topic-libre-computer-solitude-alta-v1-2-8915b108840b@linaro.org Signed-off-by: Neil Armstrong <[email protected]>
2024-10-14ARM: meson: add support for Libre Computer aml-a311d-ccNeil Armstrong
Add support for the Libre Computer aml-a311d-cc "Alta" board: https://libre.computer/products/aml-a311d-cc/ The Alta board has a Credit Card form factor, similar to the the prvevious "Le Potato" card, but with the Amlogic A311D SoC, MIPI DSI and CSI connectors. PoE header and a single USB2 Type-C connector replacing the microUSB one for power and USB 2.0. The board has an embedded SPI NOR flash, and EFI Capsule support is added. The GUID is dynamically generated for the board, to get it: => efidebug capsule esrt ======================================== ESRT: fw_resource_count=1 ESRT: fw_resource_count_max=1 ESRT: fw_resource_version=1 [entry 0]============================== ESRT: fw_class=17E07D9D-4D91-53F4-8780-1D91F279C1A5 ESRT: fw_type=unknown ESRT: fw_version=0 ESRT: lowest_supported_fw_version=0 ESRT: capsule_flags=0 ESRT: last_attempt_version=0 ESRT: last_attempt_status=success ======================================== On the host (with the aml_encrypt_g12a result binary): $ eficapsule --guid 17E07D9D-4D91-53F4-8780-1D91F279C1A5 -i 1 u-boot.bin u-boot.cap On the board (from USB disk containing u-boot.cap at root): => load usb 0:1 $kernel_addr_r u-boot.cap => efidebug capsule update $kernel_addr_r The binary will then be flashed on the SPI. Link: https://lore.kernel.org/r/20240920-u-boot-topic-libre-computer-solitude-alta-v1-1-8915b108840b@linaro.org Signed-off-by: Neil Armstrong <[email protected]>
2024-10-13Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sunxiTom Rini
This switches all boards with the Allwinner H616/H618/H313/H700 SoCs over to use OF_UPSTREAM. We are doing it for this SoC family only since the DTs between the U-Boot and the kernel repo are exactly identical, whereas other families have one compatibility fix in U-Boot to allow booting older kernels. Other will follow if this plays out well. The biggest chunk otherwise is adding support for an Anbernic game console, using the H700 SoC. For that we need to enhance the DRAM support code, and pick two DT commits from the mainline kernel/DT rebasing repo, followed by the defconfig patch. On top of that two small fixes for the old Allwinner A80. Gitlab CI passed, and I booted that briefly on some boards, including an H616 and an H618 one (with LPDDR4).
2024-10-13Merge tag 'u-boot-imx-master-20241013' 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/22644 - Add fast authentication method for i.MX8M signing. - Migrate imx8mp-debix-model-a to OF_UPSTREAM. - Update MAINTAINERS file globs for i.MX6/i.MX8MP DHSOM. - Improve ELE driver. - Add i.MX8MP Dummy clk to fix regression.
2024-10-13Merge branch 'staging' of https://source.denx.de/u-boot/custodians/u-boot-tegraTom Rini
Assorted Tegra enhancements. Merged with the recent XPL_BUILD changes, resolve some whitespace issues and fix the name of the new apalis-tk1 env file by Tom. Signed-off-by: Tom Rini <[email protected]>
2024-10-13usb: host: tegra: get usb phy configuration from phy nodeSvyatoslav Ryhel
Obtain USB phy configuration from phy node if such exists and is enabled. If no, set default values. Signed-off-by: Svyatoslav Ryhel <[email protected]>
2024-10-13arm: tegra: add AP20 and AP20H SKUIon Agorria
Add previously undocumented SKU - AP20H found in LG Optimus 2X (P990). Correct existing T20_7 name as it's proper name is AP20. Signed-off-by: Ion Agorria <[email protected]> Signed-off-by: Svyatoslav Ryhel <[email protected]>
2024-10-13arm: tegra: fix typo in logging functionsIon Agorria
Change %02X to %02x since it always displayed 00 otherwise. Signed-off-by: Ion Agorria <[email protected]> Signed-off-by: Svyatoslav Ryhel <[email protected]>
2024-10-13ARM: tegra-u-boot: add recipe for multi-dtb imageSvyatoslav Ryhel
Buildman has difficulties with constructing multi-dtb images, so let's add a temporary custom recipe for it. Signed-off-by: Svyatoslav Ryhel <[email protected]>
2024-10-13ARM: tegra: board2: add common dtb reselect logicSvyatoslav Ryhel
Add common logic for dynamic dtb switch and DM reload if board features multi-dtb support. Signed-off-by: Svyatoslav Ryhel <[email protected]>
2024-10-13Tegra30: Add funcmux for UART over SD slotJonas Schwöbel
Tegra 3 has UART-E exposable via SD card slot which may be handy for debugging. This change only adds funcmux part, to use UART-E on the device you additionally would need: - set stdout-path to serial@70006400 (uarte) - configure sdmmc1_dat3_py4 and sdmmc1_dat2_py5 pinmux for uarte - disable or remove sdhci@7800000 node - enable CONFIG_TEGRA_ENABLE_UARTE in defconfig - set CFG_SYS_NS16550_COM to NV_PA_APB_UARTE_BASE in device header Signed-off-by: Jonas Schwöbel <[email protected]> Signed-off-by: Svyatoslav Ryhel <[email protected]>
2024-10-13arm64: imx: imx8mp-debix-model-a: Migrate to OF_UPSTREAMGilles Talis
Device tree for this board can be deleted. Device tree location now points to the freescale/ directory. Use absolute path to PMIC node entry and its regulators as device tree in kernel does not provide corresponding labels Signed-off-by: Gilles Talis <[email protected]> Reviewed-by: Peng Fan <[email protected]>
2024-10-13imx8: Correct the SCU API return value checkPeng Fan
The SCU API alreay has been converted to return Linux error code, using SCU error code is not correct here, although SC_ERR_NONE is value as 0. Signed-off-by: Peng Fan <[email protected]>
2024-10-13misc: ele_api: Add read/write shadow fuse APIsYe Li
Add ELE APIs to support read and write shadow fuses Reviewed-by: Peng Fan <[email protected]> Signed-off-by: Ye Li <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2024-10-12board: bcm96846: Switch to using OF_UPSTREAMLinus Walleij
This board clearly develops first in Linux which had more hardware listed, so let's start to use OF_UPSTREAM. This makes the NAND driver work. Suggested-by: Neil Armstrong <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2024-10-12drivers: nand: bcmbca: Enable on BCM6846Linus Walleij
The BCM6846 has the BRCMBCA NAND controller so enable it. Reviewed-by: Michael Trimarchi <[email protected]> Signed-off-by: Linus Walleij <[email protected]>
2024-10-11Merge patch series "Tidy up use of 'SPL' and CONFIG_SPL_BUILD"Tom Rini
Simon Glass <[email protected]> says: When the SPL build-phase was first created it was designed to solve a particular problem (the need to init SDRAM so that U-Boot proper could be loaded). It has since expanded to become an important part of U-Boot, with three phases now present: TPL, VPL and SPL Due to this history, the term 'SPL' is used to mean both a particular phase (the one before U-Boot proper) and all the non-proper phases. This has become confusing. For a similar reason CONFIG_SPL_BUILD is set to 'y' for all 'SPL' phases, not just SPL. So code which can only be compiled for actual SPL, for example, must use something like this: #if defined(CONFIG_SPL_BUILD) && !defined(CONFIG_TPL_BUILD) In Makefiles we have similar issues. SPL_ has been used as a variable which expands to either SPL_ or nothing, to chose between options like CONFIG_BLK and CONFIG_SPL_BLK. When TPL appeared, a new SPL_TPL variable was created which expanded to 'SPL_', 'TPL_' or nothing. Later it was updated to support 'VPL_' as well. This series starts a change in terminology and usage to resolve the above issues: - The word 'xPL' is used instead of 'SPL' to mean a non-proper build - A new CONFIG_XPL_BUILD define indicates that the current build is an 'xPL' build - The existing CONFIG_SPL_BUILD is changed to mean SPL; it is not now defined for TPL and VPL phases - The existing SPL_ Makefile variable is renamed to SPL_ - The existing SPL_TPL Makefile variable is renamed to PHASE_ It should be noted that xpl_phase() can generally be used instead of the above CONFIGs without a code-space or run-time penalty. This series does not attempt to convert all of U-Boot to use this new terminology but it makes a start. In particular, renaming spl.h and common/spl seems like a bridge too far at this point. The series is fully bisectable. It has also been checked to ensure there are no code-size changes on any commit.
2024-10-11global: Rename SPL_TPL_ to PHASE_Simon Glass
Use PHASE_ as the symbol to select a particular XPL build. This means that SPL_TPL_ is no-longer set. Update the comment in bootstage to refer to this symbol, instead of SPL_ Signed-off-by: Simon Glass <[email protected]>
2024-10-11global: Rename SPL_ to XPL_Simon Glass
Use XPL_ as the symbol to indicate an SPL build. This means that SPL_ is no-longer set. Signed-off-by: Simon Glass <[email protected]>
2024-10-11arch: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILDSimon Glass
Use the new symbol to refer to any 'SPL' build, including TPL and VPL Signed-off-by: Simon Glass <[email protected]>
2024-10-11log: global: Rename warn_non_spl()Simon Glass
This should now refer to xPL rather than SPL, so update it throughout the tree. Signed-off-by: Simon Glass <[email protected]>
2024-10-11xpl: Rename u_boot_first_phase to xpl_is_first_phase()Simon Glass
This is a better name for this function, so update it. Tidy up the function comment to mention VPL. Signed-off-by: Simon Glass <[email protected]>
2024-10-11tegra: Drop dependency on SPL_BUILDSimon Glass
SPL_BUILD is not a Kconfig symbol so perhaps the intent here is to use SPL instead. But that changes the output size. So drop the dependency on !SPL_BUILD since it does nothing. Signed-off-by: Simon Glass <[email protected]>
2024-10-09efi: arm: x86: riscv: Drop crt0/relocal extra- rulesSimon Glass
The link rule (for $(obj)/%_efi.so) in scripts/Makefile.lib handles pulling in efi_crt0.o and efi_reloc.o so drop the 'extra' rules. Signed-off-by: Simon Glass <[email protected]> Suggested-by: Heinrich Schuchardt <[email protected]>
2024-10-09efi_loader: Rename and move CMD_BOOTEFI_HELLO_COMPILESimon Glass
This is not actually a command so the name is confusing. Use BOOTEFI_HELLO_COMPILE instead. Put it in the efi_loader directory with the other such config options. The link rule (for $(obj)/%_efi.so) in scripts/Makefile.lib handles pulling in efi_crt0.o and efi_reloc.o so drop the 'extra' rules. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>
2024-10-10sunxi: H616: dram: Update mbus prioritiesJernej Skrabec
CSI1 channel (22) is missing and IOMMU (25) has priority flag set in vendor bootloader. Fix that. While at it, replace bandwidth flag with priority since original flag has always value "true". Signed-off-by: Jernej Skrabec <[email protected]> Tested-by: Chris Morgan <[email protected]> Reviewed-by: Andre Przywara <[email protected]>
2024-10-10sunxi: H616: DRAM: Adjust size scan procedureJernej Skrabec
It's safer to start scanning for columns first and then rows. Columns reside on LSB address pins, which means that second configuration will already have all needed row pins active. This is also preparation for introducing DDR4 support, which need scan for banks and bank groups too. Signed-off-by: Jernej Skrabec <[email protected]> Tested-by: Chris Morgan <[email protected]>
2024-10-10sunxi: H616: DRAM: Adjust configuration procedureJernej Skrabec
When comparing configuration procedure to vendor driver, I noticed that one command was out of order and that some delays were missing. Fix that. Signed-off-by: Jernej Skrabec <[email protected]> Tested-by: Chris Morgan <[email protected]>
2024-10-10sunxi: H616: DRAM: Add alternative pin mappingChris Morgan
It seems that different dies need different PHY pin mapping. Select alternatives at compile time. Signed-off-by: Jernej Skrabec <[email protected]> [adapted to switch from runtime to compile time config] Signed-off-by: Chris Morgan <[email protected]>
2024-10-10sunxi: H616: dram: LPDDR4: adjust settingsJernej Skrabec
Adjust H616 LPDDR4 DRAM settings to be in line with vendor driver. Signed-off-by: Jernej Skrabec <[email protected]> Tested-by: Chris Morgan <[email protected]>
2024-10-10sunxi: H616: switch to OF_UPSTREAMAndre Przywara
With the recent "old-style sunxi" sync and the penultimate OF_UPSTREAM DT update, both directories were based on the same v6.10 kernel tree. And while there is one subtle difference in many Allwinner SoC's DT files, the H616 ones turn out to be identical. Remove the old copies of the H616 related .dts and .dtsi files, and switch the whole H616 SoC over to use OF_UPSTREAM. This immediately benefits from the recent upstream DT update, to kernel v6.11. Signed-off-by: Andre Przywara <[email protected]>
2024-10-08arch: arm: dts: k3-j7200-r5-evm: Enable AVS featureUdit Kumar
During DT sync with kernel 6.6, AVS feature was removed by mistake. So adding back AVS feature. Fixes: df73e791ce09("arm: dts: j7200: dts sync with Linux 6.6-rc1") Signed-off-by: Udit Kumar <[email protected]> Reviewed-by: Aniket Limaye <[email protected]>
2024-10-04ARM: imx: Drop bogus newlineMarek Vasut
This shows up in 'help' output and introduces bogus gap: " mfgprot - Manufacturing Protection mii - MII utility commands " Drop the newline to fix this. Signed-off-by: Marek Vasut <[email protected]> Acked-by: Peng Fan <[email protected]>
2024-10-04arch: arm: dts: imx8mm-cl-iot-gate.dts: add no-mmc-hs400 to mmc2Ying-Chun Liu (PaulLiu)
The eMMC device on imx8mm-cl-iot-gate seems not support hs400. When booting 6.1.0 kernel we got the following error. mmc2: mmc_select_hs400es failed, error -110 mmc2: error -110 whilst initialising MMC card Add no-mmc-hs400 to mmc2 node solves the problem. Signed-off-by: Ying-Chun Liu (PaulLiu) <[email protected]> Cc: Tom Rini <[email protected]> Cc: Stefano Babic <[email protected]> Cc: Fabio Estevam <[email protected]> Cc: NXP i.MX U-Boot Team <[email protected]>
2024-10-04arm: imx: imx8m: soc: Fix VPU fdt disable fixupVitor Soares
With the introduction of downstream Linux 6.6, the iMX8MP VPU block control node in DTS was renamed "blk-ctl@38330000" and will not match the ones found in `node_path_imx8mp` resulting in the node not being disabled on the VPU-less variants. Add an extra node_path entry for imx8mp VPU block control that match with downstream Linux. Signed-off-by: Vitor Soares <[email protected]> Reviewed-by: Peng Fan <[email protected]>
2024-10-04arm64: dts: imx8mp: Add DH i.MX8MP DHCOM SoM on DRC02 carrier boardMarek Vasut
Add support for DH electronics i.MX8MP DHCOM SoM on DRC02 carrier board. This system is populated with two ethernet ports, two CANs, RS485 and RS232, USB, capacitive buttons and an OLED display. Matching Linux kernel patch has been posted: https://lore.kernel.org/imx/[email protected]/ Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2024-10-04arm64: dts: imx8mp: Add support for DH electronics i.MX8M Plus DHCOM PicoITXMarek Vasut
Add support for DH electronics i.MX8M Plus DHCOM SoM on PicoITX carrier board. This system is populated with serial console, EQoS ethernet, eMMC, SD, SPI NOR, LEDs and USB 3.0 host used in USB 2.0 mode on PicoITX. Matching Linux kernel patch has been posted: https://lore.kernel.org/imx/[email protected]/ Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Fabio Estevam <[email protected]>
2024-10-03Merge patch series "vbe: Series part D"Tom Rini
Simon Glass <[email protected]> says: This includes various patches towards implementing the VBE abrec bootmeth in U-Boot.
2024-10-03arm: Fix up a stale comment in sections.cSimon Glass
There are currently four symbols here, so drop the word 'two'. Signed-off-by: Simon Glass <[email protected]> Acked-by: Ilias Apalodimas <[email protected]>
2024-10-03arm: cache: Drop a stale commentSimon Glass
This header includes more than just dummy functions, so drop this comment. Signed-off-by: Simon Glass <[email protected]>
2024-10-03armv8: Support not having separate BSSSimon Glass
Separate BSS is current mandatory on armv8 but this is not useful for early boot phases. Add support for the combined BSS. Use an #ifdef to avoid using CONFIG_SPL_BSS_START_ADDR which is not valid in this case. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Ilias Apalodimas <[email protected]>