Date: Tue, 10 Oct 2000 18:15:35 +0100 (BST) From: George Reid <geeorgy@nevernet.net> To: FreeBSD-gnats-submit@freebsd.org Subject: kern/21893: SiS 5591 (early revision) has broken UDMA33 Message-ID: <Pine.BSF.4.21.0010101800520.344-100000@sobek.nevernet.net>
next in thread | raw e-mail | index | archive | help
>Number: 21893 >Category: kern >Synopsis: SiS 5591 (early revision) has broken UDMA33 >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Tue Oct 10 10:40:00 PDT 2000 >Closed-Date: >Last-Modified: >Originator: George Reid >Release: FreeBSD 4.1-RELEASE i386 >Organization: NeverNET IRC >Environment: FreeBSD 4.1-RELEASE i386 >Description: The SiS 5591 IDE controller (an supposedly-ATA33 model) does not work in ATA33 mode and attempts to revers to PIO. The chipset revision is 0xc1 and I have been informed that early revisions have issues with UDMA. The drive is a Fujitsu MPD3043AD, which is capable of UDMA4 (the 5591 does not support this) and UDMA2 (which this controller does not support either). Booting the system causes a freeze after 3 read timeouts when it attempts to revert to PIO mode after setting UDMA2 mode on the drive. >How-To-Repeat: Boot a system with an early revision (<= 0xc1) SiS 5591 controller and a drive capable of UDMA2. >Fix: --- ata-dma.c.orig Tue Oct 10 17:09:35 2000 +++ ata-dma.c Tue Oct 10 17:56:31 2000 @@ -377,7 +377,12 @@ break; case 0x55131039: /* SiS 5591 */ - if (udmamode >= 2) { + if (pci_get_revid(scp->dev) <= 0xc1) { + if (udmamode >= 2) + ata_printf(scp, device, + "buggy SiS 5591 chip revision, not setting UDMA2\n"); + } + else if (udmamode >= 2) { error = ata_command(scp, device, ATA_C_SETFEATURES, 0, 0, 0, ATA_UDMA2, ATA_C_F_SETXFER, ATA_WAIT_READY); if (bootverbose) >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0010101800520.344-100000>