From owner-freebsd-current Wed Feb 26 11: 7:31 2003 Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A5A6937B401; Wed, 26 Feb 2003 11:07:29 -0800 (PST) Received: from spider.deepcore.dk (cpe.atm2-0-56339.0x50c6aa0a.abnxx2.customer.tele.dk [80.198.170.10]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9491143F3F; Wed, 26 Feb 2003 11:07:27 -0800 (PST) (envelope-from sos@spider.deepcore.dk) Received: (from sos@localhost) by spider.deepcore.dk (8.12.5/8.12.6) id h1QJ7OcV055407; Wed, 26 Feb 2003 20:07:24 +0100 (CET) (envelope-from sos) From: Soeren Schmidt Message-Id: <200302261907.h1QJ7OcV055407@spider.deepcore.dk> Subject: Re: UDMA66 vs ATAPI_DEVICE(atadev)? In-Reply-To: <15965.3516.794342.137264@grasshopper.cs.duke.edu> To: Andrew Gallatin Date: Wed, 26 Feb 2003 20:07:24 +0100 (CET) Cc: sos@freebsd.org, current@freebsd.org X-Mailer: ELM [version 2.4ME+ PL98b (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset=ISO-8859-1 Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG It seems Andrew Gallatin wrote: > > After recent ATA commits, my Promise UDMA66 controller is now running > its drives in PIO4 mode. Previously, UDMA66 was working fine. > > Here's a dmesg snippet: > > atapci0: port 0xdf00-0xdf3f,0xdfe0-0xdfe3,0xdfa8-0xd > faf,0xdfe4-0xdfe7,0xdff0-0xdff7 mem 0xfc8a0000-0xfc8bffff irq 2 at device 2.0 on pci0 > ata2: at 0xdff0 on atapci0 > ata3: at 0xdfa8 on atapci0 > <..> > ad4: 19092MB [38792/16/63] at ata2-master PIO4 > > The controller itself looks like this: > > atapci0@pci0:2:0: class=0x018000 card=0x4d33105a chip=0x4d38105a rev=0x01 hdr=0x00 > vendor = 'Promise Technology Inc' > device = 'PDC20262 FastTrak66 EIDE Controller' > class = mass storage > > > I've found that I can recover from this problem by forcing > ATAPI_DEVICE() to always return 1. It seems to want to return 0 > for devices not on the primary ata controller. > > I'm confused.. What's the point of ATAPI_DEVICE()? Am I not allowed > to use extra controllers anymore? ATAPI_DEVICE is used on those controllers that cannot do ATAPI DMA, the test here is bogusly reversed, I'll fix asap... -Søren To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message