Re: [PATCH v2 06/10] mach-snapdragon: Kconfig: changes / additions to support SPL

Tom Rini
2026-04-13T21:14:14Z

[-- Attachment #1: Type: text/plain, Size: 3496 bytes --]

On Sat, Apr 11, 2026 at 02:00:11AM +0200, michael.srba@seznam.cz wrote:

> From: Michael Srba <Michael.Srba@seznam.cz>
>
> An SoC to target has to be selected, e.g. SPL_TARGET_SDM845.
> This will select reasonable defaults and enable per-SoC linker
> script (if required).
>
> Signed-off-by: Michael Srba <Michael.Srba@seznam.cz>
> ---
> arch/arm/Kconfig | 31 +++++++++++++++++++++++++++-
> arch/arm/mach-snapdragon/Kconfig | 44 ++++++++++++++++++++++++++++++++++------
> 2 files changed, 68 insertions(+), 7 deletions(-)
>
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 03416c55265..8490e336516 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -1138,9 +1138,38 @@ 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 ARMV8_SPL_EXCEPTION_VECTORS if SPL
> + select ENABLE_ARM_SOC_BOOT0_HOOK if SPL
> + select SPL_DM if SPL
> + select SPL_DM_GPIO if SPL
> + select SPL_DM_PMIC if SPL
> + select SPL_DM_USB_GADGET if SPL
> + select SPL_ENV_SUPPORT if SPL
> + select SPL_GPIO if SPL
> + select SPL_HAS_BSS_LINKER_SECTION if SPL
> + select SPL_LIBCOMMON_SUPPORT if SPL
> + select SPL_LIBDISK_SUPPORT if SPL
> + select SPL_LIBGENERIC_SUPPORT if SPL
> + select SPL_MMC if SPL
> + select SPL_OF_REAL if SPL
> + select SPL_OF_CONTROL if SPL
> + select SPL_PINCONF if SPL
> + select SPL_PINCTRL if SPL
> + select SPL_PINCTRL_FULL if SPL
> + select SPL_PINCTRL_GENERIC if SPL
> + select SPL_PINCONF_RECURSIVE if SPL
> + select SPL_PINMUX if SPL
> + select SPL_SPRINTF if SPL
> + select SPL_STRTO if SPL
> + select SPL_USB_GADGET if SPL
> + imply DM_EVENT if USB_DWC3_GENERIC || SPL_USB_DWC3_GENERIC
> + imply SPL_EVENT if SPL_USB_DWC3_GENERIC
> + imply OF_LIVE if USB_DWC3_GENERIC
> + imply SPL_OF_LIVE if SPL_USB_DWC3_GENERIC
> imply OF_UPSTREAM
> imply CMD_DM
> imply DM_USB_GADGET

This part looks good.

> diff --git a/arch/arm/mach-snapdragon/Kconfig b/arch/arm/mach-snapdragon/Kconfig
> index 976c0e35fce..74d687ceee2 100644
> --- a/arch/arm/mach-snapdragon/Kconfig
> +++ b/arch/arm/mach-snapdragon/Kconfig
> @@ -11,18 +11,12 @@ config SYS_VENDOR
> Based on this option board/<CONFIG_SYS_VENDOR>/<CONFIG_SYS_BOARD>
> will be used as the custom board directory.
>
> -config SYS_MALLOC_LEN
> - default 0x10000000
> -
> config SYS_MALLOC_F_LEN
> default 0x2000
>
> config SPL_SYS_MALLOC_F
> default y
>
> -config SPL_SYS_MALLOC_F_LEN
> - default 0x2000
> -
> config SYS_MALLOC_LEN
> default 0x800000
>
> @@ -45,4 +39,42 @@ config SYS_CONFIG_NAME
> Based on this option include/configs/<CONFIG_SYS_CONFIG_NAME>.h header
> will be used for board configuration.
>
> +config SPL_SHARES_INIT_SP_ADDR
> + default n
> +
> +config SPL_HAVE_INIT_STACK
> + default y
> +
> +# SPL targets
> +
> +config SPL_TARGET_SDM845
> + bool "Set reasonable default values for running SPL in SRAM on sdm845 devices"

This namespace is confusing and so shouldn't be used. Does SDM845 get
used without SPL? We should probably follow the convention of adding a
new defconfig of <whatever board>_spl_defconfig, that enables the
options as needed.

--
Tom

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]