summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorphk <phk@FreeBSD.org>1996-07-24 13:35:34 +0000
committerphk <phk@FreeBSD.org>1996-07-24 13:35:34 +0000
commit32cc66b6f0e1f406dc73ac4c9c8dadf24ce3db16 (patch)
treee67c61c1cefd6d196ad088e4501f783a577c0a2d
parent085e6f78e53ba9f557719749176f4bcb660fe1d2 (diff)
downloadFreeBSD-src-32cc66b6f0e1f406dc73ac4c9c8dadf24ce3db16.zip
FreeBSD-src-32cc66b6f0e1f406dc73ac4c9c8dadf24ce3db16.tar.gz
Revert my bdevsw change for wcd.c, Bruce pointed out that
this driver has bogus open/close entries.
-rw-r--r--sys/i386/isa/wcd.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/sys/i386/isa/wcd.c b/sys/i386/isa/wcd.c
index ea04098..2723204 100644
--- a/sys/i386/isa/wcd.c
+++ b/sys/i386/isa/wcd.c
@@ -47,11 +47,17 @@ static d_strategy_t wcdstrategy;
#define CDEV_MAJOR 69
#define BDEV_MAJOR 19
-static struct cdevsw wcd_cdevsw;
+extern struct cdevsw wcd_cdevsw;
static struct bdevsw wcd_bdevsw =
{ wcdbopen, wcdbclose, wcdstrategy, wcdioctl, /*19*/
nodump, nopsize, 0, "wcd", &wcd_cdevsw, -1 };
+static struct cdevsw wcd_cdevsw =
+ { wcdropen, wcdrclose, rawread, nowrite, /*69*/
+ wcdioctl, nostop, nullreset, nodevtotty,/* atapi */
+ seltrue, nommap, wcdstrategy, "wcd",
+ &wcd_bdevsw, -1 };
+
#ifndef ATAPI_STATIC
static
#endif
@@ -1226,9 +1232,13 @@ static wcd_devsw_installed = 0;
static void wcd_drvinit(void *unused)
{
+ dev_t dev;
if( ! wcd_devsw_installed ) {
- bdevsw_add_generic(BDEV_MAJOR,CDEV_MAJOR, &wcd_bdevsw);
+ dev = makedev(CDEV_MAJOR, 0);
+ cdevsw_add(&dev,&wcd_cdevsw, NULL);
+ dev = makedev(BDEV_MAJOR, 0);
+ bdevsw_add(&dev,&wcd_bdevsw, NULL);
wcd_devsw_installed = 1;
}
}
OpenPOWER on IntegriCloud