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>