[PATCH v7 00/11] Qualcomm IPQ5210 SoC bringup
Varadarajan Narayanan
varadarajan.narayanan at oss.qualcomm.com
Tue Jun 30 10:08:22 CEST 2026
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/20260623064804.3988799-1-varadarajan.narayanan@oss.qualcomm.com/
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/20260617101812.299586-1-varadarajan.narayanan@oss.qualcomm.com/
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/20260604093132.757583-1-varadarajan.narayanan@oss.qualcomm.com/
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/20260416053928.2834699-1-varadarajan.narayanan@oss.qualcomm.com/
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/20260409-add_bootph-v1-1-cb2b5093f7d7@oss.qualcomm.com/T/#u
- https://lore.kernel.org/u-boot/20260410091154.1001021-1-varadarajan.narayanan@oss.qualcomm.com/
v1: https://lore.kernel.org/u-boot/20260408091136.2794546-1-varadarajan.narayanan@oss.qualcomm.com/
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 <varadarajan.narayanan at oss.qualcomm.com>
---
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 <varadarajan.narayanan at oss.qualcomm.com>
More information about the U-Boot
mailing list