From owner-freebsd-stable@FreeBSD.ORG Mon Jul 18 21:14:49 2011 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A1D811065673 for ; Mon, 18 Jul 2011 21:14:49 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from cyrus.watson.org (cyrus.watson.org [65.122.17.42]) by mx1.freebsd.org (Postfix) with ESMTP id 773B98FC15 for ; Mon, 18 Jul 2011 21:14:49 +0000 (UTC) Received: from bigwig.baldwin.cx (66.111.2.69.static.nyinternet.net [66.111.2.69]) by cyrus.watson.org (Postfix) with ESMTPSA id 2C18446B2A; Mon, 18 Jul 2011 17:14:49 -0400 (EDT) Received: from jhbbsd.localnet (unknown [209.249.190.124]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id BC4548A02E; Mon, 18 Jul 2011 17:14:48 -0400 (EDT) From: John Baldwin To: Scott Long Date: Mon, 18 Jul 2011 17:14:07 -0400 User-Agent: KMail/1.13.5 (FreeBSD/8.2-CBSD-20110617; KDE/4.5.5; amd64; ; ) References: <4E20BA23.13717.66C6F57@markmcconnell.iinet.com> <201107181402.12755.jhb@freebsd.org> <797CACDE-729E-4F3A-AEFF-531C00C2B83A@samsco.org> In-Reply-To: <797CACDE-729E-4F3A-AEFF-531C00C2B83A@samsco.org> MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <201107181714.07827.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.6 (bigwig.baldwin.cx); Mon, 18 Jul 2011 17:14:48 -0400 (EDT) Cc: markmc@dataabstractsolutions.com, "freebsd-stable@freebsd.org Stable" Subject: Re: disable 64-bit dma for one PCI slot only? X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 18 Jul 2011 21:14:49 -0000 On Monday, July 18, 2011 5:06:40 pm Scott Long wrote: > On Jul 18, 2011, at 12:02 PM, John Baldwin wrote: > > On Friday, July 15, 2011 6:07:31 pm Mark McConnell wrote: > >> Dear folks, > >> > >> I have two LSI raid cards, one of which (SCSI 320-I) supports > >> 64-bit DMA when 4GB+ of DDR is present and another which > >> does not (SATA 150-D) . Consquently I've disabled 64-bit > >> addressing for amr devices. > >> > >> I would like to disable 64-bit addressing for the SATA card, but > >> permit it for the SCSI card. Is this possible? > > > > You'd have to hack the driver perhaps to only disable 64-bit DMA for certain > > PCI IDs. It probably already does this? > > > > The driver already had a table for determining 64bit DMA based on the PCI ID. > I guess there's a mistake in the table for this particular card. I think that > changing the following line to remove the AMR_ID_DO_SG64 flag will fix the > problem: > > {0x1000, 0x1960, AMR_ID_QUARTZ | AMR_ID_DO_SG64 | AMR_ID_PROBE_SIG}, > > Actually, what's probably going on is that the driver is only looking at the > vendor and device id's, and is ignoring the subvendor and subdevice id's that > would give it a better clue on the exact hardware in use. Fixing the driver > to look at all 64bits of id info (and take into account wildcards where > needed) would be a good project, if anyone is interested. > > Btw, I *HATE* the "chip" and "card" identifiers used in pciconf. Can we > change it to emit the standard (sub)vendor/(sub)device terminology? Oh, yeah. I hate that too. Would you want them as 4 separate entities or to just rename the labels to 'devid' and 'subdevid'? -- John Baldwin