Hi

On Wed, Feb 11, 2026 at 8:14 AM Maniyam, Dinesh
<[email protected]> wrote:
>
> Hi Tom,
>
> On 3/2/2026 10:57 pm, Tom Rini wrote:
>
> On Tue, Feb 03, 2026 at 03:47:17PM +0800, [email protected] wrote:
>
> From: Dinesh Maniyam <[email protected]>
>
> The SPL NAND MTD framework requires working driver model support
> and sufficient memory resources, which are not available on all
> platforms.
>
> Introduce a SPL_NAND_FRAMEWORK_CAPABLE Kconfig option to allow
> platforms to explicitly advertise support for compiling the full
> NAND/MTD framework into SPL.
>
> This avoids accidental enablement of the SPL NAND framework on
> platforms that cannot support it and provides a clear capability
> boundary for platform maintainers.
>

This what I have asked in the beginning, for now I don't like to have
this change
in the framework unless we have more consumer. For the patch that you sent for
make simple spl load, I will try to start to apply on one of my board

Michael

> Signed-off-by: Dinesh Maniyam <[email protected]>
> ---
>  drivers/mtd/nand/raw/Kconfig | 30 ++++++++++++++++++++++++++++++
>  1 file changed, 30 insertions(+)
>
> diff --git a/drivers/mtd/nand/raw/Kconfig b/drivers/mtd/nand/raw/Kconfig
> index e0ff28cb21b..d73d8ed4404 100644
> --- a/drivers/mtd/nand/raw/Kconfig
> +++ b/drivers/mtd/nand/raw/Kconfig
> @@ -809,6 +809,36 @@ config SYS_NAND_HW_ECC_OOBFIRST
>   bool "In SPL, read the OOB first and then the data from NAND"
>   depends on SPL_NAND_SIMPLE
>
> +config SPL_NAND_FRAMEWORK_CAPABLE
> + bool
> + depends on SPL_DM
> + depends on SPL_HAS_BSS_LINKER_SECTION
> + depends on SPL_MAX_SIZE >= 0x40000
> + help
> +  Indicates that the platform has sufficient SPL capabilities
> +  (driver model, BSS support, and SRAM size) to support the
> +  full NAND/MTD framework in SPL.
> +
> +config SPL_NAND_USE_NAND_FRAMEWORK
> + bool "Use NAND/MTD framework in SPL"
> + depends on SPL_NAND_SUPPORT && MTD
> + depends on SPL_NAND_FRAMEWORK_CAPABLE
> + depends on SPL_ENV_SUPPORT
> + depends on ENV_IS_IN_NAND
> + select SPL_SYS_NAND_SELF_INIT
> + select SPL_NAND_BASE
> + select SPL_NAND_DRIVERS
> + select SPL_NAND_IDENT
> + select SPL_NAND_INIT
> + select SPL_NAND_ECC
> + help
> + Enable loading U-Boot from NAND in SPL using the full
> + NAND/MTD framework instead of the minimal SPL NAND loaders.
> + This provides bad-block aware reads and flexible offset
> + handling via the common NAND/MTD infrastructure.
> + Platforms enabling this option must also provide working
> + driver model support and sufficient SPL memory resources.
> +
>  endif # if SPL
>
>  endif # if MTD_RAW_NAND
>
> This still gets it backwards. Whatever depends on SPL_DM needs to add
> it. The max size is something that needs to be set for your platforms.
> The BSS requirement is not correct (there are platforms today without
> that set).
>
> Thanks for the input.
>
> Understood — the capability-style symbol is not the right approach
> here. I’ll drop SPL_NAND_FRAMEWORK_CAPABLE and instead move the
> required dependencies directly onto SPL_NAND_USE_NAND_FRAMEWORK.
>
> I’ll also remove the SPL_MAX_SIZE and BSS assumptions from the
> generic Kconfig and ensure the appropriate limits and options are set
> in the affected platform configurations instead.
>
> I’ll rework the patch accordingly.
>
> Dinesh



-- 
Michael Nazzareno Trimarchi
Co-Founder & Chief Executive Officer
M. +39 347 913 2170
[email protected]
__________________________________

Amarula Solutions BV
Joop Geesinkweg 125, 1114 AB, Amsterdam, NL
T. +31 (0)85 111 9172
[email protected]
www.amarulasolutions.com

Reply via email to