For kernel version >= @TO_BE_FILLED@, it fails to pair with BT4.0 HID devices and leave error messages in syslog:
Bluetooth: hci0: request failed to create LE connection: status 0x0c
Which can be detailed by btmon:
< HCI Command: LE Extended Create Connection (0x08|0x0043) plen 26 #800 [hci0] 30.895622
Filter policy: White list is not used (0x00)
Own address type: Public (0x00)
Peer address type: Random (0x01)
Peer address: DB:DD:51:2D:1C:CC (Static)
Initiating PHYs: 0x01
Entry 0: LE 1M
Scan interval: 60.000 msec (0x0060)
Scan window: 60.000 msec (0x0060)
Min connection interval: 30.00 msec (0x0018)
Max connection interval: 50.00 msec (0x0028) Connection latency: 0 (0x0000) Supervision timeout: 420 msec (0x002a)
Min connection length: 0.000 msec (0x0000)
Max connection length: 0.000 msec (0x0000)
> HCI Event: Command Status (0x0f) plen 4 #801 [hci0] 30.896453
LE Extended Create Connection (0x08|0x0043) ncmd 1
Status: Command Disallowed (0x0c)
Indicating this is actually a firmware problem.
Verified this has been fixed at least in upstream linux-firmware commit 29a536a02cadb75b84c6c0b5d7af22d34d278563, firmware release version 21.10.0.6. With that firmware blob placed under /lib/firmware/intel and a cold boot, dmesg gives updated revision and device pairing works as expected:
For kernel version >= @TO_BE_FILLED@, it fails to pair with BT4.0 HID devices and leave error messages in syslog:
Bluetooth: hci0: request failed to create LE connection: status 0x0c
Which can be detailed by btmon:
< HCI Command: LE Extended Create Connection (0x08|0x0043) plen 26 #800 [hci0] 30.895622
Connection latency: 0 (0x0000)
Supervision timeout: 420 msec (0x002a)
Filter policy: White list is not used (0x00)
Own address type: Public (0x00)
Peer address type: Random (0x01)
Peer address: DB:DD:51:2D:1C:CC (Static)
Initiating PHYs: 0x01
Entry 0: LE 1M
Scan interval: 60.000 msec (0x0060)
Scan window: 60.000 msec (0x0060)
Min connection interval: 30.00 msec (0x0018)
Max connection interval: 50.00 msec (0x0028)
Min connection length: 0.000 msec (0x0000)
Max connection length: 0.000 msec (0x0000)
> HCI Event: Command Status (0x0f) plen 4 #801 [hci0] 30.896453
LE Extended Create Connection (0x08|0x0043) ncmd 1
Status: Command Disallowed (0x0c)
Indicating this is actually a firmware problem.
Verified this has been fixed at least in upstream linux-firmware commit 29a536a02cadb75 b84c6c0b5d7af22 d34d278563, firmware release version 21.10.0.6. With that firmware blob placed under /lib/firmware/intel and a cold boot, dmesg gives updated revision and device pairing works as expected:
Firmware revision 0.1 build 184 week 15 2019