1. 30 7月, 2018 1 次提交
    • J
      Bluetooth: Implement Get PHY Configuration mgmt command · 6244691f
      Jaganath Kanakkassery 提交于
      This commands basically retrieve the supported packet types of
      BREDR and supported PHYs of the controller.
      
      BR_1M_1SLOT, LE_1M_TX and LE_1M_RX would be supported by default.
      Other PHYs are supported based on the local features.
      
      Also this sets PHY_CONFIGURATION bit in supported settings.
      
      @ MGMT Command: Get PHY Configuration (0x0044) plen 0
      @ MGMT Event: Command Complete (0x0001) plen 15
            Get PHY Configuration (0x0044) plen 12
              Status: Success (0x00)
              Supported PHYs: 0x7fff
                BR 1M 1SLOT
                BR 1M 3SLOT
                BR 1M 5SLOT
                EDR 2M 1SLOT
                EDR 2M 3SLOT
                EDR 2M 5SLOT
                EDR 3M 1SLOT
                EDR 3M 3SLOT
                EDR 3M 5SLOT
                LE 1M TX
                LE 1M RX
                LE 2M TX
                LE 2M RX
                LE CODED TX
                LE CODED RX
              Configurable PHYs: 0x79fe
                BR 1M 3SLOT
                BR 1M 5SLOT
                EDR 2M 1SLOT
                EDR 2M 3SLOT
                EDR 2M 5SLOT
                EDR 3M 1SLOT
                EDR 3M 3SLOT
                EDR 3M 5SLOT
                LE 2M TX
                LE 2M RX
                LE CODED TX
                LE CODED RX
              Selected PHYs: 0x07ff
                BR 1M 1SLOT
                BR 1M 3SLOT
                BR 1M 5SLOT
                EDR 2M 1SLOT
                EDR 2M 3SLOT
                EDR 2M 5SLOT
                EDR 3M 1SLOT
                EDR 3M 3SLOT
                EDR 3M 5SLOT
                LE 1M TX
                LE 1M RX
      Signed-off-by: NJaganath Kanakkassery <jaganathx.kanakkassery@intel.com>
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      6244691f
  2. 02 4月, 2018 1 次提交
  3. 30 10月, 2017 1 次提交
  4. 29 10月, 2017 1 次提交
  5. 20 10月, 2016 1 次提交
  6. 06 10月, 2016 1 次提交
  7. 22 9月, 2016 2 次提交
    • M
      Bluetooth: Fix not updating scan rsp when adv off · 7dc6f16c
      Michał Narajowski 提交于
      Scan response data should not be updated unless there
      is an advertising instance.
      Signed-off-by: NMichał Narajowski <michal.narajowski@codecoup.pl>
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      7dc6f16c
    • A
      Bluetooth: Fix NULL pointer dereference in mgmt context · dd7e39bb
      Arek Lichwa 提交于
      Adds missing callback assignment to cmd_complete in pending management command
      context. Dump path involves security procedure performed on legacy (pre-SSP)
      devices with service security requirements set to HIGH (16digits PIN).
      It fails when shorter PIN is delivered by user.
      
      [    1.517950] Bluetooth: PIN code is not 16 bytes long
      [    1.518491] BUG: unable to handle kernel NULL pointer dereference at           (null)
      [    1.518584] IP: [<          (null)>]           (null)
      [    1.518584] PGD 9e08067 PUD 9fdf067 PMD 0
      [    1.518584] Oops: 0010 [#1] SMP
      [    1.518584] Modules linked in:
      [    1.518584] CPU: 0 PID: 1002 Comm: kworker/u3:2 Not tainted 4.8.0-rc6-354649-gaf4168c5 #16
      [    1.518584] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.9.3-20160701_074356-anatol 04/01/2014
      [    1.518584] Workqueue: hci0 hci_rx_work
      [    1.518584] task: ffff880009ce14c0 task.stack: ffff880009e10000
      [    1.518584] RIP: 0010:[<0000000000000000>]  [<          (null)>]           (null)
      [    1.518584] RSP: 0018:ffff880009e13bc8  EFLAGS: 00010293
      [    1.518584] RAX: 0000000000000000 RBX: ffff880009eed100 RCX: 0000000000000006
      [    1.518584] RDX: ffff880009ddc000 RSI: 0000000000000000 RDI: ffff880009eed100
      [    1.518584] RBP: ffff880009e13be0 R08: 0000000000000000 R09: 0000000000000001
      [    1.518584] R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000
      [    1.518584] R13: ffff880009e13ccd R14: ffff880009ddc000 R15: ffff880009ddc010
      [    1.518584] FS:  0000000000000000(0000) GS:ffff88000bc00000(0000) knlGS:0000000000000000
      [    1.518584] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [    1.518584] CR2: 0000000000000000 CR3: 0000000009fdd000 CR4: 00000000000006f0
      [    1.518584] Stack:
      [    1.518584]  ffffffff81909808 ffff880009e13cce ffff880009e0d40b ffff880009e13c68
      [    1.518584]  ffffffff818f428d 00000000024000c0 ffff880009e13c08 ffffffff810ca903
      [    1.518584]  ffff880009e13c48 ffffffff811ade34 ffffffff8178c31f ffff880009ee6200
      [    1.518584] Call Trace:
      [    1.518584]  [<ffffffff81909808>] ? mgmt_pin_code_neg_reply_complete+0x38/0x60
      [    1.518584]  [<ffffffff818f428d>] hci_cmd_complete_evt+0x69d/0x3200
      [    1.518584]  [<ffffffff810ca903>] ? rcu_read_lock_sched_held+0x53/0x60
      [    1.518584]  [<ffffffff811ade34>] ? kmem_cache_alloc+0x1a4/0x200
      [    1.518584]  [<ffffffff8178c31f>] ? skb_clone+0x4f/0xa0
      [    1.518584]  [<ffffffff818f9d81>] hci_event_packet+0x8e1/0x28e0
      [    1.518584]  [<ffffffff81a421f1>] ? _raw_spin_unlock_irqrestore+0x31/0x50
      [    1.518584]  [<ffffffff810aea3e>] ? trace_hardirqs_on_caller+0xee/0x1b0
      [    1.518584]  [<ffffffff818e6bd1>] hci_rx_work+0x1e1/0x5b0
      [    1.518584]  [<ffffffff8107e4bd>] ? process_one_work+0x1ed/0x6b0
      [    1.518584]  [<ffffffff8107e538>] process_one_work+0x268/0x6b0
      [    1.518584]  [<ffffffff8107e4bd>] ? process_one_work+0x1ed/0x6b0
      [    1.518584]  [<ffffffff8107e9c3>] worker_thread+0x43/0x4e0
      [    1.518584]  [<ffffffff8107e980>] ? process_one_work+0x6b0/0x6b0
      [    1.518584]  [<ffffffff8107e980>] ? process_one_work+0x6b0/0x6b0
      [    1.518584]  [<ffffffff8108505f>] kthread+0xdf/0x100
      [    1.518584]  [<ffffffff81a4297f>] ret_from_fork+0x1f/0x40
      [    1.518584]  [<ffffffff81084f80>] ? kthread_create_on_node+0x210/0x210
      Signed-off-by: NArek Lichwa <arek.lichwa@gmail.com>
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      dd7e39bb
  8. 20 9月, 2016 20 次提交
  9. 13 7月, 2016 1 次提交
  10. 10 7月, 2016 1 次提交
    • M
      Bluetooth: Rename HCI_BREDR into HCI_PRIMARY · ca8bee5d
      Marcel Holtmann 提交于
      The HCI_BREDR naming is confusing since it actually stands for Primary
      Bluetooth Controller. Which is a term that has been used in the latest
      standard. However from a legacy point of view there only really have
      been Basic Rate (BR) and Enhanced Data Rate (EDR). Recent versions of
      Bluetooth introduced Low Energy (LE) and made this terminology a little
      bit confused since Dual Mode Controllers include BR/EDR and LE. To
      simplify this the name HCI_PRIMARY stands for the Primary Controller
      which can be a single mode or dual mode controller.
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      Signed-off-by: NJohan Hedberg <johan.hedberg@intel.com>
      ca8bee5d
  11. 11 3月, 2016 3 次提交
  12. 06 1月, 2016 2 次提交
  13. 10 12月, 2015 5 次提交