This series adds U-Boot SPL support for the Qualcomm Shikra platform. The SPL runs from BOOT_IMEM and performs the early initialization needed to boot U-Boot from eMMC. It configures the required pinctrl and clock state, loads QUP firmware from its GPT partition, invokes QCLIB to initialize DDR, and loads the U-Boot FIT from the eMMC boot partition.
Dependencies: This series is based on the following previously posted series: - Qualcomm IPQ5210 SoC bringup v10, Varadarajan Narayanan (15 patches): https://lore.kernel.org/u-boot/[email protected]/ - Initial Shikra SoC support v3, Aswin Murugan (13 patches): https://marc.info/?l=u-boot&m=178668446732727&w=2 - Enable HS200/HS400 eMMC modes on Qualcomm v2, Aswin Murugan (3 patches): https://lore.kernel.org/u-boot/[email protected]/ Changes in v2: - Added SPL MMC boot-source selection fixes. - Added a common Qualcomm SPL helper to resolve the boot block device. Abhilash V (11): arm: qcom: add common QCLIB SPL extension helpers pinctrl: qcom: add Shikra SPL pinctrl option board: qualcomm: shikra: add SPL board support clk: qcom: add configurable FSM-voted PLL helper arm: dts: shikra: retain QUP SPL dependencies clk: qcom: configure Shikra GPLL6 for SDCC1 clk: qcom: enable Shikra QUP wrapper clocks mmc: msm_sdhci: make tuning callbacks optional arm: qcom: enable MMU and cache setup for Shikra SPL board: qualcomm: shikra: prepare QUP firmware in SPL board: qualcomm: shikra: embed XBL-sec in SPL ELF Aswin Murugan (2): arm: dts: shikra: retain SPL dependencies in IQS overlay clk: qcom: build only selected clock drivers in SPL arch/arm/dts/shikra-cqs-evk-u-boot.dtsi | 44 ++ arch/arm/dts/shikra-iqs-evk-u-boot.dtsi | 42 ++ arch/arm/mach-snapdragon/Kconfig | 10 + arch/arm/mach-snapdragon/board_spl.c | 54 +- arch/arm/mach-snapdragon/include/mach/qclib.h | 16 +- arch/arm/mach-snapdragon/include/mach/spl.h | 3 + arch/arm/mach-snapdragon/mem_map.c | 22 +- arch/arm/mach-snapdragon/qclib.c | 77 ++- arch/arm/mach-snapdragon/qcom-priv.h | 4 + board/qualcomm/shikra/Makefile | 3 + board/qualcomm/shikra/config.mk | 24 + board/qualcomm/shikra/shikra-spl-wrap-elf.lds | 40 ++ board/qualcomm/shikra/spl-shikra.c | 479 ++++++++++++++++++ drivers/clk/qcom/Kconfig | 208 ++++++++ drivers/clk/qcom/Makefile | 48 +- drivers/clk/qcom/clock-qcom.c | 48 ++ drivers/clk/qcom/clock-qcom.h | 24 + drivers/clk/qcom/clock-shikra.c | 73 ++- drivers/mmc/msm_sdhci.c | 4 + drivers/pinctrl/qcom/Kconfig | 8 + include/configs/shikra.h | 11 + 21 files changed, 1190 insertions(+), 52 deletions(-) create mode 100644 board/qualcomm/shikra/Makefile create mode 100644 board/qualcomm/shikra/config.mk create mode 100644 board/qualcomm/shikra/shikra-spl-wrap-elf.lds create mode 100644 board/qualcomm/shikra/spl-shikra.c create mode 100644 include/configs/shikra.h -- 2.34.1
