[PATCH] arm64: defconfig: Build STMMAC Ethernet driver into the kernel for NFS boot

Geert Uytterhoeven geert at linux-m68k.org
Thu Jun 12 05:34:32 PDT 2025


Hi Jon,

CC Arnd

On Thu, 12 Jun 2025 at 14:20, Jon Hunter <jonathanh at nvidia.com> wrote:
> On 23/05/2025 12:54, Krzysztof Kozlowski wrote:
> > On 23/05/2025 13:39, Geert Uytterhoeven wrote:
> >> On Tue, 6 May 2025 at 12:47, Prabhakar <prabhakar.csengg at gmail.com> wrote:
> >>> From: Lad Prabhakar <prabhakar.mahadev-lad.rj at bp.renesas.com>
> >>>
> >>> Enable `CONFIG_STMMAC_ETH` as built-in (`y`) instead of a module (`m`) to
> >>> ensure the Ethernet driver is available early in the boot process. This
> >>> is necessary for platforms mounting the root filesystem via NFS, as the
> >>> driver must be available before the root filesystem is accessed.
> >>>
> >>> Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj at bp.renesas.com>
> >>> ---
> >>> With this change, the Renesas RZ/V2H EVK board can boot from NFS
> >>> which has the DWMAC IP.
> >>
> >> Reviewed-by: Geert Uytterhoeven <geert+renesas at glider.be>
> >> i.e. will queue in renesas-devel for v6.17.
> >
> > With my Nacked, please.
>
> I was surprised to see this change in -next. We also use NFS for testing
> and we use the dwmac drivers. To date we are explictly building these
> drivers into the initramfs but I noticed that that is now failing
> because this driver is no longer a module by default. This is easy for

Oops, sorry for that...

> us to fix.

Good ;-)

> I do agree that if we start to build every networking driver into the
> kernel it is going to bloat. Yes I do see the kernel image growing
> regardless of this, but nonetheless it seems better to just build as a
> module IMO.

Not _every_ networking driver, of course.  AFAIK, making network
drivers built-in for systems where development is done using nfsroot
has always been acceptable for the arm64 defconfig before.  For things
not critical for booting, modular is indeed the preferred way.

BTW, we have other low-hanging fruit to fix, though:

CONFIG_SOUND=y
CONFIG_SND=y
CONFIG_SND_SOC=y
CONFIG_SND_SOC_SAMSUNG=y (Krzysztof? ;-)
CONFIG_USB=y

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert at linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds



More information about the linux-arm-kernel mailing list