An error occurred fetching the project authors.
  1. 04 Jan, 2014 1 commit
    • Marcel Holtmann's avatar
      Bluetooth: Add quirk for disabling Delete Stored Link Key command · f9f462fa
      Marcel Holtmann authored
      Some controller pretend they support the Delete Stored Link Key command,
      but in reality they really don't support it.
      
        < HCI Command: Delete Stored Link Key (0x03|0x0012) plen 7
            bdaddr 00:00:00:00:00:00 all 1
        > HCI Event: Command Complete (0x0e) plen 4
            Delete Stored Link Key (0x03|0x0012) ncmd 1
            status 0x11 deleted 0
            Error: Unsupported Feature or Parameter Value
      
      Not correctly supporting this command causes the controller setup to
      fail and will make a device not work. However sending the command for
      controller that handle stored link keys is important. This quirk
      allows a driver to disable the command if it knows that this command
      handling is broken.
      Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
      Signed-off-by: default avatarJohan Hedberg <johan.hedberg@intel.com>
      f9f462fa
  2. 11 Dec, 2013 1 commit
  3. 08 Dec, 2013 1 commit
  4. 04 Dec, 2013 1 commit
  5. 19 Oct, 2013 16 commits
  6. 18 Oct, 2013 7 commits
  7. 17 Oct, 2013 3 commits
  8. 16 Oct, 2013 1 commit
  9. 15 Oct, 2013 4 commits
  10. 14 Oct, 2013 2 commits
  11. 13 Oct, 2013 1 commit
    • Marcel Holtmann's avatar
      Bluetooth: Remove pointless bdaddr_to_le() helper function · 79d95a19
      Marcel Holtmann authored
      The bdaddr_to_le() function tries to convert the internal address
      type to one that matches the HCI address type for LE. It does not
      handle any address types not used by LE and in the end just make
      the code a lot harder to read.
      
      So instead of just hiding behind a magic function, just convert
      the internal address type where it needs to be converted. And it
      turns out that these are only two cases anyway. One when creating
      new LE connections and the other when loading the long term keys.
      In both cases this makes it more clear on what it going on.
      Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
      Signed-off-by: default avatarJohan Hedberg <johan.hedberg@intel.com>
      79d95a19
  12. 12 Oct, 2013 1 commit
    • Marcel Holtmann's avatar
      Bluetooth: Fix HCI init for 1st generation BlueFRITZ! devices · 4ca048e3
      Marcel Holtmann authored
      The 1st generation of BlueFRITZ! devices from AVM Berlin pretend
      to be HCI version 1.2 controllers, but they are not. They are simple
      Bluetooth 1.1 devices.
      
      Since this company never created any newer controllers, it is safe
      to use the manufacturer ID instead of an USB quirk.
      
      < HCI Command: Read Page Scan Activity (0x03|0x001b) plen 0
      > HCI Event: Command Complete (0x0e) plen 8
            Read Page Scan Activity (0x03|0x001b) ncmd 1
              Status: Success (0x00)
              Interval: 1280.000 msec (0x0800)
              Window: 21.250 msec (0x0022)
      < HCI Command: Read Page Scan Type (0x03|0x0046) plen 0
      > HCI Event: Command Status (0x0f) plen 4
            Read Page Scan Type (0x03|0x0046) ncmd 1
              Status: Unknown HCI Command (0x01)
      Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
      Signed-off-by: default avatarJohan Hedberg <johan.hedberg@intel.com>
      4ca048e3
  13. 11 Oct, 2013 1 commit
    • Marcel Holtmann's avatar
      Bluetooth: Fix endless loop with HCI_QUIRK_RESET_ON_CLOSE · 3a6afbd2
      Marcel Holtmann authored
      Really early versions of the Bluetooth specification were unclear
      with the behavior of HCI Reset for USB devices. They assumed that
      also an USB reset needs to be issued. Later Bluetooth specifications
      cleared this out and it is safe to call HCI Reset without affecting
      the transport.
      
      For old devices that misbehave, the HCI_QUIRK_RESET_ON_CLOSE quirk
      was introduced to postpone the HCI Reset until the device was no
      longer in use.
      
      One of these devices is the Digianswer BPA-105 Bluetooth Protocol
      Analyzer. The only problem now is that with the quirk set, the
      HCI Reset is also executed at the end of the setup phase. So the
      controller gets configured and then it disconnects from the USB
      bus, connects again, gets configured and of course disconnects
      again. This game goes on forever.
      
      For devices that need HCI_QUIRK_RESET_ON_CLOSE it is important
      that the HCI Reset is not executed after the setup phase. In
      specific when HCI_AUTO_OFF is set, do not call HCI Reset when
      closing the device.
      Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
      Signed-off-by: default avatarJohan Hedberg <johan.hedberg@intel.com>
      3a6afbd2