diff options
| author | Bruce Evans <bde@FreeBSD.org> | 1995-12-14 22:03:12 +0000 |
|---|---|---|
| committer | Bruce Evans <bde@FreeBSD.org> | 1995-12-14 22:03:12 +0000 |
| commit | d1022821ae90fd1b8aaaf56c99678307d178c525 (patch) | |
| tree | 11ce3a123854b60fee7cdc42f084330319586201 | |
| parent | 7cbb44a1d9c5e8792f5ee74f25259e874a0b4b32 (diff) | |
Notes
| -rw-r--r-- | sys/dev/syscons/syscons.c | 15 | ||||
| -rw-r--r-- | sys/i386/i386/conf.c | 119 | ||||
| -rw-r--r-- | sys/i386/isa/pcvt/pcvt_drv.c | 12 | ||||
| -rw-r--r-- | sys/i386/isa/syscons.c | 15 | ||||
| -rw-r--r-- | sys/isa/syscons.c | 15 | ||||
| -rw-r--r-- | sys/sys/conf.h | 5 | ||||
| -rw-r--r-- | sys/sys/linedisc.h | 5 |
7 files changed, 41 insertions, 145 deletions
diff --git a/sys/dev/syscons/syscons.c b/sys/dev/syscons/syscons.c index dc628c778062..9dc2e143aaf8 100644 --- a/sys/dev/syscons/syscons.c +++ b/sys/dev/syscons/syscons.c @@ -25,7 +25,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id: syscons.c,v 1.136 1995/12/10 13:39:18 phk Exp $ + * $Id: syscons.c,v 1.137 1995/12/10 15:54:55 bde Exp $ */ #include "sc.h" @@ -164,6 +164,7 @@ static d_ioctl_t scioctl; static d_devtotty_t scdevtotty; static d_mmap_t scmmap; +#define CDEV_MAJOR 12 static struct cdevsw scdevsw = { scopen, scclose, scread, scwrite, scioctl, nullstop, noreset, scdevtotty, @@ -361,7 +362,11 @@ scattach(struct isa_device *dev) DV_CHR, 0, 0, 0600 ); } #endif - register_cdev("sc", &scdevsw); + { + dev_t dev = makedev(CDEV_MAJOR, 0); + + cdevsw_add(&dev, &scdevsw, NULL); + } return 0; } @@ -1181,20 +1186,18 @@ void sccnprobe(struct consdev *cp) { struct isa_device *dvp; - int maj; /* * Take control if we are the highest priority enabled display device. */ dvp = find_display(); - maj = getmajorbyname("sc"); - if (dvp->id_driver != &scdriver || maj < 0) { + if (dvp != NULL && dvp->id_driver != &scdriver) { cp->cn_pri = CN_DEAD; return; } /* initialize required fields */ - cp->cn_dev = makedev(maj, MAXCONS); + cp->cn_dev = makedev(CDEV_MAJOR, MAXCONS); cp->cn_pri = CN_INTERNAL; } diff --git a/sys/i386/i386/conf.c b/sys/i386/i386/conf.c index 18f9ed8c100b..2b8a47d934a0 100644 --- a/sys/i386/i386/conf.c +++ b/sys/i386/i386/conf.c @@ -42,34 +42,23 @@ * SUCH DAMAGE. * * from: @(#)conf.c 5.8 (Berkeley) 5/12/91 - * $Id: conf.c,v 1.114 1995/12/13 15:12:18 julian Exp $ + * $Id: conf.c,v 1.115 1995/12/14 09:52:37 phk Exp $ */ #include <sys/param.h> -#include <sys/systm.h> -#include <sys/buf.h> -#include <sys/ioctl.h> -#include <sys/proc.h> -#include <sys/vnode.h> -#include <sys/tty.h> #include <sys/conf.h> - -#include <vm/vm.h> -#include <vm/vm_param.h> -#include <vm/vm_extern.h> - +#include <sys/vnode.h> #define NUMCDEV 96 #define NUMBDEV 32 -struct bdevsw *bdevsw[NUMBDEV]; +struct bdevsw *bdevsw[NUMBDEV]; int nblkdev = NUMBDEV; -struct cdevsw *cdevsw[NUMCDEV]; +struct cdevsw *cdevsw[NUMCDEV]; int nchrdev = NUMCDEV; /* * The routines below are total "BULLSHIT" and will be trashed - * When I have 'proved' the JREMOD changes above.. */ /* @@ -180,31 +169,8 @@ chrtoblk(dev) return (makedev(blkmaj, minor(dev))); } -int -getmajorbyname(name) - const char *name; -{ - - if (strcmp(name, "sc") == 0) - return (12); - if (strcmp(name, "vt") == 0) - return (12); - return (NULL); -} - - -static struct cdevsw ** -getcdevbyname(char *name) -{ - int maj; - - maj = getmajorbyname(name); - return (maj < 0 ? NULL : &cdevsw[maj]); -} - #else /* NEW_STUFF_JRE *//*===============================================*/ - /* * Routine to convert from character to block device number. * @@ -223,81 +189,4 @@ chrtoblk(dev_t dev) return(NODEV); } -/* Only checks cdevs */ -int -getmajorbyname(const char *name) -{ - struct cdevsw *cd; - int maj; - char *dname; - - for( maj = 0; maj <nchrdev ; maj++) { - if ( dname = cdevsw[maj]->d_name) { - if ( strcmp(name, dname) == 0 ) { - return maj; - } - } - } - return -1; /* XXX */ /* Was 0 */ -} - - -/* utterly pointless with devfs */ -static struct cdevsw ** -getcdevbyname(const char *name) -{ - struct cdevsw *cd; - int maj; - char *dname; - - for( maj = 0; maj <nchrdev ; maj++) { - if ( dname = cdevsw[maj]->d_name) { - if ( strcmp(name, dname) == 0 ) { - return &cdevsw[maj]; - } - } - } - return NULL; -} #endif /* NEW_STUFF_JRE */ - -/* Zap these as soon as we find out who calls them , and "why?"*/ -int -register_cdev(name, cdp) - const char *name; - const struct cdevsw *cdp; -{ - struct cdevsw **dst_cdp; - - dst_cdp = getcdevbyname(name); - if (dst_cdp == NULL) - return (ENXIO); - if ((*dst_cdp != NULL) - && ((*dst_cdp)->d_open != nxopen) - && ((*dst_cdp)->d_open != NULL)) - return (EBUSY); - *dst_cdp = cdp; - return (0); -} - -static struct cdevsw nxcdevsw = { - nxopen, nxclose, nxread, nxwrite, - nxioctl, nxstop, nxreset, nxdevtotty, - nxselect, nxmmap, NULL, -}; - -int -unregister_cdev(name, cdp) - const char *name; - const struct cdevsw *cdp; -{ - struct cdevsw **dst_cdp; - - dst_cdp = getcdevbyname(name); - if (dst_cdp == NULL) - return (ENXIO); - if ((*dst_cdp)->d_open != cdp->d_open) - return (EBUSY); - *dst_cdp = &nxcdevsw; - return (0); -} diff --git a/sys/i386/isa/pcvt/pcvt_drv.c b/sys/i386/isa/pcvt/pcvt_drv.c index 6e5529e798ce..bee22696b827 100644 --- a/sys/i386/isa/pcvt/pcvt_drv.c +++ b/sys/i386/isa/pcvt/pcvt_drv.c @@ -115,6 +115,7 @@ static d_ioctl_t pcioctl; static d_devtotty_t pcdevtotty; static d_mmap_t pcmmap; +#define CDEV_MAJOR 12 static struct cdevsw pcdevsw = { pcopen, pcclose, pcread, pcwrite, pcioctl, nullstop, noreset, pcdevtotty, @@ -326,7 +327,11 @@ pcattach(struct isa_device *dev) pcvt_is_console? DC_IDLE: DC_BUSY; vt_registerdev(dev, (char *)vga_string(vga_type)); - register_cdev("vt", &pcdevsw); + { + dev_t dev = makedev(CDEV_MAJOR, 0); + + cdevsw_add(&dev, &pcdevsw, NULL); + } #endif /* PCVT_FREEBSD > 205 */ #if PCVT_NETBSD > 9 @@ -1107,15 +1112,14 @@ pccnprobe(struct consdev *cp) * Take control if we are the highest priority enabled display device. */ dvp = find_display(); - maj = getmajorbyname("vt"); - if (dvp->id_driver != &vtdriver || maj < 0) { + if (dvp != NULL && dvp->id_driver != &vtdriver) { cp->cn_pri = CN_DEAD; return; } /* initialize required fields */ - cp->cn_dev = makedev(maj, 0); + cp->cn_dev = makedev(CDEV_MAJOR, 0); cp->cn_pri = CN_INTERNAL; #if !PCVT_NETBSD diff --git a/sys/i386/isa/syscons.c b/sys/i386/isa/syscons.c index dc628c778062..9dc2e143aaf8 100644 --- a/sys/i386/isa/syscons.c +++ b/sys/i386/isa/syscons.c @@ -25,7 +25,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id: syscons.c,v 1.136 1995/12/10 13:39:18 phk Exp $ + * $Id: syscons.c,v 1.137 1995/12/10 15:54:55 bde Exp $ */ #include "sc.h" @@ -164,6 +164,7 @@ static d_ioctl_t scioctl; static d_devtotty_t scdevtotty; static d_mmap_t scmmap; +#define CDEV_MAJOR 12 static struct cdevsw scdevsw = { scopen, scclose, scread, scwrite, scioctl, nullstop, noreset, scdevtotty, @@ -361,7 +362,11 @@ scattach(struct isa_device *dev) DV_CHR, 0, 0, 0600 ); } #endif - register_cdev("sc", &scdevsw); + { + dev_t dev = makedev(CDEV_MAJOR, 0); + + cdevsw_add(&dev, &scdevsw, NULL); + } return 0; } @@ -1181,20 +1186,18 @@ void sccnprobe(struct consdev *cp) { struct isa_device *dvp; - int maj; /* * Take control if we are the highest priority enabled display device. */ dvp = find_display(); - maj = getmajorbyname("sc"); - if (dvp->id_driver != &scdriver || maj < 0) { + if (dvp != NULL && dvp->id_driver != &scdriver) { cp->cn_pri = CN_DEAD; return; } /* initialize required fields */ - cp->cn_dev = makedev(maj, MAXCONS); + cp->cn_dev = makedev(CDEV_MAJOR, MAXCONS); cp->cn_pri = CN_INTERNAL; } diff --git a/sys/isa/syscons.c b/sys/isa/syscons.c index dc628c778062..9dc2e143aaf8 100644 --- a/sys/isa/syscons.c +++ b/sys/isa/syscons.c @@ -25,7 +25,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id: syscons.c,v 1.136 1995/12/10 13:39:18 phk Exp $ + * $Id: syscons.c,v 1.137 1995/12/10 15:54:55 bde Exp $ */ #include "sc.h" @@ -164,6 +164,7 @@ static d_ioctl_t scioctl; static d_devtotty_t scdevtotty; static d_mmap_t scmmap; +#define CDEV_MAJOR 12 static struct cdevsw scdevsw = { scopen, scclose, scread, scwrite, scioctl, nullstop, noreset, scdevtotty, @@ -361,7 +362,11 @@ scattach(struct isa_device *dev) DV_CHR, 0, 0, 0600 ); } #endif - register_cdev("sc", &scdevsw); + { + dev_t dev = makedev(CDEV_MAJOR, 0); + + cdevsw_add(&dev, &scdevsw, NULL); + } return 0; } @@ -1181,20 +1186,18 @@ void sccnprobe(struct consdev *cp) { struct isa_device *dvp; - int maj; /* * Take control if we are the highest priority enabled display device. */ dvp = find_display(); - maj = getmajorbyname("sc"); - if (dvp->id_driver != &scdriver || maj < 0) { + if (dvp != NULL && dvp->id_driver != &scdriver) { cp->cn_pri = CN_DEAD; return; } /* initialize required fields */ - cp->cn_dev = makedev(maj, MAXCONS); + cp->cn_dev = makedev(CDEV_MAJOR, MAXCONS); cp->cn_pri = CN_INTERNAL; } diff --git a/sys/sys/conf.h b/sys/sys/conf.h index 463976e69c77..4bacf56e1806 100644 --- a/sys/sys/conf.h +++ b/sys/sys/conf.h @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)conf.h 8.3 (Berkeley) 1/21/94 - * $Id: conf.h,v 1.27 1995/12/10 15:55:34 bde Exp $ + * $Id: conf.h,v 1.28 1995/12/13 15:13:44 julian Exp $ */ #ifndef _SYS_CONF_H_ @@ -202,13 +202,10 @@ l_write_t l_nowrite; int bdevsw_add __P((dev_t *descrip,struct bdevsw *new,struct bdevsw **old)); int cdevsw_add __P((dev_t *descrip,struct cdevsw *new,struct cdevsw **old)); dev_t chrtoblk __P((dev_t dev)); -int getmajorbyname __P((const char *name)); int isdisk __P((dev_t dev, int type)); int iskmemdev __P((dev_t dev)); int iszerodev __P((dev_t dev)); -int register_cdev __P((const char *name, const struct cdevsw *cdp)); void setconf __P((void)); -int unregister_cdev __P((const char *name, const struct cdevsw *cdp)); #endif /* KERNEL */ #include <machine/conf.h> diff --git a/sys/sys/linedisc.h b/sys/sys/linedisc.h index 463976e69c77..4bacf56e1806 100644 --- a/sys/sys/linedisc.h +++ b/sys/sys/linedisc.h @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)conf.h 8.3 (Berkeley) 1/21/94 - * $Id: conf.h,v 1.27 1995/12/10 15:55:34 bde Exp $ + * $Id: conf.h,v 1.28 1995/12/13 15:13:44 julian Exp $ */ #ifndef _SYS_CONF_H_ @@ -202,13 +202,10 @@ l_write_t l_nowrite; int bdevsw_add __P((dev_t *descrip,struct bdevsw *new,struct bdevsw **old)); int cdevsw_add __P((dev_t *descrip,struct cdevsw *new,struct cdevsw **old)); dev_t chrtoblk __P((dev_t dev)); -int getmajorbyname __P((const char *name)); int isdisk __P((dev_t dev, int type)); int iskmemdev __P((dev_t dev)); int iszerodev __P((dev_t dev)); -int register_cdev __P((const char *name, const struct cdevsw *cdp)); void setconf __P((void)); -int unregister_cdev __P((const char *name, const struct cdevsw *cdp)); #endif /* KERNEL */ #include <machine/conf.h> |
