summaryrefslogtreecommitdiffstats
path: root/sys/dev
diff options
context:
space:
mode:
authorjulian <julian@FreeBSD.org>1995-09-03 05:43:50 +0000
committerjulian <julian@FreeBSD.org>1995-09-03 05:43:50 +0000
commit3b421a628b770ce7d903f166e047d7dc8e672ed7 (patch)
tree48c036cfd246d74ad2a6c99044f9938396941363 /sys/dev
parent6759a9710d59bc29e3766f8fa8c2699111015c60 (diff)
downloadFreeBSD-src-3b421a628b770ce7d903f166e047d7dc8e672ed7.zip
FreeBSD-src-3b421a628b770ce7d903f166e047d7dc8e672ed7.tar.gz
devfs changes..
changes to allow devices that don't probe (e.g. /dev/mem) to create devfs entries this required giving 'configure' its own SYSINIT entry so we could duck in just before it with a DEVFS init and some device inits.. my devfs now looks like: ./misc ./misc/speaker ./misc/mem ./misc/kmem ./misc/null ./misc/zero ./misc/io ./misc/console ./misc/pcaudio ./misc/pcaudioctl ./disks ./disks/rfloppy ./disks/rfloppy/fd0.1440 ./disks/rfloppy/fd1.1200 ./disks/floppy ./disks/floppy/fd0.1440 ./disks/floppy/fd1.1200 also some sligt cleanups.. DEVFS needs a lot of work but I'm getting back to it..
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/fdc/fdc.c11
-rw-r--r--sys/dev/speaker/spkr.c16
2 files changed, 22 insertions, 5 deletions
diff --git a/sys/dev/fdc/fdc.c b/sys/dev/fdc/fdc.c
index 3c46823..17bef91 100644
--- a/sys/dev/fdc/fdc.c
+++ b/sys/dev/fdc/fdc.c
@@ -43,7 +43,7 @@
* SUCH DAMAGE.
*
* from: @(#)fd.c 7.4 (Berkeley) 5/25/91
- * $Id: fd.c,v 1.61.2.1 1995/06/08 10:26:23 davidg Exp $
+ * $Id: fd.c,v 1.62 1995/06/11 19:31:19 rgrimes Exp $
*
*/
@@ -82,6 +82,9 @@
#include <sys/ftape.h>
#include <i386/isa/ftreg.h>
#endif
+#ifdef DEVFS
+#include <sys/devfsext.h>
+#endif
static int fd_goaway(struct kern_devconf *, int);
static int fdc_goaway(struct kern_devconf *, int);
@@ -557,7 +560,7 @@ fdattach(struct isa_device *dev)
int ic_type = 0;
#ifdef DEVFS
char name[64];
- caddr_t key;
+ void *key;
#endif /* DEVFS */
fdc->fdcu = fdcu;
@@ -753,9 +756,9 @@ fdattach(struct isa_device *dev)
kdc_fd[fdu].kdc_state = DC_IDLE;
#ifdef DEVFS
key = dev_add("/disks/rfloppy",name,(caddr_t)Fdopen,fdu * 8,
- 0,0,0,0644);
+ DV_CHR,0,0,0644);
key = dev_add("/disks/floppy",name,(caddr_t)Fdopen,fdu * 8,
- 1,0,0,0644);
+ DV_BLK,0,0,0644);
#endif /* DEVFS */
if (dk_ndrive < DK_NDRIVE) {
sprintf(dk_names[dk_ndrive], "fd%d", fdu);
diff --git a/sys/dev/speaker/spkr.c b/sys/dev/speaker/spkr.c
index 4c1f128..9a98251 100644
--- a/sys/dev/speaker/spkr.c
+++ b/sys/dev/speaker/spkr.c
@@ -4,7 +4,7 @@
* v1.4 by Eric S. Raymond (esr@snark.thyrsus.com) Aug 1993
* modified for FreeBSD by Andrew A. Chernov <ache@astral.msk.su>
*
- * $Id: spkr.c,v 1.13 1995/05/05 06:15:11 davidg Exp $
+ * $Id: spkr.c,v 1.14 1995/05/30 08:03:09 rgrimes Exp $
*/
#include "speaker.h"
@@ -23,6 +23,20 @@
#include <machine/clock.h>
#include <machine/speaker.h>
+#ifdef DEVFS
+#include <sys/devfsext.h>
+#include "sys/kernel.h"
+int spkropen();
+
+void spkrdev_init(caddr_t data) /* data not used */
+{
+ void * x;
+/* path name devsw minor type uid gid perm*/
+ x=dev_add("/misc", "speaker", spkropen, 0, DV_CHR, 0, 0, 0600);
+}
+SYSINIT(spkrdev,SI_SUB_DEVFS, SI_ORDER_ANY, spkrdev_init, NULL)
+#endif /*DEVFS*/
+
/**************** MACHINE DEPENDENT PART STARTS HERE *************************
*
* This section defines a function tone() which causes a tone of given
OpenPOWER on IntegriCloud