aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2022-10-26Merge https://source.denx.de/u-boot/custodians/u-boot-pmicWIP/26Oct2022Tom Rini2-2/+8
2022-10-26Merge https://source.denx.de/u-boot/custodians/u-boot-watchdogTom Rini14-38/+297
- nuvoton: add expire function for generic reset (Jim) - handle watchdogs during keyed autoboot (Rasmus) - cyclic: Don't disable cylic function upon exceeding CPU time (Stefan) - ulp wdog: Updates to support iMX93 and DM (Alice)
2022-10-26power: fan53555: Fix missing newline in error messageMichal Suchanek1-1/+1
Avoid concatenation with following message. Signed-off-by: Michal Suchanek <msuchanek@suse.de> Reviewed-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
2022-10-26power: regulator: fix autoset error handlingJohn Keeping1-1/+7
If a regulator does not support .set_suspend_enable or .set_suspend_value then ret is set to ENOSYS early in the function. The most serious impact of this is that when no automatic setting of voltage is needed then the final regulator_set_enable() is skipped because ret has not been cleared. It seems that the error handling for regulator_set_suspend_value() is also wrong as if this succeeds then the normal boot-on checks are still required, and again ENOSYS needs special treatment here. Fixes: 11406b8f7e ("dm: regulator: support regulator more state") Signed-off-by: John Keeping <john@metanate.com>
2022-10-25Merge https://source.denx.de/u-boot/custodians/u-boot-spiWIP/25Oct2022Tom Rini7-51/+83
- Add s28hl512t, s28hl01gt (Takahiro) - Rework s25hx_t_post_bfpt_fixup() (Takahiro)
2022-10-25cmd: sf: Handle unaligned 'update' start offsetMarek Vasut1-7/+11
Currently the 'sf update' command fails in case the 'start' offset is not aligned to SPI NOR erase block size. Add the missing alignment calculation. In case the start offset is in the middle of erase block, round start address down to the nearest aligned one, compare only the updated data between what is in the SPI NOR and what is being written, copy new data at offset of the compare buffer, and write back the entire erase block. This is useful e.g. on i.MX6Q where the u-boot-with-spl.imx is at offset 0x400 in the SPI NOR, while the SPI NOR may have erase block size e.g. 0x1000 bytes. Signed-off-by: Marek Vasut <marex@denx.de> Reviewed-by: Jagan Teki <jagan@amarulasolutions.com>
2022-10-24Merge tag 'fsl-qoriq-2022-10-18' of ↵WIP/24Oct2022Tom Rini10-8/+74
https://source.denx.de/u-boot/custodians/u-boot-fsl-qoriq Layerscape update - support sysreset, - de-select FSL_IFC when booting from SD - disable unused parts of ICID tables - reduce ns_dev size for csu - enable dma snooping for ls104x - nand driver fixups for ls1043ardb rev 7.0 boards.
2022-10-24Merge branch 'master' of https://gitlab.denx.de/u-boot/custodians/u-boot-mmcTom Rini8-12/+98
2022-10-24Merge tag 'u-boot-imx-20221024' of ↵Tom Rini170-6392/+9563
https://gitlab.denx.de/u-boot/custodians/u-boot-imx u-boot-imx-20221024 ------------------- CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/13916 - for 2022.01 - rework Kontron boards (mx6 and mx8) - fixes for Toradex - fixes (SPI, CAAM, ) - sync DT with Linux - fixes for Gateworks GW7903 and GW7904 PMIC - Engicam i.Core MX8M Plus EDIMM2.2
2022-10-24configs: verdin-imx8mp: enable caamAndrejs Cainikovs1-0/+1
This change enables Cryptographic Accelerator and Assurance Module. Signed-off-by: Andrejs Cainikovs <andrejs.cainikovs@toradex.com>
2022-10-24configs: colibri-imx7: Enable bootd commandFrancesco Dolcini2-2/+0
Enable boot/bootd command in toradex colibri-imx7 defconfig, it's just convenient to have it in and every other toradex board already includes it. Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-10-24imx28: avoid num_cs and spi_max_frequency build errorsMarcel Ziswiler1-0/+2
Avoid the following build errors after the device tree sync: drivers/spi/mxs_spi.c: In function ‘mxs_spi_probe’: drivers/spi/mxs_spi.c:327:25: error: ‘struct dtd_fsl_imx23_spi’ has no member named ‘spi_max_frequency’ 327 | priv->max_freq = dtplat->spi_max_frequency; | ^~ drivers/spi/mxs_spi.c:328:23: error: ‘struct dtd_fsl_imx23_spi’ has no member named ‘num_cs’ 328 | plat->num_cs = dtplat->num_cs; | ^~ Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-10-24imx23: synchronise device tree with linuxMarcel Ziswiler4-13/+5
Synchronise device tree with linux v6.0-rc1. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-10-24imx28: synchronise device tree with linuxMarcel Ziswiler6-135/+261
Synchronise device tree with linux v6.0-rc1. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-10-24imx51: synchronise device tree with linuxMarcel Ziswiler1-9/+15
Synchronise device tree with linux v6.0-rc1. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-10-24imx53: synchronise device tree with linuxMarcel Ziswiler7-283/+577
Synchronise device tree with linux v6.0-rc1. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-10-24imx6qdl: synchronise device tree with linuxMarcel Ziswiler2-10/+12
Synchronise device tree with linux v6.0-rc1. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-10-24imx6qp: synchronise device tree with linuxMarcel Ziswiler3-4/+16
Synchronise device tree with linux v6.0-rc1. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-10-24imx6sl: synchronise device tree with linuxMarcel Ziswiler4-236/+325
Synchronise device tree with linux v6.0-rc1. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-10-24imx6sll: synchronise device tree with linuxMarcel Ziswiler4-795/+551
Synchronise device tree with linux v6.0-rc1. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-10-24imx6sx: synchronise device tree with linuxMarcel Ziswiler6-243/+709
Synchronise device tree with linux v6.0-rc1. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-10-24imx6ulz: synchronise device tree with linuxMarcel Ziswiler1-1/+0
Synchronise device tree with linux v6.0-rc1. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-10-24imx6ull: synchronise device tree with linuxMarcel Ziswiler2-4/+8
Synchronise device tree with linux v6.0-rc1. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-10-24imx6ul: synchronise device tree with linuxMarcel Ziswiler3-24/+19
Synchronise device tree with linux v6.0-rc1. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-10-24imx7d: synchronise device tree with linuxMarcel Ziswiler0-0/+0
Synchronise device tree with linux v6.0-rc1. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-10-24imx7ulp: synchronise device tree with linuxMarcel Ziswiler6-1611/+694
Synchronise device tree with linux v6.0-rc1. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-10-24arm: dts: imx8mn-venice: Consolidate with imx8mn-u-bootAdam Ford1-195/+1
Now that a unified imx8mn-u-boot is available, remove duplicated code for generating flash.bin and other common imx8mn peripherals. Signed-off-by: Adam Ford <aford173@gmail.com>
2022-10-24arm: dts: imx8mn-var-som-symphony: Consolidate with imx8mn-u-bootAdam Ford1-187/+1
Now that a unified imx8mn-u-boot is available, remove duplicated code for generating flash.bin and other common imx8mn peripherals. Signed-off-by: Adam Ford <aford173@gmail.com>
2022-10-24arm: dts: imx8mn-evk: Consolidate with imx8mn-u-bootAdam Ford1-108/+0
Now that a unified imx8mn-u-boot is available, remove duplicated code for generating flash.bin and other common imx8mn peripherals. Signed-off-by: Adam Ford <aford173@gmail.com>
2022-10-24arm: dts: imx8mn-ddr4-evk: Consolidate with imx8mn-u-bootAdam Ford1-187/+1
Now that a unified imx8mn-u-boot is available, remove duplicated code for generating flash.bin and other common imx8mn peripherals. Signed-off-by: Adam Ford <aford173@gmail.com>
2022-10-24arm: dts: imx8mn-bsh-smm-s2: Consolidate with imx8mn-u-bootAdam Ford1-171/+1
Now that a unified imx8mn-u-boot is available, remove duplicated code for generating flash.bin and other common imx8mn peripherals. Signed-off-by: Adam Ford <aford173@gmail.com>
2022-10-24arm: dts: imx8mn-beacon-kit: Consolidate with imx8mn-u-bootAdam Ford1-178/+2
Now that a unified imx8mn-u-boot is available, remove duplicated code for generating flash.bin and other common imx8mn peripherals. Signed-off-by: Adam Ford <aford173@gmail.com>
2022-10-24arm: dts: imx8mn-u-boot: Create common imx8mn-u-boot.dtsiAdam Ford1-0/+248
Multiple boards create duplicate entries in their respective -u-boot.dtsi files which all basically do the same thing. To consolidate these and make it easier to make improvements going forward, consolidate them all into one place. This file creates a flash.bin image using binman, and supports LPDDR4, DDR4 and DDR3. Since individual boards use different peripherals and different UART ports, those entries were kept in their respective board files, but the spba1 node was addded which contains all UART1-3 to help facilitate SPL_DM_SERIAL. Individual users will still need to include their respective UART and pinctrl nodes for those UARTS. This consolidated file also supports generating a flash.bin file which can boot from flexSPI if CONFIG_FSPI_CONF_HEADER is enabled. Signed-off-by: Adam Ford <aford173@gmail.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2022-10-24imx8m: fix reading of DDR4 MR registers [again]Rasmus Villemoes1-1/+7
Commit 290ffe5788 (imx8m: fix reading of DDR4 MR registers) lifted a private definition of lpddr4_mr_read() from imx8mm-cl-iot-gate board code to drivers/ddr/imx/imx8m/ddrphy_utils.c, because that version actually seems to work in practice. However, commit 99c7cc58e1 (ddr: imx: Add i.MX9 DDR controller driver) reintroduced the broken version in drivers/ddr/imx/imx8m/ddr_init.c, copied most of the rest of ddrphy_utils.c to drivers/ddr/imx/phy/ddrphy_utils.c, and stopped building drivers/ddr/imx/imx8m/ddrphy_utils.c [and that file was then finally completely removed with 7e9bd84883 (imx8m: ddrphy_utils: Remove unused file)]. I assume this must have broken the imx8mm-cl-iot-gate board, at least those that have not had their eeprom programmed with the proper information. It certainly did break our out-of-tree board which always reads back the ID register and uses that for a sanity check. So apply the fix from 290ffe5788 once again. Fixes: 99c7cc58e1 (ddr: imx: Add i.MX9 DDR controller driver) Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk> Reviewed-by: Fabio Estevam <festevam@denx.de>
2022-10-24verdin-imx8mp: spl: initialize caamAndrejs Cainikovs1-0/+11
This change initializes Cryptographic Accelerator and Assurance Module. Signed-off-by: Andrejs Cainikovs <andrejs.cainikovs@toradex.com>
2022-10-24arm: dts: verdin-imx8mp: enable caam in SPLAndrejs Cainikovs1-0/+16
CAAM is initialized in SPL, so relevant device tree nodes needs to be updated. Signed-off-by: Andrejs Cainikovs <andrejs.cainikovs@toradex.com>
2022-10-24verdin-imx8mp: various config additions and improvementsMarcel Ziswiler1-3/+25
- enable bootcount command - enable CRC32 and MD5 - enable time commands - enable GPIO LED support - enable further eMMC HS400 functionality - enable fixed PHY and MDIO driver model - enable USB host functionality - enable thermal management unit driver - enable hexdump Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-10-24verdin-imx8mm: various config additions and improvementsMarcel Ziswiler1-4/+1
- enable bootcount command - integrate bootcount using SNVS_LP general purpose register LPGPR0 - enable link-time optimisation - explicitly set a boot delay of one second - enable CRC32 and MD5 - enable command for low-level access to data in a partition - enable time commands - enable PMIC commands - improve ETHPRIME configuration - enable eMMC HS400 functionality - enable fixed PHY and MDIO driver model - remove stale PFUZE100 PMIC driver - enable thermal management unit driver - enable more USB host functionality - enable hexdump Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-10-24verdin-imx8mm: verdin-imx8mp: update env memory layout (again)Marcel Ziswiler4-4/+4
Update the distro config env memory layout for the Verdin iMX8M Mini and Verdin iMX8M Plus again: - loadaddr=0x48200000 allows for 128MB area for uncompressing (ie FIT images, kernel_comp_addr_r, kernel_comp_size) - fdt_addr_r = loadaddr + 128MB - allows for 128MB kernel - scriptaddr = fdt_addr_r + 512KB - allows for 512KB fdt - ramdisk_addr_r = scriptaddr + 512KB - allows for 512KB script Memory layout taken from commit fd5c7173ade4 ("imx8m{m,n}_venice: update env memory layout"). Note that for our regular BSP Layers and Reference Images for Yocto Project an updated distro boot script is required (see meta-toradex-bsp-common/recipes-bsp/u-boot/u-boot-distro-boot). Note that this corrects a pre-maturely applied version 2 of the same patch set. Fixes: bbe0089d29e ("verdin-imx8mm: verdin-imx8mp: update env memory layout") Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-10-24board: gateworks: venice: add imx8mm-gw7904 supportTim Harvey4-1/+933
The GW7904 is based on the i.MX 8M Mini SoC featuring: - LPDDR4 DRAM - eMMC FLASH - microSD connector with UHS support - LIS2DE12 3-axis accelerometer - Gateworks System Controller - IMX8M FEC - 2x RS232 off-board connectors - PMIC - 10x bi-color LED's - 1x miniPCIe socket with PCIe and USB2.0 - 802.3at Class 4 PoE - 10-30VDC input via barrel-jack Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2022-10-24board: imx8mp: Add Engicam i.Core MX8M Plus EDIMM2.2 Starter KitManoj Sai12-4/+2459
i.Core MX8M Plus is an EDIMM SoM based on NXP i.MX8M Plus from Engicam. i.Core MX8M Plus needs to mount on top of this Evaluation board for creating complete i.Core MX8M Plus EDIMM2.2 Starter Kit. Add support for it. Signed-off-by: Jagan Teki <jagan@amarulasolutions.com> Signed-off-by: Manoj Sai <abbaraju.manojsai@amarulasolutions.com>
2022-10-24arm64: dts: imx8mp: Add Engicam i.Core MX8M Plus EDIMM2.2 Starter KitManoj Sai2-0/+176
Genaral features: - LCD 7" C.Touch - microSD slot - Ethernet 1Gb - Wifi/BT - 2x LVDS Full HD interfaces - 3x USB 2.0 - 1x USB 3.0 - HDMI Out - Plus PCIe - MIPI CSI - 2x CAN - Audio Out i.Core MX8M Plus is an EDIMM SoM based on NXP i.MX8M Plus from Engicam. i.Core MX8M Plus needs to mount on top of this Evaluation board for creating complete i.Core MX8M Plus EDIMM2.2 Starter Kit. Add support for it. Sync the i.Core MX8M Plus is an EDIMM SoM based on NXP devicetree file from linux-next tree. commit <aec8ad34f7f24> (arm64: dts: imx8mp: Add Engicam i.Core MX8M Plus EDIMM2.2 Starter Kit) Signed-off-by: Manoj Sai <abbaraju.manojsai@amarulasolutions.com> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
2022-10-24arm64: dts: imx8mp: Add Engicam i.Core MX8M Plus SoMManoj Sai1-0/+186
i.Core MX8M Plus is an EDIMM SoM based on NXP i.MX8M Plus from Engicam. General features: - NXP i.MX8M Plus - Up to 4GB LDDR4 - 8 eMMC - Gigabit Ethernet - USB 3.0, 2.0 Host/OTG - PCIe 3.0 interface - I2S - LVDS - rest of i.MX8M Plus features i.Core MX8M Plus needs to mount on top of Engicam baseboards for creating complete platform solutions. Add support for it. Sync the i.Core MX8M Plus is an EDIMM SoM based on NXP i.MX8M Plus from Engicam devicetree file from linux-next tree. commit <eefe06b295087> (arm64: dts: imx8mp: Add Engicam i.Core MX8M Plus SoM) Signed-off-by: Manoj Sai <abbaraju.manojsai@amarulasolutions.com> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
2022-10-24board: gateworks: venice: add GW7903 PMICTim Harvey1-4/+5
The GW7903 has a BD71847 PMIC on I2C1. Adjust the model compare strings to add it. Signed-off-by: Tim Harvey <tharvey@gateworks.com> Reviewed-by: Fabio Estevam <festevam@denx.de> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
2022-10-24watchdog: ulp_wdog: add driver model for ulp watchdog driverAlice Guo1-7/+87
Enable driver model for ulp watchdog timer. When CONFIG_WDT=y and the status of device node is "okay", initr_watchdog will be called and finally calls ulp_wdt_probe() and ulp_wdt_start(). Signed-off-by: Alice Guo <alice.guo@nxp.com> Reviewed-by: Ye Li <ye.li@nxp.com> Reviewed-by: Stefan Roese <sr@denx.de>
2022-10-24watchdog: ulp_wdog: enable watchdog interrupt on imx93Alice Guo1-2/+4
The reset source of the external PMIC on i.MX93 is WDOG_ANY PAD and the source of WDOG_ANY PAD is interrupt. Therefore, using PMIC to reset needs to enable the watchdog interrupt. Signed-off-by: Alice Guo <alice.guo@nxp.com> Reviewed-by: Stefan Roese <sr@denx.de>
2022-10-24watchdog: ulp_wdog: Update watchdog driver for imx93Alice Guo1-3/+12
The WDOG clocks are sourced from the fixed 32KHz (lpo_clk).When the timeout period exceeds 2 seconds, the value written to the TOVAL register is larger than 16-bit can represent. Enabling watchdog prescaler to solve this problem. Signed-off-by: Alice Guo <alice.guo@nxp.com> Reviewed-by: Stefan Roese <sr@denx.de>
2022-10-24ulp_wdog: Update ulp wdog driver for 32bits commandYe Li1-16/+36
To use 32bits refresh and unlock command as default, check the CMD32EN bit to select the corresponding commands. Signed-off-by: Ye Li <ye.li@nxp.com> Signed-off-by: Alice Guo <alice.guo@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com> Reviewed-by: Stefan Roese <sr@denx.de>
2022-10-24cyclic: Don't disable cylic function upon exceeding CPU timeStefan Roese2-4/+10
With the migration of the watchdog infrastructure to cyclic functions it's been noticed, that at least one watchdog driver is broken now. As the execution time of it's watchdog reset function is quite long. In general it's not really necessary (right now) to disable the cyclic function upon exceeding CPU time usage. So instead of disabling the cylic function in this case, let's just print a warning once to show this potential problem to the user. Signed-off-by: Stefan Roese <sr@denx.de> Suggested-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk> Cc: Rasmus Villemoes <rasmus.villemoes@prevas.dk> Cc: Tom Rini <trini@konsulko.com> Cc: Pali Rohár <pali@kernel.org>
2022-10-24sandbox.dtsi: add a sandbox,alarm-wdt instanceRasmus Villemoes1-0/+6
In order to test that we properly handle watchdog(s) during the "wait for the user to interrupt autoboot" phase, we need a watchdog device to be watching us. Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>