All of lore.kernel.org
 help / color / mirror / Atom feed
From: Marcel Holtmann <marcel@rvs.uni-bielefeld.de>
To: "Jan J. Jessen" <jjjessen@control.auc.dk>
Cc: BlueZ Mailing List <bluez-devel@lists.sourceforge.net>
Subject: Re: [Bluez-devel] Digianswer USB driver
Date: 30 Aug 2003 02:11:35 +0200	[thread overview]
Message-ID: <1062202301.11258.19.camel@pegasus> (raw)
In-Reply-To: <Pine.GSO.4.40.0308261317320.19084-100000@prosit.control.auc.dk>

[-- Attachment #1: Type: text/plain, Size: 914 bytes --]

Hi Jan,

> > Changing the bRequestType is such an ugly hack, but on the other side it
> > is a very simple change to get these devices supported by hci_usb. I
> > will write a patch for supporting Digianswer devices and H:2 Bluetooth
> > devices at the same time, but I need some more information about the
> > your device. Please send me the output of "cat /proc/bus/usb/devices"
> > and "hciconfig -a".
> 
> At the moment my Linux dist is having a vacation! Can you do with vendor
> and product IDs? From my own driver:
> 
> /* Digianswer specific values */
> #define USB_DIGI_VENDOR_ID    0x08fd
> #define USB_DIGI_PRODUCT_ID   0x1
> #define BLUETOOTH_REQ_TYPE    0x40
> 
> I hope this will do.

attached is a patch which modifies the hci_usb.o driver to deal with
normal H:2 and the Digianswer devices. Please test it and send me a
report with "hciconfig -a" and "cat /proc/bus/usb/devices".

Regards

Marcel


[-- Attachment #2: patch-hci-usb-digianswer --]
[-- Type: text/x-patch, Size: 1797 bytes --]

diff -urN linux-2.4.22/drivers/bluetooth/hci_usb.c linux-2.4.22-digianswer/drivers/bluetooth/hci_usb.c
--- linux-2.4.22/drivers/bluetooth/hci_usb.c	Mon Aug 25 13:44:41 2003
+++ linux-2.4.22-digianswer/drivers/bluetooth/hci_usb.c	Sat Aug 30 01:59:59 2003
@@ -79,6 +79,9 @@
 	/* Bluetooth Ultraport Module from IBM */
 	{ USB_DEVICE(0x04bf, 0x030a) },
 
+	/* Digianswer device */
+	{ USB_DEVICE(0x08fd, 0x0001), driver_info: HCI_DIGIANSWER },
+
 	{ }	/* Terminating entry */
 };
 
@@ -427,7 +430,7 @@
 	} else
 		dr = (void *) _urb->urb.setup_packet;
 
-	dr->bRequestType = HCI_CTRL_REQ;
+	dr->bRequestType = husb->ctrl_req;
 	dr->bRequest = 0;
 	dr->wIndex   = 0;
 	dr->wValue   = 0;
@@ -872,6 +875,11 @@
 	husb->bulk_out_ep = bulk_out_ep[0];
 	husb->bulk_in_ep  = bulk_in_ep[0];
 	husb->intr_in_ep  = intr_in_ep[0];
+
+	if (id->driver_info & HCI_DIGIANSWER)
+		husb->ctrl_req = HCI_DIGI_REQ;
+	else
+		husb->ctrl_req = HCI_CTRL_REQ;
 
 #ifdef CONFIG_BLUEZ_USB_SCO
 	if (isoc_iface) {
diff -urN linux-2.4.22/drivers/bluetooth/hci_usb.h linux-2.4.22-digianswer/drivers/bluetooth/hci_usb.h
--- linux-2.4.22/drivers/bluetooth/hci_usb.h	Fri Jun 13 16:51:32 2003
+++ linux-2.4.22-digianswer/drivers/bluetooth/hci_usb.h	Sat Aug 30 02:02:46 2003
@@ -35,6 +35,9 @@
 #define HCI_DEV_PROTOCOL     0x01	/* Bluetooth programming protocol */
 
 #define HCI_CTRL_REQ	     0x20
+#define HCI_DIGI_REQ	     0x40
+
+#define HCI_DIGIANSWER       0x01
 
 #define HCI_MAX_IFACE_NUM	3 
 
@@ -118,6 +121,8 @@
 	struct usb_interface            *isoc_iface;
 	struct usb_endpoint_descriptor	*isoc_out_ep;
 	struct usb_endpoint_descriptor	*isoc_in_ep;
+
+	__u8			ctrl_req;
 
 	struct sk_buff_head	transmit_q[4];
 	struct sk_buff		*reassembly[4]; // Reassembly buffers

  reply	other threads:[~2003-08-30  0:11 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-08-15  6:25 [Bluez-devel] Digianswer USB driver Jan J. Jessen
2003-08-15 12:39 ` Marcel Holtmann
2003-08-26 11:24   ` Jan J. Jessen
2003-08-30  0:11     ` Marcel Holtmann [this message]
2003-09-16 14:02       ` Jan J. Jessen
2003-09-16 23:57         ` Marcel Holtmann
2003-09-17  9:59           ` Jan J. Jessen
2003-09-22 17:59             ` Marcel Holtmann
2003-09-23  8:21               ` Jan J. Jessen
2003-09-23  8:56                 ` Marcel Holtmann
2003-09-29 10:58                   ` Jan J. Jessen
2003-09-16 14:16       ` Jan J. Jessen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1062202301.11258.19.camel@pegasus \
    --to=marcel@rvs.uni-bielefeld.de \
    --cc=bluez-devel@lists.sourceforge.net \
    --cc=jjjessen@control.auc.dk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.