Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 21 Aug 2005 20:25:23 +0200
From:      =?ISO-8859-1?Q?S=F8ren_Schmidt?= <sos@FreeBSD.ORG>
To:        Gleb Smirnoff <glebius@FreeBSD.ORG>
Cc:        current@FreeBSD.ORG
Subject:   Re: ATA broken in HEAD
Message-ID:  <7C5E04C8-D823-4971-A4E0-7AB375C91136@FreeBSD.ORG>
In-Reply-To: <20050819215038.GN57615@cell.sick.ru>
References:  <20050819215038.GN57615@cell.sick.ru>

next in thread | previous in thread | raw e-mail | index | archive | help

--Apple-Mail-2-312635798
Content-Transfer-Encoding: 7bit
Content-Type: text/plain;
	charset=US-ASCII;
	format=flowed


On 19/08/2005, at 23:50, Gleb Smirnoff wrote:

>   Soren,
>
>   the ATA subsystem has been recently broken in CURRENT.
> I've got Asus A7V8X, with onboard
> Promise controller. A single SATA disk is attached to it.

Please try the attached patch and let me know if that helps you, thanks!

--Apple-Mail-2-312635798
Content-Transfer-Encoding: 7bit
Content-Type: application/octet-stream;
	x-unix-mode=0644;
	name="48diff"
Content-Disposition: attachment;
	filename=48diff

Index: ata-chipset.c
===================================================================
RCS file: /home/ncvs/src/sys/dev/ata/ata-chipset.c,v
retrieving revision 1.129
diff -u -r1.129 ata-chipset.c
--- ata-chipset.c	17 Aug 2005 15:00:33 -0000	1.129
+++ ata-chipset.c	21 Aug 2005 18:21:54 -0000
@@ -2708,10 +2709,12 @@
 	return ata_generic_command(request);
 
     case ATA_READ_DMA:
+    case ATA_READ_DMA48:
 	wordp[0] = htole32(0x04 | ((ch->unit + 1) << 16) | (0x00 << 24));
 	break;
 
     case ATA_WRITE_DMA:
+    case ATA_WRITE_DMA48:
 	wordp[0] = htole32(0x00 | ((ch->unit + 1) << 16) | (0x00 << 24));
 	break;
     }
@@ -2742,14 +2745,19 @@
 
     case ATA_ATA_IDENTIFY:
     case ATA_READ:
+    case ATA_READ48:
     case ATA_READ_MUL:
+    case ATA_READ_MUL48:
     case ATA_WRITE:
+    case ATA_WRITE48:
     case ATA_WRITE_MUL:
+    case ATA_WRITE_MUL48:
 	ATA_OUTL(ctlr->r_res2, 0x000c0400 + ((ch->unit + 1) << 2), 0x00000001);
 	return ata_generic_command(request);
 
     case ATA_SETFEATURES:
     case ATA_FLUSHCACHE:
+    case ATA_FLUSHCACHE48:
     case ATA_SLEEP:
     case ATA_SET_MULTI:
 	wordp = (u_int32_t *)
@@ -2765,7 +2773,9 @@
 	return 0;
 
     case ATA_READ_DMA:
+    case ATA_READ_DMA48:
     case ATA_WRITE_DMA:
+    case ATA_WRITE_DMA48:
 	wordp = (u_int32_t *)
 	    (window + (ch->unit * ATA_PDC_CHN_OFFSET) + ATA_PDC_HSG_OFFSET);
 	i = idx = 0;

--Apple-Mail-2-312635798
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=ISO-8859-1;
	format=flowed


- S=F8ren




--Apple-Mail-2-312635798--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?7C5E04C8-D823-4971-A4E0-7AB375C91136>