Messages in this thread | | | From | Kevin Hilman <> | Subject | Re: [PATCH 0/2] irq-meson-gpio: make it possible to build as a module | Date | Mon, 26 Oct 2020 09:18:21 -0700 |
| |
Marc Zyngier <maz@kernel.org> writes:
> On Tue, 20 Oct 2020 08:25:30 +0100, > Neil Armstrong <narmstrong@baylibre.com> wrote: >> >> In order to reduce the kernel Image size on multi-platform distributions, >> make it possible to build the Amlogic GPIO IRQ controller as a module >> by switching it to a platform driver. >> >> The second patch removes MESON_IRQ_GPIO selection from ARCH_MESON to allow >> building the driver as module. >> >> Neil Armstrong (2): >> irqchip: irq-meson-gpio: make it possible to build as a module >> arm64: meson: remove MESON_IRQ_GPIO selection >> >> arch/arm64/Kconfig.platforms | 1 - >> drivers/irqchip/Kconfig | 5 +- >> drivers/irqchip/irq-meson-gpio.c | 89 ++++++++++++++++++++------------ >> 3 files changed, 59 insertions(+), 36 deletions(-) > > I've tried this series on my vim3l with the this driver compiled as a > module, and lost the Ethernet interface in the process, as the phy > wasn't able to resolve its interrupt and things fail later on: > > [ 72.238291] meson8b-dwmac ff3f0000.ethernet eth1: no phy at addr -1 > [ 72.238917] meson8b-dwmac ff3f0000.ethernet eth1: stmmac_open: Cannot attach to PHY (error: -19) > > This is a generic problem with making DT-based interrupt controllers > modular when not *all* the drivers can deal with probing deferral.
Yes, but this series still keeps the default as built-in.
If you build as a module, and you add `fw_devlink=on` to the kernel command-line, device-links will be created based on DT dependencies which will ensure the right module load order.
I've tested this series with `fw_devlink=on` on several Amlogic platforms and it works just fine, but since it requires the extra cmdline option, I think the default should remain built-in.
So, I'd still like to see this series merged so that at least it's an option to enable this as a module.
Also, another reason to make it optional is that not all platforms need this feature at all, but right now we select it for all Amlogic SoCs.
Kevin
| |