diff options
author | tmm <tmm@FreeBSD.org> | 2002-07-16 18:17:03 +0000 |
---|---|---|
committer | tmm <tmm@FreeBSD.org> | 2002-07-16 18:17:03 +0000 |
commit | 339b19ff8769382b851d5afdf459444e98c38aa9 (patch) | |
tree | ddaa92d3a8ab210d57f2175b768cb5b45ab192d0 /sys/sparc64/pci | |
parent | 8da6f99dd3fe1e0504a84aa5efce59ba5e6c82a1 (diff) | |
download | FreeBSD-src-339b19ff8769382b851d5afdf459444e98c38aa9.zip FreeBSD-src-339b19ff8769382b851d5afdf459444e98c38aa9.tar.gz |
When multiple IOMMUs are present in a system, use a single TSB for all
of them, and couple them by always performing all operations on all
present IOMMUs. This is required because with the current API there
is no way to determine on which bus a busdma operation is performed.
While being there, clean up the iommu code a bit.
This should be a step in the direction of allow some of larger machines
to work; tests have shown that there still seem to be problems left.
Diffstat (limited to 'sys/sparc64/pci')
-rw-r--r-- | sys/sparc64/pci/psycho.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/sparc64/pci/psycho.c b/sys/sparc64/pci/psycho.c index 901639e..65a94d1 100644 --- a/sys/sparc64/pci/psycho.c +++ b/sys/sparc64/pci/psycho.c @@ -846,7 +846,7 @@ psycho_iommu_init(struct psycho_softc *sc, int tsbsize) panic("couldn't malloc iommu name"); snprintf(name, 32, "%s dvma", device_get_name(sc->sc_dev)); - iommu_init(name, is, tsbsize, iobase); + iommu_init(name, is, tsbsize, iobase, 0); } static void |