Subject: port-i386/23321: 3ware Escalade 7506-8 doesn't run with 440BX (P2B-DS)
To: None <gnats-bugs@gnats.netbsd.org>
From: None <jam@pobox.com>
List: netbsd-bugs
Date: 10/30/2003 17:27:30
>Number:         23321
>Category:       port-i386
>Synopsis:       3ware Escalade 7506-8 doesn't run with 440BX (P2B-DS)
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    port-i386-maintainer
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Oct 30 23:28:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     Kazushi (Jam) Marukawa
>Release:        NetBSD 1.6ZC
>Organization:
none
>Environment:
System: NetBSD fs.nerv.org 1.6ZE NetBSD 1.6ZE (sou) #2: Wed Oct 29 21:50:51 CST 2003 jam@fs.nerv.org:/usr/src/sys/arch/i386/compile/sou i386
Architecture: i386
Machine: i386
>Description:
	When I boot P2B-DS with 7506-8, the device driver (twe.c) shows
"twe0: unexpected status bits: 0x00800000" warning messages on console
forever.  This problem happened on P2B-DS only.  For example, TUV4X
(Apollo 133T chipset) worked fine with 7506-8.
	This 00800000 means "TWE_STS_PCI_PARITY_ERROR".
	I checked Linux and FreeBSD and leared they are submitting
"TWE_CTL_CLEAR_PARITY_ERROR" when they get this error.  I thought
they are clearing errors, so that they don't show error messages
forever.
	I modified NetBSD's twe.c to clear errors.  It solved the
problem, but NetBSD stop working at the later part of system
initialization.  It just hang when it executed tsleep at PRIBIO
level (inside of SCSI initialization.  kernel says wait 2 secs
and is gone).  I might break the kernel semantics by sending clear
error message.
	Is it possible to work on twe.c to improve it like other OS's
driver?  Thanks in advance.
>How-To-Repeat:
	Install 7506-8 to P2B-DS and boot it up.
>Fix:
	Nothing.
>Release-Note:
>Audit-Trail:
>Unformatted: