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>
This commit is contained in:
Родитель
3b3600fffb
Коммит
a27415decd
|
@ -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
|
||||
|
|
|
@ -13,6 +13,7 @@ struct dsa_mv88e6xxx_pdata {
|
|||
unsigned int enabled_ports;
|
||||
struct net_device *netdev;
|
||||
u32 eeprom_len;
|
||||
int irq;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
Загрузка…
Ссылка в новой задаче