38 lines
		
	
	
		
			1017 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
		
		
			
		
	
	
			38 lines
		
	
	
		
			1017 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
|   | diff --git a/igb/igb_main.c b/igb/igb_main.c | ||
|  | index c881347..77b3fda 100644 | ||
|  | --- a/igb/igb_main.c | ||
|  | +++ b/igb/igb_main.c | ||
|  | @@ -1144,6 +1144,10 @@ int igb_up(struct igb_adapter *adapter) | ||
|  |   | ||
|  |  	netif_tx_start_all_queues(adapter->netdev); | ||
|  |   | ||
|  | +#ifdef DEV_NETMAP | ||
|  | +	netmap_enable_all_rings(adapter->netdev); | ||
|  | +#endif /* DEV_NETMAP */ | ||
|  | + | ||
|  |  	/* start the watchdog. */ | ||
|  |  	hw->mac.get_link_status = 1; | ||
|  |  	schedule_work(&adapter->watchdog_task); | ||
|  | @@ -1167,6 +1171,10 @@ void igb_down(struct igb_adapter *adapter) | ||
|  |  	wr32(E1000_RCTL, rctl & ~E1000_RCTL_EN); | ||
|  |  	/* flush and sleep below */ | ||
|  |   | ||
|  | +#ifdef DEV_NETMAP | ||
|  | +	netmap_disable_all_rings(netdev); | ||
|  | +#endif /* DEV_NETMAP */ | ||
|  | + | ||
|  |  	netif_tx_stop_all_queues(netdev); | ||
|  |   | ||
|  |  	/* disable transmits in the hardware */ | ||
|  | @@ -2018,6 +2026,10 @@ static int igb_open(struct net_device *netdev) | ||
|  |   | ||
|  |  	netif_tx_start_all_queues(netdev); | ||
|  |   | ||
|  | +#ifdef DEV_NETMAP | ||
|  | +	netmap_enable_all_rings(netdev); | ||
|  | +#endif /* DEV_NETMAP */ | ||
|  | + | ||
|  |  	/* start the watchdog. */ | ||
|  |  	hw->mac.get_link_status = 1; | ||
|  |  	schedule_work(&adapter->watchdog_task); |