mbox series

[U-Boot,V2,00/51] Support i.MX8MM/N

Message ID 20190708015333.20411-1-peng.fan@nxp.com
Headers show
Series Support i.MX8MM/N | expand

Message

Peng Fan July 8, 2019, 1:38 a.m. UTC
This patchset is to support i.MX8MM/8MN with some update
in ddr settings and ddr driver update.

V2:
Fix build break, add Cc for some patches, and drop CCF select in i.MX8MM
Fix script to remove srctree in tools/imx8m_image.sh
Fix License
Rebased

V1:
The initial patchset to support i.MX8MM is
https://patchwork.ozlabs.org/cover/1093140/
But in this patchset I dropped CCF, and use original CLK uclass


Bai Ping (1):
  imx8mq: Update the ddrc QoS setting for B1 chip

Jacky Bai (2):
  driver: ddr: Refine the ddr init driver on imx8m
  ddr: imx8m: Fix the ddr init hang on imx8mq

Peng Fan (46):
  linux: compat: guard PAGE_SIZE
  dm: clk: ignore default settings when node not valid
  pinctrl: imx: use devfdt_get_addr_size_index
  i2c: mxc: add CONFIG_CLK support
  tools: imx8m_image: align spl bin image size
  ddr: imx8m: fix ddr firmware location when enable SPL OF
  tools: imx8mimage: fix HDMI/FIT parsing
  imx8m: add image cfg for i.MX8MM lpddr4
  imx: add IMX8MQ kconfig entry
  imx: add IMX8MM kconfig entry
  imx: imx8mm: add clock bindings header
  imx: add i.MX8MM cpu type
  imx: spl: add spl_board_boot_device for i.MX8MM
  imx8m: update imx-regs for i.MX8MM
  imx: add get_cpu_rev support for i.MX8MM
  imx8m: rename clock to clock_imx8mq
  imx8m: restructure clock.h
  imx8m: add clk support for i.MX8MM
  imx8m: soc: probe clk before relocation
  imx8m: add pin header for i.MX8MM
  imx: add i.MX8MM PE property
  imx8m: Fix MMU table issue for OPTEE memory
  imx8m: set BYPASS ID SWAP to avoid AXI bus errors
  imx8m: soc: enable SCTR clock before timer init
  serial: Kconfig: make MXC_UART usable for MX7 and IMX8M
  clk: imx: add Kconfig entry for i.MX8MM
  clk: imx: add i.MX8MM clk driver
  imx: add i.MX8MM EVK board support
  imx: add i.MX8MN kconfig entry
  imx8mn: support get_cpu_rev
  imx8m: add clk support for i.MX8MN
  imx8mn: set BYPASS ID SWAP to avoid AXI bus errors
  imx: add i.MX8MN PE property
  imx8mn: add pin header
  imx: spl: use spl_board_boot_device for i.MX8MN
  spl: pass args to board_return_to_bootrom
  imx: add rom api support
  imx: cpu: restrict get_boot_device
  imx8mn: add get_boot_device
  tools: imx8mimage: add ROM VERSION
  pinctrl: imx8m: support i.MX8MN
  tools: imx8m_image: support ddr4 firmware
  clk: imx: add i.MX8MN clk support
  imx8m: add i.MX8MN ddr4 image cfg file
  imx: add dtsi for i.MX8MN
  imx: add i.MX8MN DDR4 board support

