NetBSD Problem Report #21422
Received: (qmail 8197 invoked by uid 605); 1 May 2003 21:40:42 -0000
Message-Id: <m19BLnF-000B3kC@proven.weird.com>
Date: Thu, 1 May 2003 17:40:41 -0400 (EDT)
From: woods@weird.com (Greg A. Woods)
Sender: gnats-bugs-owner@netbsd.org
Reply-To: woods@planix.com (Greg A. Woods)
To: gnats-bugs@gnats.netbsd.org
Subject: 80-pin cable check is broken for ServerWorks CSB5 IDE Controller (rev. 0x93)
X-Send-Pr-Version: 3.95
>Number: 21422
>Category: kern
>Synopsis: 80-pin cable check is broken for ServerWorks CSB5 IDE Controller (rev. 0x93)
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: kern-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Thu May 01 21:41:00 +0000 2003
>Closed-Date:
>Last-Modified:
>Originator: Greg A. Woods
>Release: 2003/04/29
>Organization:
Planix, Inc.; Toronto, Ontario; Canada
>Environment:
System: NetBSD proven 1.5R
Architecture: i386
Machine: i386
>Description:
the 80-pin cable check in src/sys/dev/pci/pciide.c is broken for
ServerWorks CSB5 IDE Controller (rev. 0x93)
>How-To-Repeat:
Install NetBSD-1.6R-20030425 on ASUS PR-DLS533 mainboard system
with UDMA-5 capable disk, such as WDC WD600JB-00CRA1. Watch it
attach using only UDMA-2.
>Fix:
this is a poor hack that simply avoids the issue
Index: pciide.c
===================================================================
RCS file: /cvs/master/m-NetBSD/main/src/sys/dev/pci/pciide.c,v
retrieving revision 1.191
diff -c -r1.191 pciide.c
*** pciide.c 28 Apr 2003 05:20:31 -0000 1.191
--- pciide.c 29 Apr 2003 22:54:02 -0000
***************
*** 5381,5389 ****
--- 5381,5391 ----
if ((chp->wdc->cap & WDC_CAPABILITY_UDMA) &&
(drvp->drive_flags & DRIVE_UDMA)) {
/* use Ultra/DMA, check for 80-pin cable */
+ #if 0 /* this check fails on at least rev. 0x93 chips.... */
if (drvp->UDMA_mode > 2 &&
(PCI_PRODUCT(pci_conf_read(sc->sc_pc, sc->sc_tag, PCI_SUBSYS_ID_REG)) & (1 << (14 + channel))) == 0)
drvp->UDMA_mode = 2;
+ #endif
dma_time |= dma_modes[drvp->DMA_mode] << (8 * (unit^1));
udma_mode |= drvp->UDMA_mode << (4 * unit + 16);
udma_mode |= 1 << unit;
>Release-Note:
>Audit-Trail:
>Unformatted:
(Contact us)
$NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.