Skip site navigation (1)Skip section navigation (2)
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>