OpenCloudOS-Kernel/drivers/net/ethernet/renesas
Geert Uytterhoeven ccf928249c ravb: Add missing free_irq() calls to ravb_close()
When reopening the network device on ra7795/salvator-x, e.g. after a
DHCP timeout:

    IP-Config: Reopening network devices...
    genirq: Flags mismatch irq 139. 00000000 (eth0:ch0:rx_be) vs. 00000000 (ravb e6800000.ethernet eth0: cannot request IRQ eth0:ch0:rx_be
    IP-Config: Failed to open eth0
    IP-Config: No network devices available

The "mismatch" is due to requesting an IRQ that is already in use,
while IRQF_PROBE_SHARED wasn't set.

However, the real cause is that ravb_close() doesn't release any of the
R-Car Gen3-specific secondary IRQs.

Add the missing free_irq() calls to fix this.

Fixes: f51bdc236b ("ravb: Add dma queue interrupt support")
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Acked-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-05-17 12:26:56 -04:00
..
Kconfig sh_eth, ravb: Use ARCH_RENESAS 2016-03-03 17:09:08 -05:00
Makefile Renesas Ethernet AVB PTP clock driver 2015-06-11 00:24:12 -07:00
ravb.h ravb: make ravb_ptp_interrupt() *void* 2016-04-14 00:48:33 -04:00
ravb_main.c ravb: Add missing free_irq() calls to ravb_close() 2016-05-17 12:26:56 -04:00
ravb_ptp.c ravb: make ravb_ptp_interrupt() *void* 2016-04-14 00:48:33 -04:00
sh_eth.c sh_eth: reuse sh_eth_chip_reset() 2016-05-09 00:15:23 -04:00
sh_eth.h sh_eth: rename ARSTR register bit 2016-04-26 16:07:20 -04:00