summaryrefslogtreecommitdiff
path: root/sys/arch/i386
diff options
context:
space:
mode:
authorAlexander Yurchenko <grange@cvs.openbsd.org>2004-05-30 08:11:28 +0000
committerAlexander Yurchenko <grange@cvs.openbsd.org>2004-05-30 08:11:28 +0000
commitee4c27a21204dc338aaa232a20bd428030a48d3d (patch)
tree840e68e2359cdf9c1bbaad6e69d14061129b1642 /sys/arch/i386
parent4d42d43a9db899b5548292fb2cef4513407a3971 (diff)
Devices hot plugging support.
The hotplug pseudo-device passes device attachment and detachment events to userland. When a device attaches or detaches, the corresponding event is queued. The events can then be obtained from the queue through the read(2) call on the /dev/hotplug device file. Each event consists of event type (attach/detach), device class (DV_*) and device name (sd1 e.g.). We have hotplug pseudo-device on alpha, amd64, i386, macppc and sparc64. Since it was tested only on i386 other archs has it commented out in GENERIC until tested. The idea liked peter@ tedu@ drahn@ millert@ marco@ henning@. Ok deraadt@.
Diffstat (limited to 'sys/arch/i386')
-rw-r--r--sys/arch/i386/conf/GENERIC3
-rw-r--r--sys/arch/i386/i386/conf.c4
2 files changed, 5 insertions, 2 deletions
diff --git a/sys/arch/i386/conf/GENERIC b/sys/arch/i386/conf/GENERIC
index 1d6972480d8..3b84018218e 100644
--- a/sys/arch/i386/conf/GENERIC
+++ b/sys/arch/i386/conf/GENERIC
@@ -1,4 +1,4 @@
-# $OpenBSD: GENERIC,v 1.364 2004/05/28 02:32:19 deraadt Exp $
+# $OpenBSD: GENERIC,v 1.365 2004/05/30 08:11:26 grange Exp $
#
# GENERIC -- everything that's currently supported
#
@@ -558,6 +558,7 @@ pseudo-device mtrr 1 # Memory range attributes control
pseudo-device sequencer 1
#pseudo-device raid 4 # RAIDframe disk driver
pseudo-device bio 1 # ioctl multiplexing device
+pseudo-device hotplug 1 # devices hot plugging
# mouse & keyboard multiplexor pseudo-devices
pseudo-device wsmux 2
diff --git a/sys/arch/i386/i386/conf.c b/sys/arch/i386/i386/conf.c
index 25198bf2ebb..ec8657441bd 100644
--- a/sys/arch/i386/i386/conf.c
+++ b/sys/arch/i386/i386/conf.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: conf.c,v 1.106 2004/02/10 01:31:21 millert Exp $ */
+/* $OpenBSD: conf.c,v 1.107 2004/05/30 08:11:26 grange Exp $ */
/* $NetBSD: conf.c,v 1.75 1996/05/03 19:40:20 christos Exp $ */
/*
@@ -201,6 +201,7 @@ cdev_decl(pci);
#endif
#include "pf.h"
+#include "hotplug.h"
struct cdevsw cdevsw[] =
{
@@ -310,6 +311,7 @@ struct cdevsw cdevsw[] =
cdev_oci_init(NBIO,bio), /* 79: ioctl tunnel */
cdev_ch_init(NGPR,gpr), /* 80: GPR400 SmartCard reader */
cdev_ptm_init(NPTY,ptm), /* 81: pseudo-tty ptm device */
+ cdev_hotplug_init(NHOTPLUG,hotplug), /* 82: devices hot plugging */
};
int nchrdev = sizeof(cdevsw) / sizeof(cdevsw[0]);