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>