[PATCH 00/20] Add i.MXRT family support

Giulio Benetti
2020-01-07T17:23:50Z

Hi Stefano, Simon, All,

On 1/3/20 12:39 PM, Stefano Babic wrote:
> Hi Giulio,
>
> On 04/12/19 18:44, Giulio Benetti wrote:
>> This patchset add support for i.MXRT family starting from i.MXRT1050 SoC.
>> It provides:
>> - i.MXRT1050 SoC entry
>> - i.MXRT pinctrl driver
>> - i.MXRT serial driver tweaking
>> - i.MXRT sdram controller driver
>> - i.MXRT usdhc driver tweaking
>> - i.MXRT1050-evk initial support
>>
>> It uses all DM clocks all around and it loads correctly a basic Linux zImage.
>>
>
> Lukasz has already reviewed most patches, and a V2 is surely WIP. FYI: I
> archive this first series, and I'll wait for your next V2 - thanks !

I really would like to, but I'm stuck on OF_PLATDATA issue for named
clocks in SPL, see:
https://lists.denx.de/pipermail/u-boot/2019-December/394944.html

Is it enough for the moment to keep SPL *without* OF_PLATDATA and
implement it later?

Best regards
--
Giulio Benetti
Benetti Engineering sas

> Best regards,
> Stefano
>
>> Giulio Benetti (20):
>> armv7m: cache: add mmu_set_region_dcache_behaviour() stub for
>> compatibility
>> spl: fix entry_point equal to load_addr
>> clk: imx: pllv3: register PLLV3 GENERIC and USB as 2 different clocks
>> clk: imx: pllv3: set div_mask differently if PLLV3 is GENERIC or USB
>> clk: imx: pllv3: add enable() support
>> clk: imx: pllv3: add disable() support
>> clk: imx: pllv3: add set_rate() support
>> clk: imx: pllv3: add PLLV3_SYS support
>> clk: imx: pllv3: add support for PLLV3_AV type
>> clk: imx: pfd: add set_rate()
>> clk: imx: add i.IMXRT1050 clk driver
>> pinctrl: add i.MXRT driver
>> ARM: dts: imxrt1050: add dtsi file
>> serial_lpuart: add clock enable if CONFIG_CLK is defined
>> serial_lpuart: add support for i.MXRT
>> ram: add SDRAM driver for i.MXRT SoCs
>> mmc: fsl_esdhc: make if(CONFIG_IS_ENABLED(CLK)) an #if statement
>> mmc: fsl_esdhc: add compatible for fsl, imxrt-usdhc
>> imx: Add basic support for the NXP IMXRT10xx SoC family
>> imx: imxrt1050-evk: Add support for the NXP i.MXRT1050-EVK
>>
>> arch/arm/Kconfig | 10 +
>> arch/arm/Makefile | 4 +-
>> arch/arm/cpu/armv7m/cache.c | 6 +
>> arch/arm/dts/Makefile | 2 +
>> arch/arm/dts/imxrt1050-evk.dts | 209 ++++
>> arch/arm/dts/imxrt1050.dtsi | 146 +++
>> arch/arm/include/asm/arch-imxrt/clock.h | 10 +
>> arch/arm/include/asm/arch-imxrt/gpio.h | 19 +
>> arch/arm/include/asm/arch-imxrt/imx-regs.h | 20 +
>> arch/arm/include/asm/arch-imxrt/imxrt.h | 11 +
>> arch/arm/include/asm/arch-imxrt/sys_proto.h | 11 +
>> arch/arm/mach-imx/Makefile | 3 +-
>> arch/arm/mach-imx/imxrt/Kconfig | 21 +
>> arch/arm/mach-imx/imxrt/Makefile | 7 +
>> arch/arm/mach-imx/imxrt/soc.c | 35 +
>> board/freescale/imxrt1050-evk/Kconfig | 22 +
>> board/freescale/imxrt1050-evk/MAINTAINERS | 6 +
>> board/freescale/imxrt1050-evk/Makefile | 6 +
>> board/freescale/imxrt1050-evk/README | 31 +
>> board/freescale/imxrt1050-evk/imximage.cfg | 36 +
>> board/freescale/imxrt1050-evk/imxrt1050-evk.c | 81 ++
>> common/spl/spl.c | 4 +-
>> configs/imxrt1050-evk_defconfig | 74 ++
>> drivers/clk/imx/Kconfig | 16 +
>> drivers/clk/imx/Makefile | 2 +
>> drivers/clk/imx/clk-imxrt1050.c | 292 +++++
>> drivers/clk/imx/clk-pfd.c | 22 +
>> drivers/clk/imx/clk-pllv3.c | 218 +++-
>> drivers/mmc/Kconfig | 2 +-
>> drivers/mmc/fsl_esdhc_imx.c | 41 +-
>> drivers/pinctrl/nxp/Kconfig | 14 +
>> drivers/pinctrl/nxp/Makefile | 1 +
>> drivers/pinctrl/nxp/pinctrl-imxrt.c | 40 +
>> drivers/ram/Kconfig | 8 +
>> drivers/ram/Makefile | 2 +
>> drivers/ram/imxrt_sdram.c | 439 ++++++++
>> drivers/serial/serial_lpuart.c | 28 +-
>> include/configs/imxrt1050-evk.h | 59 ++
>> include/dt-bindings/clock/imxrt1050-clock.h | 65 ++
>> include/dt-bindings/memory/imxrt-sdram.h | 100 ++
>> include/dt-bindings/pinctrl/pins-imxrt1050.h | 993 ++++++++++++++++++
>> include/fsl_lpuart.h | 3 +-
>> 42 files changed, 3083 insertions(+), 36 deletions(-)
>> create mode 100644 arch/arm/dts/imxrt1050-evk.dts
>> create mode 100644 arch/arm/dts/imxrt1050.dtsi
>> create mode 100644 arch/arm/include/asm/arch-imxrt/clock.h
>> create mode 100644 arch/arm/include/asm/arch-imxrt/gpio.h
>> create mode 100644 arch/arm/include/asm/arch-imxrt/imx-regs.h
>> create mode 100644 arch/arm/include/asm/arch-imxrt/imxrt.h
>> create mode 100644 arch/arm/include/asm/arch-imxrt/sys_proto.h
>> create mode 100644 arch/arm/mach-imx/imxrt/Kconfig
>> create mode 100644 arch/arm/mach-imx/imxrt/Makefile
>> create mode 100644 arch/arm/mach-imx/imxrt/soc.c
>> create mode 100644 board/freescale/imxrt1050-evk/Kconfig
>> create mode 100644 board/freescale/imxrt1050-evk/MAINTAINERS
>> create mode 100644 board/freescale/imxrt1050-evk/Makefile
>> create mode 100644 board/freescale/imxrt1050-evk/README
>> create mode 100644 board/freescale/imxrt1050-evk/imximage.cfg
>> create mode 100644 board/freescale/imxrt1050-evk/imxrt1050-evk.c
>> create mode 100644 configs/imxrt1050-evk_defconfig
>> create mode 100644 drivers/clk/imx/clk-imxrt1050.c
>> create mode 100644 drivers/pinctrl/nxp/pinctrl-imxrt.c
>> create mode 100644 drivers/ram/imxrt_sdram.c
>> create mode 100644 include/configs/imxrt1050-evk.h
>> create mode 100644 include/dt-bindings/clock/imxrt1050-clock.h
>> create mode 100644 include/dt-bindings/memory/imxrt-sdram.h
>> create mode 100644 include/dt-bindings/pinctrl/pins-imxrt1050.h
>>
>