Module Name:    src
Committed By:   pooka
Date:           Mon Mar 22 12:14:51 UTC 2010

Modified Files:
        src/sys/rump/dev: Makefile.rumpdev
Added Files:
        src/sys/rump/dev/lib/libubt: Makefile UBT.ioconf shlib_version
            ubt_at_usb.c

Log Message:
USB bluetooth device rump component.

This is a curious driver in the sense that unlike all other current
device drivers, it does not require vfs.  This is because the driver
is controlled via bluetooth, which is controlled via PF_BLUETOOTH
sockets (as opposed to a /dev node).


To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.10 src/sys/rump/dev/Makefile.rumpdev
cvs rdiff -u -r0 -r1.1 src/sys/rump/dev/lib/libubt/Makefile \
    src/sys/rump/dev/lib/libubt/UBT.ioconf \
    src/sys/rump/dev/lib/libubt/shlib_version \
    src/sys/rump/dev/lib/libubt/ubt_at_usb.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/rump/dev/Makefile.rumpdev
diff -u src/sys/rump/dev/Makefile.rumpdev:1.9 src/sys/rump/dev/Makefile.rumpdev:1.10
--- src/sys/rump/dev/Makefile.rumpdev:1.9	Thu Feb 11 02:22:09 2010
+++ src/sys/rump/dev/Makefile.rumpdev	Mon Mar 22 12:14:51 2010
@@ -1,7 +1,7 @@
-#	$NetBSD: Makefile.rumpdev,v 1.9 2010/02/11 02:22:09 pooka Exp $
+#	$NetBSD: Makefile.rumpdev,v 1.10 2010/03/22 12:14:51 pooka Exp $
 #
 
-RUMPDEVLIST=	bpf cgd disk dm netsmb raidframe rnd sysmon ucom	\
+RUMPDEVLIST=	bpf cgd disk dm netsmb raidframe rnd sysmon ubt ucom	\
 		ugenhc ulpt umass usb wscons
 
 

Added files:

Index: src/sys/rump/dev/lib/libubt/Makefile
diff -u /dev/null src/sys/rump/dev/lib/libubt/Makefile:1.1
--- /dev/null	Mon Mar 22 12:14:51 2010
+++ src/sys/rump/dev/lib/libubt/Makefile	Mon Mar 22 12:14:51 2010
@@ -0,0 +1,16 @@
+#	$NetBSD: Makefile,v 1.1 2010/03/22 12:14:51 pooka Exp $
+#
+
+.PATH:	${.CURDIR}/../../../../dev/usb
+
+LIB=	rumpdev_ubt
+IOCONF= UBT.ioconf
+
+SRCS=	ubt.c
+
+SRCS+=	ubt_at_usb.c
+
+CPPFLAGS+= -I${RUMPTOP}/net/lib/libnetbt
+
+.include <bsd.lib.mk>
+.include <bsd.klinks.mk>
Index: src/sys/rump/dev/lib/libubt/UBT.ioconf
diff -u /dev/null src/sys/rump/dev/lib/libubt/UBT.ioconf:1.1
--- /dev/null	Mon Mar 22 12:14:51 2010
+++ src/sys/rump/dev/lib/libubt/UBT.ioconf	Mon Mar 22 12:14:51 2010
@@ -0,0 +1,14 @@
+#	$NetBSD: UBT.ioconf,v 1.1 2010/03/22 12:14:51 pooka Exp $
+#
+
+ioconf ubt
+
+include "conf/files"
+include "dev/usb/files.usb"
+include "rump/dev/files.rump"
+
+pseudo-root uhub*
+
+# Bluetooth USB Controllers
+ubt* at uhub? port ?
+bthub* at ubt?
Index: src/sys/rump/dev/lib/libubt/shlib_version
diff -u /dev/null src/sys/rump/dev/lib/libubt/shlib_version:1.1
--- /dev/null	Mon Mar 22 12:14:51 2010
+++ src/sys/rump/dev/lib/libubt/shlib_version	Mon Mar 22 12:14:51 2010
@@ -0,0 +1,4 @@
+#	$NetBSD: shlib_version,v 1.1 2010/03/22 12:14:51 pooka Exp $
+#
+major=0
+minor=0
Index: src/sys/rump/dev/lib/libubt/ubt_at_usb.c
diff -u /dev/null src/sys/rump/dev/lib/libubt/ubt_at_usb.c:1.1
--- /dev/null	Mon Mar 22 12:14:51 2010
+++ src/sys/rump/dev/lib/libubt/ubt_at_usb.c	Mon Mar 22 12:14:51 2010
@@ -0,0 +1,28 @@
+/*	$NetBSD: ubt_at_usb.c,v 1.1 2010/03/22 12:14:51 pooka Exp $	*/
+
+#include <sys/param.h>
+#include <sys/types.h>
+#include <sys/conf.h>
+#include <sys/device.h>
+#include <sys/kmem.h>
+
+#include "ioconf.c"
+
+#include "rump_private.h"
+#include "rump_dev_private.h"
+
+#define FLAWLESSCALL(call)						\
+do {									\
+	int att_error;							\
+	if ((att_error = call) != 0)					\
+		panic("\"%s\" failed", #call);				\
+} while (/*CONSTCOND*/0)
+
+RUMP_COMPONENT(RUMP_COMPONENT_DEV)
+{
+
+	FLAWLESSCALL(config_cfdata_attach(cfdata_ubt, 0));
+
+	FLAWLESSCALL(config_cfdriver_attach(&ubt_cd));
+	FLAWLESSCALL(config_cfattach_attach("ubt", &ubt_ca));
+}

Reply via email to