18592 Commits

Author SHA1 Message Date
Tom Rini
dd8c4a19a4 arm: at91: Remove <common.h> and add needed includes
Remove <common.h> from all mach-at91 files and when needed add missing
include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:34 -06:00
Tom Rini
e9ccffdada arm: bcm: Remove <common.h> and add needed includes
Remove <common.h> from all mach-bcmbca, mach-bcm283x and bcm* CPU
directory files and when needed add missing include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:34 -06:00
Tom Rini
af2fe3ab2c arm: davinci: Remove <common.h> and add needed includes
Remove <common.h> from all mach-davinci files and when needed add
missing include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:34 -06:00
Tom Rini
0d51275c47 arm: exynos: Remove <common.h> and add needed includes
Remove <common.h> from all mach-exynos files and when needed add missing
include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:34 -06:00
Tom Rini
e260f2b717 arm: highbank: Remove <common.h> and add needed includes
Remove <common.h> from all mach-highbank files and when needed add
missing include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:34 -06:00
Tom Rini
fbe0fae1e8 arm: histb: Remove <common.h> and add needed includes
Remove <common.h> from all mach-histb files and when needed add missing
include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:34 -06:00
Tom Rini
371d0b55f8 arm: imx: Remove <common.h> and add needed includes
Remove <common.h> from all mach-imx, CPU specific sub-directories and
include/asm/arch-mx* files and when needed add missing include files
directly.

Acked-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:34 -06:00
Tom Rini
958ed62575 arm: kirkwood: Remove <common.h> and add needed includes
Remove <common.h> from all mach-kirkwood files and when needed add
missing include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:34 -06:00
Tom Rini
ff353dc089 arm: lpc32xx: Remove <common.h> and add needed includes
Remove <common.h> from all mach-lpc32xx files and when needed add
missing include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:34 -06:00
Tom Rini
2dd3278b3e arm: mediatek: Remove <common.h> and add needed includes
Remove <common.h> from all mach-mediatek files and when needed add
missing include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:34 -06:00
Tom Rini
f3d0f17ea6 arm: meson: Remove <common.h> and add needed includes
Remove <common.h> from all mach-meson files and when needed add missing
include files directly.

Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:34 -06:00
Tom Rini
0e34e80fbf arm: mvebu: Remove <common.h> and add needed includes
Remove <common.h> from all mach-mvebu files and when needed add missing
include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:33 -06:00
Tom Rini
df8caa54a5 arm: nexell: Remove <common.h> and add needed includes
Remove <common.h> from all mach-nexell files and when needed add missing
include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:33 -06:00
Tom Rini
d9daff1c38 arm: npcm: Remove <common.h> and add needed includes
Remove <common.h> from all mach-npcm files and when needed add missing
include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:33 -06:00
Tom Rini
a323695564 arm: octeontx: Remove <common.h> and add needed includes
Remove <common.h> from all mach-octeontx files and when needed add
missing include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:33 -06:00
Tom Rini
36e62b1615 arm: octeontx2: Remove <common.h> and add needed includes
Remove <common.h> from all mach-octeontx2 files and when needed add
missing include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:33 -06:00
Tom Rini
ba0b54babf arm: omap2: Remove <common.h> and add needed includes
Remove <common.h> from all mach-omap2 files and when needed add
missing include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:33 -06:00
Tom Rini
13507890c6 arm: orion5x: Remove <common.h> and add needed includes
Remove <common.h> from all mach-orion5x files and when needed add
missing include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:33 -06:00
Tom Rini
1f15c7f42a arm: owl: Remove <common.h> and add needed includes
Remove <common.h> from all mach-owl files and when needed add missing
include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:33 -06:00
Tom Rini
c501db7566 arm: rockchip: Remove <common.h> and add needed includes
Remove <common.h> from all mach-rockchip and include/asm/arch-rockchip
files and when needed add missing include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:33 -06:00
Tom Rini
4b2c15ab57 arm: s5pc1xx: Remove <common.h> and add needed includes
Remove <common.h> from all mach-s5pc1xx and cpu/armv7/s5p-common files
and when needed add missing include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:33 -06:00
Tom Rini
2b97f15065 arm: socfpga: Remove <common.h> and add needed includes
Remove <common.h> from all mach-socfpga files and when needed add missing
include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:33 -06:00
Tom Rini
debd98265d arm: sunxi: Remove <common.h> and add needed includes
Remove <common.h> from all mach-sunxi and board/sunxi files and when
needed add missing include files directly.

