diff options
author | Andrew Lunn <andrew@lunn.ch> | 2019-05-01 00:10:50 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2019-05-03 23:55:47 -0400 |
commit | a27415decd84dac124c6185f1184b6c779d0a5ab (patch) | |
tree | f050d6be72526a01be4f54f5cc371357c60e270a /drivers/net/dsa | |
parent | 3b3600fffb437ff5b6331e7dffb98408747b7c12 (diff) | |
download | linux-a27415decd84dac124c6185f1184b6c779d0a5ab.tar.bz2 |
net: dsa: mv88e6xxx: Pass interrupt number in platform data
Allow an interrupt number to be passed in the platform data. The
driver will then use it if not zero, otherwise it will poll for
interrupts.
Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/dsa')
-rw-r--r-- | drivers/net/dsa/mv88e6xxx/chip.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/drivers/net/dsa/mv88e6xxx/chip.c b/drivers/net/dsa/mv88e6xxx/chip.c index 46020fe1b5e7..bad30be699bf 100644 --- a/drivers/net/dsa/mv88e6xxx/chip.c +++ b/drivers/net/dsa/mv88e6xxx/chip.c @@ -4894,12 +4894,17 @@ static int mv88e6xxx_probe(struct mdio_device *mdiodev) if (err) goto out; - chip->irq = of_irq_get(np, 0); - if (chip->irq == -EPROBE_DEFER) { - err = chip->irq; - goto out; + if (np) { + chip->irq = of_irq_get(np, 0); + if (chip->irq == -EPROBE_DEFER) { + err = chip->irq; + goto out; + } } + if (pdata) + chip->irq = pdata->irq; + /* Has to be performed before the MDIO bus is created, because * the PHYs will link their interrupts to these interrupt * controllers |