devices/r8169-2.6.24-ethercat.c
changeset 1376 6b51a2201d41
parent 1353 22b1de4c74e4
child 2251 5023ce75fe91
equal deleted inserted replaced
1375:6cf0f0c9e3da 1376:6b51a2201d41
  2989 
  2989 
  2990 		if (status & LinkChg)
  2990 		if (status & LinkChg)
  2991 			rtl8169_check_link_status(dev, tp, ioaddr);
  2991 			rtl8169_check_link_status(dev, tp, ioaddr);
  2992 
  2992 
  2993 #ifdef CONFIG_R8169_NAPI
  2993 #ifdef CONFIG_R8169_NAPI
  2994 		if (!tp->ecdev && (status & tp->napi_event)) {
  2994 		if (tp->ecdev) {
       
  2995 			/* Rx interrupt */
       
  2996 			if (status & (RxOK | RxOverflow | RxFIFOOver))
       
  2997 				rtl8169_rx_interrupt(dev, tp, ioaddr, ~(u32)0);
       
  2998 
       
  2999 			/* Tx interrupt */
       
  3000 			if (status & (TxOK | TxErr))
       
  3001 				rtl8169_tx_interrupt(dev, tp, ioaddr);
       
  3002 			
       
  3003 		} else if (status & tp->napi_event) {
  2995 			RTL_W16(IntrMask, tp->intr_event & ~tp->napi_event);
  3004 			RTL_W16(IntrMask, tp->intr_event & ~tp->napi_event);
  2996 			tp->intr_mask = ~tp->napi_event;
  3005 			tp->intr_mask = ~tp->napi_event;
  2997 
  3006 
  2998 			if (likely(netif_rx_schedule_prep(dev, &tp->napi)))
  3007 			if (likely(netif_rx_schedule_prep(dev, &tp->napi)))
  2999 				__netif_rx_schedule(dev, &tp->napi);
  3008 				__netif_rx_schedule(dev, &tp->napi);