-
Notifications
You must be signed in to change notification settings - Fork 1
[PW_SID:1037077] Enhanced or Legacy Accept Synchronous Connection Request command #3240
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: workflow
Are you sure you want to change the base?
Conversation
In current implementaion kernel is sending legacy sco command ['Accept Synchronous Connection Request command'] always even though controller supports enhanced synchronous connection command. In this commit, we have implemented the code in such a way that when Connect request for eSco is received, if controller supports enhanced synchronous connection command then it will go for 'Enhanced Accept Synchronous Connection Request command' or else it will go for legacy command['Accept Synchronous Connection Request command']. btmon trace: > HCI Event: Connect Request (0x04) plen 10 Address: 10:EC:81:61:71:67 Class: 0x000000 Major class: Miscellaneous Minor class: 0x00 Link type: eSCO (0x02) < HCI Command: Enhanced Accept Synchronous Connection Request (0x01|0x003e) plen 63 Address: 10:EC:81:61:71:67 Transmit bandwidth: 8000 Receive bandwidth: 8000 Transmit Coding Format: Codec: mSBC (0x05) Receive Coding Format: Codec: mSBC (0x05) Transmit Codec Frame Size: 60 Receive Codec Frame Size: 60 Input Coding Format: Codec: Linear PCM (0x04) Output Coding Format: Codec: Linear PCM (0x04) Input Coded Data Size: 16 Output Coded Data Size: 16 Input PCM Data Format: 2's complement Output PCM Data Format: 2's complement Input PCM Sample Payload MSB Position: 0 Output PCM Sample Payload MSB Position: 0 Input Data Path: HCI Output Data Path: HCI Input Transport Unit Size: 1 Output Transport Unit Size: 1 Max latency: 13 Packet type: 0x0380 3-EV3 may not be used 2-EV5 may not be used 3-EV5 may not be used Retransmission effort: Optimize for link quality (0x02) > HCI Event: Command Status (0x0f) plen 4 Enhanced Accept Synchronous Connection Request (0x01|0x003e) ncmd 1 Status: Success (0x00) > HCI Event: Synchronous Connect Complete (0x2c) plen 17 Status: Success (0x00) Handle: 8 Address: 10:EC:81:61:71:67 Link type: eSCO (0x02) Transmission interval: 0x0c Retransmission window: 0x04 RX packet length: 60 TX packet length: 60 Air mode: Transparent (0x03) Signed-off-by: Mahesh Talewad <mahesh.talewad@nxp.com>
|
CheckPatch |
|
GitLint |
|
SubjectPrefix |
|
BuildKernel |
|
CheckAllWarning |
|
CheckSparse |
|
BuildKernel32 |
|
TestRunnerSetup |
|
TestRunner_l2cap-tester |
|
TestRunner_iso-tester |
|
TestRunner_bnep-tester |
|
TestRunner_mgmt-tester |
|
TestRunner_rfcomm-tester |
|
TestRunner_sco-tester |
|
TestRunner_ioctl-tester |
|
TestRunner_mesh-tester |
|
TestRunner_smp-tester |
|
TestRunner_userchan-tester |
|
IncrementalBuild |
In current implementaion kernel is sending legacy sco command
['Accept Synchronous Connection Request command'] always even
though controller supports enhanced synchronous connection
command.
In this commit, we have implemented the code in such a way that
when Connect request for eSco is received, if controller supports
enhanced synchronous connection command then it will go for
'Enhanced Accept Synchronous Connection Request command' or else
it will go for legacy command['Accept Synchronous Connection
Request command'].
btmon trace:
Signed-off-by: Mahesh Talewad mahesh.talewad@nxp.com
include/net/bluetooth/hci.h | 34 ++++++++++++++
include/net/bluetooth/hci_sync.h | 9 ++++
net/bluetooth/hci_event.c | 27 ++++++-----
net/bluetooth/hci_sync.c | 78 ++++++++++++++++++++++++++++++++
net/bluetooth/sco.c | 34 ++------------
5 files changed, 141 insertions(+), 41 deletions(-)