This series adds UFS boot support in SPL for Qualcomm Snapdragon platforms, along with the necessary driver and infrastructure changes to support it.
Patch 1 renames SPL_UFS_SUPPORT to SPL_UFS for naming consistency. Patch 2 adds a Kconfig choice for U-Boot location: sector or partition. Patch 3 refactors spl_ufs.c to add partition-based U-Boot loading. Patch 4 adds SPL_UFS_FS Kconfig stub for filesystem-based UFS boot. Patch 5 enables part_get_info_ptr() in SPL for UFS partition boot. Patch 6 adds UFS_MODE_RAW and UFS_MODE_FS defines to spl.h. Patch 7 adds SPL_UFS_QCOM to enable the Qualcomm UFS HC driver in SPL. Patch 8 adds SPL_PHY_QCOM_QMP_UFS to enable the QMP UFS PHY in SPL. Patch 9 adds SPL_CLK_STUB Kconfig for the stub clock driver in SPL. Patch 10 updates charset.o build rule to use SPL_UFS after the rename. Patch 11 adds SPL_QCOM_GENI Kconfig and $(PHASE_) support for GENI. Patch 12 adds SPL_PINCTRL_QCOM_* symbols and $(PHASE_) Makefile support for all Qualcomm pinctrl drivers. Patch 13 adds SPL_MSM_SERIAL and SPL_MSM_GENI_SERIAL Kconfig and $(PHASE_) support for Qualcomm serial drivers. Patch 14 updates Qualcomm PMIC and SPMI Makefiles to use $(PHASE_). Signed-off-by: Balaji Selvanathan <[email protected]> --- Changes in v2: - Renamed SPL_UFS_SUPPORT to SPL_UFS for naming consistency. - Added SPL_UFS_RAW_U_BOOT_USE_SECTOR config to clearly choose between sector or partition - Refactored the codes in common/spl/spl_ufs.c to use helper functions to make the codes readable and clear - Add the filesystem support in SPL UFS as a seperate patch - Correct SPL_UFS_SUPPORT config name in lib/Makefile - Added SPL_QCOM_GENI Kconfig and $(PHASE_) support for GENI - Added SPL_PINCTRL_QCOM_* symbols and $(PHASE_) Makefile - Added SPL_MSM_SERIAL and SPL_MSM_GENI_SERIAL Kconfig - Updated Qualcomm PMIC and SPMI Makefiles to use $(PHASE_) - Link to v1: https://lore.kernel.org/u-boot/[email protected]/ --- Balaji Selvanathan (14): spl: ufs: rename SPL_UFS_SUPPORT config to SPL_UFS spl: ufs: add Kconfig choice for U-Boot location method spl: ufs: add partition-based U-Boot loading support spl: ufs: add SPL_UFS_FS Kconfig and filesystem boot stub part: enable part_get_info_ptr for SPL UFS partition boot spl: add UFS boot mode defines to spl.h ufs: qcom: add SPL_UFS_QCOM Kconfig and SPL build support phy: qcom: add SPL_PHY_QCOM_QMP_UFS for SPL UFS boot clk: stub: Add Kconfig option for SPL stub driver lib: update charset.o build rule to use SPL_UFS misc: qcom_geni: add SPL support for Qualcomm GENI driver pinctrl: qcom: add SPL support for Qualcomm pinctrl drivers serial: msm: add SPL support for Qualcomm serial drivers power: spmi: use $(PHASE_) macro for Qualcomm PMIC and SPMI common/spl/Kconfig | 61 +++++++++++-- common/spl/Makefile | 2 +- common/spl/spl_ufs.c | 162 ++++++++++++++++++++++++++++++---- drivers/Makefile | 2 +- drivers/clk/Kconfig | 7 ++ drivers/misc/Kconfig | 10 +++ drivers/misc/Makefile | 2 +- drivers/phy/qcom/Kconfig | 7 ++ drivers/phy/qcom/Makefile | 2 +- drivers/pinctrl/qcom/Kconfig | 201 ++++++++++++++++++++++++++++++++++++++++-- drivers/pinctrl/qcom/Makefile | 46 +++++----- drivers/power/pmic/Makefile | 2 +- drivers/scsi/Makefile | 2 +- drivers/serial/Kconfig | 20 +++++ drivers/serial/Makefile | 4 +- drivers/spmi/Makefile | 4 +- drivers/ufs/Kconfig | 12 ++- drivers/ufs/Makefile | 5 +- include/part.h | 3 +- include/spl.h | 4 + lib/Makefile | 2 +- 21 files changed, 491 insertions(+), 69 deletions(-) --- base-commit: 74007f24a3aca13b70da6a2c098b830ad9e60804 change-id: 20260605-spl_ufs-678230a46e8f Best regards, -- Balaji Selvanathan <[email protected]>