Ye Li (2):
  imx8m: Configure trustzone region 0 for non-secure access
  ddr: imx8m: Fix ddr4 driver build issue

 arch/arm/dts/Makefile                              |    4 +-
 arch/arm/dts/imx8mm-evk-u-boot.dtsi                |   92 +
 arch/arm/dts/imx8mm-evk.dts                        |  235 +++
 arch/arm/dts/imx8mm-pinfunc.h                      |  629 +++++++
 arch/arm/dts/imx8mm.dtsi                           |  733 ++++++++
 arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi           |   92 +
 arch/arm/dts/imx8mn-ddr4-evk.dts                   |  221 +++
 arch/arm/dts/imx8mn-pinfunc.h                      |  646 +++++++
 arch/arm/dts/imx8mn.dtsi                           |  712 +++++++
 arch/arm/include/asm/arch-imx/cpu.h                |    7 +
 arch/arm/include/asm/arch-imx8m/clock.h            |  494 +----
 arch/arm/include/asm/arch-imx8m/clock_imx8mm.h     |  465 +++++
 arch/arm/include/asm/arch-imx8m/clock_imx8mq.h     |  424 +++++
 arch/arm/include/asm/arch-imx8m/imx-regs.h         |   75 +-
 arch/arm/include/asm/arch-imx8m/imx8mm_pins.h      |  691 +++++++
 arch/arm/include/asm/arch-imx8m/imx8mn_pins.h      |  763 ++++++++
 arch/arm/include/asm/mach-imx/iomux-v3.h           |    4 +
 arch/arm/include/asm/mach-imx/mxc_i2c.h            |    6 +
 arch/arm/include/asm/mach-imx/sys_proto.h          |   42 +
 arch/arm/mach-imx/Kconfig                          |    4 +
 arch/arm/mach-imx/Makefile                         |    2 +
 arch/arm/mach-imx/cpu.c                            |   16 +-
 arch/arm/mach-imx/imx8m/Kconfig                    |   28 +-
 arch/arm/mach-imx/imx8m/Makefile                   |    4 +-
 arch/arm/mach-imx/imx8m/clock_imx8mm.c             |  707 +++++++
 .../arm/mach-imx/imx8m/{clock.c => clock_imx8mq.c} |    7 +-
 arch/arm/mach-imx/imx8m/clock_slice.c              |  815 ++++++++
 arch/arm/mach-imx/imx8m/imximage-8mm-lpddr4.cfg    |   16 +
 arch/arm/mach-imx/imx8m/imximage-8mn-ddr4.cfg      |   17 +
 arch/arm/mach-imx/imx8m/soc.c                      |  162 +-
 arch/arm/mach-imx/imx_romapi.c                     |  292 +++
 arch/arm/mach-imx/spl.c                            |    8 +
 arch/arm/mach-rockchip/rk3288-board-tpl.c          |    5 +-
 arch/arm/mach-rockchip/rk3368-board-tpl.c          |    5 +-
 arch/arm/mach-rockchip/rk3399-board-spl.c          |    5 +-
 arch/arm/mach-rockchip/rk3399-board-tpl.c          |    5 +-
 board/freescale/imx8mm_evk/Kconfig                 |   12 +
 board/freescale/imx8mm_evk/MAINTAINERS             |    6 +
 board/freescale/imx8mm_evk/Makefile                |   12 +
 board/freescale/imx8mm_evk/imx8mm_evk.c            |   90 +
 board/freescale/imx8mm_evk/lpddr4_timing.c         | 1980 ++++++++++++++++++++
 board/freescale/imx8mm_evk/spl.c                   |  216 +++
 board/freescale/imx8mn_evk/Kconfig                 |   14 +
 board/freescale/imx8mn_evk/MAINTAINERS             |    6 +
 board/freescale/imx8mn_evk/Makefile                |   12 +
 board/freescale/imx8mn_evk/ddr4_timing.c           | 1213 ++++++++++++
 board/freescale/imx8mn_evk/imx8mn_evk.c            |   85 +
 board/freescale/imx8mn_evk/spl.c                   |   90 +
 board/freescale/imx8mq_evk/lpddr4_timing.c         |   16 +-
 common/spl/spl_bootrom.c                           |    7 +-
 configs/imx8mm_evk_defconfig                       |   51 +
 configs/imx8mn_ddr4_evk_defconfig                  |   53 +
 drivers/clk/clk-uclass.c                           |    3 +
 drivers/clk/imx/Kconfig                            |   14 +
 drivers/clk/imx/Makefile                           |    1 +
 drivers/clk/imx/clk-imx8mm.c                       |  121 ++
 drivers/ddr/imx/imx8m/Kconfig                      |    6 +
 drivers/ddr/imx/imx8m/Makefile                     |    4 +-
 drivers/ddr/imx/imx8m/ddr4_init.c                  |  113 --
 drivers/ddr/imx/imx8m/ddr_init.c                   |  168 ++
 drivers/ddr/imx/imx8m/ddrphy_utils.c               |    4 +
 drivers/ddr/imx/imx8m/helper.c                     |   22 +-
 drivers/ddr/imx/imx8m/lpddr4_init.c                |  188 --
 drivers/i2c/mxc_i2c.c                              |   17 +
 drivers/pinctrl/nxp/pinctrl-imx.c                  |    4 +-
 drivers/pinctrl/nxp/pinctrl-imx8m.c                |    1 +
 drivers/serial/Kconfig                             |    2 +-
 include/configs/imx8mm_evk.h                       |  200 ++
 include/configs/imx8mn_evk.h                       |  198 ++
 include/dt-bindings/clock/imx8mm-clock.h           |  244 +++
 include/dt-bindings/clock/imx8mn-clock.h           |  215 +++
 include/imximage.h                                 |    1 +
 include/linux/compat.h                             |    2 +
 include/spl.h                                      |    3 +-
 tools/imx8m_image.sh                               |   15 +-
 tools/imx8mimage.c                                 |   31 +-
 76 files changed, 13065 insertions(+), 808 deletions(-)
 create mode 100644 arch/arm/dts/imx8mm-evk-u-boot.dtsi
 create mode 100644 arch/arm/dts/imx8mm-evk.dts
 create mode 100644 arch/arm/dts/imx8mm-pinfunc.h
 create mode 100644 arch/arm/dts/imx8mm.dtsi
 create mode 100644 arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi
 create mode 100644 arch/arm/dts/imx8mn-ddr4-evk.dts
 create mode 100644 arch/arm/dts/imx8mn-pinfunc.h
 create mode 100644 arch/arm/dts/imx8mn.dtsi
 create mode 100644 arch/arm/include/asm/arch-imx8m/clock_imx8mm.h
 create mode 100644 arch/arm/include/asm/arch-imx8m/clock_imx8mq.h
 create mode 100644 arch/arm/include/asm/arch-imx8m/imx8mm_pins.h
 create mode 100644 arch/arm/include/asm/arch-imx8m/imx8mn_pins.h
 create mode 100644 arch/arm/mach-imx/imx8m/clock_imx8mm.c
 rename arch/arm/mach-imx/imx8m/{clock.c => clock_imx8mq.c} (99%)
 create mode 100644 arch/arm/mach-imx/imx8m/imximage-8mm-lpddr4.cfg
 create mode 100644 arch/arm/mach-imx/imx8m/imximage-8mn-ddr4.cfg
 create mode 100644 arch/arm/mach-imx/imx_romapi.c
 create mode 100644 board/freescale/imx8mm_evk/Kconfig
 create mode 100644 board/freescale/imx8mm_evk/MAINTAINERS
 create mode 100644 board/freescale/imx8mm_evk/Makefile
 create mode 100644 board/freescale/imx8mm_evk/imx8mm_evk.c
 create mode 100644 board/freescale/imx8mm_evk/lpddr4_timing.c
 create mode 100644 board/freescale/imx8mm_evk/spl.c
 create mode 100644 board/freescale/imx8mn_evk/Kconfig
 create mode 100644 board/freescale/imx8mn_evk/MAINTAINERS
 create mode 100644 board/freescale/imx8mn_evk/Makefile
 create mode 100644 board/freescale/imx8mn_evk/ddr4_timing.c
 create mode 100644 board/freescale/imx8mn_evk/imx8mn_evk.c
 create mode 100644 board/freescale/imx8mn_evk/spl.c
 create mode 100644 configs/imx8mm_evk_defconfig
 create mode 100644 configs/imx8mn_ddr4_evk_defconfig
 create mode 100644 drivers/clk/imx/clk-imx8mm.c
 delete mode 100644 drivers/ddr/imx/imx8m/ddr4_init.c
 create mode 100644 drivers/ddr/imx/imx8m/ddr_init.c
 delete mode 100644 drivers/ddr/imx/imx8m/lpddr4_init.c
 create mode 100644 include/configs/imx8mm_evk.h
 create mode 100644 include/configs/imx8mn_evk.h
 create mode 100644 include/dt-bindings/clock/imx8mm-clock.h
 create mode 100644 include/dt-bindings/clock/imx8mn-clock.h

