diff options
author | phk <phk@FreeBSD.org> | 1996-07-24 13:35:34 +0000 |
---|---|---|
committer | phk <phk@FreeBSD.org> | 1996-07-24 13:35:34 +0000 |
commit | 32cc66b6f0e1f406dc73ac4c9c8dadf24ce3db16 (patch) | |
tree | e67c61c1cefd6d196ad088e4501f783a577c0a2d | |
parent | 085e6f78e53ba9f557719749176f4bcb660fe1d2 (diff) | |
download | FreeBSD-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.c | 14 |
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; } } |