[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <7hy2jshp6w.fsf@baylibre.com>
Date: Mon, 26 Oct 2020 10:28:23 -0700
From: Kevin Hilman <khilman@...libre.com>
To: Marc Zyngier <maz@...nel.org>
Cc: Neil Armstrong <narmstrong@...libre.com>, jbrunet@...libre.com,
linux-amlogic@...ts.infradead.org,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 0/2] irq-meson-gpio: make it possible to build as a module
Marc Zyngier <maz@...nel.org> writes:
> On 2020-10-26 16:18, Kevin Hilman wrote:
>> Marc Zyngier <maz@...nel.org> writes:
>>
>>> On Tue, 20 Oct 2020 08:25:30 +0100,
>>> Neil Armstrong <narmstrong@...libre.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.
>
> 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
Powered by blists - more mailing lists