1. 03 7月, 2014 22 次提交
  2. 16 5月, 2014 3 次提交
  3. 10 5月, 2014 1 次提交
  4. 08 5月, 2014 1 次提交
  5. 28 3月, 2014 3 次提交
  6. 27 3月, 2014 4 次提交
    • J
      Bluetooth: Store also RSSI for pending advertising reports · ff5cd29f
      Johan Hedberg 提交于
      Especially in crowded environments it can become frequent that we have
      to send out whatever pending event there is stored. Since user space
      has its own filtering of small RSSI changes sending a 0 value will
      essentially force user space to wake up the higher layers (e.g. over
      D-Bus) even though the RSSI didn't actually change more than the
      threshold value.
      
      This patch adds storing also of the RSSI for pending advertising reports
      so that we report an as accurate RSSI as possible when we have to send
      out the stored information to user space.
      Signed-off-by: NJohan Hedberg <johan.hedberg@intel.com>
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      ff5cd29f
    • J
      Bluetooth: Fix line splitting of mgmt_device_found parameters · 73cf71d9
      Johan Hedberg 提交于
      The line was incorrectly split between the variable type and its name.
      This patch fixes the issue.
      Signed-off-by: NJohan Hedberg <johan.hedberg@intel.com>
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      73cf71d9
    • J
      Bluetooth: Merge ADV_IND/ADV_SCAN_IND and SCAN_RSP together · b9a6328f
      Johan Hedberg 提交于
      To avoid too many events being sent to user space and to help parsing of
      all available remote device data it makes sense for us to wait for the
      scan response and send a single merged Device Found event to user space.
      
      This patch adds a few new variables to hci_dev to track the last
      received ADV_IND/ADV_SCAN_IND, i.e. those which will cause a SCAN_REQ to
      be send in the case of active scanning. When the SCAN_RSP is received
      the pending data is passed together with the SCAN_RSP to the
      mgmt_device_found function which takes care of merging them into a
      single Device Found event.
      
      We also need a bit of extra logic to handle situations where we don't
      receive a SCAN_RSP after caching some data. In such a scenario we simply
      have to send out the pending data as it is and then operate on the new
      report as if there was no pending data.
      
      We also need to send out any pending data when scanning stops as
      well as ensure that the storage is empty at the start of a new active
      scanning session. These both cases are covered by the update to the
      hci_cc_le_set_scan_enable function in this patch.
      Signed-off-by: NJohan Hedberg <johan.hedberg@intel.com>
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      b9a6328f
    • J
      Bluetooth: Add scan_rsp parameter to mgmt_device_found() · 5d2e9fad
      Johan Hedberg 提交于
      In preparation for being able to merge ADV_IND/ADV_SCAN_IND and SCAN_RSP
      together into a single device found event add a second parameter to the
      mgmt_device_found function. For now all callers pass NULL as this
      parameters since we don't yet have storing of the last received
      advertising report.
      Signed-off-by: NJohan Hedberg <johan.hedberg@intel.com>
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      5d2e9fad
  7. 22 3月, 2014 1 次提交
  8. 20 3月, 2014 1 次提交
  9. 10 3月, 2014 2 次提交
  10. 28 2月, 2014 2 次提交
    • J
      Bluetooth: Add timeout for LE connection attempts · 9489eca4
      Johan Hedberg 提交于
      LE connection attempts do not have a controller side timeout in the same
      way as BR/EDR has (in form of the page timeout). Since we always do
      scanning before initiating connections the attempts are always expected
      to succeed in some reasonable time.
      
      This patch adds a timer which forces a cancellation of the connection
      attempt within 20 seconds if it has not been successful by then. This
      way we e.g. ensure that mgmt_pair_device times out eventually and gives
      an error response.
      Signed-off-by: NJohan Hedberg <johan.hedberg@intel.com>
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      9489eca4
    • J
      Bluetooth: Track LE initiator and responder address information · cb1d68f7
      Johan Hedberg 提交于
      For SMP we need the local and remote addresses (and their types) that
      were used to establish the connection. These may be different from the
      Identity Addresses or even the current RPA. To guarantee that we have
      this information available and it is correct track these values
      separately from the very beginning of the connection.
      
      For outgoing connections we set the values as soon as we get a
      successful command status for HCI_LE_Create_Connection (for which the
      patch adds a command status handler function) and for incoming
      connections as soon as we get a LE Connection Complete HCI event.
      Signed-off-by: NJohan Hedberg <johan.hedberg@intel.com>
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      cb1d68f7