From owner-cvs-all@FreeBSD.ORG Mon Dec 10 20:14:17 2007 Return-Path: Delivered-To: cvs-all@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5441D16A418; Mon, 10 Dec 2007 20:14:17 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 4241613C455; Mon, 10 Dec 2007 20:14:17 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lBAKEHIU086306; Mon, 10 Dec 2007 20:14:17 GMT (envelope-from jhb@repoman.freebsd.org) Received: (from jhb@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lBAKEHbv086305; Mon, 10 Dec 2007 20:14:17 GMT (envelope-from jhb) Message-Id: <200712102014.lBAKEHbv086305@repoman.freebsd.org> From: John Baldwin Date: Mon, 10 Dec 2007 20:14:17 +0000 (UTC) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: RELENG_6 Cc: Subject: cvs commit: src/sys/alpha/alpha busdma_machdep.c src/sys/alpha/include md_var.h src/sys/alpha/pci cia.c X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Dec 2007 20:14:17 -0000 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