Hi,

On 5/5/26 16:02, Simon Glass wrote:
Hi Michael,

On 2026-05-05T00:47:48, Michael Srba <[email protected]> wrote:
mach-snapdragon: Kconfig: changes / additions to support SPL

Select SUPPORT_SPL so SPL build can be enabled, disable SYSRESET_PSCI in SPL.
(SPL runs in EL3, so if SPL itself doesn't provide PSCI, nothing else will.)

Signed-off-by: Michael Srba <[email protected]>

arch/arm/Kconfig                 | 34 +++++++++++++++++++++++++++++++++-
  arch/arm/mach-snapdragon/Kconfig | 10 ++++++++++
  2 files changed, 43 insertions(+), 1 deletion(-)
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
@@ -1149,9 +1150,40 @@ config ARCH_SNAPDRAGON
       select SAVE_PREV_BL_FDT_ADDR if !ENABLE_ARM_SOC_BOOT0_HOOK
       select LINUX_KERNEL_IMAGE_HEADER if !ENABLE_ARM_SOC_BOOT0_HOOK
       select SYSRESET
-     select SYSRESET_PSCI
+     select SYSRESET_PSCI if !SPL
       select ANDROID_BOOT_IMAGE_IGNORE_BLOB_ADDR
       select MMU_PGPROT
+     select SUPPORT_SPL
+
+     select OF_LIVE if USB_DWC3_GENERIC
+     select SPL_OF_LIVE if SPL_USB_DWC3_GENERIC
+     select ARMV8_SPL_EXCEPTION_VECTORS if SPL
The commit message only mentions SUPPORT_SPL and SYSRESET_PSCI, but
this hunk adds ~30 selects plus default overrides in
mach-snapdragon/Kconfig. Please expand the message to cover the rest -
in particular the OF_LIVE/SPL_OF_LIVE and DM_EVENT/SPL_EVENT
selections gated on (SPL_)USB_DWC3_GENERIC are not obvious; readers
will want to know what breaks without them.

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
@@ -1135,6 +1135,7 @@ config ARCH_SNAPDRAGON
       bool "Qualcomm Snapdragon SoCs"
       select ARM64
       select DM
+     select DM_EVENT if USB_DWC3_GENERIC
Just to check - does u-boot proper genuinely need DM_EVENT/OF_LIVE
pulled in by USB_DWC3_GENERIC, or is this only required for SPL? DWC3
has worked on Snapdragon without these so far. If it's only an SPL
requirement, the proper-side selects should drop.
The dt fixup for usb needs it, it registers a callback on an event and
proceeds to patch the dt. I'm not sure if it's needed on absolutely every
SoC, but the code does get compiled on every SoC so it might as well work.
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
@@ -1149,9 +1150,40 @@ config ARCH_SNAPDRAGON
+     select SPL_OF_REAL if SPL
+     select SPL_OF_CONTROL if SPL
SPL_OF_REAL is already selected by SPL_OF_CONTROL (when
SPL_OF_PLATDATA is not set) in dts/Kconfig, so this line is redundant.
Also swap the order so SPL_OF_CONTROL comes first, since that's the
option doing the work.
uhm, so do you prefer removing SPL_OF_REAL or swapping the lines around?
"this is redundant" and "it should be swapped" are mixed signals...
Reviewed-by: Simon Glass <[email protected]>

Regards,
Simon

Reply via email to