From owner-freebsd-current Wed Feb 12 9:24: 7 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 330E337B401; Wed, 12 Feb 2003 09:24:05 -0800 (PST) Received: from delivery.infowest.com (delivery.infowest.com [204.17.177.5]) by mx1.FreeBSD.org (Postfix) with ESMTP id A8E5843F3F; Wed, 12 Feb 2003 09:24:04 -0800 (PST) (envelope-from agifford@infowest.com) Received: from infowest.com (eq.net [208.186.104.163]) by delivery.infowest.com (Postfix) with ESMTP id 0C98CE3D285; Wed, 12 Feb 2003 10:24:02 -0700 (MST) Message-ID: <3E4A8330.2070905@infowest.com> Date: Wed, 12 Feb 2003 10:24:00 -0700 From: "Aaron D. Gifford" User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.2.1) Gecko/20021130 X-Accept-Language: en-us, en MIME-Version: 1.0 To: freebsd-gnats-submit@freebsd.org, current@freebsd.org Subject: Re: kern/43345: Support for the SiS 651 ATA controller Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit 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 Hi, When I attempted to install FreeBSD 5.0-RELEASE on a Shuttle SS51G box, just like some other users, I encountered the "ata0: READ command timeout" error during boot. I then tried 4.7-RELEASE and saw the same problem. A quick search of the FreeBSD mail archives turned up other users with my same hardware (which uses the SiS 651 ata controller) who had encountered this. Those messages told me that I needed to either disable UDMA in my system's BIOS, or set the sysctl variable hw.ata.ata_dma to zero. I disabled UDMA in my BIOS and was able to complete the install. Then on one of the messages, I noticed a link to Patrick Bihan-Faou's problem report, read it, and tried out his patch under 5.0-CURRENT (having completed my install of 5.0-RELEASE and updated to -CURRENT). Of course the line numbers were a bit different, but a hand patch of the two files was quick and easy. A quick kernel recompile, BIOS re-enable of UDMA, and boot proved the patch worked! Thank you, Patrick, for your patch! Now for a few questions: Is there any way Patrick's solution could be temporarily committed to -CURRENT and/or -STABLE until Soeren's forthcoming real solution is available (the one Soeren mentions in the PR)? Is there some bad side effect to Patrick's two-line temporary fix that I should worry about? If there are no negatives to the patch (other than a better fix is coming in the future), is there some other reason that the patch is not a good temporary solution for users with SiS 651 based systems, so they can install and boot to FreeBSD without the work-arounds (BIOS or sysctl setting change)? Thanks for your good work, Soeren, and thanks again for your patch, Patrick. Aaron out. P.S. Here is Patrick's solution as a diff against a recent 5.0-CURRENT: --- /usr/src/sys/dev/ata/ata-dma.c.orig Fri Feb 7 11:22:38 2003 +++ /usr/src/sys/dev/ata/ata-dma.c Fri Feb 7 11:23:24 2003 @@ -645,6 +645,7 @@ ata_find_dev(parent, 0x06401039, 0) || /* SiS 640 */ ata_find_dev(parent, 0x06451039, 0) || /* SiS 645 */ ata_find_dev(parent, 0x06501039, 0) || /* SiS 650 */ + ata_find_dev(parent, 0x06511039, 0) || /* SiS 651 */ ata_find_dev(parent, 0x07301039, 0) || /* SiS 730 */ ata_find_dev(parent, 0x07331039, 0) || /* SiS 733 */ ata_find_dev(parent, 0x07351039, 0) || /* SiS 735 */ --- /usr/src/sys/dev/ata/ata-pci.c.orig Fri Feb 7 11:22:46 2003 +++ /usr/src/sys/dev/ata/ata-pci.c Fri Feb 7 11:23:40 2003 @@ -189,6 +189,7 @@ ata_find_dev(dev, 0x06401039, 0) || ata_find_dev(dev, 0x06451039, 0) || ata_find_dev(dev, 0x06501039, 0) || + ata_find_dev(dev, 0x06511039, 0) || ata_find_dev(dev, 0x07301039, 0) || ata_find_dev(dev, 0x07331039, 0) || ata_find_dev(dev, 0x07351039, 0) || To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message