[PATCH V4 00/44] imx: add i.MX8ULP support

Peng Fan (OSS) peng.fan at oss.nxp.com
Mon Aug 2 13:01:47 CEST 2021


> Subject: Re: [PATCH V4 00/44] imx: add i.MX8ULP support
> 
> On 02.08.21 11:45, Peng Fan (OSS) wrote:
> > Hi Stefano,
> >
> > Do you have time to re-pick this patchset, since the last one set was
> > dropped.
> >
> 
> Yes, it is in my TODO list, as soon as I get some time from my working projects
> (yours and Kontron's patch are set as high priority to be merged).

Appreciated.

-Peng.

> 
> Regards,
> Stefano
> 
> > Thanks,
> > Peng.
> >
> >> Subject: [PATCH V4 00/44] imx: add i.MX8ULP support
> >>
> >> From: Peng Fan <peng.fan at nxp.com>
> >>
> >> V4:
> >>   Fix checkpatch errors
> >>   Fix some checkpatch warnings, there are still warnings such as pin
> >> header and dts exceed 100.
> >>   Tom, Stefano, please see whether you are happy with this patchset.
> >>
> >> V3:
> >>   Fix build error which break 8MN, pass buildman for i.MX.
> >>   Select GPIO_EXTRA_HEADER for 8ULP to fix build break which caused
> >> by upstream change.
> >>   Rebased
> >>   Drop 7ULP, since already been picked up.
> >>
> >> V2:
> >>   Rebased and test on new revision silicon with upower included.
> >>
> >> The i.MX 8ULP crossover applications processor family brings
> >> ultra-low power processing and advanced integrated security with
> >> EdgeLockTM secure enclave to the intelligent edge.
> >>
> >> It includes an uPower core for handling power related functions.
> >>
> >> This patchset is to add initial support for i.MX8ULP, with core soc
> >> functions, clock, dtsi, and evk board.
> >>
> >> Peng Fan (24):
> >>    arm: imx: add i.MX8ULP basic Kconfig option
> >>    arm: imx: add i.MX8ULP cpu type and helper
> >>    arm: imx: sys_proto: move boot mode define to common header
> >>    arm: imx8ulp: support print cpu info
> >>    imx: imx8ulp: add get reset cause
> >>    arm: imx: basic i.MX8ULP support
> >>    arm: imx: parse-container: guard included header files
> >>    arm: imx: move container Kconfig under mach-imx
> >>    net: fec_mxc: support i.MX8ULP
> >>    driver: serial: fsl_lpuart: support i.MX8ULP
> >>    arm: imx8ulp: add clock support
> >>    drivers: mmc: fsl_esdhc_imx: support i.MX8ULP
> >>    arm: imx8ulp: disable wdog3
> >>    arm: imx8ulp: add rdc support
> >>    arm: imx8ulp: add trdc release request
> >>    arm: imx8ulp: release trdc and assign lpav from RTD to APD
> >>    imx8ulp: unify rdc functions
> >>    arm: imx8ulp: add dummy imx_get_mac_from_fuse
> >>    arm: imx8ulp: add iomuxc support
> >>    imx8ulp: soc: correct reset cause
> >>    imx8ulp: move struct mu_type to common header
> >>    imx8ulp: add upower api support
> >>    arm: dts: add i.MX8ULP dtsi
> >>    arm: imx: add i.MX8ULP EVK support
> >>
> >> Ye Li (20):
> >>    arm: imx8: Move container parser and image to mach-imx common
> folder
> >>    arm: imx8: Move container image header file to mach-imx
> >>    arm: imx8ulp: add container support
> >>    driver: misc: Add MU and S400 API to communicate with Sentinel
> >>    pinctrl: Add pinctrl driver for imx8ulp
> >>    arm: imx8ulp: soc: Change to use CMC1 to get bootcfg
> >>    arm: imx8ulp: Enable full L2 cache in SPL
> >>    arm: imx8ulp: Update the reset vector in u-boot
> >>    drivers: misc: s400_api: Update S400_SUCCESS_IND to 0xd6
> >>    drivers: misc: imx8ulp: Add S400 API for image authentication
> >>    drivers: misc: imx8ulp: Update S400 API for release RDC
> >>    drivers: misc: s400_api: Update API for fuse read and write
> >>    arm: imx8ulp: release and configure XRDC at early phase
> >>    arm: imx8ulp: Probe the S400 MU device in arch init
> >>    arm: iMX8ULP: Add boot device relevant functions
> >>    arm: imx8ulp: Allocate DCNANO and MIPI_DSI to AD domain
> >>    driver: misc: imx8ulp: Add fuse driver for imx8ulp
> >>    imx8ulp: Use DGO_GP5 to get boot config
> >>    imx8ulp: Add workaround for eMMC boot
> >>    ddr: Add DDR driver for iMX8ULP
> >>
> >>
> >> Peng Fan (24):
> >>    arm: imx: add i.MX8ULP basic Kconfig option
> >>    arm: imx: add i.MX8ULP cpu type and helper
> >>    arm: imx: sys_proto: move boot mode define to common header
> >>    arm: imx8ulp: support print cpu info
> >>    imx: imx8ulp: add get reset cause
> >>    arm: imx: basic i.MX8ULP support
> >>    arm: imx: parse-container: guard included header files
> >>    arm: imx: move container Kconfig under mach-imx
> >>    net: fec_mxc: support i.MX8ULP
> >>    driver: serial: fsl_lpuart: support i.MX8ULP
> >>    arm: imx8ulp: add clock support
> >>    drivers: mmc: fsl_esdhc_imx: support i.MX8ULP
> >>    arm: imx8ulp: disable wdog3
> >>    arm: imx8ulp: add rdc support
> >>    arm: imx8ulp: add trdc release request
> >>    arm: imx8ulp: release trdc and assign lpav from RTD to APD
> >>    imx8ulp: unify rdc functions
> >>    arm: imx8ulp: add dummy imx_get_mac_from_fuse
> >>    arm: imx8ulp: add iomuxc support
> >>    imx8ulp: soc: correct reset cause
> >>    imx8ulp: move struct mu_type to common header
> >>    imx8ulp: add upower api support
> >>    arm: dts: add i.MX8ULP dtsi
> >>    arm: imx: add i.MX8ULP EVK support
> >>
> >> Ye Li (20):
> >>    arm: imx8: Move container parser and image to mach-imx common
> folder
> >>    arm: imx8: Move container image header file to mach-imx
> >>    arm: imx8ulp: add container support
> >>    driver: misc: Add MU and S400 API to communicate with Sentinel
> >>    pinctrl: Add pinctrl driver for imx8ulp
> >>    arm: imx8ulp: soc: Change to use CMC1 to get bootcfg
> >>    arm: imx8ulp: Enable full L2 cache in SPL
> >>    arm: imx8ulp: Update the reset vector in u-boot
> >>    drivers: misc: s400_api: Update S400_SUCCESS_IND to 0xd6
> >>    drivers: misc: imx8ulp: Add S400 API for image authentication
> >>    drivers: misc: imx8ulp: Update S400 API for release RDC
> >>    drivers: misc: s400_api: Update API for fuse read and write
> >>    arm: imx8ulp: release and configure XRDC at early phase
> >>    arm: imx8ulp: Probe the S400 MU device in arch init
> >>    arm: iMX8ULP: Add boot device relevant functions
> >>    arm: imx8ulp: Allocate DCNANO and MIPI_DSI to AD domain
> >>    driver: misc: imx8ulp: Add fuse driver for imx8ulp
> >>    imx8ulp: Use DGO_GP5 to get boot config
> >>    imx8ulp: Add workaround for eMMC boot
> >>    ddr: Add DDR driver for iMX8ULP
> >>
> >>   arch/arm/Kconfig                              |   11 +
> >>   arch/arm/Makefile                             |    4 +-
> >>   arch/arm/dts/Makefile                         |    3 +
> >>   arch/arm/dts/imx8ulp-evk-u-boot.dtsi          |   40 +
> >>   arch/arm/dts/imx8ulp-evk.dts                  |  223 ++++
> >>   arch/arm/dts/imx8ulp-pinfunc.h                |  978
> >> ++++++++++++++
> >>   arch/arm/dts/imx8ulp.dtsi                     |  728
> +++++++++++
> >>   arch/arm/include/asm/arch-imx/cpu.h           |    4 +
> >>   arch/arm/include/asm/arch-imx8ulp/cgc.h       |  130 ++
> >>   arch/arm/include/asm/arch-imx8ulp/clock.h     |   41 +
> >>   arch/arm/include/asm/arch-imx8ulp/ddr.h       |   38 +
> >>   arch/arm/include/asm/arch-imx8ulp/gpio.h      |   20 +
> >>   arch/arm/include/asm/arch-imx8ulp/imx-regs.h  |  162 +++
> >>   .../include/asm/arch-imx8ulp/imx8ulp-pins.h   |   60 +
> >>   arch/arm/include/asm/arch-imx8ulp/iomux.h     |   82 ++
> >>   arch/arm/include/asm/arch-imx8ulp/mu_hal.h    |   12 +
> >>   arch/arm/include/asm/arch-imx8ulp/pcc.h       |  139 ++
> >>   arch/arm/include/asm/arch-imx8ulp/rdc.h       |   27 +
> >>   arch/arm/include/asm/arch-imx8ulp/s400_api.h  |   41 +
> >>   arch/arm/include/asm/arch-imx8ulp/sys_proto.h |   19 +
> >>   arch/arm/include/asm/arch-imx8ulp/upower.h    |   15 +
> >>   arch/arm/include/asm/arch-mx7ulp/sys_proto.h  |    9 -
> >>   arch/arm/include/asm/global_data.h            |    5 +
> >>   .../asm/{arch-imx8 => mach-imx}/image.h       |    2 +
> >>   arch/arm/include/asm/mach-imx/sys_proto.h     |   13 +-
> >>   arch/arm/mach-imx/Kconfig                     |   15 +-
> >>   arch/arm/mach-imx/Makefile                    |    5 +
> >>   arch/arm/mach-imx/cmd_dek.c                   |    2 +-
> >>   .../{imx8/image.c => image-container.c}       |   51 +-
> >>   arch/arm/mach-imx/imx8/Kconfig                |   13 -
> >>   arch/arm/mach-imx/imx8/Makefile               |    3 -
> >>   arch/arm/mach-imx/imx8/ahab.c                 |    2 +-
> >>   arch/arm/mach-imx/imx8ulp/Kconfig             |   23 +
> >>   arch/arm/mach-imx/imx8ulp/Makefile            |   11 +
> >>   arch/arm/mach-imx/imx8ulp/cgc.c               |  455 +++++++
> >>   arch/arm/mach-imx/imx8ulp/clock.c             |  397 ++++++
> >>   arch/arm/mach-imx/imx8ulp/iomux.c             |   58 +
> >>   arch/arm/mach-imx/imx8ulp/lowlevel_init.S     |   26 +
> >>   arch/arm/mach-imx/imx8ulp/pcc.c               |  449 +++++++
> >>   arch/arm/mach-imx/imx8ulp/rdc.c               |  411 ++++++
> >>   arch/arm/mach-imx/imx8ulp/soc.c               |  545
> ++++++++
> >>   arch/arm/mach-imx/imx8ulp/upower/Makefile     |    6 +
> >>   arch/arm/mach-imx/imx8ulp/upower/upower_api.c |  486 +++++++
> >> arch/arm/mach-imx/imx8ulp/upower/upower_api.h |  258 ++++
> >> arch/arm/mach-imx/imx8ulp/upower/upower_hal.c |  180 +++
> >>   .../arm/mach-imx/{imx8 => }/parse-container.c |    4 +-
> >>   arch/arm/mach-imx/spl_imx_romapi.c            |  172 ++-
> >>   board/freescale/imx8ulp_evk/Kconfig           |   14 +
> >>   board/freescale/imx8ulp_evk/MAINTAINERS       |    6 +
> >>   board/freescale/imx8ulp_evk/Makefile          |    7 +
> >>   board/freescale/imx8ulp_evk/ddr_init.c        |  207 +++
> >>   board/freescale/imx8ulp_evk/imx8ulp_evk.c     |   67 +
> >>   board/freescale/imx8ulp_evk/lpddr4_timing.c   | 1159
> >> +++++++++++++++++
> >>   board/freescale/imx8ulp_evk/spl.c             |  105 ++
> >>   configs/imx8ulp_evk_defconfig                 |  103 ++
> >>   drivers/Makefile                              |    1 +
> >>   drivers/ddr/imx/Kconfig                       |    1 +
> >>   drivers/ddr/imx/imx8ulp/Kconfig               |   11 +
> >>   drivers/ddr/imx/imx8ulp/Makefile              |    9 +
> >>   drivers/ddr/imx/imx8ulp/ddr_init.c            |  217 +++
> >>   drivers/misc/Makefile                         |    1 +
> >>   drivers/misc/imx8ulp/Makefile                 |    4 +
> >>   drivers/misc/imx8ulp/fuse.c                   |  198 +++
> >>   drivers/misc/imx8ulp/imx8ulp_mu.c             |  234 ++++
> >>   drivers/misc/imx8ulp/s400_api.c               |  244 ++++
> >>   drivers/mmc/Kconfig                           |    2 +-
> >>   drivers/mmc/fsl_esdhc_imx.c                   |   12 +-
> >>   drivers/net/Kconfig                           |    2 +-
> >>   drivers/net/fec_mxc.c                         |    2 +-
> >>   drivers/pinctrl/nxp/Kconfig                   |   14 +
> >>   drivers/pinctrl/nxp/Makefile                  |    1 +
> >>   drivers/pinctrl/nxp/pinctrl-imx8ulp.c         |   44 +
> >>   include/configs/imx8ulp_evk.h                 |  107 ++
> >>   include/dt-bindings/clock/imx8ulp-clock.h     |  247 ++++
> >>   include/fsl_lpuart.h                          |    2 +-
> >>   75 files changed, 9313 insertions(+), 86 deletions(-)  create mode
> >> 100644 arch/arm/dts/imx8ulp-evk-u-boot.dtsi
> >>   create mode 100644 arch/arm/dts/imx8ulp-evk.dts  create mode
> 100644
> >> arch/arm/dts/imx8ulp-pinfunc.h  create mode 100644
> >> arch/arm/dts/imx8ulp.dtsi  create mode 100644
> >> arch/arm/include/asm/arch-imx8ulp/cgc.h
> >>   create mode 100644 arch/arm/include/asm/arch-imx8ulp/clock.h
> >>   create mode 100644 arch/arm/include/asm/arch-imx8ulp/ddr.h
> >>   create mode 100644 arch/arm/include/asm/arch-imx8ulp/gpio.h
> >>   create mode 100644 arch/arm/include/asm/arch-imx8ulp/imx-regs.h
> >>   create mode 100644
> arch/arm/include/asm/arch-imx8ulp/imx8ulp-pins.h
> >>   create mode 100644 arch/arm/include/asm/arch-imx8ulp/iomux.h
> >>   create mode 100644 arch/arm/include/asm/arch-imx8ulp/mu_hal.h
> >>   create mode 100644 arch/arm/include/asm/arch-imx8ulp/pcc.h
> >>   create mode 100644 arch/arm/include/asm/arch-imx8ulp/rdc.h
> >>   create mode 100644 arch/arm/include/asm/arch-imx8ulp/s400_api.h
> >>   create mode 100644 arch/arm/include/asm/arch-imx8ulp/sys_proto.h
> >>   create mode 100644 arch/arm/include/asm/arch-imx8ulp/upower.h
> >>   rename arch/arm/include/asm/{arch-imx8 => mach-imx}/image.h
> (95%)
> >> rename arch/arm/mach-imx/{imx8/image.c => image-container.c} (79%)
> >> create mode 100644 arch/arm/mach-imx/imx8ulp/Kconfig  create mode
> >> 100644 arch/arm/mach-imx/imx8ulp/Makefile
> >>   create mode 100644 arch/arm/mach-imx/imx8ulp/cgc.c  create
> mode
> >> 100644 arch/arm/mach-imx/imx8ulp/clock.c  create mode 100644
> >> arch/arm/mach-imx/imx8ulp/iomux.c  create mode 100644
> >> arch/arm/mach-imx/imx8ulp/lowlevel_init.S
> >>   create mode 100644 arch/arm/mach-imx/imx8ulp/pcc.c  create
> mode
> >> 100644 arch/arm/mach-imx/imx8ulp/rdc.c  create mode 100644
> >> arch/arm/mach-imx/imx8ulp/soc.c  create mode 100644
> >> arch/arm/mach-imx/imx8ulp/upower/Makefile
> >>   create mode 100644
> arch/arm/mach-imx/imx8ulp/upower/upower_api.c
> >>   create mode 100644
> arch/arm/mach-imx/imx8ulp/upower/upower_api.h
> >>   create mode 100644
> arch/arm/mach-imx/imx8ulp/upower/upower_hal.c
> >>   rename arch/arm/mach-imx/{imx8 => }/parse-container.c (98%)
> create
> >> mode 100644 board/freescale/imx8ulp_evk/Kconfig
> >>   create mode 100644 board/freescale/imx8ulp_evk/MAINTAINERS
> >>   create mode 100644 board/freescale/imx8ulp_evk/Makefile
> >>   create mode 100644 board/freescale/imx8ulp_evk/ddr_init.c
> >>   create mode 100644 board/freescale/imx8ulp_evk/imx8ulp_evk.c
> >>   create mode 100644 board/freescale/imx8ulp_evk/lpddr4_timing.c
> >>   create mode 100644 board/freescale/imx8ulp_evk/spl.c  create mode
> >> 100644 configs/imx8ulp_evk_defconfig  create mode 100644
> >> drivers/ddr/imx/imx8ulp/Kconfig  create mode 100644
> >> drivers/ddr/imx/imx8ulp/Makefile  create mode 100644
> >> drivers/ddr/imx/imx8ulp/ddr_init.c
> >>   create mode 100644 drivers/misc/imx8ulp/Makefile  create mode
> >> 100644 drivers/misc/imx8ulp/fuse.c  create mode 100644
> >> drivers/misc/imx8ulp/imx8ulp_mu.c  create mode 100644
> >> drivers/misc/imx8ulp/s400_api.c  create mode 100644
> >> drivers/pinctrl/nxp/pinctrl-imx8ulp.c
> >>   create mode 100644 include/configs/imx8ulp_evk.h  create mode
> >> 100644 include/dt-bindings/clock/imx8ulp-clock.h
> >>
> >> --
> >> 2.30.0
> >
> 
> 
> --
> ==============================================================
> =======
> DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
> ==============================================================
> =======


More information about the U-Boot mailing list