PERFORCE change 139455 for review
Oleksandr Tymoshenko
gonzo at FreeBSD.org
Sun Apr 6 14:42:18 UTC 2008
http://perforce.freebsd.org/chv.cgi?CH=139455
Change 139455 by gonzo at gonzo_jeeves on 2008/04/06 14:41:17
o ACK TX interrupt by writing to Status register of DMA channel 1 (tx)
o sync TX descriptors after all operations has been performed on them
o We should care only about F and E interrupts for TX descriptor.
Affected files ...
.. //depot/projects/mips2-jnpr/src/sys/mips/mips32/idt/if_kr.c#3 edit
Differences ...
==== //depot/projects/mips2-jnpr/src/sys/mips/mips32/idt/if_kr.c#3 (text+ko) ====
@@ -1425,6 +1425,9 @@
}
sc->kr_cdata.kr_tx_cons = cons;
+
+ bus_dmamap_sync(sc->kr_cdata.kr_tx_ring_tag,
+ sc->kr_cdata.kr_tx_ring_map, BUS_DMASYNC_PREWRITE);
}
@@ -1574,9 +1577,11 @@
device_printf(sc->kr_dev, "DMA error\n");
}
- /* Enable F, H, E interrupts */
+ KR_DMA_WRITE_REG(KR_DMA_TXCHAN, DMA_S, ~status);
+
+ /* Enable F, E interrupts */
KR_DMA_CLEARBITS_REG(KR_DMA_TXCHAN, DMA_SM,
- DMA_SM_D | DMA_SM_H | DMA_SM_E);
+ DMA_SM_F | DMA_SM_E);
KR_UNLOCK(sc);
More information about the p4-projects
mailing list