git.openpandora.org
/
pandora-kernel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Bluetooth: Add controller types for BR/EDR and 802.11 AMP
[pandora-kernel.git]
/
net
/
bluetooth
/
hci_core.c
diff --git
a/net/bluetooth/hci_core.c
b/net/bluetooth/hci_core.c
index
94ba349
..
4ad2319
100644
(file)
--- a/
net/bluetooth/hci_core.c
+++ b/
net/bluetooth/hci_core.c
@@
-491,6
+491,10
@@
int hci_dev_open(__u16 dev)
if (test_bit(HCI_QUIRK_RAW_DEVICE, &hdev->quirks))
set_bit(HCI_RAW, &hdev->flags);
if (test_bit(HCI_QUIRK_RAW_DEVICE, &hdev->quirks))
set_bit(HCI_RAW, &hdev->flags);
+ /* Treat all non BR/EDR controllers as raw devices for now */
+ if (hdev->dev_type != HCI_BREDR)
+ set_bit(HCI_RAW, &hdev->flags);
+
if (hdev->open(hdev)) {
ret = -EIO;
goto done;
if (hdev->open(hdev)) {
ret = -EIO;
goto done;
@@
-797,7
+801,7
@@
int hci_get_dev_info(void __user *arg)
strcpy(di.name, hdev->name);
di.bdaddr = hdev->bdaddr;
strcpy(di.name, hdev->name);
di.bdaddr = hdev->bdaddr;
- di.type =
hdev->type
;
+ di.type =
(hdev->bus & 0x0f) | (hdev->dev_type << 4)
;
di.flags = hdev->flags;
di.pkt_type = hdev->pkt_type;
di.acl_mtu = hdev->acl_mtu;
di.flags = hdev->flags;
di.pkt_type = hdev->pkt_type;
di.acl_mtu = hdev->acl_mtu;
@@
-869,8
+873,8
@@
int hci_register_dev(struct hci_dev *hdev)
struct list_head *head = &hci_dev_list, *p;
int i, id = 0;
struct list_head *head = &hci_dev_list, *p;
int i, id = 0;
- BT_DBG("%p name %s
type
%d owner %p", hdev, hdev->name,
- hdev->
type
, hdev->owner);
+ BT_DBG("%p name %s
bus
%d owner %p", hdev, hdev->name,
+ hdev->
bus
, hdev->owner);
if (!hdev->open || !hdev->close || !hdev->destruct)
return -EINVAL;
if (!hdev->open || !hdev->close || !hdev->destruct)
return -EINVAL;
@@
-946,7
+950,7
@@
int hci_unregister_dev(struct hci_dev *hdev)
{
int i;
{
int i;
- BT_DBG("%p name %s
type %d", hdev, hdev->name, hdev->type
);
+ BT_DBG("%p name %s
bus %d", hdev, hdev->name, hdev->bus
);
write_lock_bh(&hci_dev_list_lock);
list_del(&hdev->list);
write_lock_bh(&hci_dev_list_lock);
list_del(&hdev->list);