Commit ae14cafc authored by Andrew Lunn's avatar Andrew Lunn Committed by David S. Miller

net: dsa: mv88e6xxx: Free ATU/VTU irq only when there is chip irq

We only register the ATU and VTU irq when we have a chip level IRQ.
In the error path, we should only attempt to remove the ATU and VTU
irq if we also have a chip level IRQ.
Signed-off-by: default avatarAndrew Lunn <andrew@lunn.ch>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 9b662a3e
...@@ -3999,8 +3999,10 @@ static int mv88e6xxx_probe(struct mdio_device *mdiodev) ...@@ -3999,8 +3999,10 @@ static int mv88e6xxx_probe(struct mdio_device *mdiodev)
out_mdio: out_mdio:
mv88e6xxx_mdios_unregister(chip); mv88e6xxx_mdios_unregister(chip);
out_g1_vtu_prob_irq: out_g1_vtu_prob_irq:
if (chip->irq > 0)
mv88e6xxx_g1_vtu_prob_irq_free(chip); mv88e6xxx_g1_vtu_prob_irq_free(chip);
out_g1_atu_prob_irq: out_g1_atu_prob_irq:
if (chip->irq > 0)
mv88e6xxx_g1_atu_prob_irq_free(chip); mv88e6xxx_g1_atu_prob_irq_free(chip);
out_g2_irq: out_g2_irq:
if (chip->info->g2_irqs > 0 && chip->irq > 0) if (chip->info->g2_irqs > 0 && chip->irq > 0)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment