aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-07-25imx8mq: synchronise device tree with linuxMarcel Ziswiler
Synchronise device tree with linux v5.19-rc5. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25verdin-imx8mp: synchronise device tree with linuxMarcel Ziswiler
Synchronise device tree with linux v5.19-rc5. Please note that this also means that instead of the previous "generic" U-Boot specific carrier board agnostic device tree we are now using the regular one for the Verdin Development (carrier) board (e.g. imx8mp-verdin-wifi-dev.dtb rather than the previous imx8mp-verdin.dtb). Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25imx8mp-rsb3720-a1: fix pwms property warningsMarcel Ziswiler
Fix the following build-time pwms property warnings: w+arch/arm/dts/imx8mp-rsb3720-a1.dtb: Warning (pwms_property): /lvds_backlight@0:pwms: property size (12) too small for cell size 3 w+arch/arm/dts/imx8mp-rsb3720-a1.dtb: Warning (pwms_property): /lvds_backlight@1:pwms: property size (12) too small for cell size 3 Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25imx8mp: synchronise device tree with linuxMarcel Ziswiler
Synchronise device tree with linux v5.19-rc5. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25imx8mn: synchronise device tree with linuxMarcel Ziswiler
Synchronise device tree with linux v5.19-rc5. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25imx8mm-mx8menlo/verdin-imx8mm: synchronise device tree with linuxMarcel Ziswiler
Synchronise device tree with linux v5.19-rc5. Please note that this also means that instead of the previous "generic" U-Boot specific carrier board agnostic device tree we are now using the regular one for the Verdin Development (carrier) board (e.g. imx8mm-verdin-wifi-dev.dtb rather than the previous imx8mm-verdin.dtb). Please further note that the PMIC node name got changed from a pmic label to pmic@25 which required adjustment in resp. board SPL file board/toradex/verdin-imx8mm/spl.c. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25imx8mm-kontron-n801x-s-lvds: fix pwms property warningsMarcel Ziswiler
Fix the following build-time pwms property warnings: w+arch/arm/dts/imx8mm-kontron-n801x-s-lvds.dtb: Warning (pwms_property): /backlight:pwms: property size (12) too small for cell size 3 Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25imx8mm-venice-gw700x: prepare to synchronise device trees with linuxMarcel Ziswiler
As a preparatory step remove the pinctrl_pmic reference which does not exist in the Linux upistream device tree. This avoids the following error once synchronised: +Error: arch/arm/dts/imx8mm-venice-gw700x-u-boot.dtsi:26.1-14 Label or path pinctrl_pmic not found Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25colibri_vf: synchronise device tree with linuxMarcel Ziswiler
Synchronise device tree with linux v5.19-rc5. Please note that this also means that instead of the previous "generic" U-Boot specific carrier board agnostic device tree we are now using the regular one for the Colibri Evaluation (carrier) board V3 (e.g. vf610-colibri-eval-v3.dtb rather than the previous vf610-colibri.dtb). Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25vf500/vf610: synchronise device trees with linuxMarcel Ziswiler
Synchronise device trees with linux v5.19-rc5. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25ARM: DTS: bk4r1/pcm052: prepare to synchronise device trees with linuxMarcel Ziswiler
As a preparatory step rename the included SoC dtsi from vf.dtsi to vf610.dtsi as this is how it is named in Linux upstream. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25colibri-imx7d/-emmc: synchronise device tree with linuxMarcel Ziswiler
Synchronise device tree with linux-next next-20220708. Please note that this also means that instead of the previous "generic" U-Boot specific carrier board agnostic device trees we are now using the regular ones for the Colibri Evaluation (carrier) board V3 (e.g. imx7d-colibri-eval-v3.dtb rather than the previous imx7-colibri-rawnand.dtb and imx7d-colibri-emmc-eval-v3.dtb rather than the previous imx7-colibri-emmc.dtb). Please further note that the PMIC node name got changed from rn5t567@33 to pmic@33 which required adjustment in resp. board file board/toradex/colibri_imx7/colibri_imx7.c. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25imx7s/d: synchronise device trees with linuxMarcel Ziswiler
Synchronise device tree with linux-next next-20220708. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25imx: imx7d-sdb: prepare to synchronise device trees with linuxMarcel Ziswiler
As a preparatory step remove the epdc reference which does not exist in the Linux upstream device tree and rename the qspi1 reference to qspi as this is how it is named in the Linux upstream device tree. This avoids the following error once synchronised: +Error: arch/arm/dts/.imx7d-sdb-qspi.dtb.pre.tmp:10.1-6 Label or path epdc not found +Error: arch/arm/dts/.imx7d-sdb-qspi.dtb.pre.tmp:29.1-7 Label or path qspi1 not found +Error: arch/arm/dts/imx7d-sdb-qspi-u-boot.dtsi:6.1-7 Label or path qspi1 not found Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25imx: imx7-cm: prepare to synchronise device trees with linuxMarcel Ziswiler
As a preparatory step rename the qspi1 reference to qspi as this is how it is named in the Linux upstream device tree. This avoids the following error once synchronised: +Error: arch/arm/dts/.imx7-cm.dtb.pre.tmp:96.1-7 Label or path qspi1 not found Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25colibri-imx6ull/-emmc: synchronise device tree with linuxMarcel Ziswiler
Synchronise device tree with linux v5.19-rc5. Please note that this also means that instead of the previous "generic" U-Boot specific carrier board agnostic device trees we are now using the regular ones for the Colibri Evaluation (carrier) board V3 (e.g. imx6ull-colibri-eval-v3.dtb rather than the previous imx6ull-colibri.dtb and imx6ull-colibri-emmc-eval-v3.dtb rather than the previous imx6ull-colibri-emmc.dtb). Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25imx6ul/imx6ull: synchronise device trees with linuxMarcel Ziswiler
Synchronise device trees with linux v5.19-rc5. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25imx: mx6ul_14x14_evk: prepare to synchronise device trees with linuxMarcel Ziswiler
As a preparatory step remove the qspi node with its flash0 label as this is already in the Linux upstream device tree. This avoids the following error once synchronised: +arch/arm/dts/imx6ul-14x14-evk.dtb: ERROR (duplicate_label): /soc/bus@2100000/spi@21e0000/n25q256a@0: Duplicate label 'flash0' on /soc/bus@2100000/spi@21e0000/n25q256a@0 and /soc/bus@2100000/spi@21e0000/flash@0 Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25colibri_imx6: synchronise device tree with linuxMarcel Ziswiler
Synchronise device tree with linux-next next-20220708. Please note that this also means that instead of the previous "generic" U-Boot specific carrier board agnostic device tree we are now using the regular one for the Colibri Evaluation (carrier) board V3 (e.g. imx6dl-colibri-eval-v3.dtb rather than the previous imx6-colibri.dtb). Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25apalis_imx6: synchronise device tree with linuxMarcel Ziswiler
Synchronise device tree with linux-next 20220706. Please note that this also means that instead of the previous "generic" U-Boot specific carrier board agnostic device tree we are now using the regular one for the Apalis Evaluation (carrier) board (e.g. imx6q-apalis-eval.dtb rather than the previous imx6-apalis.dtb). Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25imx6dl/imx6qdl: synchronise device trees with linuxMarcel Ziswiler
Synchronise device trees with linux-next next-20220708. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25tbs2910: prepare to synchronise device trees with linuxMarcel Ziswiler
As a preparatory step make sure to refer to absolute node paths where labels were removed in Linux upstream. This avoids the following error once synchronised: +Error: arch/arm/dts/imx6q-tbs2910-u-boot.dtsi:3.1-7 Label or path aips1 not found +Error: arch/arm/dts/imx6q-tbs2910-u-boot.dtsi:11.1-5 Label or path soc not found Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25imx6: aristainetos: fix pwms property warningsMarcel Ziswiler
Fix the following build-time pwms property warnings: w+arch/arm/dts/imx6dl-aristainetos2c_7.dtb: Warning (pwms_property): /backlight:pwms: property size (12) too small for cell size 3 w+arch/arm/dts/imx6dl-aristainetos2c_cslb_7.dtb: Warning (pwms_property): /backlight:pwms: property size (12) too small for cell size 3 Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Reviewed-by: Heiko Schocher <hs@denx.de>
2022-07-25board/BuR/brppt2: fix pwms property warningMarcel Ziswiler
Fix the following build-time pwms property warning: w+arch/arm/dts/imx6dl-brppt2.dtb: Warning (pwms_property): /backlight:pwms: property size (12) too small for cell size 3 Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2022-07-25toradex: common: Improve product/serial print during bootFrancesco Dolcini
Add product id print in show_board_info(), with an increasing number of Toradex SKUs available with small differences it makes sense to print it. Move serial number print to a dedicated line, this prevents the previous line with the product name to overflow the 80 columns with any reasonable product name length. Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2022-07-25toradex: tdx-cfg-block: Use official SKU namesFrancesco Dolcini
Up to now in the code we named Toradex SKUs in a slightly different way compared to the official product name, start using the official names from now on to avoid misunderstanding. This has also the nice benefit of the string being shorter, allowing to fit nicely in 80 columns even adding the product ID when printing the hardware information. Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2022-07-25toradex: common: Remove #ifdef usage for 2nd ethaddrFrancesco Dolcini
Fix checkpatch warn, use `IS_ENABLED(CONFIG_TDX_CFG_BLOCK_2ND_ETHADDR)` instead of `#ifdef CONFIG_TDX_CFG_BLOCK_2ND_ETHADDR`. Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2022-07-25toradex: common: Remove stale function declarationFrancesco Dolcini
Remove stale show_boot_logo() declaration, not used anywhere. Fixes: e6fd30dd9eef ("toradex: drop legacy show_boot_logo function and use splashscreen") Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2022-07-25toradex: tdx-cfg-block: Cleanup interactive cfg block creationFrancesco Dolcini
Simplify interactive config block creation code, instead of having a a long list of questions and a complex tree of preprocessor directive to guess the exact SKU, just ask the user to select it from a list. The modules list is filtered out to include only SKUs that are supported by the specific u-boot binary in execution. Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2022-07-25toradex: common: Use ARRAY_SIZE macroFrancesco Dolcini
Use generally available ARRAY_SIZE macro, instead of hand-coding it every time is needed. Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2022-07-25toradex: common: Remove stale comments about modules availabilityFrancesco Dolcini
Remove comment "not currently on sale" on specific SKUs, this information does not belong to the code and will never be accurate. Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2022-07-25toradex: tdx-cfg-block: add 0068 i.mx 8m mini skuPhilippe Schenker
Add new i.MX 8M Mini SKU to ConfigBlock handling. 0068: Verdin iMX8M Mini Quad 2GB WB IT No CAN This SKU is identical to 0055 but without CAN. Mention this in the name so those modules can be distinguished. Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com> Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2022-07-25imx8mm: Sync device tree with linux-next 20220711Fabio Estevam
Sync imx8mm.dtsi device tree with linux-next 20220711. The main motivation for doing this sync is the sha256 regression reported by Andrey Zhizhikin [1]. The linux-next kernel has the following commit, which disables the job ring 0 and fixes the problem: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?h=next-20220715&id=dc9c1ceb555ff661e6fc1081434600771f29657c [1] https://lore.kernel.org/u-boot/AM6PR06MB46912207D9460CD9924F35DAA68B9@AM6PR06MB4691.eurprd06.prod.outlook.com/T/#t Signed-off-by: Fabio Estevam <festevam@denx.de>
2022-07-25doc: board: nxp: Add instructions to boot from QSPIMamta Shukla
Add instructions to build and boot from QSPI Flash Signed-off-by: Mamta Shukla <mamta.shukla@leica-geosystems.com> Signed-off-by: Thomas Haemmerle <thomas.haemmerle@leica-geosystems.com> Tested-by: Adam Ford <aford173@gmail.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2022-07-25board: freescale: Add entry for imx8mm_evk_fspi_defconfigMamta Shukla
Add entry for imx8mm_evk_fspi_defconfig in board/freescale/imx8mm_evk/MAINTAINERS Signed-off-by: Mamta Shukla <mamta.shukla@leica-geosystems.com> Signed-off-by: Thomas Haemmerle <thomas.haemmerle@leica-geosystems.com> Tested-by: Adam Ford <aford173@gmail.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2022-07-25configs: imx8mm: Define CONFIG_SYS_UBOOT_BASE for i.MX8mMamta Shukla
The macro `CONFIG_SYS_UBOOT_BASE` is used by SPL loaders `"NOR"` and `"XIP"` to determine the base address of u-boot. For `"NOR"` on i.MX8MM it is the base address of QSPI0 plus the offset of the flattened image tree blob. Although `QSPI0_AMBA_BASE` is used to define CONFIG_SYS_UBOOT_BASE in multiple board header files for i.MX8MM, it is not specified. Specify offset of flattened image tree blob (needs to be set to same value as specified in 'binman' node), base address of QSPI0 and size of FlexSPI configuration block. Signed-off-by: Mamta Shukla <mamta.shukla@leica-geosystems.com> Signed-off-by: Thomas Haemmerle <thomas.haemmerle@leica-geosystems.com> Tested-by: Adam Ford <aford173@gmail.com> Reviewed-by: Fabio Estevam <festevam@denx.de> Reviewed-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
2022-07-25board: freescale: Add QSPI Boot support in spl for i.MX8mMamta Shukla
Add QSPI Boot option in u-boot-spl for i.MX8m EVK. Signed-off-by: Mamta Shukla <mamta.shukla@leica-geosystems.com> Signed-off-by: Thomas Haemmerle <thomas.haemmerle@leica-geosystems.com> Tested-by: Adam Ford <aford173@gmail.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2022-07-25configs: Add config for enabling FSPI boot option for i.MX8mMamta Shukla
Add imx8mm_evk_fspi_defconfig to build QSPI boot image. This config is based on imx8mm_evk_defconfig with addtional config options to define FSPI Header parameters required to generate QSPI Header. Update SPL offset to include header size and overwrite IMX_CONFIG to use lpddr.cfg for FSPI. Signed-off-by: Mamta Shukla <mamta.shukla@leica-geosystems.com> Signed-off-by: Thomas Haemmerle <thomas.haemmerle@leica-geosystems.com> Tested-by: Adam Ford <aford173@gmail.com> Reviewed-by: Fabio Estevam <festevam@denx.de> Reviewed-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
2022-07-25dts: imx8mm-uboot: Add support to pack FlexSPI Header using binmanMamta Shukla
Add definition for FSPI configuration block and subsequently new offsets for u-boot-spl and u-boot-itb for CONFIG_FSPI_HEADER option. Signed-off-by: Mamta Shukla <mamta.shukla@leica-geosystems.com> Signed-off-by: Thomas Haemmerle <thomas.haemmerle@leica-geosystems.com> Tested-by: Adam Ford <aford173@gmail.com> Reviewed-by: Fabio Estevam <festevam@denx.de>
2022-07-25tools: mkimage: Add support to generate FlexSPI Header for i.MX8mMamta Shukla
Add struct with Flex SPI Configuration Block and enable generating fspi header using mkimage. Refer i.MX 8M Mini Application Processor Reference Manual for detailed information about parameters for FlexSPI Configuration block. Signed-off-by: Mamta Shukla <mamta.shukla@leica-geosystems.com> Signed-off-by: Thomas Haemmerle <thomas.haemmerle@leica-geosystems.com> Tested-by: Adam Ford <aford173@gmail.com> Reviewed-by: Fabio Estevam <festevam@denx.de> Reviewed-by: Andrey Zhizhikin <andrey.zhizhikin@leica-geosystems.com>
2022-07-25tools: imx8mimage: Keep IVT reserved1 field zero alwaysMarek Vasut
Since fe8acf556c3 ("imx: HAB: Validate IVT before authenticating image") the U-Boot HAB implementation is checking whether reserved1 field in IVT is zero or not. In case the field is not zero, IVT validation fails. Stop setting IVT reserved1 field to non-zero in mkimage imx8m plugin, otherwise the validation cannot ever work. Note that this only affects legacy boards which do not use binman. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Fabio Estevam <festevam@denx.de> Cc: Peng Fan <peng.fan@nxp.com> Cc: Stefano Babic <sbabic@denx.de>
2022-07-25imx8ulp: soc.c: use rom_api_query_boot_infor() wrapperRasmus Villemoes
Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
2022-07-25imx8m: soc.c: use rom_api_query_boot_infor() wrapperRasmus Villemoes
Reviewed-by: Peng Fan <peng.fan@nxp.com> Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
2022-07-25imx8: use ROM API wrappers in spl_imx_romapi.cRasmus Villemoes
Simplify the use of the ROM API by using the wrappers that take care of saving/restoring gd and computing the xor value. This makes the generated code smaller and the C code easier to read. Reviewed-by: Peng Fan <peng.fan@nxp.com> Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
2022-07-25imx8: add rom api wrappersRasmus Villemoes
The ROM API is thoroughly undocumented, but apparently passing the xor of the real arguments as an extra argument is required [1]. Also, we need to do the "save gd/restore gd" dance. These are both error-prone, and lead to a lot of code duplication. Since both imx8m[np] and imx8ulp SOCs have this, add a separate translation unit which is included precisely when the new CONFIG_IMX8_ROMAPI symbol is set, which provide convenience wrappers that take care of computing the xor value as well as doing the gd dance, and that thus have a more intuitive API. Subsequent patches will make use of these to reduce boilerplate. [1] One wonders, for example, if the check is only applied to the lower 32 bits, or if we're implicitly relying on all 64-bit pointer values we're passing effectively have 0 in the upper 32 bits. Reviewed-by: Peng Fan <peng.fan@nxp.com> Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
2022-07-25imx8: sys_proto.h: change guard logic around ROM APIRasmus Villemoes
This exposes the struct rom_api, the g_rom_api variable declaration and the associated #defines to slightly fewer boards: namely, those IMX8M which are not IMX8MN or IMX8MP. But the latter two are the only IMX8M* ones where the g_rom_api variable is defined (in imx8m/soc.c), so that should be fine. Reviewed-by: Peng Fan <peng.fan@nxp.com> Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
2022-07-25imx8: add hidden IMX8_ROMAPI Kconfig symbolRasmus Villemoes
In order not to repeat the IMX8MN || IMX8MP || IMX8ULP logic in multiple places where we need to know if the SOC exposes the ROM API, add a "def_bool y" Kconfig symbol. Reviewed-by: Peng Fan <peng.fan@nxp.com> Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
2022-07-25mx6cuboxi: fix board detection while patching device-tree phy nodesJosua Mayer
ft_board_setup relies on the board_type() function to optimize which phy nodes need to be enabled for Linux. Add calls to setup and release the board-detect GPIOs. Also fix the switch-case statement to only enable phy address 4 for Cubox and unknown devices. Fixes: 741ce308 ("mx6cuboxi: fixup dtb ethernet phy nodes before booting an OS") Signed-off-by: Josua Mayer <josua@solid-run.com>
2022-07-25arm: dts: imx8mm-venice-gw700x: add support for GPY111 phyTim Harvey
The TI DP83867 phy has been replaced with the MaxLinear GPY111 phy due to part availability. Add support for it: - increase post-reset time to 300ms per datasheet - leave tx-delay/rx-delay undefined in dt defaulting to 2.0ns Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2022-07-25usb: ehci-mx6: Remove MX6Q_ARM2 related ifdeferyFabio Estevam
The imx6q arm2 board support has been removed from U-Boot as it did not get converted to DM. Remove the MX6Q_ARM2 related ifdefery in the driver. Signed-off-by: Fabio Estevam <festevam@denx.de>