Reviewed-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:33 -06:00
Tom Rini
e8df6eeb8d arm: stm32/stm32mp: Remove <common.h> and add needed includes
Remove <common.h> from all mach-stm32 and mach-stm32mp files and when
needed add missing include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:33 -06:00
Tom Rini
d6bf10009b arm: tegra: Remove <common.h> and add needed includes
Remove <common.h> from all mach-tegra and include/asm/arch-tegra files
and when needed add missing include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:33 -06:00
Tom Rini
97d4896b53 arm: u8500: Remove <common.h> and add needed includes
Remove <common.h> from all mach-u8500 files and when needed add missing
include files directly.

Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:33 -06:00
Tom Rini
74bb55bc74 arm: xilinx: Remove <common.h> and add needed includes
Remove <common.h> from all mach-versal-net, mach-versal, mach-zynq and
mach-zynqmp files and when needed add missing include files directly.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:33 -06:00
Tom Rini
9543f05d8e arm: mach-versatile: Remove dead code
This platform is no longer supported in tree, remove.

Signed-off-by: Tom Rini <trini@konsulko.com>
2024-05-06 15:06:33 -06:00
Tom Rini
6c88113229 Merge patch series "*** Migrate some PHYTEC boards to OF_UPSTREAM ***"
Wadim Egorov <w.egorov@phytec.de> says:

Migrate the boards I maintain to OF_UPSTREAM.
2024-04-29 10:55:50 -06:00
Wadim Egorov
a78224c130 phycore-rk3288: Migrate to OF_UPSTREAM
The phycore-rk3288 can be migrated to OF_UPSTREAM.
Drop redundant device tree files, update MAINTAINERS and
defconfig's DEFAULT_DEVICE_TREE for rockchip vendor prefix accordingly.
Move device tree nodes required for u-boot to rk3288-phycore-rdk-u-boot.dtsi
such as chosen, i2c_eeprom_id and it's alias.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
2024-04-29 10:55:45 -06:00
Wadim Egorov
675575880f phycore-am64x: Migrate to OF_UPSTREAM
The phycore-am64x can be migrated to OF_UPSTREAM.
Drop redundant device tree files, update MAINTAINERS and
defconfig's DEFAULT_DEVICE_TREE for ti vendor prefix accordingly.
While at it, drop the redundant definitions of AM642_PHYBOARD_ELECTRA_DTB
& SPL_AM642_PHYBOARD_ELECTRA_DTB from the binman dtsi file.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
2024-04-29 10:55:45 -06:00
Wadim Egorov
fa29f4b964 phycore-am62x: Migrate to OF_UPSTREAM
The phycore-am62x can be migrated to OF_UPSTREAM.
Drop redundant device tree files, update MAINTAINERS and
defconfig's DEFAULT_DEVICE_TREE for ti vendor prefix accordingly.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
2024-04-29 10:55:45 -06:00
Tom Rini
18572143eb Merge patch series "upstream DT compatibility"
Caleb Connolly <caleb.connolly@linaro.org> says:

This is a subset of [1]. With more platform maintainers switching to
OF_UPSTREAM I didn't want to get in the way (it has also proven more
difficult than I hoped to remove only the fully compatible header
files).

This series removes only the dt-bindings headers which contain generic
data like GPIO flags, input event codes, etc.

