Thread (12 messages) read the whole thread 12 messages, 3 authors, 2020-10-26

Re: [PATCH 0/2] irq-meson-gpio: make it possible to build as a module

From: Kevin Hilman <khilman@baylibre.com>
Date: 2020-10-26 17:28:28
Also in: linux-amlogic, lkml

Marc Zyngier [off-list ref] writes:
On 2020-10-26 16:18, Kevin Hilman wrote:
quoted
Marc Zyngier [off-list ref] writes:
quoted
On Tue, 20 Oct 2020 08:25:30 +0100,
Neil Armstrong [off-list ref] wrote:
quoted
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.
It doesn't work here. I get the exact same error (well, with eth0 
instead
of eth1). In my experience, fw_devlink isn't reliable yet. Config on 
request.
Other than CONFIG_MESON_IRQ_GPIO=m, are you using default upstream
defconfig?

I just double-checked with this series on top of v5.10-rc1, and I have
eth0 working with interrupts without needing fw_devlink=on.

With the default upstream defconfig all the networking for these devices
is already configured as modules.

Kevin

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help