TomOn Thu, 29 Jun 2006 15:01:07 -0500, Francois Romieu <[EMAIL PROTECTED]> wrote:
Tom Rix <[EMAIL PROTECTED]> :
[...]
diff -rup a/drivers/net/sb1250-mac.c b/drivers/net/sb1250-mac.c
--- a/drivers/net/sb1250-mac.c 2006-03-09 04:25:41.000000000 -0600
+++ b/drivers/net/sb1250-mac.c 2006-03-09 05:30:52.000000000 -0600
[...]
@@ -2079,13 +2095,31 @@ static irqreturn_t sbmac_intr(int irq,vo
* Transmits on channel 0
*/
+#if defined(CONFIG_SBMAC_NAPI)
if (isr & (M_MAC_INT_CHANNEL << S_MAC_TX_CH0)) {
- sbdma_tx_process(sc,&(sc->sbm_txdma));
+ sbdma_tx_process(sc,&(sc->sbm_txdma), 0);
}
/*
* Receives on channel 0
*/
+ if (isr & (M_MAC_INT_CHANNEL << S_MAC_RX_CH0)) {
+ if (netif_rx_schedule_prep(dev))
+ {
An irq could appear here. I am skeptical that it is safe to write
the irq mask register so late.
One should probably consider a break in the enclosing "for" loop too.
+ __raw_writeq(0, sc->sbm_imr);
+ __netif_rx_schedule(dev);
+ }
+ else
+ {
} else {, please.
-- Using Opera's revolutionary e-mail client: http://www.opera.com/mail/
mips-sb1250-mac-NAPI-5.patch
Description: Binary data
