From owner-freebsd-current@FreeBSD.ORG Sun Aug 21 18:25:29 2005 Return-Path: X-Original-To: current@FreeBSD.ORG 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 3C10516A41F; Sun, 21 Aug 2005 18:25:29 +0000 (GMT) (envelope-from sos@FreeBSD.ORG) Received: from spider.deepcore.dk (cpe.atm2-0-53484.0x50a6c9a6.abnxx9.customer.tele.dk [80.166.201.166]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4216343D46; Sun, 21 Aug 2005 18:25:28 +0000 (GMT) (envelope-from sos@FreeBSD.ORG) Received: from [194.192.25.136] (mac.deepcore.dk [194.192.25.136]) by spider.deepcore.dk (8.13.3/8.13.3) with ESMTP id j7LINJTs064208; Sun, 21 Aug 2005 20:23:19 +0200 (CEST) (envelope-from sos@FreeBSD.ORG) In-Reply-To: <20050819215038.GN57615@cell.sick.ru> References: <20050819215038.GN57615@cell.sick.ru> Mime-Version: 1.0 (Apple Message framework v734) Content-Type: multipart/mixed; boundary=Apple-Mail-2-312635798 Message-Id: <7C5E04C8-D823-4971-A4E0-7AB375C91136@FreeBSD.ORG> From: =?ISO-8859-1?Q?S=F8ren_Schmidt?= Date: Sun, 21 Aug 2005 20:25:23 +0200 To: Gleb Smirnoff X-Mailer: Apple Mail (2.734) X-mail-scanned: by DeepCore Virus & Spam killer v1.12 Cc: current@FreeBSD.ORG Subject: Re: ATA broken in HEAD X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 21 Aug 2005 18:25:29 -0000 --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--