Add pinctrl, clock drivers and SPL to support the IPPQ5210 SoC in U-Boot.

The relevant DT files are available in linux-next [1].

Working features, as tested on RDP504:
        * Serial console
        * UART
        * MMC
        * Boot sequence transitions from Boot ROM to U-Boot SPL, proprietary
          binaries (a.k.a QCLib) load and execute as appropriate and eventual
          jump to U-Boot.
        * The QCLib handles
                - DDR initialization
                - Clock setup

1 - 
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/arch/arm64/boot/dts/qcom/ipq5210.dtsi
    
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/arch/arm64/boot/dts/qcom/ipq5210-rdp504.dts
    
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/include/dt-bindings/clock/qcom,ipq5210-gcc.h
    
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/include/dt-bindings/reset/qcom,ipq5210-gcc.h

v7:     - Fix inadvertant typo in doc/board/qualcomm/rdp.rst
        - Pick multiple R-b tags
        - No code changes

v6:     - Move binman related changes to separate series, so that the
          SPL changes can move forward.
        - Restore v3 build steps for now
        - 
https://lore.kernel.org/u-boot/[email protected]/

v5:     - Reorganize SPL related code into common and SoC specific functions
          to allow SoCs to customize according to their boot flow
        - Fix documentation related build errors
        - Please see the patches for specific changes
        - 
https://lore.kernel.org/u-boot/[email protected]/

v4:     - Add binman based image creation support instead of special scripts
        - Identify boot media based on PBL shared info instead of CONFIG_xxx
        - Address v3 feedback (see individual patch for details)
        - 
https://lore.kernel.org/u-boot/[email protected]/

v3:     - Move stack range
        - Split spl.c patch
        - Move documentation towards the end of the series
        - Pick couple of R-b
        - 
https://lore.kernel.org/u-boot/[email protected]/

v2:     - Add QCOM_GENI_MINICORE config option
        - Move minicore register settings to separate file and include
          if QCOM_GENI_MINICORE is enabled
        - Remove bootph-all from override dts and moved them to kernel
          DT - 
https://lore.kernel.org/linux-arm-msm/[email protected]/T/#u
        - 
https://lore.kernel.org/u-boot/[email protected]/

v1: 
https://lore.kernel.org/u-boot/[email protected]/

Varadarajan Narayanan (11):
  dts: ipq5210-rdp504-u-boot: add override dtsi
  clk/qcom: add initial clock driver for ipq5210
  pinctrl: qcom: Add ipq5210 pinctrl driver
  misc: qcom_geni: Add minicore support
  mach-snapdragon: Add PBL shared data defines
  spl: Include SMEM driver in SPL
  mach-snapdragon: Add initial support for IPQ5210 SPL
  mach-snapdragon: spl: Update SMEM with boot details
  mach-snapdragon: Add commands to create wrapper ELF
  configs: add qcom_ipq5210_mmc_defconfig
  doc: board/qualcomm: Update RDP build instructions

 arch/arm/Kconfig                              |   5 +-
 arch/arm/dts/ipq5210-rdp504-u-boot.dtsi       |  15 +
 arch/arm/mach-snapdragon/Kconfig              |   7 +
 arch/arm/mach-snapdragon/Makefile             |   3 +
 arch/arm/mach-snapdragon/include/mach/pbl.h   |  58 ++
 arch/arm/mach-snapdragon/include/mach/spl.h   |  14 +
 .../mach-snapdragon/ipq5210-spl-wrap-elf.lds  |  18 +
 arch/arm/mach-snapdragon/spl.c                | 615 ++++++++++++++++++
 board/qualcomm/ipq5210/Makefile               |   3 +
 board/qualcomm/ipq5210/spl-ipq5210.c          | 159 +++++
 common/spl/Kconfig                            |   8 +
 configs/qcom_ipq5210_mmc_defconfig            | 107 +++
 doc/board/qualcomm/rdp.rst                    |  98 ++-
 drivers/Makefile                              |   1 +
 drivers/clk/qcom/Kconfig                      |   8 +
 drivers/clk/qcom/Makefile                     |   1 +
 drivers/clk/qcom/clock-ipq5210.c              |  98 +++
 drivers/misc/Kconfig                          |   6 +
 drivers/misc/Makefile                         |   1 +
 drivers/misc/qcom_geni-minicore.c             | 102 +++
 drivers/misc/qcom_geni.c                      | 100 ++-
 drivers/pinctrl/qcom/Kconfig                  |   8 +
 drivers/pinctrl/qcom/Makefile                 |   1 +
 drivers/pinctrl/qcom/pinctrl-ipq5210.c        | 349 ++++++++++
 include/configs/ipq5210.h                     |  11 +
 include/smem.h                                |   3 +
 include/soc/qcom/geni-se.h                    |   5 +
 include/soc/qcom/qup-fw-load.h                |  12 +
 scripts/Makefile.xpl                          |  24 +
 29 files changed, 1821 insertions(+), 19 deletions(-)
 create mode 100644 arch/arm/dts/ipq5210-rdp504-u-boot.dtsi
 create mode 100644 arch/arm/mach-snapdragon/include/mach/pbl.h
 create mode 100644 arch/arm/mach-snapdragon/include/mach/spl.h
 create mode 100644 arch/arm/mach-snapdragon/ipq5210-spl-wrap-elf.lds
 create mode 100644 arch/arm/mach-snapdragon/spl.c
 create mode 100644 board/qualcomm/ipq5210/Makefile
 create mode 100644 board/qualcomm/ipq5210/spl-ipq5210.c
 create mode 100644 configs/qcom_ipq5210_mmc_defconfig
 create mode 100644 drivers/clk/qcom/clock-ipq5210.c
 create mode 100644 drivers/misc/qcom_geni-minicore.c
 create mode 100644 drivers/pinctrl/qcom/pinctrl-ipq5210.c
 create mode 100644 include/configs/ipq5210.h

