Date: Fri, 3 May 1996 10:19:13 +0000 () From: Werner Griessl <croot@btp1da.phy.uni-bayreuth.de> To: questions@freebsd.org Subject: atapi-cdrom as master Message-ID: <199605031019.KAA15531@btp1da.phy.uni-bayreuth.de>
next in thread | raw e-mail | index | archive | help
Last week I got my atapi-cdrom-drive and had some problems with
my FreesBSD-2.1R .
The kernel detected the drive only as slave on the IDE-port.
Unfortunately with this configuration (disk master, cdrom slave)
the disk transfer slows down by a factor of 2.
So I had a look into the source of wd.c and voila, a few changes to
wd.c made the cdrom-drive working on the second IDE-port as master drive !
Here is the patchfile (hopefully not only working for me) :
---------- cut here and copy to wd.c.patch -----------------------------
*** wd.c.ori Fri May 3 08:16:31 1996
--- wd.c Fri May 3 08:44:31 1996
***************
*** 480,500 ****
} else {
free(du, M_TEMP);
wddrives[lunit] = NULL;
! }
! }
#ifdef ATAPI
! /*
! * Probe all free IDE units, searching for ATAPI drives.
! */
! for (unit=0; unit<2; ++unit) {
! for (lunit=0; lunit<NWD && wddrives[lunit]; ++lunit)
! if (wddrives[lunit]->dk_ctrlr == dvp->id_unit &&
! wddrives[lunit]->dk_unit == unit)
! goto next;
atapi_attach (dvp->id_unit, unit, dvp->id_iobase,
&kdc_wdc[dvp->id_unit]);
- next: }
#endif
/*
* Discard any interrupts generated by wdgetctlr(). wdflushirq()
* doesn't work now because the ambient ipl is too high.
--- 480,496 ----
} else {
free(du, M_TEMP);
wddrives[lunit] = NULL;
!
! /* included werner@btp1da.phy.uni-bayreuth.de (29.4.1996) */
#ifdef ATAPI
! /* no disk !, search for ATAPI drive */
atapi_attach (dvp->id_unit, unit, dvp->id_iobase,
&kdc_wdc[dvp->id_unit]);
#endif
+
+ }
+ }
+
/*
* Discard any interrupts generated by wdgetctlr(). wdflushirq()
* doesn't work now because the ambient ipl is too high.
----- then do a "patch < wd.c.patch" and recompile the kernel -----------
This should also work in STABLE (the wd.c is the same as in Release)
Werner
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199605031019.KAA15531>
