INTRODUCTION

  The USB Bluetooth driver supports any USB Bluetooth device.
  It currently works well with the Linux USB Bluetooth stack from Axis 
  (available at http://developer.axis.com/software/bluetooth/ ) and 
  has been rumored to work with other Linux USB Bluetooth stacks.


CONFIGURATION

  Currently the driver can handle up to 256 different USB Bluetooth 
  devices at once. 

  If you are not using devfs:
    The major number that the driver uses is 216 so to use the driver,
    create the following nodes:
	mknod /dev/ttyUB0 c 216 0
	mknod /dev/ttyUB1 c 216 1
	mknod /dev/ttyUB2 c 216 2
	mknod /dev/ttyUB3 c 216 3
		.
		.
		.
	mknod /dev/ttyUB254 c 216 254
	mknod /dev/ttyUB255 c 216 255

  If you are using devfs:
    The devices supported by this driver will show up as
    /dev/usb/ttub/{0,1,...}

  When the device is connected and recognized by the driver, the driver
  will print to the system log, which node the device has been bound to.


CONTACT:

  If anyone has any problems using this driver, please contact me, or 
  join the Linux-USB mailing list (information on joining the mailing 
  list, as well as a link to its searchable archive is at 
  http://www.linux-usb.org/ )


Greg Kroah-Hartman
greg@kroah.com