It then implements support for building all DTBs for a vendor with
OF_UPSTREAM_BUILD_VENDOR. This removes the need to maintain a set list
of DTBs that can be built by U-Boot and opens up the possibility of new
boards becoming supported "by default" just by landing their DT
upstream.

[1]: https://lore.kernel.org/u-boot/20240321-b4-upstream-dt-headers-v2-0-1eac0df875fe@linaro.org
2024-04-29 10:55:17 -06:00
Caleb Connolly
6416166eec arm: dts: imx6dl-brppt2: fix gpio.h include
The "include" directory was included in the include path... Remove it.

Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
2024-04-29 10:55:07 -06:00
Tom Rini
c3407f4f5c Merge patch series "Enable ICSSG Ethernet Driver for AM65x"
MD Danish Anwar <danishanwar@ti.com> says:

The series introduces device tree and config changes and AM65x
to enable ICSSG driver. The series also enables SPL_LOAD_FIT_APPLY_OVERLAY
for AM65x in order to load overlay over spl.

The ICSSG2 node is added in device tree overlay so that it remains in
sync with linux kernel.

This series has been tested on AM65x SR2.0, and the ICSSG interface is
able to ping / dhcp and boot kernel using tftp in uboot.

The users need to set env variables fw_storage_interface, fw_dev_part,
fw_ubi_mtdpart, fw_ubi_volume to indicate which storage medium and
partition they want to use to load firmware files from. By default the env
fw_storage_interface=mmc and fw_dev_part=1:2 but users can modify these
envs as per their requirements.
2024-04-29 10:54:46 -06:00
MD Danish Anwar
930f1428a9 arm: dts: k3-am65x-binman: Add ICSSG2 overlay and configuration
Add ICSSG2 overlay and configuration to tispl and u-boot images.

Signed-off-by: MD Danish Anwar <danishanwar@ti.com>
Acked-by: Ravi Gunasekaran <r-gunasekaran@ti.com>
2024-04-29 10:54:38 -06:00
MD Danish Anwar
a672d306dc arm: dts: k3-am654-base-board: Add ICSSG2 Ethernet support
ICSSG2 provides dual Gigabit Ethernet support.
Add ICSSG2 ethernet node to an overlay k3-am654-icssg2.dtso

Signed-off-by: MD Danish Anwar <danishanwar@ti.com>
Acked-by: Ravi Gunasekaran <r-gunasekaran@ti.com>
2024-04-29 10:54:37 -06:00
Andrew Davis
3d82af15f3 arm: mach-k3: am62ax: Fix typo in ROM data macro name
s/ENTENDED/EXTENDED

Signed-off-by: Andrew Davis <afd@ti.com>
2024-04-29 10:54:03 -06:00
Andrew Davis
4b3706607c arm: mach-k3: am642: Fix reset for workaround errata ID i2331
To workaround an issue in AM642 we reset the SoC in early boot. For that
we first probed the sysreset driver by calling uclass_get_device(). The
ti-sci sysreset driver is now probed during the ti-sci firmware probe.
Update this call to probe the firmware driver which will then probe
the sysreset driver allowing do_reset() to again function as expected.

