Bluetooth: btusb: Implement driver internal packet reassembly
authorMarcel Holtmann <marcel@holtmann.org>
Tue, 16 Sep 2014 06:00:29 +0000 (08:00 +0200)
committerJohan Hedberg <johan.hedberg@intel.com>
Tue, 16 Sep 2014 18:33:15 +0000 (21:33 +0300)
commit803b58367ffb7ae89397637122f9a71b2ee40687
treef08012e456352004a88213bdb27b980afacc5d57
parent1ffa4ad042c3151b57ba3f316d5582166f964537
Bluetooth: btusb: Implement driver internal packet reassembly

When receiving USB interrupt, bulk or isochronous packet, they normally
come in fragments. So far the driver just handed each fragment off to
the hci_recv_fragment function of the Bluetooth core. That function is
however so specific that is does not belong in the core. This patch
implements the same reassembly logic in the driver.

In addition this fixes a long standing bug where multiple complete
packets are received within a single USB packet.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
drivers/bluetooth/btusb.c