Message ID | 20220511031752.2245566-1-f.fainelli@gmail.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 6b77c06655b8a749c1a3d9ebc51e9717003f7e5a |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [net] net: bcmgenet: Check for Wake-on-LAN interrupt probe deferral | expand |
Am 11.05.22 um 05:17 schrieb Florian Fainelli: > The interrupt controller supplying the Wake-on-LAN interrupt line maybe > modular on some platforms (irq-bcm7038-l1.c) and might be probed at a > later time than the GENET driver. We need to specifically check for > -EPROBE_DEFER and propagate that error to ensure that we eventually > fetch the interrupt descriptor. > > Fixes: 9deb48b53e7f ("bcmgenet: add WOL IRQ check") > Fixes: 5b1f0e62941b ("net: bcmgenet: Avoid touching non-existent interrupt") > Signed-off-by: Florian Fainelli <f.fainelli@gmail.com> Reviewed-by: Stefan Wahren <stefan.wahren@i2se.com> > --- > drivers/net/ethernet/broadcom/genet/bcmgenet.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/net/ethernet/broadcom/genet/bcmgenet.c b/drivers/net/ethernet/broadcom/genet/bcmgenet.c > index bf1ec8fdc2ad..e87e46c47387 100644 > --- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c > +++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c > @@ -3999,6 +3999,10 @@ static int bcmgenet_probe(struct platform_device *pdev) > goto err; > } > priv->wol_irq = platform_get_irq_optional(pdev, 2); > + if (priv->wol_irq == -EPROBE_DEFER) { > + err = priv->wol_irq; > + goto err; > + } > > priv->base = devm_platform_ioremap_resource(pdev, 0); > if (IS_ERR(priv->base)) {
Hello: This patch was applied to netdev/net.git (master) by Paolo Abeni <pabeni@redhat.com>: On Tue, 10 May 2022 20:17:51 -0700 you wrote: > The interrupt controller supplying the Wake-on-LAN interrupt line maybe > modular on some platforms (irq-bcm7038-l1.c) and might be probed at a > later time than the GENET driver. We need to specifically check for > -EPROBE_DEFER and propagate that error to ensure that we eventually > fetch the interrupt descriptor. > > Fixes: 9deb48b53e7f ("bcmgenet: add WOL IRQ check") > Fixes: 5b1f0e62941b ("net: bcmgenet: Avoid touching non-existent interrupt") > Signed-off-by: Florian Fainelli <f.fainelli@gmail.com> > > [...] Here is the summary with links: - [net] net: bcmgenet: Check for Wake-on-LAN interrupt probe deferral https://git.kernel.org/netdev/net/c/6b77c06655b8 You are awesome, thank you!
diff --git a/drivers/net/ethernet/broadcom/genet/bcmgenet.c b/drivers/net/ethernet/broadcom/genet/bcmgenet.c index bf1ec8fdc2ad..e87e46c47387 100644 --- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c +++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c @@ -3999,6 +3999,10 @@ static int bcmgenet_probe(struct platform_device *pdev) goto err; } priv->wol_irq = platform_get_irq_optional(pdev, 2); + if (priv->wol_irq == -EPROBE_DEFER) { + err = priv->wol_irq; + goto err; + } priv->base = devm_platform_ioremap_resource(pdev, 0); if (IS_ERR(priv->base)) {
The interrupt controller supplying the Wake-on-LAN interrupt line maybe modular on some platforms (irq-bcm7038-l1.c) and might be probed at a later time than the GENET driver. We need to specifically check for -EPROBE_DEFER and propagate that error to ensure that we eventually fetch the interrupt descriptor. Fixes: 9deb48b53e7f ("bcmgenet: add WOL IRQ check") Fixes: 5b1f0e62941b ("net: bcmgenet: Avoid touching non-existent interrupt") Signed-off-by: Florian Fainelli <f.fainelli@gmail.com> --- drivers/net/ethernet/broadcom/genet/bcmgenet.c | 4 ++++ 1 file changed, 4 insertions(+)