svn commit: r221920 - stable/7/sys/sparc64/pci
Marius Strobl
marius at FreeBSD.org
Sat May 14 21:07:53 UTC 2011
Author: marius
Date: Sat May 14 21:07:52 2011
New Revision: 221920
URL: http://svn.freebsd.org/changeset/base/221920
Log:
MFC: r219785
- Make a panic message better reflect the actual problem.
- A closer inspection of the OpenSolaris code indicates the block store
workaround is only necessary in case of BUS_DMASYNC_POSTREAD.
- Mark some unused parameters as such.
Modified:
stable/7/sys/sparc64/pci/fire.c
Directory Properties:
stable/7/sys/ (props changed)
stable/7/sys/cddl/contrib/opensolaris/ (props changed)
stable/7/sys/contrib/dev/acpica/ (props changed)
stable/7/sys/contrib/pf/ (props changed)
Modified: stable/7/sys/sparc64/pci/fire.c
==============================================================================
--- stable/7/sys/sparc64/pci/fire.c Sat May 14 21:07:51 2011 (r221919)
+++ stable/7/sys/sparc64/pci/fire.c Sat May 14 21:07:52 2011 (r221920)
@@ -336,7 +336,7 @@ fire_attach(device_t dev)
if (OF_getprop(node, "portid", &sc->sc_ign, sizeof(sc->sc_ign)) == -1)
panic("%s: could not determine IGN", __func__);
if (OF_getprop(node, "module-revision#", &prop, sizeof(prop)) == -1)
- panic("%s: could not determine revision", __func__);
+ panic("%s: could not determine module-revision", __func__);
device_printf(dev, "%s, module-revision %d, IGN %#x\n",
desc->fd_name, prop, sc->sc_ign);
@@ -1509,18 +1509,20 @@ fire_dmamap_sync(bus_dma_tag_t dt __unus
static u_char buf[VIS_BLOCKSIZE] __aligned(VIS_BLOCKSIZE);
register_t reg, s;
- if ((map->dm_flags & DMF_LOADED) == 0 ||
- (op & ~BUS_DMASYNC_POSTWRITE) == 0)
+ if ((map->dm_flags & DMF_LOADED) == 0)
return;
- s = intr_disable();
- reg = rd(fprs);
- wr(fprs, reg | FPRS_FEF, 0);
- __asm __volatile("stda %%f0, [%0] %1"
- : : "r" (buf), "n" (ASI_BLK_COMMIT_S));
- membar(Sync);
- wr(fprs, reg, 0);
- intr_restore(s);
+ if ((op & BUS_DMASYNC_POSTREAD) != 0) {
+ s = intr_disable();
+ reg = rd(fprs);
+ wr(fprs, reg | FPRS_FEF, 0);
+ __asm __volatile("stda %%f0, [%0] %1"
+ : : "r" (buf), "n" (ASI_BLK_COMMIT_S));
+ membar(Sync);
+ wr(fprs, reg, 0);
+ intr_restore(s);
+ } else if ((op & BUS_DMASYNC_PREWRITE) != 0)
+ membar(Sync);
}
static void
@@ -2127,7 +2129,7 @@ fire_release_resource(device_t bus, devi
}
static bus_dma_tag_t
-fire_get_dma_tag(device_t bus, device_t child)
+fire_get_dma_tag(device_t bus, device_t child __unused)
{
struct fire_softc *sc;
@@ -2136,7 +2138,7 @@ fire_get_dma_tag(device_t bus, device_t
}
static phandle_t
-fire_get_node(device_t bus, device_t dev)
+fire_get_node(device_t bus, device_t child __unused)
{
struct fire_softc *sc;
More information about the svn-src-stable-7
mailing list