Comments

Frieder Schrempf July 8, 2019, 8:47 a.m. UTC | #1
Hi Peng,

On 08.07.19 03:38, Peng Fan wrote:
> This patchset is to support i.MX8MM/8MN with some update
> in ddr settings and ddr driver update.
> 
> V2:
> Fix build break, add Cc for some patches, and drop CCF select in i.MX8MM
> Fix script to remove srctree in tools/imx8m_image.sh
> Fix License
> Rebased

It seems like patch 29 is missing. I can't apply the series to master.

Regards,
Frieder

> 
> V1:
> The initial patchset to support i.MX8MM is
> https://patchwork.ozlabs.org/cover/1093140/
> But in this patchset I dropped CCF, and use original CLK uclass
> 
> 
> Bai Ping (1):
>    imx8mq: Update the ddrc QoS setting for B1 chip
> 
> Jacky Bai (2):
>    driver: ddr: Refine the ddr init driver on imx8m
>    ddr: imx8m: Fix the ddr init hang on imx8mq
> 
> Peng Fan (46):
>    linux: compat: guard PAGE_SIZE
>    dm: clk: ignore default settings when node not valid
>    pinctrl: imx: use devfdt_get_addr_size_index
>    i2c: mxc: add CONFIG_CLK support
>    tools: imx8m_image: align spl bin image size
>    ddr: imx8m: fix ddr firmware location when enable SPL OF
>    tools: imx8mimage: fix HDMI/FIT parsing
>    imx8m: add image cfg for i.MX8MM lpddr4
>    imx: add IMX8MQ kconfig entry
>    imx: add IMX8MM kconfig entry
>    imx: imx8mm: add clock bindings header
>    imx: add i.MX8MM cpu type
>    imx: spl: add spl_board_boot_device for i.MX8MM
>    imx8m: update imx-regs for i.MX8MM
>    imx: add get_cpu_rev support for i.MX8MM
>    imx8m: rename clock to clock_imx8mq
>    imx8m: restructure clock.h
>    imx8m: add clk support for i.MX8MM
>    imx8m: soc: probe clk before relocation
>    imx8m: add pin header for i.MX8MM
>    imx: add i.MX8MM PE property
>    imx8m: Fix MMU table issue for OPTEE memory
>    imx8m: set BYPASS ID SWAP to avoid AXI bus errors
>    imx8m: soc: enable SCTR clock before timer init
>    serial: Kconfig: make MXC_UART usable for MX7 and IMX8M
>    clk: imx: add Kconfig entry for i.MX8MM
>    clk: imx: add i.MX8MM clk driver
>    imx: add i.MX8MM EVK board support
>    imx: add i.MX8MN kconfig entry
>    imx8mn: support get_cpu_rev
>    imx8m: add clk support for i.MX8MN
>    imx8mn: set BYPASS ID SWAP to avoid AXI bus errors
>    imx: add i.MX8MN PE property
>    imx8mn: add pin header
>    imx: spl: use spl_board_boot_device for i.MX8MN
>    spl: pass args to board_return_to_bootrom
>    imx: add rom api support
>    imx: cpu: restrict get_boot_device
>    imx8mn: add get_boot_device
>    tools: imx8mimage: add ROM VERSION
>    pinctrl: imx8m: support i.MX8MN
>    tools: imx8m_image: support ddr4 firmware
>    clk: imx: add i.MX8MN clk support
>    imx8m: add i.MX8MN ddr4 image cfg file
>    imx: add dtsi for i.MX8MN
>    imx: add i.MX8MN DDR4 board support
> 
> Ye Li (2):
>    imx8m: Configure trustzone region 0 for non-secure access
>    ddr: imx8m: Fix ddr4 driver build issue
> 
>   arch/arm/dts/Makefile                              |    4 +-
>   arch/arm/dts/imx8mm-evk-u-boot.dtsi                |   92 +
>   arch/arm/dts/imx8mm-evk.dts                        |  235 +++
>   arch/arm/dts/imx8mm-pinfunc.h                      |  629 +++++++
>   arch/arm/dts/imx8mm.dtsi                           |  733 ++++++++
>   arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi           |   92 +
>   arch/arm/dts/imx8mn-ddr4-evk.dts                   |  221 +++
>   arch/arm/dts/imx8mn-pinfunc.h                      |  646 +++++++
>   arch/arm/dts/imx8mn.dtsi                           |  712 +++++++
>   arch/arm/include/asm/arch-imx/cpu.h                |    7 +
>   arch/arm/include/asm/arch-imx8m/clock.h            |  494 +----
>   arch/arm/include/asm/arch-imx8m/clock_imx8mm.h     |  465 +++++
>   arch/arm/include/asm/arch-imx8m/clock_imx8mq.h     |  424 +++++
>   arch/arm/include/asm/arch-imx8m/imx-regs.h         |   75 +-
>   arch/arm/include/asm/arch-imx8m/imx8mm_pins.h      |  691 +++++++
>   arch/arm/include/asm/arch-imx8m/imx8mn_pins.h      |  763 ++++++++
>   arch/arm/include/asm/mach-imx/iomux-v3.h           |    4 +
>   arch/arm/include/asm/mach-imx/mxc_i2c.h            |    6 +
>   arch/arm/include/asm/mach-imx/sys_proto.h          |   42 +
>   arch/arm/mach-imx/Kconfig                          |    4 +
>   arch/arm/mach-imx/Makefile                         |    2 +
>   arch/arm/mach-imx/cpu.c                            |   16 +-
>   arch/arm/mach-imx/imx8m/Kconfig                    |   28 +-
>   arch/arm/mach-imx/imx8m/Makefile                   |    4 +-
>   arch/arm/mach-imx/imx8m/clock_imx8mm.c             |  707 +++++++
>   .../arm/mach-imx/imx8m/{clock.c => clock_imx8mq.c} |    7 +-
>   arch/arm/mach-imx/imx8m/clock_slice.c              |  815 ++++++++
>   arch/arm/mach-imx/imx8m/imximage-8mm-lpddr4.cfg    |   16 +
>   arch/arm/mach-imx/imx8m/imximage-8mn-ddr4.cfg      |   17 +
>   arch/arm/mach-imx/imx8m/soc.c                      |  162 +-
>   arch/arm/mach-imx/imx_romapi.c                     |  292 +++
>   arch/arm/mach-imx/spl.c                            |    8 +
>   arch/arm/mach-rockchip/rk3288-board-tpl.c          |    5 +-
>   arch/arm/mach-rockchip/rk3368-board-tpl.c          |    5 +-
>   arch/arm/mach-rockchip/rk3399-board-spl.c          |    5 +-
>   arch/arm/mach-rockchip/rk3399-board-tpl.c          |    5 +-
>   board/freescale/imx8mm_evk/Kconfig                 |   12 +
>   board/freescale/imx8mm_evk/MAINTAINERS             |    6 +
>   board/freescale/imx8mm_evk/Makefile                |   12 +
>   board/freescale/imx8mm_evk/imx8mm_evk.c            |   90 +
>   board/freescale/imx8mm_evk/lpddr4_timing.c         | 1980 ++++++++++++++++++++
>   board/freescale/imx8mm_evk/spl.c                   |  216 +++
>   board/freescale/imx8mn_evk/Kconfig                 |   14 +
>   board/freescale/imx8mn_evk/MAINTAINERS             |    6 +
>   board/freescale/imx8mn_evk/Makefile                |   12 +
>   board/freescale/imx8mn_evk/ddr4_timing.c           | 1213 ++++++++++++
>   board/freescale/imx8mn_evk/imx8mn_evk.c            |   85 +
>   board/freescale/imx8mn_evk/spl.c                   |   90 +
>   board/freescale/imx8mq_evk/lpddr4_timing.c         |   16 +-
>   common/spl/spl_bootrom.c                           |    7 +-
>   configs/imx8mm_evk_defconfig                       |   51 +
>   configs/imx8mn_ddr4_evk_defconfig                  |   53 +
>   drivers/clk/clk-uclass.c                           |    3 +
>   drivers/clk/imx/Kconfig                            |   14 +
>   drivers/clk/imx/Makefile                           |    1 +
>   drivers/clk/imx/clk-imx8mm.c                       |  121 ++
>   drivers/ddr/imx/imx8m/Kconfig                      |    6 +
>   drivers/ddr/imx/imx8m/Makefile                     |    4 +-
>   drivers/ddr/imx/imx8m/ddr4_init.c                  |  113 --
>   drivers/ddr/imx/imx8m/ddr_init.c                   |  168 ++
>   drivers/ddr/imx/imx8m/ddrphy_utils.c               |    4 +
>   drivers/ddr/imx/imx8m/helper.c                     |   22 +-
>   drivers/ddr/imx/imx8m/lpddr4_init.c                |  188 --
>   drivers/i2c/mxc_i2c.c                              |   17 +
>   drivers/pinctrl/nxp/pinctrl-imx.c                  |    4 +-
>   drivers/pinctrl/nxp/pinctrl-imx8m.c                |    1 +
>   drivers/serial/Kconfig                             |    2 +-
>   include/configs/imx8mm_evk.h                       |  200 ++
>   include/configs/imx8mn_evk.h                       |  198 ++
>   include/dt-bindings/clock/imx8mm-clock.h           |  244 +++
>   include/dt-bindings/clock/imx8mn-clock.h           |  215 +++
>   include/imximage.h                                 |    1 +
>   include/linux/compat.h                             |    2 +
>   include/spl.h                                      |    3 +-
>   tools/imx8m_image.sh                               |   15 +-
>   tools/imx8mimage.c                                 |   31 +-
>   76 files changed, 13065 insertions(+), 808 deletions(-)
>   create mode 100644 arch/arm/dts/imx8mm-evk-u-boot.dtsi
>   create mode 100644 arch/arm/dts/imx8mm-evk.dts
>   create mode 100644 arch/arm/dts/imx8mm-pinfunc.h
>   create mode 100644 arch/arm/dts/imx8mm.dtsi
>   create mode 100644 arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi
>   create mode 100644 arch/arm/dts/imx8mn-ddr4-evk.dts
>   create mode 100644 arch/arm/dts/imx8mn-pinfunc.h
>   create mode 100644 arch/arm/dts/imx8mn.dtsi
>   create mode 100644 arch/arm/include/asm/arch-imx8m/clock_imx8mm.h
>   create mode 100644 arch/arm/include/asm/arch-imx8m/clock_imx8mq.h
>   create mode 100644 arch/arm/include/asm/arch-imx8m/imx8mm_pins.h
>   create mode 100644 arch/arm/include/asm/arch-imx8m/imx8mn_pins.h
>   create mode 100644 arch/arm/mach-imx/imx8m/clock_imx8mm.c
>   rename arch/arm/mach-imx/imx8m/{clock.c => clock_imx8mq.c} (99%)
>   create mode 100644 arch/arm/mach-imx/imx8m/imximage-8mm-lpddr4.cfg
>   create mode 100644 arch/arm/mach-imx/imx8m/imximage-8mn-ddr4.cfg
>   create mode 100644 arch/arm/mach-imx/imx_romapi.c
>   create mode 100644 board/freescale/imx8mm_evk/Kconfig
>   create mode 100644 board/freescale/imx8mm_evk/MAINTAINERS
>   create mode 100644 board/freescale/imx8mm_evk/Makefile
>   create mode 100644 board/freescale/imx8mm_evk/imx8mm_evk.c
>   create mode 100644 board/freescale/imx8mm_evk/lpddr4_timing.c
>   create mode 100644 board/freescale/imx8mm_evk/spl.c
>   create mode 100644 board/freescale/imx8mn_evk/Kconfig
>   create mode 100644 board/freescale/imx8mn_evk/MAINTAINERS
>   create mode 100644 board/freescale/imx8mn_evk/Makefile
>   create mode 100644 board/freescale/imx8mn_evk/ddr4_timing.c
>   create mode 100644 board/freescale/imx8mn_evk/imx8mn_evk.c
>   create mode 100644 board/freescale/imx8mn_evk/spl.c
>   create mode 100644 configs/imx8mm_evk_defconfig
>   create mode 100644 configs/imx8mn_ddr4_evk_defconfig
>   create mode 100644 drivers/clk/imx/clk-imx8mm.c
>   delete mode 100644 drivers/ddr/imx/imx8m/ddr4_init.c
>   create mode 100644 drivers/ddr/imx/imx8m/ddr_init.c
>   delete mode 100644 drivers/ddr/imx/imx8m/lpddr4_init.c
>   create mode 100644 include/configs/imx8mm_evk.h
>   create mode 100644 include/configs/imx8mn_evk.h
>   create mode 100644 include/dt-bindings/clock/imx8mm-clock.h
>   create mode 100644 include/dt-bindings/clock/imx8mn-clock.h
>
Peng Fan July 8, 2019, 8:49 a.m. UTC | #2
> Subject: Re: [U-Boot] [PATCH V2 00/51] Support i.MX8MM/N
> 
> Hi Peng,
> 
> On 08.07.19 03:38, Peng Fan wrote:
> > This patchset is to support i.MX8MM/8MN with some update in ddr
> > settings and ddr driver update.
> >
> > V2:
> > Fix build break, add Cc for some patches, and drop CCF select in
> > i.MX8MM Fix script to remove srctree in tools/imx8m_image.sh Fix
> > License Rebased
> 
> It seems like patch 29 is missing. I can't apply the series to master.
The patch is a bit big, patchwork blocks it, need admin to approve.
You could take patches from here.
https://github.com/MrVan/u-boot/tree/8m-7-5