Reported-by: Jonathan Humphreys <j-humphreys@ti.com>
Fixes: fc5d40283483 ("firmware: ti_sci: Bind sysreset driver when enabled")
Signed-off-by: Andrew Davis <afd@ti.com>
Tested-by: Wadim Egorov <w.egorov@phytec.de>
Tested-by: Kamlesh Gurudasani <kamlesh@ti.com>
2024-04-29 10:53:56 -06:00
Stefan Eichenberger
ff10213b0e arm: dts: verdin-am62: use gpio-hog for sleep moci
In Linux, we allow sleep moci to be turned off when the carrier board
supports it and the system is in suspend. In U-Boot, however, we want
the sleep moci to be always on. So we use a gpio hog and disable the
regulator. This change is necessary because we switched to upstream
device tree files with commit c07bba7a2c7e ("verdin-am62: move verdin
am62 to OF_UPSTREAM"). A recent upstream patch removes the gpio hog from
the Linux device tree, so we need to add it to the u-boot dtsi. The
following patch will remove the gpio hog from the Linux device tree:
https://lore.kernel.org/linux-devicetree/20240301084901.16656-1-eichest@gmail.com/
The U-Boot patch can be applied without it and will not break the build.

Signed-off-by: Stefan Eichenberger <stefan.eichenberger@toradex.com>
2024-04-29 10:53:45 -06:00
Parth Pancholi
faa6c619bd arm: dts: k3-am625-verdin: add tifsstub to tispl.bin
Adds tifsstub binaries, this is required for deepsleep functionality.

This implements the same change as commit 128f81290b7d ("arm: dts: k3:
binman: am625: add support for signing TIFSSTUB Images") did for TI AM62
SK board.

Signed-off-by: Parth Pancholi <parth.pancholi@toradex.com>
Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2024-04-29 10:53:34 -06:00
Marek Vasut
37e50627ef ARM: dts: imx: Convert i.MX8M flash.bin image generation to binman
Rework the flash.bin image generation such that it uses the new binman
nxp_imx8mimage etype. This way, the flash.bin is assembled in correct
order using plain binman, without any workarounds or sections assembled
in special DT node order.

Reviewed-By: Tim Harvey <tharvey@gateworks.com>
Tested-By: Tim Harvey <tharvey@gateworks.com> # imx8mm_venice
Tested-by: Fabio Estevam <festevam@gmail.com> # imx8mm-evk and imx8mn-evk
Signed-off-by: Marek Vasut <marex@denx.de>
2024-04-28 12:10:13 -03:00
Marek Vasut
6509e007e9 ARM: dts: imx: Switch Ronetix iMX8MQ-CM to imx8mq-u-boot.dtsi
Include imx8mq-u-boot.dtsi in the board -u-boot.dtsi to pull in binman
configuration instead of duplicating it in the board -u-boot.dtsi again.
Drop the duplicate binman configuration.

Signed-off-by: Marek Vasut <marex@denx.de>
2024-04-28 12:10:13 -03:00
Peng Fan
6bc68ed4df imx: imx93-11x11-evk: convert to OF_UPSTREAM
Convert to OF_UPSTREAM for i.MX93 11x11 EVK.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
2024-04-28 11:56:09 -03:00
Marek Vasut
aa0a79f337 ARM: dts: imx: Enable PCIe and NVMe on DH i.MX8M Plus DHCOM PDK3
Enable PCIe/NVMe support on DH i.MX8M Plus DHCOM PDK3. Except for
the configuration options which are enabled, add slight adjustment
to board u-boot.dtsi, which is necessary as there is currently no
driver for the I2C PCIe clock generator. Since the generator is
strapped to be always on, it is possible to supplant the generator
functionality by fixed-clock.

Signed-off-by: Marek Vasut <marex@denx.de>
2024-04-28 11:55:48 -03:00
Quentin Schulz
c4c35858b7 rockchip: NR_DRAM_BANKS now defaults to 10 when Rockchip TPL blob is used
When Rockchip TPL blob is used, the memory areas that can be used for
DRAM is gotten from ATAGS passed through the DRAM at a specific address.

The DDR_MEM tag contains at most 10 areas, so we should default to 10 if
Rockchip TPL blob is used. Note that it is technically possible we need
more if one of those 10 areas overlaps with reserved memory area,
forcing us to split it in two. But a default doesn't need to handle all
cases, only most.

Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2024-04-26 15:47:05 +08:00
Quentin Schulz
faa05d4867 rockchip: sdram: Support getting banks from TPL for rk3568 and rk3588
Allow RK3568 and RK3588 based boards to get the RAM bank configuration
from the ROCKCHIP_TPL stage instead of the current logic. This fixes
both an issue where 256MB of RAM is blocked for devices with >= 4GB
of RAM and where memory holes need to be defined for devices with
more than 16GB of RAM. In the event that neither SoC is used or the
ROCKCHIP_TPL stage is not used, fall back to existing logic.

The logic handles creating memory holes from reserved memory areas
defined in mem_map data struct in SoC C files, but only if the DRAM area
overlaps with one reserved memory area.

Since mem_map data struct is used, it should be rather straightforward
to add support for other SoCs if needed.

The logic is taken from Rockchip's U-Boot tag linux-5.10-gen-rkr4.1
(e08e32143dd).

Note that Rockchip's U-Boot/TF-A/OP-TEE modify the ATAGS at runtime as
well, but the DDR_MEM tag seems to be pretty much stable (though BL31
seems to be reserving only 1MB for itself at the moment).

u32 for ATAGS is used because it simplifies the pointer arithmetic and
it's expected that ATAGS are always below the 4GB limit allowed by u32.

Co-developed-by: Chris Morgan <macromorgan@hotmail.com>
Signed-off-by: Chris Morgan <macromorgan@hotmail.com>
Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2024-04-26 15:47:05 +08:00
Christopher Obbard
fb891eeeb7 rockchip: rock-pi-4-rk3399: enable booting from SPI flash
Some variants of the ROCK Pi 4 series have an SPI flash chip populated
which can be booted from. This patch enables support in U-Boot for
building the image for the SPI flash, support for booting U-Boot from the
SPI flash chip and support in U-Boot for accessing the SPI flash using
`sf` commands.

Not all variants (e.g. ROCK Pi 4B, ROCK 4 Model C Plus, ROCK 4SE) come
populated with an SPI flash chip, but have the footprint on the board so
a user could solder their own to the board. With this patchset applied,
these board variants without an SPI flash chip still boot from MMC.

I have enabled support for both Winbond and XTX SPI flash devices since
different hardware variants have different devices populated:

 - `rockpi4_v13_sch_20181112.pdf` contains a Winbond part `W25Q64FWZPIG`
 - `rockpi4_v14_sch_20210114.pdf` contains an XTX part `XT25F32BWOIGT`

The ROCK Pi 4 I have is marked as "ROCK PI 4 v1.48" and contains an SPI
flash chip from XTX:

    => sf probe
    SF: Detected xt25f32 with page size 256 Bytes, erase size 4 KiB, total 4 MiB

In the interest of supporting all board variants and not regressing
existing users who boot from MMC, I have enabled support for booting from
both SPI flash chip variants in the defconfig and left the environment
storage location as MMC to not break existing users who have the
environment stored on MMC.

Signed-off-by: Christopher Obbard <chris.obbard@collabora.com>
Reviewed-by: Jonas Karlman <jonas@kwiboo.se>
2024-04-26 15:47:05 +08:00
Christopher Obbard
d17f965410 arm: rockchip: sync ROCK Pi 4A DTS from Linux
To prepare for ROCK Pi 4A SPI flash support, sync the DTS from Linux which
includes an SPI flash node.

Kernel tag: v6.6-rc1
Kernel commits:
 - eddf73029770 ("arm64: dts: rockchip: Enable internal SPI flash for ROCK \
                  Pi 4A/B/C")

Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
Signed-off-by: Christopher Obbard <chris.obbard@collabora.com>
Reviewed-by: Jonas Karlman <jonas@kwiboo.se>
2024-04-26 15:47:05 +08:00
Jonas Karlman
405818dff6 rockchip: rk3328: Fix bootph prop for vop node
The vop node should not be included in TPL/SPL control FDT, it should
only be included at U-Boot proper pre-reloc phase.

Change to use bootph-some-ram prop to fix this.

Fixes: 6794063d5065 ("ARM: dts: rk3328: Enable VOP for bootph-all")
Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2024-04-26 15:47:05 +08:00