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).
Regards,
Stefano
Thanks,
Peng.
Subject: [PATCH V4 00/44] imx: add i.MX8ULP support
From: Peng Fan <peng....@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: sba...@denx.de
=====================================================================