diff options
author | Andre Guedes <aguedespe@gmail.com> | 2011-12-30 08:34:04 -0500 |
---|---|---|
committer | Gustavo F. Padovan <padovan@profusion.mobi> | 2012-01-02 19:29:51 -0500 |
commit | b5b32b653dedb29eb95e57cbbaefc4abf7141cb2 (patch) | |
tree | 0fcef65dc75ca91a47614aed977eda85d0b3bcf5 /net/bluetooth/hci_event.c | |
parent | 59e294065ddee7074af91e4f5e12e6095eb1135b (diff) |
Bluetooth: Fix hci_cc_read_local_ext_features()
Copy the Features value according to the Page number.
Signed-off-by: Andre Guedes <aguedespe@gmail.com>
Acked-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
Diffstat (limited to 'net/bluetooth/hci_event.c')
-rw-r--r-- | net/bluetooth/hci_event.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c index 37c31c52880c..10152d23c987 100644 --- a/net/bluetooth/hci_event.c +++ b/net/bluetooth/hci_event.c | |||
@@ -711,7 +711,14 @@ static void hci_cc_read_local_ext_features(struct hci_dev *hdev, | |||
711 | if (rp->status) | 711 | if (rp->status) |
712 | return; | 712 | return; |
713 | 713 | ||
714 | memcpy(hdev->host_features, rp->features, 8); | 714 | switch (rp->page) { |
715 | case 0: | ||
716 | memcpy(hdev->features, rp->features, 8); | ||
717 | break; | ||
718 | case 1: | ||
719 | memcpy(hdev->host_features, rp->features, 8); | ||
720 | break; | ||
721 | } | ||
715 | 722 | ||
716 | hci_req_complete(hdev, HCI_OP_READ_LOCAL_EXT_FEATURES, rp->status); | 723 | hci_req_complete(hdev, HCI_OP_READ_LOCAL_EXT_FEATURES, rp->status); |
717 | } | 724 | } |