public inbox for linux-bluetooth@vger.kernel.org
 help / color / mirror / Atom feed
From: Marcel Holtmann <marcel@holtmann.org>
To: Max Krasnyansky <maxk@qualcomm.com>
Cc: bluez-devel@lists.sourceforge.net
Subject: Re: [Bluez-devel] What's the purpose of the new btusb driver ?
Date: Tue, 23 Oct 2007 13:35:36 +0200	[thread overview]
Message-ID: <1193139336.6184.191.camel@violet> (raw)
In-Reply-To: <471DA835.2060308@qualcomm.com>

Hi Max,

> I was going through latest 2.6 updates and noticed
> 	"Generic Bluetooth USB driver"
> Why do we need it ?
> 
> The driver code looks awfully similar to my very first implementation of the hci_usb.
> ie No URB queuing, etc.
> I think the only thing that is wrong with hci_usb is the custom urb queuing code
> (ie _urb stuff). That code was temporary at the time I put it in (year ago now). 
> Greg and I were discussing merging it into USB core. I think we should just do 
> that instead.
> If you think URB queuing is no longer needed (I doubt it) then maybe we can just
> rip that part out.

the USB subsystem changed a lot in the last two years and everything
goes into the direction of one-shot URBs or is using USB anchors to
track them. The btusb driver is a full re-write from scratch to make use
of it. The driver is still marked as experimental and you can't select
it if you enable hci_usb. I pushed it into the mainline kernel since we
are currently trying to make it work with autosuspend and also with USB
remote wakeup. Both are tricky parts and will need a lot of quirks. In
the long run this driver should also do the correct alternate switching
in case of SCO connections. So it is meant as a full replacement, but we
are not there yet. The hci_usb driver works and I didn't wanna touch it
unless we have a full replacement.

My latest tests with the bpa10x and bfusb drivers showed that the URB
queuing code is not really needed. The USB core does this already for us
and in case of control, interrupt and bulk URBs we can fire at will. The
USB core will handle it. The re-submitting can be easily handled and we
can attach an anchor to a number of URBs to later on kill them all at
once. Latest edition was a flag to let the USB core free the buffer by
itself so that the driver doesn't have to care about it anymore. All
URBs now have a reference count and so the users are known.

I still have some minor troubles with the isochronous URBs for SCO
support and this one-shot model, but that should be fixed soon.

Regards

Marcel



-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Bluez-devel mailing list
Bluez-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bluez-devel

  reply	other threads:[~2007-10-23 11:35 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-10-23  7:52 What's the purpose of the new btusb driver ? Max Krasnyansky
2007-10-23 11:35 ` Marcel Holtmann [this message]
2007-10-23 16:23   ` Max Krasnyansky
2007-10-25 22:54     ` [Bluez-devel] " Marcel Holtmann
2007-10-28  6:01       ` Max Krasnyansky
2007-10-28 15:35         ` Tom Allebrandi
2007-10-28 17:49         ` Marcel Holtmann
2007-11-10 19:20           ` Max Krasnyansky
2007-11-11  1:53             ` Marcel Holtmann

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=1193139336.6184.191.camel@violet \
    --to=marcel@holtmann.org \
    --cc=bluez-devel@lists.sourceforge.net \
    --cc=maxk@qualcomm.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox