[PATCH 00/11] imx: add i.MX91 and 11x11-EVK support

Peng Fan (OSS) peng.fan at oss.nxp.com
Tue Dec 3 16:42:43 CET 2024


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 at 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 at 44380000
Out:   serial at 44380000
Err:   serial at 44380000

BuildInfo:
  - ELE firmware version 2.0.0-64d8ef47

switch to partitions #0, OK
mmc1 is current device
Net:
Warning: ethernet at 428a0000 (eth1) using random MAC address - 62:b9:61:81:d0:f8
eth1: ethernet at 428a0000 [PRIME]
Hit any key to stop autoboot:  0

[1] https://www.nxp.com/products/processors-and-microcontrollers/arm-processors/i-mx-applications-processors/i-mx-9-processors/secure-energy-efficient-i-mx-91-family-brings-essential-linux-capabilities-for-thousands-of-edge-applications:i.MX91

Signed-off-by: Peng Fan <peng.fan at 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,
-- 
Peng Fan <peng.fan at nxp.com>



More information about the U-Boot mailing list