*BSD News Article 68882


Return to BSD News archive

Path: euryale.cc.adfa.oz.au!newshost.anu.edu.au!harbinger.cc.monash.edu.au!nntp.coast.net!howland.reston.ans.net!world1.bawave.com!news2.cais.net!news.cais.net!bofh.dot!news.mathworks.com!fu-berlin.de!zib-berlin.de!news.tu-chemnitz.de!irz401!uriah.heep!news
From: j@uriah.heep.sax.de (J Wunsch)
Newsgroups: comp.unix.bsd.freebsd.misc
Subject: Re: Does FreeBSD support EIDE interfaces?
Date: 18 May 1996 22:22:52 GMT
Organization: Private BSD site, Dresden
Lines: 61
Message-ID: <4nlijs$1l5@uriah.heep.sax.de>
References: <DrGGqM.5A9@ecf.toronto.edu> <4nfrki$i8@dyson.iquest.net>
Reply-To: joerg_wunsch@uriah.heep.sax.de (Joerg Wunsch)
NNTP-Posting-Host: localhost.heep.sax.de
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
X-Newsreader: knews 0.9.6
X-Phone: +49-351-2012 669
X-PGP-Fingerprint: DC 47 E6 E4 FF A6 E9 8F  93 21 E0 7D F9 12 D6 4E

root@dyson.iquest.net (John S. Dyson) wrote:

> > Now, my second question is not BSD oriented but I thought I'd
> throw it >out there anyways.  I noticed that the ASUS motherboard
> for a 166 Pentium has >built in Serial/Parallel/Floppy/Hard Drive
> controllers.  Does anybody know if >the controllers are IDE or EIDE?

> IDE interface on the ASUS motherboard is EIDE, and the motherboard is really
> nice.  It appears to be quite compatible with FreeBSD.

One minor correction:

Some ASUS mainboards (i think they're discontinued now) have been
equipped with the very broken UMC 8669F chip.  The UARTs on this chip
are basically unusable for UUCP (since UUCP switches data rates very
often, and the UARTs on the 8669 totally lose synch then).  The
builtin floppy controller is not bug compatible with the original
NE765, and thus triggered a bug in the FreeBSD floppy disk driver.
The following patch (against 2.1R) works around this bug.  (It's
already in -current and -stable.  Courtesy to Bruce Evans, who
examined the brokeness of this chip, and came up with this workaround)

Index: /sys/i386/isa/fd.c
===================================================================
RCS file: /home/cvs/src/sys/i386/isa/fd.c,v
retrieving revision 1.62
retrieving revision 1.62.2.1
diff -u -u -r1.62 -r1.62.2.1
--- fd.c	1995/06/11 19:31:19	1.62
+++ fd.c	1996/03/31 18:09:00	1.62.2.1
@@ -43,7 +43,7 @@
  * SUCH DAMAGE.
  *
  *	from:	@(#)fd.c	7.4 (Berkeley) 5/25/91
- *	$Id: fd.c,v 1.62 1995/06/11 19:31:19 rgrimes Exp $
+ *	$Id: fd.c,v 1.62.2.1 1996/03/31 18:09:00 joerg Exp $
  *
  */
 
@@ -1574,6 +1574,13 @@
 		fdc->state = STARTRECAL;
 		break;
 	case STARTRECAL:
+		/* XXX clear the fdc results from the last reset, if any. */
+		{
+			int i;
+			for (i = 0; i < 4; i++)
+				(void)fd_sense_int(fdc, &st0, &cyl);
+		}
+
 		if(fd_cmd(fdcu,
 			  2, NE7CMD_RECAL, fdu,
 			  0)) /* Recalibrate Function */


-- 
cheers, J"org

joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE
Never trust an operating system you don't have sources for. ;-)