-- 
2.34.1

Signed-off-by: Varadarajan Narayanan <[email protected]>
---
Varadarajan Narayanan (11):
      dts: ipq5210-rdp504-u-boot: add override dtsi
      clk/qcom: add initial clock driver for ipq5210
      pinctrl: qcom: Add ipq5210 pinctrl driver
      misc: qcom_geni: Add minicore support
      mach-snapdragon: Add PBL shared data defines
      spl: Include SMEM driver in SPL
      mach-snapdragon: Add initial support for IPQ5210 SPL
      mach-snapdragon: spl: Update SMEM with boot details
      mach-snapdragon: Add commands to create wrapper ELF
      configs: add qcom_ipq5210_mmc_defconfig
      doc: board/qualcomm: Update RDP build instructions

 arch/arm/Kconfig                                  |   5 +-
 arch/arm/dts/ipq5210-rdp504-u-boot.dtsi           |  15 +
 arch/arm/mach-snapdragon/Kconfig                  |   7 +
 arch/arm/mach-snapdragon/Makefile                 |   3 +
 arch/arm/mach-snapdragon/include/mach/pbl.h       |  58 ++
 arch/arm/mach-snapdragon/include/mach/spl.h       |  14 +
 arch/arm/mach-snapdragon/ipq5210-spl-wrap-elf.lds |  18 +
 arch/arm/mach-snapdragon/spl.c                    | 615 ++++++++++++++++++++++
 board/qualcomm/ipq5210/Makefile                   |   3 +
 board/qualcomm/ipq5210/spl-ipq5210.c              | 159 ++++++
 common/spl/Kconfig                                |   8 +
 configs/qcom_ipq5210_mmc_defconfig                | 107 ++++
 doc/board/qualcomm/rdp.rst                        |  96 +++-
 drivers/Makefile                                  |   1 +
 drivers/clk/qcom/Kconfig                          |   8 +
 drivers/clk/qcom/Makefile                         |   1 +
 drivers/clk/qcom/clock-ipq5210.c                  |  98 ++++
 drivers/misc/Kconfig                              |   6 +
 drivers/misc/Makefile                             |   1 +
 drivers/misc/qcom_geni-minicore.c                 | 102 ++++
 drivers/misc/qcom_geni.c                          | 100 +++-
 drivers/pinctrl/qcom/Kconfig                      |   8 +
 drivers/pinctrl/qcom/Makefile                     |   1 +
 drivers/pinctrl/qcom/pinctrl-ipq5210.c            | 349 ++++++++++++
 include/configs/ipq5210.h                         |  11 +
 include/smem.h                                    |   3 +
 include/soc/qcom/geni-se.h                        |   5 +
 include/soc/qcom/qup-fw-load.h                    |  12 +
 scripts/Makefile.xpl                              |  24 +
 29 files changed, 1820 insertions(+), 18 deletions(-)
---
base-commit: a3f393c02cf10f44310c6ddf3dedf354c2e877a0
change-id: 20260630-fix-edl-0307ee6e36fa

Best regards,
-- 
Varadarajan Narayanan <[email protected]>

Reply via email to