1. 07 10月, 2017 11 次提交
  2. 18 8月, 2017 2 次提交
    • M
      Bluetooth: hci_bcm: Handle empty packet after firmware loading · 01d5e44a
      Marcel Holtmann 提交于
      The Broadcom controller on the Raspberry Pi3 sends an empty packet with
      packet type 0x00 after launching the firmware. This will cause logging
      of errors.
      
        Bluetooth: hci0: Frame reassembly failed (-84)
      
      Since this seems to be an intented behaviour of the controller, handle
      it gracefully by parsing that empty packet with packet type 0x00 and
      then just simply report it as diagnostic packet.
      
      With that change no errors are logging and the packet itself is actually
      recorded in the Bluetooth monitor traces.
      
        < HCI Command: Broadcom Launch RAM (0x3f|0x004e) plen 4
               Address: 0xffffffff
        > HCI Event: Command Complete (0x0e) plen 4
             Broadcom Launch RAM (0x3f|0x004e) ncmd 1
               Status: Success (0x00)
        = Vendor Diagnostic (len 0)
        < HCI Command: Broadcom Update UART Baud Rate (0x3f|0x0018) plen 6
               00 00 00 10 0e 00                                ......
        > HCI Event: Command Complete (0x0e) plen 4
             Broadcom Update UART Baud Rate (0x3f|0x0018) ncmd 1
               Status: Success (0x00)
        < HCI Command: Reset (0x03|0x0003) plen 0
        > HCI Event: Command Complete (0x0e) plen 4
             Reset (0x03|0x0003) ncmd 1
               Status: Success (0x00)
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      Signed-off-by: NJohan Hedberg <johan.hedberg@intel.com>
      01d5e44a
    • L
      Bluetooth: hci_bcm: Add serdev support · 33cd149e
      Loic Poulain 提交于
      Add basic support for Broadcom serial slave devices.
      Probe the serial device, retrieve its maximum speed and
      register a new hci uart device.
      
      Tested/compatible with bcm43438 (RPi3).
      Signed-off-by: NLoic Poulain <loic.poulain@gmail.com>
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      33cd149e
  3. 17 8月, 2017 1 次提交
  4. 16 8月, 2017 2 次提交
    • M
      Bluetooth: hci_bcm: Use operation speed of 4Mbps only for ACPI devices · 74183a1c
      Marcel Holtmann 提交于
      Not all Broadcom controller support the 4Mbps operational speed on UART
      devices. This is because the UART clock setting changes might not be
      supported.
      
        < HCI Command: Broadcom Write UART Clock Setting (0x3f|0x0045) plen 1
               01                                               .
        > HCI Event: Command Complete (0x0e) plen 4
             Broadcom Write UART Clock Setting (0x3f|0x0045) ncmd 1
               Status: Unknown HCI Command (0x01)
      
      To support any operational speed higher than 3Mbps, support for this
      command is required. With that respect it is better to not enforce any
      operational speed by default. Only when its support is known, then allow
      for higher operational speed.
      
      This patch assigns the 4Mbps opertional speed only for devices
      discovered through ACPI and leave all others at the default 115200.
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      Signed-off-by: NJohan Hedberg <johan.hedberg@intel.com>
      74183a1c
    • S
      Bluetooth: btusb: driver to enable the usb-wakeup feature · a0085f25
      Sukumar Ghorai 提交于
      BT-Controller connected as platform non-root-hub device and
      usb-driver initialize such device with wakeup disabled,
      Ref. usb_new_device().
      
      At present wakeup-capability get enabled by hid-input device from usb
      function driver(e.g. BT HID device) at runtime. Again some functional
      driver does not set usb-wakeup capability(e.g LE HID device implement
      as HID-over-GATT), and can't wakeup the host on USB.
      
      Most of the device operation (such as mass storage) initiated from host
      (except HID) and USB wakeup aligned with host resume procedure. For BT
      device, usb-wakeup capability need to enable form btusc driver as a
      generic solution for multiple profile use case and required for USB remote
      wakeup (in-bus wakeup) while host is suspended. Also usb-wakeup feature
      need to enable/disable with HCI interface up and down.
      Signed-off-by: NSukumar Ghorai <sukumar.ghorai@intel.com>
      Signed-off-by: NAmit K Bag <amit.k.bag@intel.com>
      Acked-by: NOliver Neukum <oneukum@suse.com>
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      a0085f25
  5. 15 8月, 2017 1 次提交
    • M
      Bluetooth: btusb: Add workaround for Broadcom devices without product id · 9834e586
      Marcel Holtmann 提交于
      The GPD Pocket is shipping with a BCM2045 USB HCI with its vendor and
      product information set to 0000:0000 and also has its interface class
      set to 255 (Vendor Specific Class). Luckily it does advertise usable
      manufacturer and product strings.
      
      T:  Bus=01 Lev=01 Prnt=01 Port=02 Cnt=02 Dev#=  3 Spd=12   MxCh= 0
      D:  Ver= 2.00 Cls=ff(vend.) Sub=01 Prot=01 MxPS=64 #Cfgs=  1
      P:  Vendor=0000 ProdID=0000 Rev= 1.12
      S:  Manufacturer=Broadcom Corp
      S:  Product=BCM2045A0
      S:  SerialNumber=AC83F30677CB
      C:* #Ifs= 4 Cfg#= 1 Atr=80 MxPwr=100mA
      I:* If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=01 Prot=01 Driver=btusb
      E:  Ad=81(I) Atr=03(Int.) MxPS=  16 Ivl=1ms
      E:  Ad=82(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
      E:  Ad=02(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
      I:* If#= 1 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=   0 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=   0 Ivl=1ms
      I:  If#= 1 Alt= 1 #EPs= 2 Cls=ff(vend.) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=   9 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=   9 Ivl=1ms
      I:  If#= 1 Alt= 2 #EPs= 2 Cls=ff(vend.) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=  17 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=  17 Ivl=1ms
      I:  If#= 1 Alt= 3 #EPs= 2 Cls=ff(vend.) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=  25 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=  25 Ivl=1ms
      I:  If#= 1 Alt= 4 #EPs= 2 Cls=ff(vend.) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=  33 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=  33 Ivl=1ms
      I:  If#= 1 Alt= 5 #EPs= 2 Cls=ff(vend.) Sub=01 Prot=01 Driver=btusb
      E:  Ad=83(I) Atr=01(Isoc) MxPS=  49 Ivl=1ms
      E:  Ad=03(O) Atr=01(Isoc) MxPS=  49 Ivl=1ms
      I:* If#= 2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none)
      E:  Ad=84(I) Atr=02(Bulk) MxPS=  32 Ivl=0ms
      E:  Ad=04(O) Atr=02(Bulk) MxPS=  32 Ivl=0ms
      I:* If#= 3 Alt= 0 #EPs= 0 Cls=fe(app. ) Sub=01 Prot=01 Driver=(none)
      Reported-by: NChristopher Williamson <home@chrisaw.com>
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      Signed-off-by: NJohan Hedberg <johan.hedberg@intel.com>
      9834e586
  6. 08 8月, 2017 2 次提交
    • D
      Bluetooth: Add support of 13d3:3494 RTL8723BE device · a81d72d2
      Dmitry Tunin 提交于
      T: Bus=02 Lev=01 Prnt=01 Port=03 Cnt=03 Dev#= 4 Spd=12 MxCh= 0
      D: Ver= 2.10 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs= 1
      P: Vendor=13d3 ProdID=3494 Rev= 2.00
      S: Manufacturer=Realtek
      S: Product=Bluetooth Radio
      S: SerialNumber=00e04c000001
      C:* #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=500mA
      I:* If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E: Ad=81(I) Atr=03(Int.) MxPS= 16 Ivl=1ms
      E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
      E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
      I:* If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E: Ad=03(O) Atr=01(Isoc) MxPS= 0 Ivl=1ms
      E: Ad=83(I) Atr=01(Isoc) MxPS= 0 Ivl=1ms
      I: If#= 1 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E: Ad=03(O) Atr=01(Isoc) MxPS= 9 Ivl=1ms
      E: Ad=83(I) Atr=01(Isoc) MxPS= 9 Ivl=1ms
      I: If#= 1 Alt= 2 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E: Ad=03(O) Atr=01(Isoc) MxPS= 17 Ivl=1ms
      E: Ad=83(I) Atr=01(Isoc) MxPS= 17 Ivl=1ms
      I: If#= 1 Alt= 3 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E: Ad=03(O) Atr=01(Isoc) MxPS= 25 Ivl=1ms
      E: Ad=83(I) Atr=01(Isoc) MxPS= 25 Ivl=1ms
      I: If#= 1 Alt= 4 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E: Ad=03(O) Atr=01(Isoc) MxPS= 33 Ivl=1ms
      E: Ad=83(I) Atr=01(Isoc) MxPS= 33 Ivl=1ms
      I: If#= 1 Alt= 5 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
      E: Ad=03(O) Atr=01(Isoc) MxPS= 49 Ivl=1ms
      E: Ad=83(I) Atr=01(Isoc) MxPS= 49 Ivl=1ms
      Signed-off-by: NDmitry Tunin <hanipouspilot@gmail.com>
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      Cc: stable@vger.kernel.org
      a81d72d2
    • O
      Bluetooth: bluecard: blink LED during continuous activity · c7ab7330
      Ondrej Zary 提交于
      Currently the activity LED is solid on during continuous activity.
      Blink the LED during continuous activity to match Windows driver
      behavior.
      
      Cards with activity LED:
      power LED = solid on when up, off when down
      activity LED = blinking during activity, off when idle
      
      Cards without activity LED:
      power LED = solid on when up, off when down, blinking during activity
      (don't have such a card so I don't know if Windows driver does the same
      thing)
      Signed-off-by: NOndrej Zary <linux@rainbow-software.org>
      Signed-off-by: NMarcel Holtmann <marcel@holtmann.org>
      c7ab7330
  7. 07 8月, 2017 2 次提交
  8. 01 8月, 2017 1 次提交
  9. 31 7月, 2017 1 次提交
  10. 29 7月, 2017 1 次提交
  11. 25 7月, 2017 2 次提交
  12. 22 7月, 2017 1 次提交
  13. 20 7月, 2017 10 次提交
  14. 29 6月, 2017 2 次提交
  15. 28 6月, 2017 1 次提交