Hello, On Fri, Jun 20, 2025 at 4:13 PM Michael Nazzareno Trimarchi <[email protected]> wrote: > > Hi > > On Fri, Jun 20, 2025 at 4:11 PM Tom Rini <[email protected]> wrote: > > > > On Fri, Jun 20, 2025 at 03:29:52AM -0700, [email protected] > > wrote: > > > > > From: Alif Zakuan Yuslaimi <[email protected]> > > > > > > Add configuration option to compile the entire NAND framework into > > > U-Boot SPL. This is required by some drivers, like the Denali NAND, > > > which use a lot of functionality from the NAND core. > > > > > > Signed-off-by: Marek Vasut <[email protected]> > > > Signed-off-by: Tien Fong Chee <[email protected]> > > > Signed-off-by: Alif Zakuan Yuslaimi <[email protected]> > > > --- > > > drivers/mtd/nand/raw/Kconfig | 8 ++++++++ > > > drivers/mtd/nand/raw/Makefile | 28 ++++++++++++---------------- > > > 2 files changed, 20 insertions(+), 16 deletions(-) > > > > > > diff --git a/drivers/mtd/nand/raw/Kconfig b/drivers/mtd/nand/raw/Kconfig > > > index adb271dfb8f..28b48d53def 100644 > > > --- a/drivers/mtd/nand/raw/Kconfig > > > +++ b/drivers/mtd/nand/raw/Kconfig > > > @@ -208,6 +208,7 @@ config NAND_CADENCE > > > config NAND_DENALI > > > bool > > > select SYS_NAND_SELF_INIT > > > + select SYS_NAND_ONFI_DETECTION if TARGET_SOCFPGA_SOC64 > > > > If there's not a more generic SOCFPGA symbol to use here, this part is > > fine. But also unrelated as this isn't the SPL driver and this series is > > about SPL. > > > > > imply CMD_NAND > > > > > > config NAND_DENALI_DT > > > @@ -826,4 +827,11 @@ config SYS_NAND_HW_ECC_OOBFIRST > > > > > > endif # if SPL > > > > > > +config SPL_NAND_FRAMEWORK > > > + bool "Compile the entire NAND framework into the SPL" > > > + help > > > + Some drivers require a lot of functionality from the NAND > > > framework > > > + core when used in SPL. This option allows compiling the full NAND > > > + framework into the SPL instead of it's reduced version. > > > > There's some problems here. First, this needs to be inside of the "if > > SPL, not outside of it". Second, we already have SPL_NAND_DENALI as an > > option, so some explanation of what's being done here now is needed. > > Third, if we really really need SPL_NAND_SIMPLE and SPL_NAND_SUPPORT and > > SPL_NAND_FRAMEWORK it needs to be moved around so that first we have it > > as a choice, then we add more. But given all of the other options we > > have in common/spl/Kconfig right now for NAND, I'm unclear about what is > > missing today.
The patch has already been rejected for this specific option, because you can always select and this board or family are the only consumers. Thanks and regards, Dario > > I have already rejected this patch for this specific option, because > you can always select and > this board or family are the only consumers. Why do we need it in the > first place? > > Michael > > > > > > endif # if MTD_RAW_NAND > > > diff --git a/drivers/mtd/nand/raw/Makefile b/drivers/mtd/nand/raw/Makefile > > > index 34cba77046a..08829406902 100644 > > > --- a/drivers/mtd/nand/raw/Makefile > > > +++ b/drivers/mtd/nand/raw/Makefile > > > @@ -3,8 +3,18 @@ > > > # (C) Copyright 2006 > > > # Wolfgang Denk, DENX Software Engineering, [email protected]. > > > > > > +nand-framework-objs := nand.o nand_bbt.o nand_ids.o nand_util.o \ > > > + nand_ecc.o nand_base.o nand_timings.o nand_amd.o \ > > > + nand_hynix.o nand_macronix.o nand_micron.o \ > > > + nand_samsung.o nand_toshiba.o > > > + > > > ifdef CONFIG_XPL_BUILD > > > > > > +ifdef CONFIG_SPL_NAND_FRAMEWORK > > > +obj-y += $(nand-framework-objs) > > > +NORMAL_DRIVERS=y > > > +endif > > > + > > > ifdef CONFIG_SPL_NAND_DRIVERS > > > NORMAL_DRIVERS=y > > > endif > > > @@ -15,9 +25,7 @@ obj-$(CONFIG_SPL_NAND_DENALI) += denali_spl.o > > > obj-$(CONFIG_SPL_NAND_SIMPLE) += nand_spl_simple.o > > > obj-$(CONFIG_SPL_NAND_LOAD) += nand_spl_load.o > > > obj-$(CONFIG_SPL_NAND_ECC) += nand_ecc.o > > > -obj-$(CONFIG_SPL_NAND_BASE) += nand_base.o nand_amd.o nand_hynix.o \ > > > - nand_macronix.o nand_micron.o \ > > > - nand_samsung.o nand_toshiba.o > > > +obj-$(CONFIG_SPL_NAND_BASE) += nand_base.o > > > obj-$(CONFIG_SPL_NAND_IDENT) += nand_ids.o nand_timings.o > > > obj-$(CONFIG_$(PHASE_)NAND_INIT) += nand.o > > > ifeq ($(CONFIG_SPL_ENV_SUPPORT),y) > > > @@ -28,19 +36,7 @@ else # not spl > > > > > > NORMAL_DRIVERS=y > > > > > > -obj-y += nand.o > > > -obj-y += nand_bbt.o > > > -obj-y += nand_ids.o > > > -obj-y += nand_util.o > > > -obj-y += nand_ecc.o > > > -obj-y += nand_base.o > > > -obj-y += nand_amd.o > > > -obj-y += nand_hynix.o > > > -obj-y += nand_macronix.o > > > -obj-y += nand_micron.o > > > -obj-y += nand_samsung.o > > > -obj-y += nand_toshiba.o > > > -obj-y += nand_timings.o > > > +obj-y += $(nand-framework-objs) > > > > > > endif # not spl > > > > Did you world build this change? At first it looks like we're dropping a > > lot of objects from other configs. > > > > -- > > Tom > > > > -- > 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 -- Dario Binacchi Senior Embedded Linux Developer [email protected] __________________________________ Amarula Solutions SRL Via Le Canevare 30, 31100 Treviso, Veneto, IT T. +39 042 243 5310 [email protected] www.amarulasolutions.com

