Return to BSD News archive
Xref: sserve comp.os.386bsd.bugs:1518 comp.os.386bsd.questions:5495 Newsgroups: comp.os.386bsd.bugs,comp.os.386bsd.questions Path: sserve!newshost.anu.edu.au!munnari.oz.au!news.Hawaii.Edu!ames!agate!headwall.Stanford.EDU!nntp.Stanford.EDU!leland.Stanford.EDU!yergeau From: yergeau@leland.Stanford.EDU (Dan Yergeau) Subject: Re: NetBSD won't recognize VLB IDE caching controller's disks Message-ID: <1993Sep30.164230.22703@leland.Stanford.EDU> Sender: news@leland.Stanford.EDU (Mr News) Organization: DSG, Stanford University, CA 94305, USA References: <tps1.749261987@ra.msstate.edu> <28ce5p$5cb@pdq.coe.montana.edu> <1993Sep30.145413.24124@cs.wisc.edu> Date: Thu, 30 Sep 93 16:42:30 GMT Lines: 50 In article <1993Sep30.145413.24124@cs.wisc.edu>, jcargill@oka.cs.wisc.edu (Jon Cargille) writes: |> Or, the other way to go about this would be to run FreeBSD, install |> both the FreeBSD and NetBSD source trees, pull the wd driver out of |> FreeBSD and put it into NetBSD. Recompile the NetBSD kernel, and see |> if it works then... I've done something similar (a merge of the barsoom [for multiple controller support] and FreeBSD [for stable bug fixes] drivers on FreeBSD). There are differences in the following files /sys/i386/isa/wd.c /sys/i386/isa/fd.c /sys/i386/isa/isa_device.h /usr/src/usr.sbin/config/mkioconf.c (you may want to get all of the config source from the other system) and, your config file (e.g. GENERIC) will need to be changed to reflect the style NetBSD controller wdc0 at isa? port "IO_WD1" bio irq 14 vector wdintr disk wd0 at wdc0 drive 0 disk wd1 at wdc0 drive 1 FreeBSD controller wd0 at isa? port "IO_WD1" bio irq 14 vector wdintr disk wd0 at wd0 drive 0 disk wd1 at wd0 drive 1 There are still a few bugs in my driver. I'm not convinced that it will work properly with some old hardware (it doesn't always wait for controller to become ready, but neither does FreeBSD). And, the driver can hang due to the race condition in wdopen (to the best of my knowledge, this exists in both FreeBSD and NetBSD). To do: - merge in the NetBSD wait for ready fixes and controller reset cleanups - try to fix the race condition (will probably require a bit of a rewrite of wdattach or the state model) If the demand is not too large, I can email either the complete files or diffs relative to FreeBSD-1.0-GAMMA. I wouldn't mind getting some feedback from people using this driver on hardware that has been a problem with either NetBSD or FreeBSD. -- Dan Yergeau You are in a twisty little passage yergeau@gloworm.Stanford.EDU of standards, all conflicting. #include <std.disclaimer>