> 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 <[email protected]> > >> > >> 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: [email protected] > ============================================================== > =======

