svn commit: r211369 - stable/8/sys/dev/bge
Pyun YongHyeon
yongari at FreeBSD.org
Sun Aug 15 22:44:29 UTC 2010
Author: yongari
Date: Sun Aug 15 22:44:28 2010
New Revision: 211369
URL: http://svn.freebsd.org/changeset/base/211369
Log:
MFC r209741:
Zero entire status block and add missing bus_dmamap_sync(9).
Modified:
stable/8/sys/dev/bge/if_bge.c
Directory Properties:
stable/8/sys/ (props changed)
stable/8/sys/amd64/include/xen/ (props changed)
stable/8/sys/cam/ (props changed)
stable/8/sys/cddl/contrib/opensolaris/ (props changed)
stable/8/sys/contrib/dev/acpica/ (props changed)
stable/8/sys/contrib/pf/ (props changed)
stable/8/sys/dev/e1000/ (props changed)
stable/8/sys/dev/xen/xenpci/ (props changed)
Modified: stable/8/sys/dev/bge/if_bge.c
==============================================================================
--- stable/8/sys/dev/bge/if_bge.c Sun Aug 15 22:42:15 2010 (r211368)
+++ stable/8/sys/dev/bge/if_bge.c Sun Aug 15 22:44:28 2010 (r211369)
@@ -1787,15 +1787,19 @@ bge_blockinit(struct bge_softc *sc)
BGE_ADDR_HI(sc->bge_ldata.bge_status_block_paddr));
CSR_WRITE_4(sc, BGE_HCC_STATUSBLK_ADDR_LO,
BGE_ADDR_LO(sc->bge_ldata.bge_status_block_paddr));
- sc->bge_ldata.bge_status_block->bge_idx[0].bge_rx_prod_idx = 0;
- sc->bge_ldata.bge_status_block->bge_idx[0].bge_tx_cons_idx = 0;
/* Set up status block size. */
if (sc->bge_asicrev == BGE_ASICREV_BCM5700 &&
- sc->bge_chipid != BGE_CHIPID_BCM5700_C0)
+ sc->bge_chipid != BGE_CHIPID_BCM5700_C0) {
val = BGE_STATBLKSZ_FULL;
- else
+ bzero(sc->bge_ldata.bge_status_block, BGE_STATUS_BLK_SZ);
+ } else {
val = BGE_STATBLKSZ_32BYTE;
+ bzero(sc->bge_ldata.bge_status_block, 32);
+ }
+ bus_dmamap_sync(sc->bge_cdata.bge_status_tag,
+ sc->bge_cdata.bge_status_map,
+ BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE);
/* Turn on host coalescing state machine */
CSR_WRITE_4(sc, BGE_HCC_MODE, val | BGE_HCCMODE_ENABLE);
More information about the svn-src-stable-8
mailing list