8139cp: Call __cp_set_rx_mode() from cp_tx_timeout()
authorDavid Woodhouse <dwmw2@infradead.org>
Thu, 17 Sep 2015 23:21:54 +0000 (00:21 +0100)
committerDavid S. Miller <davem@davemloft.net>
Mon, 21 Sep 2015 05:23:40 +0000 (22:23 -0700)
Unless we reset the RX config, on real hardware I don't seem to receive
any packets after a TX timeout.

Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/realtek/8139cp.c

index 52a5334..ba3dab7 100644 (file)
@@ -1261,6 +1261,7 @@ static void cp_tx_timeout(struct net_device *dev)
        cp_clean_rings(cp);
        rc = cp_init_rings(cp);
        cp_start_hw(cp);
+       __cp_set_rx_mode(dev);
        cp_enable_irq(cp);
 
        netif_wake_queue(dev);