Allow write DMA to request larger DMA burst size to get better

performance on BCM5785.

Obtained from:	OpenBSD
This commit is contained in:
yongari 2010-10-01 17:46:15 +00:00
parent c271001bfa
commit f67ca443d1
2 changed files with 5 additions and 0 deletions

View File

@ -1834,6 +1834,10 @@ bge_blockinit(struct bge_softc *sc)
if (BGE_IS_5755_PLUS(sc))
val |= BGE_WDMAMODE_STATUS_TAG_FIX;
/* Request larger DMA burst size to get better performance. */
if (sc->bge_asicrev == BGE_ASICREV_BCM5785)
val |= BGE_WDMAMODE_BURST_ALL_DATA;
/* Turn on write DMA state machine */
CSR_WRITE_4(sc, BGE_WDMA_MODE, val);
DELAY(40);

View File

@ -1481,6 +1481,7 @@
#define BGE_WDMAMODE_LOCREAD_TOOBIG 0x00000200
#define BGE_WDMAMODE_ALL_ATTNS 0x000003FC
#define BGE_WDMAMODE_STATUS_TAG_FIX 0x20000000
#define BGE_WDMAMODE_BURST_ALL_DATA 0xC0000000
/* Write DMA status register */
#define BGE_WDMASTAT_PCI_TGT_ABRT_ATTN 0x00000004