On Tue, Dec 06, 2016 at 11:05:43AM +0100, Volodymyr Bendiuga wrote: > If this is not done, then it is not possible to map > irq next time, after EPROBE_DEFER. > > Signed-off-by: Volodymyr Bendiuga <volodymyr.bendi...@westermo.se>
Hi Volodymyr Thanks for your patches. Please could you include in the subject line which tree it is for. See Documentation/networking/netdev-FAQ.txt > --- > drivers/net/dsa/mv88e6xxx/chip.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/net/dsa/mv88e6xxx/chip.c > b/drivers/net/dsa/mv88e6xxx/chip.c > index 05942e3..12e7d38 100644 > --- a/drivers/net/dsa/mv88e6xxx/chip.c > +++ b/drivers/net/dsa/mv88e6xxx/chip.c > @@ -420,6 +420,7 @@ static void mv88e6xxx_g1_irq_free(struct mv88e6xxx_chip > *chip) > mv88e6xxx_g1_write(chip, GLOBAL_CONTROL, mask); > > free_irq(chip->irq, chip); > + irq_dispose_mapping(chip->irq); This seems like the wrong place to do this. The mapping is created by chip->irq = of_irq_get(np, 0); in mv88e6xxx_probe(). So the correct place to dispose of this mapping would be in mv88e6xxx_remove() and the error path of mv88e6xxx_probe(). Thanks Andrew