aboutsummaryrefslogtreecommitdiff
path: root/arch/arm
AgeCommit message (Collapse)Author
2022-07-25arm: Remove unused references to CONFIG_SOC_DM*Tom Rini
There are no references to CONFIG_SOC_DM355 / CONFIG_SOC_DM365 / CONFIG_SOC_DM644X / CONFIG_SOC_DM646X and the files these Makefile lines reference have already been dropped. Signed-off-by: Tom Rini <trini@konsulko.com>
2022-07-25spl: Use SPL_TEXT_BASE instead of ISW_ENTRY_ADDRAndrew Davis
The ISW_ENTRY_ADDR symbol was used for OMAP devices in place of SPL_TEXT_BASE. Keystone2 HS devices were not using it right either. Remove ISW_ENTRY_ADDR and use SPL_TEXT_BASE directly. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2022-07-25arm: k3: config.mk: Read software revision information from file on HSAndrew Davis
Read the swrv.txt file from the TI Security Development Tools when TI_SECURE_DEVICE is enabled. This allows us to set our software revision in one place and have it used by all the tools that create TI x509 boot certificates. Signed-off-by: Andrew Davis <afd@ti.com>
2022-07-25k3_gen_x509_cert: Make SWRV configurable for anti-rollback protectionYogesh Siraswar
The x509 certificate SWRV is currently hard-coded to 0. This need to be updated to 1 for j721e 1.1, j7200 and am64x. It is don't care for other k3 devices. Added new config K3_X509_SWRV to k3. Default is set to 1. Signed-off-by: Yogesh Siraswar <yogeshs@ti.com> Reviewed-by: Dave Gerlach <d-gerlach@ti.com>
2022-07-25arm: mach-k3: Remove ROM firewalls on GP devicesAndrew Davis
This isn't strictly needed as these firewalls should all be disabled on GP, but it also doesn't hurt, so do this unconditionally to remove this use of CONFIG_TI_SECURE_DEVICE. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2022-07-25arm: mach-k3: Rename SOC_K3_AM6 to SOC_K3_AM654Andrew Davis
The first AM6x device was the AM654x, but being the first we named it just AM6, since more devices have come out with this same prefix we should switch it to the normal convention of using the full name of the first compatibility device the series. This makes what device we are talking about more clear and matches all the K3 devices added since. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2022-07-25arm: mach-k3: Only build init files for SPLAndrew Davis
The content of these files are only used in SPL builds. The contents are already ifdef for the same, remove that and only include the whole file in the build when building for SPL. Signed-off-by: Andrew Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2022-07-25arm: dts: db410c/db820c: Fix SPMI addressesStephan Gerhold
The Qualcomm device trees in U-Boot are currently not consistent with the upstream DTs used in the Linux kernel. While some bindings are similar to the official specification in the Linux kernel, several nodes have subtle differences, e.g. the "compatible"s or the exact specification of memory registers. This means that some of the Qualcomm-related U-Boot drivers are not compatible with the Linux DT (and vice versa). The SPMI node is one such example: the "core" region starts at 0x0200f000 in the upstream Linux MSM8916 DT, but in U-Boot it starts at 0x0200f800. The end result is normally the same, since the Linux SPMI driver simply adds the 0x800 internally. However, commit f5a2d6b4b03a ("spmi: msm: add arbiter version 5 support") imported this behavior into the U-Boot driver, without adjusting the DB410c/DB820c device trees. This means that the 0x800 offset is now added twice, breaking all SPMI read/write operations: Failed to find PMIC pon node. Check device tree Failed to find pm8916_gpios@c000 node. USB init failed: -6 starting USB... Bus ehci@78d9000: Failed to find pm8916_gpios@c000 node. probe failed, error -6 No working controllers found While the mistake is strictly speaking in the spmi-msm driver, fix the issue by making the SPMI nodes in the DB410c/DB820c consistent with the upstream Linux DT instead. Ideally we should even go a step further by fixing the remaining uses of custom bindings in the U-Boot drivers and moving to using the Linux DTs as-is. This would likely avoid such mistakes in the future and would also make the porting process much easier. Cc: Dzmitry Sankouski <dsankouski@gmail.com> Fixes: f5a2d6b4b03a ("spmi: msm: add arbiter version 5 support") Signed-off-by: Stephan Gerhold <stephan@gerhold.net> Reviewed-by: Sumit Garg <sumit.garg@linaro.org>
2022-07-25armv8: mach-k3: correct define checking for AM625/AM642 memory mapsMatt Ranostay
Using CONFIG_IS_ENABLED breaks accessing memory map structure when doing a A53 SPL build for AM625 and AM642 platforms. This is due to 'abc if CONFIG_SPL_BUILD is defined and CONFIG_SPL_FOO is set to 'y'' in which there is no CONFIG_SPL_SOC_K3_AM625/CONFIG_SPL_SOC_K3_AM642 defined in the configuration. For the A53 SPL builds on these platform to access the memory mapping which it will need for enabling the mmu/cache it must use #if defined(X) checks and not CONFIG_IS_ENABLED. Cc: Suman Anna <s-anna@ti.com> Cc: Neha Francis <n-francis@ti.com> Signed-off-by: Matt Ranostay <mranostay@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2022-07-25arm: dts: mt7622: remove default pinctrl of uart0Weijie Gao
Currently u-boot running on mt7622 will print an warning log at beginning: > serial_mtk serial@11002000: pinctrl_select_state_full: uclass_get_device_by_phandle_id: err=-19 It turns out that the pinctrl uclass can't work properly in board_f stage. Since the uart0 is the default UART device used by bootrom, and will be initialized in both bootrom and tf-a bl2. It's ok not to setup pinctrl for uart0 in u-boot. This patch removes the default pinctrl of uart0 to suppress the unwanted warning. Signed-off-by: Weijie Gao <weijie.gao@mediatek.com>
2022-07-25arm: dts: k3-am64-ddr fix typo causing DDR4 register corruptionAnand Gadiyar
The entry for DDRSS_PI_321_DATA was accidentally repeated leading to the last few PI registers being incorrectly programmed. Fix this. Reported-by: Bin Liu <b-liu@ti.com> Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com> Signed-off-by: Anand Gadiyar <gadiyar@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2022-07-25board: qualcomm: Add support for QCS404 EVBSumit Garg
Add support for Qualcomm QCS404 SoC based evaluation board. Features: - Qualcomm Snapdragon QCS404 SoC - 1GiB RAM - 8GiB eMMC, uSD slot U-boot is chain loaded by ABL in 64-bit mode as part of boot.img. For detailed build and boot instructions, refer to doc/board/qualcomm/qcs404.rst. Signed-off-by: Sumit Garg <sumit.garg@linaro.org>
2022-07-25clocks: qcom: Add clock driver for QCS404 SoCSumit Garg
Currently this clock driver initializes clocks for UART and eMMC. Along with this import "qcom,gcc-qcs404.h" header from Linux mainline to support DT bindings. Signed-off-by: Sumit Garg <sumit.garg@linaro.org>
2022-07-25pinctrl: qcom: Add pinctrl driver for QCS404 SoCSumit Garg
Currently this pinctrl driver only supports BLSP UART2 specific pin configuration. Signed-off-by: Sumit Garg <sumit.garg@linaro.org> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
2022-07-25board: qualcomm: Add support for dragonboard845cSumit Garg
Add support for 96Boards Dragonboard 845C aka Robotics RB3 development platform. This board complies with 96Boards Open Platform Specifications. Features: - Qualcomm Snapdragon SDA845 SoC - 4GiB RAM - 64GiB UFS drive U-boot is chain loaded by ABL in 64-bit mode as part of boot.img. For detailed build and boot instructions, refer to doc/board/qualcomm/sdm845.rst, board: dragonboard845c. Signed-off-by: Sumit Garg <sumit.garg@linaro.org> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
2022-07-25uart: sdm845: Fix debug UART pinmuxSumit Garg
Configure debug UART pins as function: "qup9" rather than being regular gpios. It fixes a hang seen during pinmux setting. Signed-off-by: Sumit Garg <sumit.garg@linaro.org> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
2022-07-25clocks: sdm845: Import qcom,gcc-sdm845.hSumit Garg
Rather than using magic numbers as clock ids for peripherals import qcom,gcc-sdm845.h from Linux to be used standard macros for clock ids. So start using corresponding clk-id macro for debug UART. Signed-off-by: Sumit Garg <sumit.garg@linaro.org> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
2022-07-25arm64: dts: sdm845: Remove redundant u-boot DT propertiesSumit Garg
According to u-boot DT recomendation, u-boot specific DT properties belong to *-uboot.dtsi. Also for starqltechn board (which is the only current consumer of sdm845.dtsi), the properties are already included in starqltechn-uboot.dtsi, so remove corresponding redundant properties. Signed-off-by: Sumit Garg <sumit.garg@linaro.org> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
2022-07-25board: starqltechn: Align DT node overrides with sdm845.dtsiSumit Garg
Currently there is a mismatch among DT node overrides in starqltechn board DTS file and the actual DT nodes in the sdm845.dtsi. So fix that to align with DT nodes in sdm845.dtsi. Signed-off-by: Sumit Garg <sumit.garg@linaro.org> Reviewed-by: Ramon Fried <rfried.dev@gmail.com>
2022-07-25arm64: mach-k3: am625_init: Probe ESM nodesJulien Panis
On AM62x devices, main ESM error event outputs can be routed to MCU ESM as inputs. So, two ESM device nodes are expected in the device tree : one for main ESM and another one for MCU ESM. MCU ESM error output can trigger the reset logic to reset the device when CTRLMMR_MCU_RST_CTRL:MCU_ESM_ERROR_RESET_EN_Z is set to '0'. Signed-off-by: Julien Panis <jpanis@baylibre.com>
2022-07-25arm64: dts: k3-am625-r5: Add support for ESM devicesJulien Panis
Add main ESM and MCU ESM nodes to AM625-R5 device tree. Signed-off-by: Julien Panis <jpanis@baylibre.com>
2022-07-25arm: apple: Add initial Apple M2 supportJanne Grunau
Apple's M2 SoC very similar to the M1 and can use the same memory map. The keyboard/trackpad on the MacBook Pro (13-inch, M2, 2022) uses "dockchannel" as transport instead of SPI and needs a new driver. USB, NVMe, uart, framebuffer and watchdog are working with the existing drivers. Signed-off-by: Janne Grunau <j@jannau.net> Reviewed-by: Mark Kettenis <kettenis@openbsd.org>
2022-07-21arm: mvebu: turris_omnia: Set ETHPRIME to DT aliasPali Rohár
CONFIG_ETHPRIME can be set to DT node name or alias which refers to DT node. Define ethernet aliases and set ETHPRIME to eth2 which refers to WAN ethernet port. This removes hardcoded DT node name from U-Boot configuration file. Signed-off-by: Pali Rohár <pali@kernel.org> Reviewed-by: Marek Behún <kabel@kernel.org> Reviewed-by: Stefan Roese <sr@denx.de>
2022-07-21arm: mvebu: Avoid reading MVEBU_REG_PCIE_DEVID register too many timesPali Rohár
Change detection of platform/cpu from runtime to compile time via config define. This completely eliminates compiling code which is not going to run on selected platform. Code which parses and prints device / revision id still reads device id from MVEBU_REG_PCIE_DEVID register, but only once. Signed-off-by: Pali Rohár <pali@kernel.org> Acked-by: Marek Behún <kabel@kernel.org> Reviewed-by: Stefan Roese <sr@denx.de>
2022-07-21treewide: Fix Marek's name and change my e-mail addressMarek Behún
Fix diacritics in some instances of my name and change my e-mail address to kabel@kernel.org. Add corresponding .mailmap entries. Signed-off-by: Marek Behún <kabel@kernel.org> Reviewed-by: Stefan Roese <sr@denx.de>
2022-07-21arm: mvebu: add support for Methode eDPURobert Marko
Methode eDPU is an Armada 3720 power board based on the Methode uDPU. They feature the same CPU, RAM, and storage as well as the form factor. However, eDPU only has one SFP slot plus a copper G.hn port which does not work under U-boot. In order to reduce duplication, split the uDPU DTS into a common one. Signed-off-by: Robert Marko <robert.marko@sartura.hr> Reviewed-by: Stefan Roese <sr@denx.de>
2022-07-21arm: mvebu: dts: sync DTSRobert Marko
Update the uDPU DTS to the version that is pending upstream [1][2][3][4]. [1] https://patchwork.kernel.org/project/linux-arm-kernel/patch/20220516124828.45144-4-robert.marko@sartura.hr/ [2] https://patchwork.kernel.org/project/linux-arm-kernel/patch/20220516124828.45144-5-robert.marko@sartura.hr/ [3] https://patchwork.kernel.org/project/linux-arm-kernel/patch/20220516124828.45144-6-robert.marko@sartura.hr/ [4] https://patchwork.kernel.org/project/linux-arm-kernel/patch/20220516124828.45144-7-robert.marko@sartura.hr/ Signed-off-by: Robert Marko <robert.marko@sartura.hr> Reviewed-by: Stefan Roese <sr@denx.de>
2022-07-21arm64: mvebu: handle non-zero base address for RAMChris Packham
board_get_usable_ram_top() conflated the RAM size with the top address of RAM. On systems where RAM starts at address 0 these numbers are the same so it went unnoticed. Update board_get_usable_ram_top() to take CONFIG_SYS_SDRAM_BASE into account when determining the top address. Signed-off-by: Chris Packham <judge.packham@gmail.com> Reviewed-by: Stefan Roese <sr@denx.de>
2022-07-18sunxi: Move INITIAL_USB_SCAN_DELAY to driver KconfigSamuel Holland
This option is used only by the phy-sun4i-usb driver, which does not inherently depend on the ARM architecture. Signed-off-by: Samuel Holland <samuel@sholland.org> Reviewed-by: Jagan Teki <jagan@amarulasolutions.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2022-07-18sunxi: lcd: Move range from kconfig description to definition.Michal Suchanek
KConfig has range option, use it instead of notice in the option descrition. Signed-off-by: Michal Suchanek <msuchanek@suse.de> Reviewed-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2022-07-14Merge https://source.denx.de/u-boot/custodians/u-boot-usbTom Rini
2022-07-13Merge tag 'u-boot-stm32-20220712' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-stm - Alignment with Linux kernel device tree v5.19 for stm32mp15 and stm32mp13 - Add OP-TEE nodes for stm32mp13x, alligned with upstreamed OP-TEE - Introduce of_to_plat ops in stm32_sdmmc2 driver - Activate more features in stm32mp13 defconfig and support of STM32MP13x Rev.Y - Drop fastboot and stm32prog trigger gpios on STM32MP15x DHCOM board
2022-07-12ti: keystone: Don't select GPIO_EXTRA_HEADERMichal Simek
keystone doesn't have custom gpio.h that's why don't select GPIO_EXTRA_HEADER which points to it. Logic in arch/arm/include/asm/gpio.h is very clear #ifdef CONFIG_GPIO_EXTRA_HEADER #include <asm/arch/gpio.h> #endif #include <asm-generic/gpio.h> Where it is visible that there is no gpio.h in platform headers: $ ls arch/arm/mach-keystone/include/mach/ clock_defs.h clock-k2e.h clock-k2hk.h ddr3.h hardware-k2e.h hardware-k2hk.h i2c_defs.h mon.h mux-k2g.h xhci-keystone.h clock.h clock-k2g.h clock-k2l.h hardware.h hardware-k2g.h hardware-k2l.h mmc_host_def.h msmc.h psc_defs.h Signed-off-by: Michal Simek <michal.simek@amd.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2022-07-12arm: dts: stm32mp1: Drop fastboot and stm32prog trigger gpios on DHCOMJohann Neuhauser
PA13 and PA14 are used for USB power control and can't be used to enforce fastboot or stm32prog mode by pressing a button. Defining CONFIG_FASTBOOT/CONFIG_CMD_STM32PROG without this patch applied results in fastboot/stm32prog always starting, because PA13/PA14 are always low during boot. So drop the wrong trigger gpios definitions. Signed-off-by: Johann Neuhauser <jneuhauser@dh-electronics.com> Reviewed-by: Marek Vasut <marex@denx.de> Reviewed-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
2022-07-12ARM: dts: stm32mp13: activate led on STM32MP13F-DKPatrick Delaunay
Activate the led managed in stm32mp1 board for U-Boot indication in STM32MP13F-DK device tree. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2022-07-12ARM: dts: stm32mp13: alignment with v5.19Patrick Delaunay
Device tree alignment with Linux kernel v5.19-rc1 with: - ARM: dts: stm32: add UserPA13 button on stm32mp135f-dk - ARM: dts: stm32: add blue led (Linux heartbeat) on stm32mp135f-dk - ARM: dts: stm32: add EXTI interrupt-parent to pinctrl node on stm32mp131 - ARM: dts: stm32: enable RTC support on stm32mp135f-dk - ARM: dts: stm32: add RTC node on stm32mp131 - ARM: dts: stm32: fix pinctrl node name warnings (MPU soc) Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2022-07-12stm32mp: add support of STM32MP13x Rev.YPatrick Delaunay
Add support of STM32MP13x Rev.Y for the Silicon revision REV_ID = 0x1003. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2022-07-12ARM: dts: stm32: add SCMI version of STM32 boards (DK1/DK2/ED1/EV1)Patrick Delaunay
Add a "secure" version of STM32 boards based on SCMI when RCC_TZCR.TZEN=1. Only boards provided by STMicroelectronics are concerned: -STM32MP157A-DK1 -STM32MP157C-DK2 -STM32MP157C-ED1 -STM32MP157C-EV1 The resources secured by RCC_TZCR.TZEN=1 are managed by OP-TEE and the associated SCMI services, reset and clock. These device trees are only supported with stm32mp15_defconfig, with OP-TEE, SCMI and without SPL support. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2022-07-12ARM: dts: stm32mp15: alignment with v5.19Patrick Delaunay
Device tree alignment with Linux kernel v5.19-rc1 - ARM: dts: stm32: Add alternate pinmux for ethernet0 pins - ARM: dts: stm32: Add alternate pinmux for mco2 pins - ARM: dts: stm32: fix pinctrl node name warnings (MPU soc) - ARM: dts: stm32: stm32mp15-pinctrl: add spi1-1 pinmux group - dt-bindings: clock: add IDs for SCMI clocks on stm32mp15 - dt-bindings: reset: add IDs for SCMI reset domains on stm32mp15 - dt-bindings: clock: stm32mp15: rename CK_SCMI define - dt-bindings: reset: stm32mp15: rename RST_SCMI define - dt-bindings: reset: add MCU HOLD BOOT ID for SCMI reset domains on stm32mp15 - dt-bindings: clk: cleanup comments - ARM: dts: align SPI NOR node name with dtschema - ARM: dts: stm32: enable optee firmware and SCMI support on STM32MP15 - ARM: dts: stm32: Add SCMI version of STM32 boards (DK1/DK2/ED1/EV1) - ARM: dts: stm32: move SCMI related nodes in a dedicated file for stm32mp15 + patch from stm32-dt-for-v5.19-fixes-2 - ARM: dts: stm32: move SCMI related nodes in a dedicated file for stm32mp15 - ARM: dts: stm32: fix pwr regulators references to use scmi - ARM: dts: stm32: use the correct clock source for CEC on stm32mp151 - ARM: dts: stm32: DSI should use LSE SCMI clock on DK1/ED1 STM32 board - ARM: dts: stm32: delete fixed clock node on STM32MP15-SCMI - ARM: dts: stm32: add missing usbh clock and fix clk order on stm32mp15 Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2022-07-12ARM: dts: stm32mp13: add SCMI nodesPatrick Delaunay
Add the node for SCMI firmware with the associated reserved memory nodes Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2022-07-12ARM: dts: stm32mp13: add OP-TEE nodesPatrick Delaunay
Add the node for OP-TEE firmware with the associated reserved memory nodes Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2022-07-11Merge branch 'next'Tom Rini
2022-07-08i2c: Remove non-DM_I2C support from davinci_i2c.cTom Rini
As the migration deadline has passed, and all platforms have been migrated, remove the non-DM code here. Signed-off-by: Tom Rini <trini@konsulko.com>
2022-07-08omap3: emif4: More clearly hard-code cs0 sizeTom Rini
We have a single platform that is both in the OMAP3 family of parts, but has an EMIF4 memory controller. Currently we hard-code the size of chip select 0. Make this more clear by putting the value in the function rather than a CONFIG option. Signed-off-by: Tom Rini <trini@konsulko.com>
2022-07-08arm: Remove strongarm supportTom Rini
There are no platforms using this architecture anymore, remove it. Signed-off-by: Tom Rini <trini@konsulko.com>
2022-07-08Merge tag 'dm-pull-28jun22' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-dm into next nman external-symbol improvements Driver model memory-usage reporting patman test-reporting improvements Add bloblist design goals
2022-07-07Convert CONFIG_SYS_BOOT_RAMDISK_HIGH to KconfigTom Rini
This converts the following to Kconfig: CONFIG_SYS_BOOT_RAMDISK_HIGH Signed-off-by: Tom Rini <trini@konsulko.com>
2022-07-07arm: Remove PXA architecture supportTom Rini
With the last platform for this architecture removed, remove the rest of the architecture support as well. Cc: Marek Vasut <marex@denx.de> Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2022-07-07thunerx_88xx: Clean up config slightly.Tom Rini
We don't use CONFIG_SYS_64BIT anywhere and can use CONFIG_TARGET_THUNDERX_88XX to build the device trees. Signed-off-by: Tom Rini <trini@konsulko.com>
2022-07-07Convert CONFIG_SYS_EMIF_PRECALCULATED_TIMING_REGS et al to KconfigTom Rini
This converts the following to Kconfig: CONFIG_SYS_EMIF_PRECALCULATED_TIMING_REGS CONFIG_SYS_AUTOMATIC_SDRAM_DETECTION CONFIG_SYS_DEFAULT_LPDDR2_TIMINGS Signed-off-by: Tom Rini <trini@konsulko.com>