devices/e1000/e1000_main-2.6.20-ethercat.c
changeset 2050 a3e59f2a8589
parent 1325 16aacb421bd4
child 2421 bc2d4bf9cbe5
child 2589 2b9c78543663
equal deleted inserted replaced
2015:ce2fae4d3c4f 2050:a3e59f2a8589
  3877 		int ec_work_done = 0;
  3877 		int ec_work_done = 0;
  3878 #endif
  3878 #endif
  3879 		for (i = 0; i < E1000_MAX_INTR; i++)
  3879 		for (i = 0; i < E1000_MAX_INTR; i++)
  3880 #ifdef CONFIG_E1000_NAPI
  3880 #ifdef CONFIG_E1000_NAPI
  3881 			if (unlikely(!adapter->clean_rx(adapter, adapter->rx_ring,
  3881 			if (unlikely(!adapter->clean_rx(adapter, adapter->rx_ring,
  3882                             &ec_work_done, 100) &
  3882                             &ec_work_done, 100) &&
  3883 						!e1000_clean_tx_irq(adapter, adapter->tx_ring)))
  3883 						!e1000_clean_tx_irq(adapter, adapter->tx_ring)))
  3884 #else
  3884 #else
  3885 			if (unlikely(!adapter->clean_rx(adapter, adapter->rx_ring) &
  3885 			if (unlikely(!adapter->clean_rx(adapter, adapter->rx_ring) &&
  3886 						!e1000_clean_tx_irq(adapter, adapter->tx_ring)))
  3886 						!e1000_clean_tx_irq(adapter, adapter->tx_ring)))
  3887 #endif
  3887 #endif
  3888 				break;
  3888 				break;
  3889 	} else {
  3889 	} else {
  3890 		/* this code avoids the read of ICR but has to get 1000 interrupts
  3890 		/* this code avoids the read of ICR but has to get 1000 interrupts
  4015 		int ec_work_done = 0;
  4015 		int ec_work_done = 0;
  4016 #endif
  4016 #endif
  4017 		for (i = 0; i < E1000_MAX_INTR; i++)
  4017 		for (i = 0; i < E1000_MAX_INTR; i++)
  4018 #ifdef CONFIG_E1000_NAPI
  4018 #ifdef CONFIG_E1000_NAPI
  4019 			if (unlikely(!adapter->clean_rx(adapter, adapter->rx_ring,
  4019 			if (unlikely(!adapter->clean_rx(adapter, adapter->rx_ring,
  4020                             &ec_work_done, 100) &
  4020                             &ec_work_done, 100) &&
  4021 						!e1000_clean_tx_irq(adapter, adapter->tx_ring)))
  4021 						!e1000_clean_tx_irq(adapter, adapter->tx_ring)))
  4022 #else
  4022 #else
  4023 			if (unlikely(!adapter->clean_rx(adapter, adapter->rx_ring) &
  4023 			if (unlikely(!adapter->clean_rx(adapter, adapter->rx_ring) &&
  4024 						!e1000_clean_tx_irq(adapter, adapter->tx_ring)))
  4024 						!e1000_clean_tx_irq(adapter, adapter->tx_ring)))
  4025 #endif
  4025 #endif
  4026 				break;
  4026 				break;
  4027 	} else {
  4027 	} else {
  4028 #ifdef CONFIG_E1000_NAPI
  4028 #ifdef CONFIG_E1000_NAPI