1. 09 Mar, 2016 6 commits
    • Jakub Pawlowski's avatar
      Remove bta_gattc_id2handle · ac4ee3a4
      Jakub Pawlowski authored
      Now that the instance id is equal to handle, we no longer need this
      mapping function.
      
      Bug: 27455533
      Change-Id: I6760f8fc81460df8520d4ebf1899ed256ce5ad1e
      ac4ee3a4
    • Jakub Pawlowski's avatar
      Use attribute handle instead of id in GATT cache · 29feba05
      Jakub Pawlowski authored
      Currently we generate an id for each GATT attribute. Those ids
      are used to differentiate between attributes that have the same
      UUID. We need to get rid of those ids because it won't work with
      partial GATT database updates due to "service change"
      notifications. Instead, attribute handles, which are unique
      across the whole GATT database will be used.
      
      This is first patch in series to achieve that. It gets rid
      of id generation, and just assigns handle in place of ids inside
      of gatt cache. Upcoming patches will change the GATT cache API
      and eventually get rid of "id" completly.
      
      Bug: 27455533
      Change-Id: I74c10872ecc223329b8ac7fef4085963bf272624
      29feba05
    • Jakub Pawlowski's avatar
      HID multi-device refactoring · 8ca5fe25
      Jakub Pawlowski authored
      We don't really support multiple HID services in same device.
      We shouldn't use default value 0 for service id.
      We shouldn't merge service id and characteristic id into one field,
      as it's done not right right now.
      
      Bug: 27455533
      Change-Id: I46cc1b62bb2c7393e62f3b1a8e4650706954a066
      8ca5fe25
    • Jakub Pawlowski's avatar
      GATT cache storage refactoring · 56658ccb
      Jakub Pawlowski authored
      Currently when storing GATT cache into file, we save it piece
      after piece, max 10 elements at once. This is not necessary,
      we have enough space to just save all at once.
      Also the logic doesn't need to be so complicated - no need
      to state machine for such simple task.
      
      Bug: 27455533
      Change-Id: I82923dbedfb317835e45e13e0ea28151eb524d37
      56658ccb
    • Jakub Pawlowski's avatar
      Remove dead methods and callbacks · 9fa6990b
      Jakub Pawlowski authored
      Bug: 27455533
      Change-Id: Ie5661577320810468dd635022027a1e1a2f70a3e
      9fa6990b
    • Jakub Pawlowski's avatar
      Simplify UUID handling in GATT cache · 390749a4
      Jakub Pawlowski authored
      Bug: 27455533
      Change-Id: I653b563d3b3c233ffe31b0a35d396a66db363459
      390749a4
  2. 08 Mar, 2016 3 commits
    • Dimitry Ivanov's avatar
      Fix the build · 597ce3bd
      Dimitry Ivanov authored
      Change-Id: Ib226f087a76ddd426e40f4d6d94f2ed758660c36
      597ce3bd
    • Sanket Agarwal's avatar
      Move focus handling entirely to component calling fluoride. · 547b7b52
      Sanket Agarwal authored
      Audio focus handling for A2DP sink currently split between Fluoride and
      the component sitting on top of it. Since this is not the best place to
      decide policies, we move all such decisions to the upper layer.
      
      Bug: b/26928143
      
      Change-Id: I67a1a2a50782289e7e31447b01ee29a21bc8dac2
      547b7b52
    • Pavlin Radoslavov's avatar
      Ignore LCB entries that migth have been released while queued · 0c33fde8
      Pavlin Radoslavov authored
      Function btm_send_pending_direct_conn() dequeues tL2C_LCB
      entries from the conn_pending_q queue and calls the processing
      function.
      However, there is the possilility of a race condition
      and releasing the entry by l2cu_release_lcb() before it is processed.
      Now tL2C_LCB that are not in_use are ignored.
      
      Bug: 27418154
      Change-Id: I4b5fda605a60c8aebbf5587bb12dd74ac5d28f68
      0c33fde8
  3. 04 Mar, 2016 1 commit
  4. 03 Mar, 2016 2 commits
    • Chaojing Sun's avatar
      Fix Dell LE keyboard connection issue · adca919a
      Chaojing Sun authored
      Fixes a connection issue where Dell keyboards do not remain connected
      immediately after pairing by removing the gatt_config_ccc_complete()
      call in gatt_cl_op_cmpl_cback().
      
      Bug: 27385897
      Change-Id: Iee342975dce9fdcd5dcf8f9d459f74fe13d02531
      adca919a
    • Prashant Malani's avatar
      Fix miscellaneous compilation errors · a5090f2c
      Prashant Malani authored
      - Move variables within #defines to avoid unused errors.
      - Place #define's correctly to avoid unused function errors.
      - Correct parameter passed into a function.
      
      Bug: 27336841
      Change-Id: I7c2ab24b3bd3725d126c90483473af83b88687a2
      a5090f2c
  5. 02 Mar, 2016 2 commits
    • Ajay Panicker's avatar
      Btsnooz doesn't find snooplog sometimes · 5afd7d35
      Ajay Panicker authored
      In the bugreport in b/27274486 comment #11, the line indicating the
      beginning of BTSNOOP LOGS was slightly indented thus causing btsnooz
      to not find the beginning of the log.
      
      Bug: 27419027
      Change-Id: I3b88e6a3f6f2d6c4d3cbbadb0a93cbd7965f56c8
      5afd7d35
    • Pavlin Radoslavov's avatar
      Fix l2cu_initialize_fixed_ccb() to return only initialized entries · 62778f6e
      Pavlin Radoslavov authored
      Update the l2cu_initialize_fixed_ccb() implementation so
      it returns only entries that are properly initialized.
      In some complex scenarios, the p_lcb->p_fixed_ccbs[] array
      might contain an entry that has been released by l2cu_release_ccb(),
      and such entry cannot be reused as-is.
      
      Bug: 26927945
      Change-Id: I42d42926cc6da6b8be662781545753c36b75968e
      62778f6e
  6. 01 Mar, 2016 1 commit
  7. 27 Feb, 2016 1 commit
    • Andre Eisenbach's avatar
      Ensure inquiry is always stopped before service discovery · 2ae9b0a2
      Andre Eisenbach authored
      Service discovery cannot be initiated when the dm search state machine
      is not in idle state. This patch ensures that service discovery is
      always cancelled regardless of the current state of inquiry.
      
      Bug: 27368986
      Change-Id: Ib83d4c8d389e50a1c65e52b343f4996455747836
      2ae9b0a2
  8. 26 Feb, 2016 1 commit
  9. 25 Feb, 2016 2 commits
    • Pavlin Radoslavov's avatar
      Fix a crash triggered when firmware config takes too long · 3329e8b9
      Pavlin Radoslavov authored
      Fix a crash condition that is triggered when the firmware
      configuration takes too long:
       1. The startup_timer expires, and it resets startup_future to NULL
       2. The delayed firmware_config_callback is received, and it
          tries to use the startup_future pointer (already set to NULL).
      
      [Cherry-pick from AOSP]
      
      Bug: 27336555
      Change-Id: I4b04ca08a32c947f6f1eaabec7c4b099f96aab59
      3329e8b9
    • Edward Savage-Jones's avatar
      Swapped memset params · d5cb2e56
      Edward Savage-Jones authored
      Incorrect usage of memset
      
      Bug: 27358983
      Change-Id: I7d96c560c4b462c2794b63eb66c7272b1280ba23
      d5cb2e56
  10. 24 Feb, 2016 8 commits
    • Ajay Panicker's avatar
      Protect metrics API from race conditions · d5608850
      Ajay Panicker authored
      Bug: 27315491
      Change-Id: If57f7c23c94890e5f1cf196d2ec7a2a667b48cec
      d5608850
    • Ajay Panicker's avatar
      Alarm Dump output cleanup · 25ddee0e
      Ajay Panicker authored
      Before:
        Alarm : btm_ble.adv_raddr_timer (SINGLE)
          Action counts (sched/resched/exec/cancel)       : 1 / 0 / 0 / 0
          Deviation counts (overdue/premature)            : 0 / 0
          Time in ms (since creation/interval/remaining)  : 17824 / 900000 / 882176
          Callback execution time in ms (total/max/ave)   : 0 / 0 / 0
          Overdue scheduling time in ms (total/max/ave)   : 0 / 0 / 0
          Premature scheduling time in ms (total/max/ave)   : 0 / 0 / 0
      
      After:
        Alarm : btm_ble.adv_raddr_timer (SINGLE)
          Action counts (sched/resched/exec/cancel       : 1 / 0 / 0 / 0
          Deviation counts (overdue/premature)           : 0 / 0
          Time in ms (since creation/interval/remaining) : 88268 / 900000 / 811732
          Callback execution time in ms (total/max/avg)  : 0 / 0 / 0
          Overdue scheduling time in ms (total/max/avg)  : 0 / 0 / 0
          Premature scheduling time in ms (total/max/avg): 0 / 0 / 0
      
      Bug: 27294154
      Change-Id: I0e318ef570a591626fbc6443feace1cc99c06baf
      25ddee0e
    • Ajay Panicker's avatar
      Clean A2DP dump output · 8efca14b
      Ajay Panicker authored
      Before:
        TxQueue:
          Counts (enqueue/dequeue/readbuf)                        : 0 / 0 / 0
          Last update time ago in ms (enqueue/dequeue/readbuf)    : 0 / 0 / 0
          Frames per packet (total/max/ave)                       : 0 / 0 / 0
          Counts (flushed/dropped/dropouts)                       : 0 / 0 / 0
          Last update time ago in ms (flushed/dropped)            : 0 / 0
          Counts (underflow/underrun)                             : 0 / 0
          Bytes (underflow/underrun)                              : 0 / 0
          Last update time ago in ms (underflow/underrun)         : 0 / 0
          Enqueue deviation counts (overdue/premature)            : 0 / 0
          Enqueue overdue scheduling time in ms (total/max/ave)   : 0 / 0 / 0
          Enqueue premature scheduling time in ms (total/max/ave) : 0 / 0 / 0
          Dequeue deviation counts (overdue/premature)            : 0 / 0
          Dequeue overdue scheduling time in ms (total/max/ave)   : 0 / 0 / 0
          Dequeue premature scheduling time in ms (total/max/ave) : 0 / 0 / 0
      
      After:  
        TxQueue:
        Counts (enqueue/dequeue/readbuf)                        : 0 / 0 / 0
        Last update time ago in ms (enqueue/dequeue/readbuf)    : 0 / 0 / 0
        Frames per packet (total/max/ave)                       : 0 / 0 / 0
        Counts (flushed/dropped/dropouts)                       : 0 / 0 / 0
        Last update time ago in ms (flushed/dropped)            : 0 / 0
        Counts (underflow/underrun)                             : 0 / 0
        Bytes (underflow/underrun)                              : 0 / 0
        Last update time ago in ms (underflow/underrun)         : 0 / 0
        Enqueue deviation counts (overdue/premature)            : 0 / 0
        Enqueue overdue scheduling time in ms (total/max/ave)   : 0 / 0 / 0
        Enqueue premature scheduling time in ms (total/max/ave) : 0 / 0 / 0
        Dequeue deviation counts (overdue/premature)            : 0 / 0
        Dequeue overdue scheduling time in ms (total/max/ave)   : 0 / 0 / 0
        Dequeue premature scheduling time in ms (total/max/ave) : 0 / 0 / 0
      
      Bug: 27294154
      Change-Id: I2952ceed7b02db0d8497b67de0f57e4f9128e5bf
      8efca14b
    • Ajay Panicker's avatar
      Remove extra newline before Btsnoop log summary · 5931d375
      Ajay Panicker authored
      Bug: 27294154
      Change-Id: Ice69835cdddfc01e2222a47b0ceeb30d243442f5
      5931d375
    • Ajay Panicker's avatar
      Clean up bond event dump printout · 7bde09fe
      Ajay Panicker authored
      Bug: 27294154
      Change-Id: I0b7e5a9dda30875c9fc877baffa0daac9184cd42
      7bde09fe
    • Jakub Pawlowski's avatar
      Make wakelock compile on Linux · f14c582c
      Jakub Pawlowski authored
      This patch adds some missing header files that prevented wakelocks
      from compiling on linux.
      
      Bug: 27324453
      Change-Id: Ifabf3350fe840524cf7e1ec7aa2825acb4399c81
      f14c582c
    • Jakub Pawlowski's avatar
      Add missing log tag in config_clear() · f2b7708e
      Jakub Pawlowski authored
      Bug: 27324453
      Change-Id: Icebf0273c39040ff6b1bb29dcc4d0a827e25b4a8
      f2b7708e
    • Jakub Pawlowski's avatar
      Get rid of counter · 01658a74
      Jakub Pawlowski authored
      This patch removes counter. We were never using those values,
      except for increasing them.
      
      Bug: 27324326
      Change-Id: I3122a36fa0435a36a8401792267cb5ebff5ab269
      01658a74
  11. 19 Feb, 2016 4 commits
  12. 18 Feb, 2016 9 commits