aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2023-01-31imx: mx6sllevk: select DM_SERIALPeng Fan
Select DM_SERIAL Signed-off-by: Peng Fan <peng.fan@nxp.com>
2023-01-31imx: mx6sllevk: correct pmic namePeng Fan
The prefix 0 has been dropped in dts, so correct in board file Signed-off-by: Peng Fan <peng.fan@nxp.com>
2023-01-31imx: mx6ull/z_14x14_evk: clean up UART iomuxPeng Fan
After DM_SERIAL, and set pinctrl_uart1 as pre-reloc, no need initialize iomux at board file. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2023-01-31imx: mx6ulz: select DM_SERIALPeng Fan
Select DM_SERIAL Signed-off-by: Peng Fan <peng.fan@nxp.com>
2023-01-31imx: mx6ull_14x14_evk: select DM_SERIALPeng Fan
Select DM_SERIAL Signed-off-by: Peng Fan <peng.fan@nxp.com>
2023-01-31pico-imx7d: Convert to DM_I2C and DM_PMICFabio Estevam
The conversion to DM_I2C is mandatory, so convert to it and also to DM_PMIC. Signed-off-by: Fabio Estevam <festevam@denx.de>
2023-01-31pico-imx7d: Convert to CONFIG_DM_SERIALFabio Estevam
The conversion to CONFIG_DM_SERIAL is mandatory, so select this option. Signed-off-by: Fabio Estevam <festevam@denx.de>
2023-01-31arm64: imx8mp: Enable SMSC LAN87xx PHY driver on i.MX8MP DHCOMMarek Vasut
These SoMs may ship with SMSC LAN8740Ai PHYs, enable the SMSC PHY driver. Signed-off-by: Marek Vasut <marex@denx.de>
2023-01-31arm64: imx8mp: Disable Atheros PHY driver on i.MX8MP DHCOMMarek Vasut
These SoMs never ship with Atheros PHYs, disable the Atheros PHY driver. Signed-off-by: Marek Vasut <marex@denx.de>
2023-01-30ARM: dts: imx8ulp-evk: Fix iomuxc issueYe Li
The property fsl,mux_mask is deleted by commit ed7bda5 (imx8ulp: synchronise device tree with linux). This causes the pinctrl driver not work on 8ULP, so fail to print any log. Signed-off-by: Ye Li <ye.li@nxp.com> Reviewed-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2023-01-30dts: imx8mp-rsb3720: modify configrations to load fip into memoryYing-Chun Liu (PaulLiu)
The changes of commit 6a21c695213b ("arm: dts: imx8mp: add of-list support to common imx8mp-u-boot.dtsi") breaks the loading of the fip. This commit fixes the break by modify the configuration properly. Signed-off-by: Ying-Chun Liu (PaulLiu) <paul.liu@linaro.org> Cc: Stefano Babic <sbabic@denx.de> Cc: Fabio Estevam <festevam@gmail.com> Cc: NXP i.MX U-Boot Team <uboot-imx@nxp.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2023-01-30dts: imx8mp: assign binman_configuration label to config-SEQYing-Chun Liu (PaulLiu)
assign a label for config-SEQ so that the board dts can modify the configuration more easily. Signed-off-by: Ying-Chun Liu (PaulLiu) <paul.liu@linaro.org> Cc: Stefano Babic <sbabic@denx.de> Cc: Fabio Estevam <festevam@gmail.com> Cc: NXP i.MX U-Boot Team <uboot-imx@nxp.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2023-01-30mx53loco: Select CONFIG_CMD_EXT4Fabio Estevam
Select the CONFIG_CMD_EXT4 option so that files can be loaded from an ext4 partition. Signed-off-by: Fabio Estevam <festevam@denx.de>
2023-01-30serial: mxc: Speed-up character transmissionLoic Poulain
Instead of waiting for empty FIFO condition before writing a character, wait for non-full FIFO condition. This helps in saving several tens of milliseconds during boot (depending verbosity). Signed-off-by: Loic Poulain <loic.poulain@linaro.org> Tested-by: Lothar Waßmann <LW@KARO-electronics.de> Acked-by: Pali Rohár <pali@kernel.org> Reviewed-by: Fabio Estevam <festevam@denx.de> Tested-by: Fabio Estevam <festevam@denx.de>
2023-01-30serial: mxc: Wait for TX completion before resetLoic Poulain
The u-boot console may show some corrupted characters when printing in board_init() due to reset or baudrate change of the UART (probe) before the TX FIFO has been completely drained. To fix this issue, and in case UART is still running, we now try to flush the FIFO before proceeding to UART reinitialization. For this we're waiting for Transmitter Complete bit, indicating that the FIFO and the shift register are empty. flushing has a 4ms timeout guard, which is normally more than enough to consume the FIFO @ low baudrate (9600bps). Signed-off-by: Loic Poulain <loic.poulain@linaro.org> Tested-by: Lothar Waßmann <LW@KARO-electronics.de> Acked-by: Pali Rohár <pali@kernel.org> Reviewed-by: Fabio Estevam <festevam@denx.de>
2023-01-30pico-imx7d: Add support for the 2GB variantFabio Estevam
Add the board detection mechanism to be able to support the 2GB variant. Based on the code from TechNexion U-Boot downstream tree. Signed-off-by: Fabio Estevam <festevam@denx.de>
2023-01-30imx8mm-phg: Add board supportFabio Estevam
Add the board support for the i.MX8MM Cloos PHG board. This board uses a imx8mm-tqma8mqml SoM from TQ-Group. imx8mm-phg.dts and imx8mm-tqma8mqml.dtsi are taken directly from Linux 6.2-rc3. Signed-off-by: Fabio Estevam <festevam@denx.de> Reviewed-by: Tom Rini <trini@konsulko.com>
2023-01-30arm64: dts: imx8mm-kontron: Add RTC aliasesFrieder Schrempf
Add aliases for the RTCs on the board and on the SoC. This ensures that the primary RTC is always the one on the board that has a buffered supply and maximum accuracy. This is a direct port of the pending commit from linux-next. Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Shawn Guo <shawnguo@kernel.org> Reviewed-by: Fabio Estevam <festevam@denx.de>
2023-01-30configs: verdin-imx8mm: Add bootaux commandPhilippe Schenker
The i.MX 8M Mini SoC does incorporate an additional M-Core. To be able to load it with a firmware, enable bootaux command as other Toradex modules also have it enabled to be consistent. Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
2023-01-30mx7: clock: Use 60MHz for the I2C clocksFabio Estevam
When an I2C clock is enabled inside enable_i2c_clk() the clock rate is configured as PLL_SYS_MAIN_120M_CLK / 2 = 60MHz. Currently, the I2C clock is retrieved from I2C1_CLK_ROOT, which may not be the one that was enabled. As there is no clock driver for the imx7d, it is better to return 60MHz for the I2C clock. This provides a workaround for the imx7d-pico board, where I2C4 is connected to the PMIC. With this change, it is possible to convert the imx7d-pico board to DM_I2C and DM_PMIC. Signed-off-by: Fabio Estevam <festevam@denx.de>
2023-01-30ARM: imx: bootaux: Fix LTO -Wlto-type-mismatchMarek Vasut
Commit 56c2dbdabab5 ("imx: bootaux: cleanup code") introduces the following LTO related warning: " arch/arm/mach-imx/imx_bootaux.c:24:31: warning: type of ‘hostmap’ does not match original declaration [-Wlto-type-mismatch] 24 | const __weak struct rproc_att hostmap[] = { }; | ^ arch/arm/mach-imx/imx8m/soc.c:1590:24: note: array types have different bounds 1590 | const struct rproc_att hostmap[] = { | ^ arch/arm/mach-imx/imx8m/soc.c:1590:24: note: ‘hostmap’ was previously declared here ../aarch64-linux-gnu/bin/ld: warning: u-boot has a LOAD segment with RWX permissions " This is because the weak empty array of structures "hostmap" is eventually replaced by non-empty array of structures with different number of elements. Fix this by avoiding weak variable size array, instead use a weak function which returns single pointer to the array. Fixes: 56c2dbdabab5 ("imx: bootaux: cleanup code") Signed-off-by: Marek Vasut <marex@denx.de> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2023-01-30ARM: imx: bootaux: Fix macro misuseMarek Vasut
There are no CONFIG_{TOOLS_,SPL_,TPL_,}IMX8M macros, nor is there one for ARM64. Use plain IS_ENABLED(CONFIG_IMX8M) and IS_ENABLED(CONFIG_ARM64) to avoid expanding the {TOOLS_,SPL_,TPL_,} part. Fixes: 56c2dbdabab5 ("imx: bootaux: cleanup code") Signed-off-by: Marek Vasut <marex@denx.de> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2023-01-30ARM: imx: Factor common code out of Data Modul i.MX8M Mini eDM SBCMarek Vasut
Pull common.c into common subdirectory of the board file, since this code can be reused by other Data Modul SBCs. Drop the include of lpddr4_timing.h, which is unneeded. Signed-off-by: Marek Vasut <marex@denx.de>
2023-01-30ARM: imx: Drop board side icache enable on Data Modul i.MX8M Mini eDM SBCMarek Vasut
The icache is enabled in common architecture code since commit: 2fa763baa1c ("ARM: imx: Enable instruction cache early on on i.MX8M") Drop the board side duplicate code. Signed-off-by: Marek Vasut <marex@denx.de>
2023-01-30ARM: imx: Enable LTO for Data Modul i.MX8M Mini eDM SBCMarek Vasut
Enable LTO to reduce the size of SPL. Signed-off-by: Marek Vasut <marex@denx.de>
2023-01-30imx6qdl-sabresd: Pass mmc aliasFabio Estevam
Originally, the mmc aliases node was present in imx6qdl-sabresd.dtsi. After the sync with Linux in commit d0399a46e7cd ("imx6dl/imx6qdl: synchronise device trees with linux"), the aliases node is gone as the upstream version does not have it. This causes a regression in which the SD card cannot be found anymore. Fix it by passing the alias node in the u-boot.dtsi file to restore the original behaviour where the SD card (esdhc3) was mapped to mmc1. Fixes: d0399a46e7cd ("imx6dl/imx6qdl: synchronise device trees with linux") Reported-by: Carlos Rafael Giani <dv@pseudoterminal.org> Signed-off-by: Fabio Estevam <festevam@denx.de>
2023-01-30ARM: imx: Reinstate decode ECSPI env location from i.MX8M ROMAPI tablesMarek Vasut
Decode ECSPI boot device in env_get_location() from i.MX8M ROMAPI tables. This is necessary to correctly identify env is in SPI NOR when the system boots from SPI NOR attached to ECSPI. This reinstates change from commit: e26d0152d61 ("ARM: imx: Decode ECSPI env location from i.MX8M ROMAPI tables") which has been dropped in commit: b0a284a7c94 ("imx: move get_boot_device to common file") Fixes: b0a284a7c94 ("imx: move get_boot_device to common file") Signed-off-by: Marek Vasut <marex@denx.de> Reviewed-by: Fabio Estevam <festevam@denx.de>
2023-01-30ARM: imx: Remove PMIC reset configuration from board filesMarek Vasut
The PCA9450 reset configuration can now be performed by the PCA9450 PMIC driver itself, remove the hard-coded variant from board code and let the PMIC driver perform this task using one-liner: ``` $ sed -i '/set WDOG_B_CFG to cold reset/,+2 d' $(git grep -l PCA9450_RESET_CTRL.*0xA1 board/) ``` Venice and i.MX93 EVK required slight manual fix up. Signed-off-by: Marek Vasut <marex@denx.de> Reviewed-by: Fabio Estevam <festevam@denx.de> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2023-01-30pmic: pca9450: Make warm reset on WDOG_B assertionMarek Vasut
The default configuration of the PMIC behavior makes the PMIC power cycle most regulators on WDOG_B assertion. This power cycling causes the memory contents of OCRAM to be lost. Some systems neeeds some memory that survives reset and reboot, therefore this patch is created. The implementation is taken almost verbatim from Linux commit 2364a64d0673f ("regulator: pca9450: Make warm reset on WDOG_B assertion") Signed-off-by: Marek Vasut <marex@denx.de> Reviewed-by: Fabio Estevam <festevam@denx.de> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2023-01-30tools: imx8image: Fix handle leakMikhail Ilin
The handle "fd" was created in imx8image.c:249 by calling the "fopen" function and is lost in imx8image.c:282. Should close the 'fd' file descriptor before exiting the parse_cfg_file(image_t *param_stack, char *name) function. Fixes: a2b96ece5be1 ("tools: add i.MX8/8X image support") Signed-off-by: Mikhail Ilin <ilin.mikhail.ol@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-01-30tools: imx8mimage: Fix handle leakMikhail Ilin
The handle "fd" was created in imx8mimage.c:178 by calling the "fopen" function and is lost in imx8mimage.c:210. Should close the 'fd' file descriptor before exiting the parse_cfg_file(char *name) function. Fixes: 6609c2663c9c ("tools: add i.MX8M image support") Signed-off-by: Mikhail Ilin <ilin.mikhail.ol@gmail.com>
2023-01-30tools: imximage: Fix check array indexMikhail Ilin
The struct dcd_v1_t is initialized to MAX_HW_CFG_SIZE_V1 (60) structs 'dcd_type_addr_data_t', so the indexes to use on its elements are [0,59]. But on line 478, the variable 'length' can take on the value 60, which applies to array overflow: cd_v1->addr_data[length].type Thus, it is necessary to tighten the check on the 'size' variable on line 463. Fixes: 0b0c6af38738 ("Prepare v2020.01") Signed-off-by: Mikhail Ilin <ilin.mikhail.ol@gmail.com>
2023-01-30apalis-imx8: add M4 boot environment helpersAndrejs Cainikovs
Add M4 boot environment functions for reference. Signed-off-by: Andrejs Cainikovs <andrejs.cainikovs@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2023-01-30apalis-imx8: set bootaux memory base and sizeAndrejs Cainikovs
Set i.MX auxiliary core memory base and size. Signed-off-by: Andrejs Cainikovs <andrejs.cainikovs@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2023-01-30apalis-imx8: update env memory layoutMarcel Ziswiler
Update the distro config env memory layout for the Apalis iMX8 aka QuadMax: - kernel_comp_addr_r=0xf0000000 temporary area for uncompressing (ie FIT images or Image.gz booted using booti) - kernel_comp_size=0x08000000 - loadaddr=0x95400000 avoiding any reserved areas located before that - 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 Basic idea of memory layout taken from commit fd5c7173ade4 ("imx8m{m,n}_venice: update env memory layout"). However, moved past any reserved areas to avoid any kind of conflicts. 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). Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2023-01-30apalis-imx8: update update_uboot confirmation messageMarcel Ziswiler
Update update_uboot confirmation message. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2023-01-30apalis-imx8: drop obsolete environment variablesMarcel Ziswiler
Drop obsolete environment variables fdt_addr, finduuid, boot_file, mmcargs, mmcdev, mmcpart and panel. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Signed-off-by: Andrejs Cainikovs <andrejs.cainikovs@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2023-01-30apalis-imx8: remove obsolete net usb startMarcel Ziswiler
Remove obsolete net USB start. While at it also add a comment about enabling distro-boot. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2023-01-30apalis-imx8: remove obsolete sdhc related config definesMarcel Ziswiler
Remove obsolete SDHC related config defines. Nowadays, all SDHC related hardware configuration comes from the device tree. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2023-01-30ddr: imx: Handle both 3733 and 3732 MTps ratesMarek Vasut
The DDR calibration tool for i.MX8M currently produces 3732 MTps rate in lpddr4_timing.c , while the PHY code expects 3733 MTps rate. Support both variants to avoid surprises where the system fails to boot. Signed-off-by: Marek Vasut <marex@denx.de>
2023-01-30apalis-imx8: add emmc/mmc card pinctrl's for different speedsAndrejs Cainikovs
Add pinctrl's for high speed eMMC and MMC cards. Signed-off-by: Andrejs Cainikovs <andrejs.cainikovs@toradex.com> Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2023-01-30board: apalis-imx8: initialize snvsAndrejs Cainikovs
Initialize Secure Non-Volatile Storage, aka SNVS. Signed-off-by: Andrejs Cainikovs <andrejs.cainikovs@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2023-01-30board: apalis-imx8: remove board_phy_config duplicateAndrejs Cainikovs
Remove a duplicate of weak board_phy_config() implementation in drivers/net/phy/phy.c. Signed-off-by: Andrejs Cainikovs <andrejs.cainikovs@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2023-01-30board: apalis-imx8: get rid of sc_err_t typePhilippe Schenker
sc_pm_setup_uart() returns int, not sc_err_t. Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2023-01-30apalis-imx8: introduce setup setting setupargsMarcel Ziswiler
Introduce setup setting setupargs and move earlycon there. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2023-01-30apalis-imx8: enable environment bootcount limitMarcel Ziswiler
Enable optional environment bootcount limit functionality. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2023-01-30apalis/colibri-imx8/8x: remove global variable scriptOleksandr Suvorov
The distroboot script system scans boot_scripts variable and try to find and use to boot each script name mentioned there. Setting global variable "script" breaks this general mechanism of searching and running a distro boot script. Remove global variables "script" to fix working the general distro boot script mechanism. Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com> Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2023-01-30apalis/colibri-imx8/8x: add overlay support for i.mx 8/8x-based somsOleksandr Suvorov
There is no "apply" command enabled for "fdt". Enable "apply" command to allow overlays to be applied. Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com> Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2023-01-30apalis-imx8: set bootdelayMarcel Ziswiler
Set the boot delay to one second. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2023-01-30apalis-imx8: provide proper config_sys_promptIgor Opaniuk
This provides correct system prompt for U-Boot console. Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com> Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com> Reviewed-by: Fabio Estevam <festevam@denx.de>