PERFORCE change 137242 for review
Robert Watson
rwatson at FreeBSD.org
Sun Mar 9 18:39:15 UTC 2008
http://perforce.freebsd.org/chv.cgi?CH=137242
Change 137242 by rwatson at rwatson_cinnamon on 2008/03/09 18:38:47
Very slight further integration.
Affected files ...
.. //depot/projects/zcopybpf/src/sys/dev/gem/if_gem.c#8 integrate
Differences ...
==== //depot/projects/zcopybpf/src/sys/dev/gem/if_gem.c#8 (text+ko) ====
@@ -29,7 +29,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/gem/if_gem.c,v 1.47 2008/01/17 23:37:46 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/gem/if_gem.c,v 1.48 2008/03/09 17:55:19 marius Exp $");
/*
* Driver for Apple GMAC, Sun ERI and Sun GEM Ethernet controllers
@@ -327,11 +327,11 @@
* allocated.
*/
- /* Get RX FIFO size */
+ /* Get RX FIFO size. */
sc->sc_rxfifosize = 64 *
bus_read_4(sc->sc_res[0], GEM_RX_FIFO_SIZE);
- /* Get TX FIFO size */
+ /* Get TX FIFO size. */
v = bus_read_4(sc->sc_res[0], GEM_TX_FIFO_SIZE);
device_printf(sc->sc_dev, "%ukB RX FIFO, %ukB TX FIFO\n",
sc->sc_rxfifosize / 1024, v / 16);
@@ -598,7 +598,7 @@
bus_read_4(sc->sc_res[0], GEM_MAC_LATE_COLL_CNT);
/*
- * then clear the hardware counters.
+ * Then clear the hardware counters.
*/
bus_write_4(sc->sc_res[0], GEM_MAC_NORM_COLL_CNT, 0);
bus_write_4(sc->sc_res[0], GEM_MAC_FIRST_COLL_CNT, 0);
@@ -724,7 +724,7 @@
if (!gem_bitwait(sc, GEM_RX_CONFIG, GEM_RX_CONFIG_RXDMA_EN, 0))
device_printf(sc->sc_dev, "cannot disable RX DMA\n");
- /* Finally, reset the ERX */
+ /* Finally, reset the ERX. */
bus_write_4(sc->sc_res[0], GEM_RESET, GEM_RESET_RX);
bus_barrier(sc->sc_res[0], GEM_RESET, 4, BUS_SPACE_BARRIER_WRITE);
if (!gem_bitwait(sc, GEM_RESET, GEM_RESET_RX | GEM_RESET_TX, 0)) {
@@ -794,7 +794,7 @@
if (!gem_bitwait(sc, GEM_TX_CONFIG, GEM_TX_CONFIG_TXDMA_EN, 0))
device_printf(sc->sc_dev, "cannot disable TX DMA\n");
- /* Finally, reset the ETX */
+ /* Finally, reset the ETX. */
bus_write_4(sc->sc_res[0], GEM_RESET, GEM_RESET_TX);
bus_barrier(sc->sc_res[0], GEM_RESET, 4, BUS_SPACE_BARRIER_WRITE);
if (!gem_bitwait(sc, GEM_RESET, GEM_RESET_RX | GEM_RESET_TX, 0)) {
@@ -817,9 +817,6 @@
return (gem_bitwait(sc, GEM_MAC_RX_CONFIG, GEM_MAC_RX_ENABLE, 0));
}
-/*
- * disable transmitter.
- */
static int
gem_disable_tx(struct gem_softc *sc)
{
@@ -1090,6 +1087,9 @@
}
} else if (error != 0)
return (error);
+ /* If nsegs is wrong then the stack is corrupt. */
+ KASSERT(nsegs <= GEM_NTXSEGS,
+ ("%s: too many DMA segments (%d)", __func__, nsegs));
if (nsegs == 0) {
m_freem(*m_head);
*m_head = NULL;
@@ -1602,7 +1602,6 @@
error = bus_dmamap_load_mbuf_sg(sc->sc_rdmatag, rxs->rxs_dmamap,
m, segs, &nsegs, BUS_DMA_NOWAIT);
- KASSERT(nsegs == 1, ("Too many segments returned!"));
if (error != 0) {
device_printf(sc->sc_dev,
"cannot load RS DMA map %d, error = %d\n", idx, error);
@@ -1610,6 +1609,8 @@
return (error);
}
/* If nsegs is wrong then the stack is corrupt. */
+ KASSERT(nsegs == 1,
+ ("%s: too many DMA segments (%d)", __func__, nsegs));
rxs->rxs_mbuf = m;
rxs->rxs_paddr = segs[0].ds_addr;
@@ -1752,7 +1753,7 @@
gem_mifinit(struct gem_softc *sc)
{
- /* Configure the MIF in frame mode */
+ /* Configure the MIF in frame mode. */
bus_write_4(sc->sc_res[0], GEM_MIF_CONFIG, bus_read_4(sc->sc_res[0],
GEM_MIF_CONFIG) & ~GEM_MIF_CONFIG_BB_ENA);
}
More information about the p4-projects
mailing list