
iMX91 is reduced part from iMX93 with part number with some IPs removed [1]. The i.MX 91 family features an Cortex-A55 running at up to 1.4GHz, and supports for LPDDR4 memory.
Patch 1-4 are fixes when developing i.MX91 support. Patch 5-11 are to support i.MX91 and 11x11-EVK.
CI: https://dev.azure.com/pengfan/uboot-ci/_build/results?buildId=4
Bootlog:
U-Boot SPL 2025.01-rc3-00092-gc065e3b6a3ec-dirty (Dec 03 2024 - 18:24:41 +0800) PMIC: Nominal Voltage Mode DDR: 2400MTS Normal Boot Trying to boot from BOOTROM Boot Stage: Primary boot image offset 0x8000, pagesize 0x200, ivt offset 0x0 Load image from 0x4b800 by ROM_API NOTICE: TRDC init done NOTICE: BL31: v2.10.0 (release):lf-6.6.36-2.1.0-rc3-dirty NOTICE: BL31: Built : 13:31:37, Dec 2 2024
U-Boot 2025.01-rc3-00092-gc065e3b6a3ec-dirty (Dec 03 2024 - 18:24:41 +0800)
Reset Status: POR
CPU: NXP i.MX91(31) Rev1.0 A55 at 1400 MHz CPU: Consumer temperature grade (0C to 95C) Model: NXP i.MX91 11X11 EVK board DRAM: 2 GiB Core: 216 devices, 24 uclasses, devicetree: separate WDT: Started watchdog@42490000 with servicing every 1000ms (40s timeout) MMC: FSL_SDHC: 0, FSL_SDHC: 1 Loading Environment from MMC... Reading from MMC(1)... *** Warning - bad CRC, using default environment
In: serial@44380000 Out: serial@44380000 Err: serial@44380000
BuildInfo: - ELE firmware version 2.0.0-64d8ef47
switch to partitions #0, OK mmc1 is current device Net: Warning: ethernet@428a0000 (eth1) using random MAC address - 62:b9:61:81:d0:f8 eth1: ethernet@428a0000 [PRIME] Hit any key to stop autoboot: 0
[1] https://www.nxp.com/products/processors-and-microcontrollers/arm-processors/...
Signed-off-by: Peng Fan peng.fan@nxp.com --- Peng Fan (8): gpio: imx_rgpio2p: Move 8ulp_data to data section imx9: trdc: correct DEBUG usage imx9: gpio: include types.h header imx: Add iMX91 support clk: imx93: support i.MX91 pinctrl: imx93: support i.MX91 arm64: dts: add NXP i.MX91 device tree imx: Support i.MX91 11x11 EVK board
Ye Li (3): imx93: Update 9x9 part fuses checking clk: imx: clk-fracn-gppll: Add new PLL rate ddr: imx: Add new rates for i.MX91
arch/arm/dts/imx91-11x11-evk-u-boot.dtsi | 195 ++ arch/arm/dts/imx91-u-boot.dtsi | 92 + arch/arm/include/asm/arch-imx/cpu.h | 5 + arch/arm/include/asm/arch-imx9/clock.h | 7 + arch/arm/include/asm/arch-imx9/gpio.h | 2 + arch/arm/include/asm/arch-imx9/imx91_pins.h | 770 ++++++++ arch/arm/include/asm/mach-imx/iomux-v3.h | 2 +- arch/arm/include/asm/mach-imx/sys_proto.h | 6 + arch/arm/mach-imx/imx9/Kconfig | 13 + arch/arm/mach-imx/imx9/clock.c | 37 +- arch/arm/mach-imx/imx9/container.cfg | 6 +- arch/arm/mach-imx/imx9/imximage.cfg | 6 +- arch/arm/mach-imx/imx9/soc.c | 47 +- arch/arm/mach-imx/imx9/trdc.c | 2 +- board/freescale/imx91_evk/Kconfig | 19 + board/freescale/imx91_evk/MAINTAINERS | 7 + board/freescale/imx91_evk/Makefile | 16 + board/freescale/imx91_evk/imx91_evk.c | 33 + board/freescale/imx91_evk/imx91_evk.env | 63 + board/freescale/imx91_evk/lpddr4_timing_1600mts.c | 1995 ++++++++++++++++++++ .../imx91_evk/lpddr4_timing_1600mts_ecc.c | 1995 ++++++++++++++++++++ board/freescale/imx91_evk/lpddr4_timing_2400mts.c | 1995 ++++++++++++++++++++ .../imx91_evk/lpddr4_timing_2400mts_ecc.c | 1995 ++++++++++++++++++++ board/freescale/imx91_evk/spl.c | 167 ++ configs/imx91_11x11_evk_defconfig | 145 ++ configs/imx91_11x11_evk_inline_ecc_defconfig | 146 ++ doc/board/nxp/imx91_11x11_evk.rst | 70 + doc/board/nxp/index.rst | 1 + drivers/clk/imx/clk-fracn-gppll.c | 5 +- drivers/clk/imx/clk-imx93.c | 52 +- drivers/cpu/imx8_cpu.c | 10 + drivers/ddr/imx/phy/ddrphy_utils.c | 8 + drivers/gpio/imx_rgpio2p.c | 2 +- drivers/pinctrl/nxp/pinctrl-imx93.c | 1 + .../include/dt-bindings/clock/imx93-clock.h | 6 +- .../src/arm64/freescale/imx91-11x11-evk.dts | 875 +++++++++ dts/upstream/src/arm64/freescale/imx91-pinfunc.h | 770 ++++++++ dts/upstream/src/arm64/freescale/imx91.dtsi | 70 + include/configs/imx91_evk.h | 21 + 39 files changed, 11617 insertions(+), 40 deletions(-) --- base-commit: 98dd010b311e68b8398428cadf56a6381f7de202 change-id: 20241130-imx91-9de528a1a4f2
Best regards,