summaryrefslogtreecommitdiff
path: root/arch
AgeCommit message (Collapse)Author
2023-04-20riscv: Enforce DWARF4 outputBin Meng
Since commit 409e4b547872 ("Makefile: Enforce DWARF4 output") the whole U-Boot build switched to enforce DWARF4 output, but RISC-V is still on its own setting. Let's switch to use U-Boot's setting. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2023-04-20riscv: Correct a comment in io.hBin Meng
Replace NDS32 with RISC-V in the comments. Signed-off-by: Bin Meng <[email protected]> Reviewed-by: Rick Chen <[email protected]>
2023-04-20riscv: dts: jh7110: Add initial StarFive VisionFive v2 board device treeYanhong Wang
Add initial device tree for StarFive VisionFive v2 board. Signed-off-by: Yanhong Wang <[email protected]> Tested-by: Conor Dooley <[email protected]>
2023-04-20riscv: dts: jh7110: Add initial u-boot device treeYanhong Wang
Add initial u-boot device tree for the JH7110 RISC-V SoC. Signed-off-by: Yanhong Wang <[email protected]> Tested-by: Conor Dooley <[email protected]>
2023-04-20riscv: dts: jh7110: Add initial StarFive JH7110 device treeYanhong Wang
Add initial device tree for the JH7110 RISC-V SoC. Signed-off-by: Yanhong Wang <[email protected]> Tested-by: Conor Dooley <[email protected]>
2023-04-20board: starfive: Add TARGET_STARFIVE_VISIONFIVE2 to KconfigYanhong Wang
Add board support for StarFive VisionFive v2. Signed-off-by: Yanhong Wang <[email protected]> Tested-by: Conor Dooley <[email protected]>
2023-04-20riscv: cpu: jh7110: Add Kconfig for StarFive JH7110 SoCYanhong Wang
Add Kconfig to select the basic functions for StarFive JH7110 SoC. Signed-off-by: Yanhong Wang <[email protected]> Tested-by: Conor Dooley <[email protected]>
2023-04-20riscv: cpu: jh7110: Add support for jh7110 SoCYanhong Wang
Add StarFive JH7110 SoC to support RISC-V arch. Signed-off-by: Yanhong Wang <[email protected]> Reviewed-by: Rick Chen <[email protected]> Tested-by: Conor Dooley <[email protected]>
2023-04-19stm32mp: fix various array bounds checksRasmus Villemoes
In all these cases, the index on the LHS is immediately afterwards used to access the array appearing in the ARRAY_SIZE() on the RHS - so if that index is equal to the array size, we'll access one-past-the-end of the array. Signed-off-by: Rasmus Villemoes <[email protected]> Reviewed-by: Patrice Chotard <[email protected]> Reviewed-by: Patrick Delaunay <[email protected]>
2023-04-19ARM: dts: stm32: add FMC support on STM32MP13x SoC familyChristophe Kerello
Add FMC support on STM32MP13x SoC family. Signed-off-by: Christophe Kerello <[email protected]> Reviewed-by: Patrice Chotard <[email protected]>
2023-04-19ARM: dts: stm32: Add QSPI support on STM32MP13x SoC familyPatrice Chotard
Add QSPI support on STM32MP13x SoC family Signed-off-by: Patrice Chotard <[email protected]> Reviewed-by: Patrick Delaunay <[email protected]>
2023-04-17Merge tag 'u-boot-amlogic-20230417' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-amlogic - Add initial support for BPI-CM4 - Spring Cleanup of Amlogic board documentation - add support for BananaPi M2-Pro - add support for BananaPi M2S - add support for Radxa Zero2 - add support for WeTek Hub and WeTek Play2 - switch LibreTech-CC v2 and WeTek Core2 to EE powerdomain - add support for Beelink GT1 Ultimate
2023-04-17ARM: dts: add support for Beelink GT1 UltimateKarl Chan
Import the device-tree from linux-amlogic/for-next (Linux 6.3-rc1). Signed-off-by: Christian Hewitt <[email protected]> Signed-off-by: Karl Chan <[email protected]> Link: https://lore.kernel.org/r/[email protected] [narmstrong: fixed imported dt file] Signed-off-by: Neil Armstrong <[email protected]>
2023-04-17ARM: dts: add support for WeTek Hub and WeTek Play2Christian Hewitt
Import the dts files from linux-amlogic/for-next (Linux 6.4-rc1) and add the old PHY reset bindings for dwmac to the u-boot.dtsi until we support the new bindings in the PHY node. Without this the PHY is not functional in u-boot or Linux. Signed-off-by: Christian Hewitt <[email protected]> Reviewed-by: Neil Armstrong <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Neil Armstrong <[email protected]>
2023-04-17ARM: dts: add support for Radxa Zero2Christian Hewitt
Import the device-tree from linux-amlogic/for-next (Linux 6.4-rc1) to support the Radxa-Zero2 board. Signed-off-by: Christian Hewitt <[email protected]> Reviewed-by: Neil Armstrong <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Neil Armstrong <[email protected]>
2023-04-17ARM: dts: add support for BananaPi M2SChristian Hewitt
Import the device-tree from linux-amlogic/for-next (Linux 6.4-rc1) and omit the NPU node from the A311D board variant dts as this is not supported under U-Boot. Signed-off-by: Christian Hewitt <[email protected]> Reviewed-by: Neil Armstrong <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Neil Armstrong <[email protected]>
2023-04-17ARM: dts: add support for BananaPi M2-ProChristian Hewitt
Import the board dts from the linux-amlogic/for-next (6.4-rc1) branch. This involves spliting the BPI-M5 dts into a dtsi and then reusing this for the M2-Pro. Signed-off-by: Christian Hewitt <[email protected]> Reviewed-by: Neil Armstrong <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Neil Armstrong <[email protected]>
2023-04-17ARM: meson: Add initial support for BPI-CM4 module with BPI-CM4IO baseboardNeil Armstrong
Add support for both the BananaPi BPI-CM4 module and the BananaPi baseboard which is compatible with the RaspberryPi CM4IO baseboard. The BananaPi BPI-CM4 module follows the CM4 specifications at [1], but with a single HDMI port and a single DSI output. The current CM4IO baseboard DT should work fine on the Raspberry CM4 baseboard and other derivatives baseboards, but proper DT should be written for other baseboards. [1] https://datasheets.raspberrypi.com/cm4io/cm4io-datasheet.pdf Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Neil Armstrong <[email protected]>
2023-04-17ARM: dts: import initial DT for BPI-CM4 module with BPI-CM4IO baseboardNeil Armstrong
Import initial support for BPI-CM4 module with BPI-CM4IO baseboard from the Linux submission applied at [1]. The BananaPi BPI-CM4 module follows the CM4 specifications at [2], but with a single HDMI port and a single DSI output. The current CM4IO baseboard DT should work fine on the Raspberry CM4 baseboard and other derivatives baseboards, but proper DT should be written for other baseboards. [1] https://git.kernel.org/amlogic/c/0262f2736978b1763363224698f47112a148dab0 [2] https://datasheets.raspberrypi.com/cm4io/cm4io-datasheet.pdf Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Neil Armstrong <[email protected]>
2023-04-15arch: m68k: Add QEMU specific RAMBAR workaroundMarek Vasut
The QEMU emulation of m68k does not support RAMBAR accesses, add Kconfig option which inhibits those accesses, so that U-Boot can be started in m68k QEMU for CI testing purpopses until QEMU emulation improves. Signed-off-by: Marek Vasut <[email protected]>
2023-04-15arch: m68k: Introduce trivial PIT based timerMarek Vasut
The QEMU emulation of m68k does not support DMA timer, the only timer that is supported is the PIT timer. Implement trivial PIT timer support for m68k. Signed-off-by: Marek Vasut <[email protected]>
2023-04-15arch: m68k: Use existing CONFIG_MCFTMR instead of CFG_MCFTMRMarek Vasut
There is an existing CONFIG_MCFTMR Kconfig symbol, use it and drop all other instances of CFG_MCFTMR. This duality is likely a result of bogus conversion to Kconfig. Fixes: 7ff7b46e6ce ("m68k: rename CONFIG_MCFTMR to CFG_MCFTMR") Signed-off-by: Marek Vasut <[email protected]>
2023-04-14Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-marvellTom Rini
- mvebu: Boot support for 4K Native disks (Pali) - a38x: Perform DDR training sequence again for 2nd boot (Tony)
2023-04-13arm: mvebu: spl: Allow to build SATA kwbimage for 4K Native disksPali Rohár
Add a new config option CONFIG_MVEBU_SPL_SATA_BLKSZ for specifying block size of SATA disk. This information is used during building of SATA kwbimage and must be correctly set, otherwise BootROM does not load SPL. For 4K Native disks CONFIG_MVEBU_SPL_SATA_BLKSZ must be set to 4096. Signed-off-by: Pali Rohár <[email protected]> Tested-by: Martin Rowe <[email protected]>
2023-04-13arm: mvebu: spl: Do not hardcode SATA block size to 512Pali Rohár
Find SATA block device by blk_get_devnum_by_uclass_id() function and read from it the real block size of the SATA disk. Signed-off-by: Pali Rohár <[email protected]>
2023-04-12sunxi: arm64: boot0.h: runtime check for RVBAR addressAndre Przywara
Some SoCs of the H616 family use a die variant, that puts some CPU power and reset control registers at a different address. There are examples of two instances of the same board, using different die revisions of the otherwise same H313 SoC. We need to write to a register in that block *very* early in the SPL boot, to switch the core to AArch64. Since the devices are otherwise indistinguishable, let the SPL code read that die variant and use the respective RVBAR address based on that. That is a bit tricky, since we need to do that in hand-coded AArch32 machine language, shared by all 64-bit SoCs. To avoid build dependencies in this mess, we always provide two addresses to choose from, and just give identical values for all other SoCs. This allows the same code to run on all 64-bit SoCs, and controls this switch behaviour purely from Kconfig. Signed-off-by: Andre Przywara <[email protected]> Reviewed-by: Jernej Skrabec <[email protected]>
2023-04-12sunxi: boot0.h: allow RVBAR MMIO address customisationAndre Przywara
To switch the ARMv8 Allwinner SoCs into the 64-bit AArch64 ISA, we need to program the 64-bit start code address into an MMIO mapped register that shadows the architectural RVBAR register. This address is SoC specific, with just two versions out there so far. Now a third address emerged, on a *variant* of an existing SoC (H616). Change the boot0.h start code to make this address a Kconfig selectable option, to allow easier maintenance. Signed-off-by: Andre Przywara <[email protected]> Reviewed-by: Jernej Skrabec <[email protected]>
2023-04-12sunxi: Add TPR2 parameter for H616 DRAM driverJernej Skrabec
It turns out that some H616 and related SoCs (like H313) need TPR2 parameter for proper working. Add it. Signed-off-by: Jernej Skrabec <[email protected]> Reviewed-by: Andre Przywara <[email protected]> Signed-off-by: Andre Przywara <[email protected]>
2023-04-12sunxi: Parameterize some of H616 DDR3 timingsJernej Skrabec
Currently twr2rd, trd2wr and twtp are constants, but according to vendor driver they are calculated from other values. Do that here too, in preparation for later introduction of new parameter. While at it, introduce constant for t_wr_lat, which was incorrectly calculated from tcl before. Signed-off-by: Jernej Skrabec <[email protected]> Reviewed-by: Andre Przywara <[email protected]> Signed-off-by: Andre Przywara <[email protected]>
2023-04-12sunxi: Parameterize "unknown feature" in H616 DRAM driverJernej Skrabec
Part of the code, previously known as "unknown feature", also doesn't have constant values. They are derived from TPR0 parameter in vendor DRAM code. Let's move that code to separate function and introduce TPR0 parameter here too, to ease adding new boards. Signed-off-by: Jernej Skrabec <[email protected]> Acked-by: Andre Przywara <[email protected]> Signed-off-by: Andre Przywara <[email protected]>
2023-04-12sunxi: Parameterize bit delay code in H616 DRAM driverJernej Skrabec
These values are highly board specific and thus make sense to add parameter for them. To ease adding support for new boards, let's make them same as in vendor DRAM settings. Signed-off-by: Jernej Skrabec <[email protected]> Acked-by: Andre Przywara <[email protected]> Signed-off-by: Andre Przywara <[email protected]>
2023-04-12sunxi: Make bit delay function in H616 DRAM code voidJernej Skrabec
Mentioned function result is always true and result isn't checked anyway. Let's make it void. Reviewed-by: Andre Przywara <[email protected]> Signed-off-by: Jernej Skrabec <[email protected]> Signed-off-by: Andre Przywara <[email protected]>
2023-04-12sunxi: Always configure ODT on H616 DRAMJernej Skrabec
Vendor H616 DRAM code always configure part which we call ODT configuration. Let's reflect that here too. Signed-off-by: Jernej Skrabec <[email protected]> Reviewed-by: Andre Przywara <[email protected]> Signed-off-by: Andre Przywara <[email protected]>
2023-04-12sunxi: Convert H616 DRAM options to single settingJernej Skrabec
Vendor DRAM settings use TPR10 parameter to enable various features. There are many mores features that just those that are currently mentioned. Since new will be added later and most are not known, let's reuse value from vendor DRAM driver as-is. This will also help adding support for new boards. Signed-off-by: Jernej Skrabec <[email protected]> Reviewed-by: Andre Przywara <[email protected]> Signed-off-by: Andre Przywara <[email protected]>
2023-04-12sunxi: parameterize H616 DRAM ODT valuesJernej Skrabec
While ODT values for same memory type are similar, they are not necessary the same. Let's parameterize them and make parameter same as in vendor DRAM settings. That way it will be easy to introduce new board support. Reviewed-by: Andre Przywara <[email protected]> Signed-off-by: Jernej Skrabec <[email protected]> Signed-off-by: Andre Przywara <[email protected]>
2023-04-12sunxi: cosmetic: Fix H616 DRAM driver code styleJernej Skrabec
Fix code style for pointer declaration. This is just cosmetic change to avoid checkpatch errors in later commits. Reviewed-by: Andre Przywara <[email protected]> Signed-off-by: Jernej Skrabec <[email protected]> Signed-off-by: Andre Przywara <[email protected]>
2023-04-12sunxi: Fix write to H616 DRAM CR registerJernej Skrabec
Vendor DRAM code actually writes to whole CR register and not just sets bit 31 in mctl_ctrl_init(). Just to be safe, do that here too. Acked-by: Andre Przywara <[email protected]> Signed-off-by: Jernej Skrabec <[email protected]> Signed-off-by: Andre Przywara <[email protected]>
2023-04-12ARM: dts: sun6i: mixtile-loftq: Add USB1 VBUS regulatorSamuel Holland
This board is configured with CONFIG_USB1_VBUS_PIN="PH24", but no regulator exists in its device tree. Add the regulator, so USB will continue to work when the PHY driver switches to using the regulator uclass instead of a GPIO. Update the device tree here because it does not exist in Linux. Signed-off-by: Samuel Holland <[email protected]> Reviewed-by: Andre Przywara <[email protected]> Signed-off-by: Andre Przywara <[email protected]>
2023-04-11m68k: dts: add i2c nodesAngelo Dureghello
Add all the i2c nodes for each family, and add specific i2c overwrites in the related board-specific dts. Signed-off-by: Angelo Dureghello <[email protected]>
2023-04-11i2c: fsl_i2c: fix m68k transfertsAngelo Dureghello
This driver is actually used for powerpc and m68k/ColdFire. On ColdFire SoC's, interrupt flag get not set if IIEN flag (mbcr bit6, interrupt enabled) is not set appropriately before each transfert. As a result, the transfert hangs forever waiting for IIEN. This patch set IIEN before each transfert, while considering this fix as not harming powerpc arch. Signed-off-by: Angelo Dureghello <[email protected]>
2023-04-11m68k: mcf5441x: fix CONFIG_SYS_FSL_I2C definitionAngelo Dureghello
Fix CONFIG_SYS_FSL_I2C to correct name CONFIG_SYS_I2C_FSL. Signed-off-by: Angelo Dureghello <[email protected]>
2023-04-11m68k: move CONFIG_SYS_I2C to CFG_ namespaceAngelo Dureghello
Move CONFIG_SYS_I2C_X to CFG_ namespace. This is a preliminary step to move to dm i2c. Signed-off-by: Angelo Dureghello <[email protected]>
2023-04-08Merge tag 'video-20230407' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-video - fix building sandbox without SDL - improve tegra DC driver to work with panel ops and implement native 180 degree panel rotation support - add T30 support to tegra DC driver - add DSI driver (based on mainline Linux one with minor adjustments, only T30 tested) - add get_display_timing ops to simple panel driver - extend simple panel driver to use it for MIPI DSI panels which do not require additional DSI commands for setup
2023-04-07Merge branch 'master_sh/gen4/initial' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-sh - Initial R-Car Generation 4 support
2023-04-07video: tegra20: add DSI controller driverSvyatoslav Ryhel
Adds support for both DSI outputs found on Tegra. Only very minimal functionality is implemented, so advanced features like ganged mode won't work. Driver is heavily based on mainline Tegra DSI and re-uses much of its features. Only T30 is supported for now but T20 support can be added if any supported devices will be found. Driver is wrapped as panel driver since Tegra DC driver supports only panel drivers calls. Tested-by: Andreas Westman Dorcsak <[email protected]> # ASUS TF600T T30 Tested-by: Svyatoslav Ryhel <[email protected]> # HTC One X T30 Signed-off-by: Svyatoslav Ryhel <[email protected]>
2023-04-07video: tegra-dc: pass DC regmap to internal devicesSvyatoslav Ryhel
Internal video devices like DSI and HDMI controllers require sending commands into DC register field. To make this available, lets create platform data, which is restricted to pass DC regmap only to pre-defined devices. Tested-by: Andreas Westman Dorcsak <[email protected]> # ASUS TF T30 Tested-by: Nicolas Chauvet <[email protected]> # Paz00 Tested-by: Robert Eckelmann <[email protected]> # ASUS TF101 T20 Tested-by: Svyatoslav Ryhel <[email protected]> # HTC One X T30 Signed-off-by: Svyatoslav Ryhel <[email protected]>
2023-04-07tegra: lcd: video: integrate display driver for t30Marcel Ziswiler
On popular request make the display driver from T20 work on T30 as well. Turned out to be quite straight forward. However a few notes about some things encountered during porting: Of course the T30 device tree was completely missing host1x as well as PWM support but it turns out this can simply be copied from T20. The only trouble compiling the Tegra video driver for T30 had to do with some hard-coded PWM pin muxing for T20 which is quite ugly anyway. On T30 this gets handled by a board specific complete pin muxing table. The older Chromium U-Boot 2011.06 which to my knowledge was the only prior attempt at enabling a display driver for T30 for whatever reason got some clocking stuff mixed up. Turns out at least for a single display controller T20 and T30 can be clocked quite similar. Enjoy. Tested-by: Andreas Westman Dorcsak <[email protected]> # ASUS TF T30 Tested-by: Jonas Schwöbel <[email protected]> # Surface RT T30 Tested-by: Svyatoslav Ryhel <[email protected]> # LG P895 T30 Signed-off-by: Marcel Ziswiler <[email protected]> Signed-off-by: Svyatoslav Ryhel <[email protected]>
2023-04-07sandbox: video: Fix building without SDLSimon Glass
This is currently broken. If SDL is not installed, SANDBOX_SDL becomes false and build errors are generated, e.g.: test/dm/video.c:424: undefined reference to `sandbox_sdl_set_bpp' Fix it by making the function return an error in this case. Signed-off-by: Simon Glass <[email protected]>
2023-04-07ARM: renesas: Add R8A779G0 V4H White Hawk board codeHai Pham
Add board code for R8A779G0 V4H White Hawk board. Reviewed-by: Marek Vasut <[email protected]> Signed-off-by: Hai Pham <[email protected]> Signed-off-by: Marek Vasut <[email protected]> [Marek: Synchronize configuration symbols which are now switched to Kconfig Mallocate gd->bd->bi_boot_params, i.e. drop the assignment Sort headers, use clrbits_le32(), use BIT macros where appropriate Use CONFIG_SYS_CLK_FREQ for counter frequency instead of custom macro]
2023-04-07ARM: renesas: Add R8A779G0 V4H Kconfig entry and PRR IDHai Pham
Add Kconfig entry and PRR ID to support R8A779G0 V4H SoC. Reviewed-by: Marek Vasut <[email protected]> Signed-off-by: Hai Pham <[email protected]> Signed-off-by: Marek Vasut <[email protected]> [Marek: Update commit message]