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