summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-06-20configs: Resync with savedefconfigTom Rini
Rsync all defconfig files using moveconfig.py Signed-off-by: Tom Rini <trini@konsulko.com>
2022-06-20Merge tag 'u-boot-stm32-20220620' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-stm into next - Add STM32MP13 SoCs support with associated board STM32M135F-DK - Correct livetree support in stm32mp1 boards - Activate livetree for stm32mp15 DHSOM boards
2022-06-20Merge tag 'fsl-qoriq-2022-6-20-v2' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-fsl-qoriq into next Layerscape: add sfp driver Kconfig cleanup sl28 board update support hdp firmware loading powerpc: dts update for p2020 p1_p2_rdb_pc board update fsl_esdhc fallback to 1-bit mode support
2022-06-20board: sl28: rename include guard macroMichael Walle
Avoid name clashes with an include file on board level. Signed-off-by: Michael Walle <michael@walle.cc>
2022-06-20board: sl28: support 8 GiB memoryMichael Walle
The board supports up to 8 GiB memory. The memory is soldered on the board but the configuration is equivalent to a dual chip select, dual rank DIMM module. Signed-off-by: Michael Walle <michael@walle.cc>
2022-06-20board: sl28: remove unneeded ddr config parameterMichael Walle
config_2 doesn't need to be set to zero because that is already the default value. Signed-off-by: Michael Walle <michael@walle.cc>
2022-06-20board: sl28: set CPO valueMichael Walle
With a 8GiB memory board, it seems that the "very unlikely event" of a DDR initialization with non-optimal values are not really that unlikely. It happens in about every other reboot. As described in erratum A-009942, preset the DEBUG_28 register with an optimal value. The value iself depends on the memory configuration of the board, but the used value seems to work well for all variants. Signed-off-by: Michael Walle <michael@walle.cc>
2022-06-20armv8: layerscape: add missing RCW source definesMichael Walle
A board might need to get the source of the RCW word, which is also the boot source in most cases. These defines are taken from the LS1028A and I expect they are the same across the SoCs with the same chassis, after all, there was already a reset source for NOR flash. Signed-off-by: Michael Walle <michael@walle.cc>
2022-06-20powerpc: bootm: Fix sizes in memory adjusting warningPali Rohár
Old size is stored in size variable and new size is in bootm_size variable. Signed-off-by: Pali Rohár <pali@kernel.org>
2022-06-20board: freescale: p1_p2_rdb_pc: Move boot reset macros to p1_p2_bootsrc.hPali Rohár
Code for changing boot source is platform generic and can be used by any P1* and P2* compatible RDB board. Not only by boards which use config header file p1_p2_rdb_pc.h. So move this code from p1_p2_rdb_pc.h to p1_p2_bootsrc.h and cleanup macros for generating boot source env variables in CONFIG_EXTRA_ENV_SETTINGS. This allows to use code for resetting board and rebooting to other boot source also by other boards in future. Signed-off-by: Pali Rohár <pali@kernel.org>
2022-06-20powerpc: dts: p2020: Define PMC nodePali Rohár
Copy definition of PMC node from upstream Linux kernel P2020 dts files. Signed-off-by: Pali Rohár <pali@kernel.org>
2022-06-20mmc: fsl_esdhc: Add new config option for default fallback modePali Rohár
Currently default fallback SDHC mode is 1-bit. Add new config option CONFIG_SYS_FSL_ESDHC_DEFAULT_BUS_WIDTH to allow specifying default fallback mode. This is useful e.g. for SPL builds which loads other parts from SD card during boot process. Signed-off-by: Pali Rohár <pali@kernel.org> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
2022-06-20mmc: fsl_esdhc: Set fallback mode to 1-bitPali Rohár
8-bit mode is not supported by SD cards and on P2020 are four SDHC pins shared with SPI (so if P2020 board have also SPI then only 4-bit SDHC mode is provided). So 8-bit SDHC mode is really bad default. When max bus width is not provided then set mode to 1-bit. This mode is supported by all cards, so it is the best option for fallback mode. Also P2020 bootrom sets mode to 1-bit when booting from SD/MMC card. Signed-off-by: Pali Rohár <pali@kernel.org> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
2022-06-20ls1028a: hdp: Add config support for HDP firmware loadingAlison Wang
This patch adds config support for HDP firmware loading on LS1028A. Signed-off-by: Oliver Brown <oliver.brown@nxp.com> Signed-off-by: Alison Wang <alison.wang@nxp.com> Signed-off-by: Ye Li <ye.li@nxp.com> Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
2022-06-20powerpc: mpc85xx: Set default SYS_IMMR value for P1/P2 CPUsPali Rohár
This reduce usage of per-board custom settings. Signed-off-by: Pali Rohár <pali@kernel.org>
2022-06-20mtd: rawnand: fsl_elbc: Fix DM support in DTS code pathPali Rohár
For proper DM support it is required to fill also mtd->dev member. Otherwise DM would not see nand device at all. Signed-off-by: Pali Rohár <pali@kernel.org>
2022-06-20powerpc: mmu: Fix FSL_BOOKE_MAS2() macroPali Rohár
Effective page number mask for MAS2 register is stored in macro MAS2_EPN. Fixes: 2146cf56821c ("Reworked FSL Book-E TLB macros to be more readable") Signed-off-by: Pali Rohár <pali@kernel.org>
2022-06-20powerpc: fsl_law: Add definition for first PCIe target interfacePali Rohár
Header file asm/fsl_law.h already provides correct definition for second and third PCIe controller (LAW_TRGT_IF_PCIE_2 and LAW_TRGT_IF_PCIE_3). But is missing definition for the first PCIe controller (LAW_TRGT_IF_PCIE_1). Note that existing definition for LAW_TRGT_IF_PCIE_2 and LAW_TRGT_IF_PCIE_3 are slightly complicated, but are really correct for P2020 platform. Signed-off-by: Pali Rohár <pali@kernel.org>
2022-06-20board: freescale: p1_p2_rdb_pc: Implement board_reset()Pali Rohár
Do board reset via CPLD's system reset register. Signed-off-by: Pali Rohár <pali@kernel.org>
2022-06-20board: freescale: p1_p2_rdb_pc: Enable TDM function only for P1010Pali Rohár
TDM function is supported only on P1010. P2020 does not have PMUXCR_TDM_ENA register, so do not enable it. Signed-off-by: Pali Rohár <pali@kernel.org>
2022-06-20powerpc: mpc85xx: Fix compilation with CONFIG_WDTPali Rohár
When CONFIG_WDT is enabled then non-DM watchdog code cannot be used due to conflicting functions like watchdog_reset(). So disable compilation of mpc85xx watchdog_reset() function when CONFIG_WDT is enabled. Signed-off-by: Pali Rohár <pali@kernel.org>
2022-06-20powerpc: dts: p2020: Define ecm, memory and guts nodesPali Rohár
Copy definition of these nodes from upstream Linux kernel P2020 dts files. Signed-off-by: Pali Rohár <pali@kernel.org>
2022-06-20powerpc: dts: p2020: Define DMA nodesPali Rohár
Copy definition of DMA nodes from upstream Linux kernel P2020 dts files. Signed-off-by: Pali Rohár <pali@kernel.org>
2022-06-20powerpc: dts: p2020: Define crypto nodePali Rohár
Copy definition of crypto node from upstream Linux kernel P2020 dts files. Signed-off-by: Pali Rohár <pali@kernel.org>
2022-06-20powerpc: dts: p2020: Define MPIC nodesPali Rohár
Copy definition of MPIC nodes from upstream Linux kernel P2020 dts files. Signed-off-by: Pali Rohár <pali@kernel.org>
2022-06-20ARM: layerscape: Use ARCH_LS104?A insead of TARGET_LS104?ARDBSean Anderson
These frequency calculations depend on the RCW format, which is not dependent on any particular board. Switch to using ARCH symbols instead of TARGET. This whole function could probably use less ifdefs, but for now just do a minimal conversion. Fixes: 24cb6f2295 ("fsl-layerscape: Add fsl_esdhc peripheral clock support") Signed-off-by: Sean Anderson <sean.anderson@seco.com>
2022-06-20arch: layerscape: Add SFP bindingSean Anderson
This adds an SFP binding for the processors it is present on. I have only tested this for the LS1046A. Signed-off-by: Sean Anderson <sean.anderson@seco.com>
2022-06-20ARM: dts: ls1021a: update the clockgen nodeSean Anderson
QorIQ platforms now use different clock bindings. Although we don't use the device tree for clocks on this platform, it is helpful to sync it because then the bindings will more closely match Linux. Additionally, it allows for using more clock fractions (such as platform/4). This corresponds to Linux commit b6f5e7019391 ("ARM: dts: ls1021a: update the clockgen node"). Signed-off-by: Sean Anderson <sean.anderson@seco.com>
2022-06-20arm: layerscape: Add sfp driverSean Anderson
This adds a driver for the Security Fuse Processor (SFP) present on LS1012A, LS1021A, LS1043A, and LS1046A processors. It holds the Super-Root Key (SRK), One-Time-Programmable Master Key (OTPMK), and other "security" related fuses. Similar devices (sharing the same name) are present on other processors, but for the moment this just supports the LS2 variants. The mirror registers are loaded during power-on reset. All mirror registers must be programmed or read at once. Because of this, `fuse prog` will program all fuses, even though only one might be specified. To prevent accidentally burning through all your fuse programming cycles with something like `fuse prog 0 0 A B C D`, we limit ourselves to one programming cycle per reset. Fuses are numbered based on their address. The fuse at 0x1e80200 is 0, the fuse at 0x1e80204 is 1, etc. The TA_PROG_SFP supply must be enabled when programming fuses, but must be disabled when reading them. Typically this supply is enabled by inserting a jumper or by setting a register in the board's FPGA. I've also added support for using a regulator. This could be helpful for automatically issuing the FPGA write, or for toggling a GPIO controlling the supply. I suggest using the following procedure for programming: 1. Override the fuses you wish to program => fuse override 0 2 A B C D 2. Inspect the values and ensure that they are what you expect => fuse sense 0 2 4 3. Enable TA_PROG_SFP 4. Issue a program command using OSPR0 as a dummy. Since it contains the write-protect bit you will usually want to write it last anyway. => fuse prog 0 0 0 5. Disable TA_PROG_SFP 6. Read back the fuses and ensure they are correct => fuse read 0 2 4 Signed-off-by: Sean Anderson <sean.anderson@seco.com>
2022-06-17stm32mp1: fix reference for STMicroelectronicsPatrick Delaunay
Replace reference to the correct name STMicroelectronics Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Heiko Schocher <hs@denx.de> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2022-06-17configs: stm32mp: cleanup the stm32mp15 filePatrick Delaunay
Remove STM32_SYSRAM_END and clean the comments in stm32mp15_common.h file after moving some CONFIG to Kconfig: CONFIG_SYS_CBSIZE, CONFIG_SPL_MAX_FOOTPRINT, CONFIG_SYS_SPL_MALLOC_START and CONFIG_SYS_SPL_MALLOC_SIZE. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2022-06-17stm32mp: stpmic1: remove the debug unit request by debuggerPatrick Delaunay
Depending on backup register value, U-Boot SPL maintains the debug unit powered-on for debugging purpose; only BUCK1 is required for powering the debug unit, so revert the setting for all the other power lanes, except BUCK3 that has to be always on. To be functional this patch requires a modification in the debugger ,openocd for example, to update the STM32MP15 backup register when it is required to debug SPL after reset. After deeper analysis this behavior will be never supported in tools so the associated code, will be never used and the associated code can be removed. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2022-06-17ARM: stm32: activate OF_LIVE for DHSOMPatrick Delaunay
Activate the live DT with CONFIG_OF_LIVE to reduce the DT parsing time. Tested-by: Marek Vasut <marex@denx.de> Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2022-06-17board: dhelectronics: stm32mp1: convert to livetreePatrick Delaunay
Replace call to fdt_*() functions and access to gd->fdt_blob with call to ofnode_*() functions to support a live tree. Tested-by: Marek Vasut <marex@denx.de> Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2022-06-17board: engicam: stm32mp1: convert to livetreePatrick Delaunay
Replace gd->fdt_blob access with fdt_getprop() function to the function ofnode_get_property() to support a live tree. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2022-06-17board: stm32mp1: convert to livetreePatrick Delaunay
Replace gd->fdt_blob access with fdt_getprop() function to the function ofnode_get_property() to support a live tree. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2022-06-17misc: stm32mp13: introduce STM32MP13 RCC driverPatrick Delaunay
Add the MISC RCC driver for STM32MP13, and bind it to the RCC reset driver, required for initial support. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com> Acked-by: Sean Anderson <seanga2@gmail.com> Change-Id: Ida11c15462caf140f87b1e3239efa2b8a689acb9
2022-06-17clk: Add directory for STM32 clock driversPatrick Delaunay
Add a directory in drivers/clk to regroup the clock drivers for all STM32 Soc with CONFIG_ARCH_STM32 (MCUs with cortex M) or CONFIG_ARCH_STM32MP (MPUs with cortex A). Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com> Reviewed-by: Grzegorz Szymaszek <gszymaszek@short.pl> Acked-by: Sean Anderson <seanga2@gmail.com> Change-Id: I955af307963f732167396f0157a30cf2fc91f150
2022-06-17stm32mp: fdt: update etzpc for STM32MP13xPatrick Delaunay
Add support of STM32MP13x the ETZPC part of fdt.c Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com> Change-Id: If2777fbf66b8525a2a447056780aaa04e6b0a9a0
2022-06-17stm32mp: fdt: update etzpc for STM32MP15xPatrick Delaunay
Introduce STM32MP15 function and defines to prepare the STM32MP13 introduction. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com> Change-Id: I909b205e73dcf207e0216aae5905c3c52472020e
2022-06-17doc: st: stm32mp1: add STM32MP13x supportPatrick Delaunay
Add in U-Boot documentation the quick instruction to setup the STMicroelectronics STM32MP13x boards. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2022-06-17configs: add stm32mp13 defconfigPatrick Delaunay
Add a initial config for STM32M13x SOC family, using the stm32mp135f-dk device tree. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2022-06-17arm: dts: stm32mp: add stm32mp13 device tree for U-BootPatrick Delaunay
Compile the device tree of STM32MP13x boards and add the needed U-Boot add-on. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2022-06-17mmc: stm32_sdmmc2: make reset property optionalPatrick Delaunay
Although not recommended, the reset property could be made optional. This way the driver will probe even if no reset property is provided in an sdmmc node in DT. This reset is already optional in Linux. Signed-off-by: Yann Gautier <yann.gautier@foss.st.com> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com> Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
2022-06-17ram: stm32mp1: add support of STM32MP13xPatrick Delaunay
Add support for new compatible "st,stm32mp13-ddr" to manage the DDR sub system (Controller and PHY) in STM32MP13x SOC: - only one AXI port - support of 16 port output (MEMC_DRAM_DATA_WIDTH = 2) The STM32MP15x SOC have 2 AXI ports and 32 bits support. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2022-06-17board: stm32pm1: add stm32mp13 board supportPatrick Delaunay
Add stm32mp15x prefix to all STM32MP15x board specific functions, this patch is a preliminary step for STM32MP13x support. This patch also adds the RCC probe to avoid circular access with usbphyc probe as clk provider. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2022-06-17pinctrl: stm32: add support of STM32MP135Patrick Delaunay
Add support for "st,stm32mp135-pinctrl" for STM32MP13x Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2022-06-17arm: stm32mp: support 2 MAC address for STM32MP13Patrick Delaunay
Add support of several MAC address in OTP (3 32bits OTP word for 2 MAC address) for SOCs in STM32MP13x family: STM32MP133 and STM32MP135. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2022-06-17arm: stm32mp: add support of STM32MP13xPatrick Delaunay
Introduce the code in mach-stm32mp and the configuration file stm32mp13_defconfig for the new STM32MP family. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2022-06-17arm: stm32mp: add CONFIG_STM32MP15_PWRPatrick Delaunay
Add config CONFIG_STM32MP15_PWR to handle the access to regulators managed by the PWR driver defined in pwr_regulator.c This driver is only used in U-Boot by STM32MP15x family. Signed-off-by: Patrick Delaunay <patrick.delaunay@foss.st.com> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>