Regards,
Peng.
> 
> Regards,
> Frieder
> 
> >
> > V1:
> > The initial patchset to support i.MX8MM is
> > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpatc
> >
> hwork.ozlabs.org%2Fcover%2F1093140%2F&data=02%7C01%7Cpeng.fa
> n%40nx
> >
> p.com%7C3cdae44c2666481a810c08d70380fa74%7C686ea1d3bc2b4c6fa92
> cd99c5c3
> >
> 01635%7C0%7C0%7C636981724817212847&sdata=gP8Rmx0rpBZJoJAG
> Auun0iiwV
> > lDLJ5gjDDMR340FRn4%3D&reserved=0
> > But in this patchset I dropped CCF, and use original CLK uclass
> >
> >
> > Bai Ping (1):
> >    imx8mq: Update the ddrc QoS setting for B1 chip
> >
> > Jacky Bai (2):
> >    driver: ddr: Refine the ddr init driver on imx8m
> >    ddr: imx8m: Fix the ddr init hang on imx8mq
> >
> > Peng Fan (46):
> >    linux: compat: guard PAGE_SIZE
> >    dm: clk: ignore default settings when node not valid
> >    pinctrl: imx: use devfdt_get_addr_size_index
> >    i2c: mxc: add CONFIG_CLK support
> >    tools: imx8m_image: align spl bin image size
> >    ddr: imx8m: fix ddr firmware location when enable SPL OF
> >    tools: imx8mimage: fix HDMI/FIT parsing
> >    imx8m: add image cfg for i.MX8MM lpddr4
> >    imx: add IMX8MQ kconfig entry
> >    imx: add IMX8MM kconfig entry
> >    imx: imx8mm: add clock bindings header
> >    imx: add i.MX8MM cpu type
> >    imx: spl: add spl_board_boot_device for i.MX8MM
> >    imx8m: update imx-regs for i.MX8MM
> >    imx: add get_cpu_rev support for i.MX8MM
> >    imx8m: rename clock to clock_imx8mq
> >    imx8m: restructure clock.h
> >    imx8m: add clk support for i.MX8MM
> >    imx8m: soc: probe clk before relocation
> >    imx8m: add pin header for i.MX8MM
> >    imx: add i.MX8MM PE property
> >    imx8m: Fix MMU table issue for OPTEE memory
> >    imx8m: set BYPASS ID SWAP to avoid AXI bus errors
> >    imx8m: soc: enable SCTR clock before timer init
> >    serial: Kconfig: make MXC_UART usable for MX7 and IMX8M
> >    clk: imx: add Kconfig entry for i.MX8MM
> >    clk: imx: add i.MX8MM clk driver
> >    imx: add i.MX8MM EVK board support
> >    imx: add i.MX8MN kconfig entry
> >    imx8mn: support get_cpu_rev
> >    imx8m: add clk support for i.MX8MN
> >    imx8mn: set BYPASS ID SWAP to avoid AXI bus errors
> >    imx: add i.MX8MN PE property
> >    imx8mn: add pin header
> >    imx: spl: use spl_board_boot_device for i.MX8MN
> >    spl: pass args to board_return_to_bootrom
> >    imx: add rom api support
> >    imx: cpu: restrict get_boot_device
> >    imx8mn: add get_boot_device
> >    tools: imx8mimage: add ROM VERSION
> >    pinctrl: imx8m: support i.MX8MN
> >    tools: imx8m_image: support ddr4 firmware
> >    clk: imx: add i.MX8MN clk support
> >    imx8m: add i.MX8MN ddr4 image cfg file
> >    imx: add dtsi for i.MX8MN
> >    imx: add i.MX8MN DDR4 board support
> >
> > Ye Li (2):
> >    imx8m: Configure trustzone region 0 for non-secure access
> >    ddr: imx8m: Fix ddr4 driver build issue
> >
> >   arch/arm/dts/Makefile                              |    4 +-
> >   arch/arm/dts/imx8mm-evk-u-boot.dtsi                |   92 +
> >   arch/arm/dts/imx8mm-evk.dts                        |  235 +++
> >   arch/arm/dts/imx8mm-pinfunc.h                      |  629
> +++++++
> >   arch/arm/dts/imx8mm.dtsi                           |  733
> ++++++++
> >   arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi           |   92 +
> >   arch/arm/dts/imx8mn-ddr4-evk.dts                   |  221 +++
> >   arch/arm/dts/imx8mn-pinfunc.h                      |  646
> +++++++
> >   arch/arm/dts/imx8mn.dtsi                           |  712
> +++++++
> >   arch/arm/include/asm/arch-imx/cpu.h                |    7 +
> >   arch/arm/include/asm/arch-imx8m/clock.h            |  494 +----
> >   arch/arm/include/asm/arch-imx8m/clock_imx8mm.h     |  465
> +++++
> >   arch/arm/include/asm/arch-imx8m/clock_imx8mq.h     |  424
> +++++
> >   arch/arm/include/asm/arch-imx8m/imx-regs.h         |   75 +-
> >   arch/arm/include/asm/arch-imx8m/imx8mm_pins.h      |  691
> +++++++
> >   arch/arm/include/asm/arch-imx8m/imx8mn_pins.h      |  763
> ++++++++
> >   arch/arm/include/asm/mach-imx/iomux-v3.h           |    4 +
> >   arch/arm/include/asm/mach-imx/mxc_i2c.h            |    6 +
> >   arch/arm/include/asm/mach-imx/sys_proto.h          |   42 +
> >   arch/arm/mach-imx/Kconfig                          |    4 +
> >   arch/arm/mach-imx/Makefile                         |    2 +
> >   arch/arm/mach-imx/cpu.c                            |   16 +-
> >   arch/arm/mach-imx/imx8m/Kconfig                    |   28 +-
> >   arch/arm/mach-imx/imx8m/Makefile                   |    4 +-
> >   arch/arm/mach-imx/imx8m/clock_imx8mm.c             |  707
> +++++++
> >   .../arm/mach-imx/imx8m/{clock.c => clock_imx8mq.c} |    7 +-
> >   arch/arm/mach-imx/imx8m/clock_slice.c              |  815
> ++++++++
> >   arch/arm/mach-imx/imx8m/imximage-8mm-lpddr4.cfg    |   16 +
> >   arch/arm/mach-imx/imx8m/imximage-8mn-ddr4.cfg      |   17 +
> >   arch/arm/mach-imx/imx8m/soc.c                      |  162 +-
> >   arch/arm/mach-imx/imx_romapi.c                     |  292
> +++
> >   arch/arm/mach-imx/spl.c                            |    8 +
> >   arch/arm/mach-rockchip/rk3288-board-tpl.c          |    5 +-
> >   arch/arm/mach-rockchip/rk3368-board-tpl.c          |    5 +-
> >   arch/arm/mach-rockchip/rk3399-board-spl.c          |    5 +-
> >   arch/arm/mach-rockchip/rk3399-board-tpl.c          |    5 +-
> >   board/freescale/imx8mm_evk/Kconfig                 |   12 +
> >   board/freescale/imx8mm_evk/MAINTAINERS             |    6 +
> >   board/freescale/imx8mm_evk/Makefile                |   12 +
> >   board/freescale/imx8mm_evk/imx8mm_evk.c            |   90 +
> >   board/freescale/imx8mm_evk/lpddr4_timing.c         | 1980
> ++++++++++++++++++++
> >   board/freescale/imx8mm_evk/spl.c                   |  216 +++
> >   board/freescale/imx8mn_evk/Kconfig                 |   14 +
> >   board/freescale/imx8mn_evk/MAINTAINERS             |    6 +
> >   board/freescale/imx8mn_evk/Makefile                |   12 +
> >   board/freescale/imx8mn_evk/ddr4_timing.c           | 1213
> ++++++++++++
> >   board/freescale/imx8mn_evk/imx8mn_evk.c            |   85 +
> >   board/freescale/imx8mn_evk/spl.c                   |   90 +
> >   board/freescale/imx8mq_evk/lpddr4_timing.c         |   16 +-
> >   common/spl/spl_bootrom.c                           |    7 +-
> >   configs/imx8mm_evk_defconfig                       |   51 +
> >   configs/imx8mn_ddr4_evk_defconfig                  |   53 +
> >   drivers/clk/clk-uclass.c                           |    3 +
> >   drivers/clk/imx/Kconfig                            |   14 +
> >   drivers/clk/imx/Makefile                           |    1 +
> >   drivers/clk/imx/clk-imx8mm.c                       |  121 ++
> >   drivers/ddr/imx/imx8m/Kconfig                      |    6 +
> >   drivers/ddr/imx/imx8m/Makefile                     |    4 +-
> >   drivers/ddr/imx/imx8m/ddr4_init.c                  |  113 --
> >   drivers/ddr/imx/imx8m/ddr_init.c                   |  168 ++
> >   drivers/ddr/imx/imx8m/ddrphy_utils.c               |    4 +
> >   drivers/ddr/imx/imx8m/helper.c                     |   22 +-
> >   drivers/ddr/imx/imx8m/lpddr4_init.c                |  188 --
> >   drivers/i2c/mxc_i2c.c                              |   17 +
> >   drivers/pinctrl/nxp/pinctrl-imx.c                  |    4 +-
> >   drivers/pinctrl/nxp/pinctrl-imx8m.c                |    1 +
> >   drivers/serial/Kconfig                             |    2 +-
> >   include/configs/imx8mm_evk.h                       |  200 ++
> >   include/configs/imx8mn_evk.h                       |  198 ++
> >   include/dt-bindings/clock/imx8mm-clock.h           |  244 +++
> >   include/dt-bindings/clock/imx8mn-clock.h           |  215 +++
> >   include/imximage.h                                 |    1 +
> >   include/linux/compat.h                             |    2 +
> >   include/spl.h                                      |    3 +-
> >   tools/imx8m_image.sh                               |   15 +-
> >   tools/imx8mimage.c                                 |   31 +-
> >   76 files changed, 13065 insertions(+), 808 deletions(-)
> >   create mode 100644 arch/arm/dts/imx8mm-evk-u-boot.dtsi
> >   create mode 100644 arch/arm/dts/imx8mm-evk.dts
> >   create mode 100644 arch/arm/dts/imx8mm-pinfunc.h
> >   create mode 100644 arch/arm/dts/imx8mm.dtsi
> >   create mode 100644 arch/arm/dts/imx8mn-ddr4-evk-u-boot.dtsi
> >   create mode 100644 arch/arm/dts/imx8mn-ddr4-evk.dts
> >   create mode 100644 arch/arm/dts/imx8mn-pinfunc.h
> >   create mode 100644 arch/arm/dts/imx8mn.dtsi
> >   create mode 100644
> arch/arm/include/asm/arch-imx8m/clock_imx8mm.h
> >   create mode 100644
> arch/arm/include/asm/arch-imx8m/clock_imx8mq.h
> >   create mode 100644
> arch/arm/include/asm/arch-imx8m/imx8mm_pins.h
> >   create mode 100644
> arch/arm/include/asm/arch-imx8m/imx8mn_pins.h
> >   create mode 100644 arch/arm/mach-imx/imx8m/clock_imx8mm.c
> >   rename arch/arm/mach-imx/imx8m/{clock.c => clock_imx8mq.c} (99%)
> >   create mode 100644
> arch/arm/mach-imx/imx8m/imximage-8mm-lpddr4.cfg
> >   create mode 100644
> arch/arm/mach-imx/imx8m/imximage-8mn-ddr4.cfg
> >   create mode 100644 arch/arm/mach-imx/imx_romapi.c
> >   create mode 100644 board/freescale/imx8mm_evk/Kconfig
> >   create mode 100644 board/freescale/imx8mm_evk/MAINTAINERS
> >   create mode 100644 board/freescale/imx8mm_evk/Makefile
> >   create mode 100644 board/freescale/imx8mm_evk/imx8mm_evk.c
> >   create mode 100644 board/freescale/imx8mm_evk/lpddr4_timing.c
> >   create mode 100644 board/freescale/imx8mm_evk/spl.c
> >   create mode 100644 board/freescale/imx8mn_evk/Kconfig
> >   create mode 100644 board/freescale/imx8mn_evk/MAINTAINERS
> >   create mode 100644 board/freescale/imx8mn_evk/Makefile
> >   create mode 100644 board/freescale/imx8mn_evk/ddr4_timing.c
> >   create mode 100644 board/freescale/imx8mn_evk/imx8mn_evk.c
> >   create mode 100644 board/freescale/imx8mn_evk/spl.c
> >   create mode 100644 configs/imx8mm_evk_defconfig
> >   create mode 100644 configs/imx8mn_ddr4_evk_defconfig
> >   create mode 100644 drivers/clk/imx/clk-imx8mm.c
> >   delete mode 100644 drivers/ddr/imx/imx8m/ddr4_init.c
> >   create mode 100644 drivers/ddr/imx/imx8m/ddr_init.c
> >   delete mode 100644 drivers/ddr/imx/imx8m/lpddr4_init.c
> >   create mode 100644 include/configs/imx8mm_evk.h
> >   create mode 100644 include/configs/imx8mn_evk.h
> >   create mode 100644 include/dt-bindings/clock/imx8mm-clock.h
> >   create mode 100644 include/dt-bindings/clock/imx8mn-clock.h
> >