Date: Mon, 10 Dec 2007 20:14:17 +0000 (UTC) From: John Baldwin <jhb@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/alpha/alpha busdma_machdep.c src/sys/alpha/include md_var.h src/sys/alpha/pci cia.c Message-ID: <200712102014.lBAKEHbv086305@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
jhb 2007-12-10 20:14:16 UTC
FreeBSD src repository
Modified files: (Branch: RELENG_6)
sys/alpha/alpha busdma_machdep.c
sys/alpha/include md_var.h
sys/alpha/pci cia.c
Log:
- Add a workaround for the DMA bugs on some alpha chipsets that ATA DMA
trips over often. Specifically, in these chipsets DMA transfers that
cross a page boundary result in data corruption. The workaround is to
not allow any DMA transfers for non-static DMA maps (i.e. "real"
transfers as opposed to work areas allocated with bus_dmamem_alloc()) to
cross a page in a single S/G element. This behavior is enabled by
setting 'busdma_pyxis_bug' to 1.
- Add a new tunable 'machdep.busdma_pyxis_bug' that can be used to enable
the workaround from the loader. This can be used to enable it on
chipsets where we don't automatically enable it.
- Auto-enable the workaround for buggy PYXIS 1 chipsets supported via
cia(4).
PR: alpha/75317
Revision Changes Path
1.51.2.3 +23 -6 src/sys/alpha/alpha/busdma_machdep.c
1.23.10.1 +1 -0 src/sys/alpha/include/md_var.h
1.44.2.1 +1 -0 src/sys/alpha/pci/cia.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200712102014.lBAKEHbv086305>
