Michael Reiss 702ff12ce7 ucc_geth: NAPI-related bug fixes
Based partly on the gianfar driver, this patch fixes several
bugs which were causing NAPI to be completely unusable.
* An IRQ is still needed in NAPI, to kick off NAPI task,
  and for Tx processing.  Request the IRQ.
* If rx_work_limit = 0 we are not complete.
* While running Rx NAPI processing we must mask Rx events,
  including Rx busy.
* ucc_geth_rx function does not need a lock.
  Could lead to deadlock in NAPI case.
* There's no need to loop reading ucce multiple times in the ISR,
  so while adding the call to schedule NAPI which was not there,
  simplify the event processing into if-else format.
* Rx Busy now kicks off NAPI processing, while still
  being counted as an error.

Signed-off-by: Michael Reiss <michael.f.reiss@freescale.com>
Signed-off-by: Michael Barkowski <michael.barkowski@freescale.com>
Signed-off-by: Kim Phillips <kim.phillips@freescale.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
2007-04-28 11:01:04 -04:00
..
2007-04-25 22:28:26 -07:00
2007-04-28 11:00:57 -04:00
2007-04-28 11:01:02 -04:00
2007-04-28 11:00:59 -04:00
2007-02-09 09:14:07 -08:00
2006-09-13 13:24:59 -04:00
2006-09-13 13:24:59 -04:00
2006-09-13 13:24:59 -04:00
2006-09-13 13:24:59 -04:00
2006-09-13 13:24:59 -04:00
2006-09-13 13:24:59 -04:00
2007-02-09 09:14:07 -08:00
2007-02-06 19:03:56 -05:00
2006-09-13 13:24:59 -04:00
2006-09-13 13:24:59 -04:00
2007-02-09 16:23:17 +00:00
2006-09-13 13:24:59 -04:00
2006-09-13 13:24:59 -04:00
2006-09-13 13:24:59 -04:00
2006-09-13 13:24:59 -04:00
2007-02-09 09:14:07 -08:00
2006-09-13 13:24:59 -04:00
2007-02-09 09:14:07 -08:00
2006-09-13 13:24:59 -04:00
2006-09-13 13:24:59 -04:00
2006-12-09 09:41:18 -08:00
2006-12-02 00:11:56 -05:00
2007-03-29 11:46:52 -07:00
2007-04-28 11:01:04 -04:00
2006-12-02 00:11:56 -05:00
2007-02-07 18:50:53 -05:00
2007-02-09 08:28:48 -08:00
2007-04-28 11:01:04 -04:00
2006-09-13 13:24:59 -04:00
2006-12-04 02:00:34 -05:00
2006-12-02 21:22:37 -08:00
2006-09-13 13:24:59 -04:00
2006-09-13 13:24:59 -04:00
2007-04-28 11:00:58 -04:00
2007-04-25 22:24:41 -07:00
2007-04-28 11:01:01 -04:00
2007-04-28 11:01:03 -04:00
2007-04-28 11:01:01 -04:00
2007-04-28 11:01:01 -04:00
2006-09-13 13:24:59 -04:00
2006-09-13 13:24:59 -04:00
2007-04-28 11:01:00 -04:00
2007-04-28 11:01:00 -04:00
2006-09-13 13:24:59 -04:00
2007-04-25 22:24:41 -07:00
2006-09-13 13:24:59 -04:00
2007-02-09 09:14:07 -08:00
2007-02-09 09:14:07 -08:00
2007-02-05 16:58:46 -05:00
2007-02-05 16:58:43 -05:00
2007-02-27 04:16:03 -05:00
2006-11-22 14:57:56 +00:00
2007-04-26 01:00:55 -07:00
2007-04-28 11:01:04 -04:00
2007-04-28 11:01:04 -04:00
2007-02-09 09:14:07 -08:00
2006-12-02 00:11:56 -05:00