#
73d80deb |
| 02-Nov-2011 |
Luiz Augusto von Dentz <luiz.von.dentz@intel.com> |
Bluetooth: prioritizing data over HCI
This implement priority based scheduler using skbuffer priority set via SO_PRIORITY socket option.
It introduces hci_chan_hash (list of HCI Channel/hci_chan) p
Bluetooth: prioritizing data over HCI
This implement priority based scheduler using skbuffer priority set via SO_PRIORITY socket option.
It introduces hci_chan_hash (list of HCI Channel/hci_chan) per connection, each item in this list refer to a L2CAP connection and it is used to queue the data for transmission.
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com> Acked-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
5e59b791 |
| 01-Nov-2011 |
Luiz Augusto von Dentz <luiz.von.dentz@intel.com> |
Bluetooth: set skbuffer priority based on L2CAP socket priority
This uses SO_PRIORITY to set the skbuffer priority field
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com> Signed-off-
Bluetooth: set skbuffer priority based on L2CAP socket priority
This uses SO_PRIORITY to set the skbuffer priority field
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
0e8b207e |
| 17-Oct-2011 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Bluetooth: EFS: implement L2CAP config pending state
Add L2CAP Config Pending state for EFS. Currently after receiving Config Response Pending respond with Config Response Success.
... > ACL data:
Bluetooth: EFS: implement L2CAP config pending state
Add L2CAP Config Pending state for EFS. Currently after receiving Config Response Pending respond with Config Response Success.
... > ACL data: handle 1 flags 0x02 dlen 16 L2CAP(s): Connect rsp: dcid 0x0040 scid 0x0040 result 0 status 0 Connection successful > ACL data: handle 1 flags 0x02 dlen 45 L2CAP(s): Config req: dcid 0x0040 flags 0x00 clen 33 RFC 0x03 (Enhanced Retransmission, TxWin 63, MaxTx 3, RTo 0, MTo 0, MPS 1009) EFS (Id 0x01, SerType Best Effort, MaxSDU 0xffff, SDUitime 0xffffffff, AccLat 0xffffffff, FlushTO 0x0000ffff) < ACL data: handle 1 flags 0x00 dlen 45 L2CAP(s): Config req: dcid 0x0040 flags 0x00 clen 33 RFC 0x03 (Enhanced Retransmission, TxWin 63, MaxTx 3, RTo 0, MTo 0, MPS 498) EFS (Id 0x01, SerType Best Effort, MaxSDU 0xffff, SDUitime 0xffffffff, AccLat 0xffffffff, FlushTO 0x0000ffff) < ACL data: handle 1 flags 0x00 dlen 47 L2CAP(s): Config rsp: scid 0x0040 flags 0x00 result 4 clen 33 Pending MTU 672 RFC 0x03 (Enhanced Retransmission, TxWin 63, MaxTx 3, RTo 2000, MTo 12000, MPS 498) EFS (Id 0x01, SerType Best Effort, MaxSDU 0xffff, SDUitime 0xffffffff, AccLat 0xffffffff, FlushTO 0x0000ffff) > ACL data: handle 1 flags 0x02 dlen 47 L2CAP(s): Config rsp: scid 0x0040 flags 0x00 result 4 clen 33 Pending MTU 672 RFC 0x03 (Enhanced Retransmission, TxWin 63, MaxTx 3, RTo 2000, MTo 12000, MPS 498) EFS (Id 0x01, SerType Best Effort, MaxSDU 0xffff, SDUitime 0xffffffff, AccLat 0xffffffff, FlushTO 0x0000ffff) > ACL data: handle 1 flags 0x02 dlen 14 L2CAP(s): Config rsp: scid 0x0040 flags 0x00 result 0 clen 0 Success < ACL data: handle 1 flags 0x00 dlen 14 L2CAP(s): Config rsp: scid 0x0040 flags 0x00 result 0 clen 0 Success < ACL data: handle 1 flags 0x00 dlen 510 L2CAP(d): cid 0x0040 len 506 ext_ctrl 0x00010000 fcs 0xebe0 [psm 4113] I-frame: Start (len 672) TxSeq 0 ReqSeq 0 ...
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
f3f668b0 |
| 07-Nov-2011 |
Andrzej Kaczmarek <andrzej.kaczmarek@tieto.com> |
Bluetooth: Use miliseconds for L2CAP channel timeouts
Timers set by __set_chan_timer() should use miliseconds instead of jiffies. Commit 942ecc9c4643db5ce071562e0a23f99464d6b461 updated l2cap_set_ti
Bluetooth: Use miliseconds for L2CAP channel timeouts
Timers set by __set_chan_timer() should use miliseconds instead of jiffies. Commit 942ecc9c4643db5ce071562e0a23f99464d6b461 updated l2cap_set_timer() so it expects timeout to be specified in msecs instead of jiffies. This makes timeouts unreliable when CONFIG_HZ is not set to 1000.
Signed-off-by: Andrzej Kaczmarek <andrzej.kaczmarek@tieto.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
836be934 |
| 17-Oct-2011 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Bluetooth: EWS: support extended seq numbers
Adds support for extended sequence numbers found in extended control fields.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off
Bluetooth: EWS: support extended seq numbers
Adds support for extended sequence numbers found in extended control fields.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
88843ab0 |
| 17-Oct-2011 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Bluetooth: EWS: handling different Control fields
There are three different Control Field formats: the Standard Control Field, the Enhanced Control Field, and the Extended Control Field. Patch adds
Bluetooth: EWS: handling different Control fields
There are three different Control Field formats: the Standard Control Field, the Enhanced Control Field, and the Extended Control Field. Patch adds function to handle all those fields seamlessly.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
8f7975b1 |
| 13-Oct-2011 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Bluetooth: EFS: assign default values in chan add
Assign default EFS values when creating L2CAP channel
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo F. Pa
Bluetooth: EFS: assign default values in chan add
Assign default EFS values when creating L2CAP channel
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
5a9e7057 |
| 13-Oct-2011 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Bluetooth: EFS: definitions and headers
Define Extended Flow Specification structures and default values. Based upon haijun.liu <haijun.liu@atheros.com> series of patches (sent Sun, 22 Aug 2010)
Si
Bluetooth: EFS: definitions and headers
Define Extended Flow Specification structures and default values. Based upon haijun.liu <haijun.liu@atheros.com> series of patches (sent Sun, 22 Aug 2010)
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
d43cb289 |
| 11-Oct-2011 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Bluetooth: EWS: define L2CAP header sizes
Adds definitins for L2CAP header sizes to be uses when calculating payload size instead of magic numbers.
Signed-off-by: Andrei Emeltchenko <andrei.emeltch
Bluetooth: EWS: define L2CAP header sizes
Adds definitins for L2CAP header sizes to be uses when calculating payload size instead of magic numbers.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
e3781735 |
| 11-Oct-2011 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Bluetooth: EWS: rewrite handling POLL (P) bit
Handle POLL (P) bit in L2CAP ERTM using information about control field type.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-o
Bluetooth: EWS: rewrite handling POLL (P) bit
Handle POLL (P) bit in L2CAP ERTM using information about control field type.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
03f6715d |
| 11-Oct-2011 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Bluetooth: EWS: rewrite handling FINAL (F) bit
Handle final (F) bit in L2CAP using information about control field type.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-
Bluetooth: EWS: rewrite handling FINAL (F) bit
Handle final (F) bit in L2CAP using information about control field type.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
793c2f1c |
| 11-Oct-2011 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Bluetooth: EWS: rewrite check frame type function
Check frame function uses now information about control field type.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by:
Bluetooth: EWS: rewrite check frame type function
Check frame function uses now information about control field type.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
fb45de7d |
| 11-Oct-2011 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Bluetooth: EWS: rewrite L2CAP ERTM txseq calculation
L2CAP ERTM txseq calculation uses now information about control field type.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Sig
Bluetooth: EWS: rewrite L2CAP ERTM txseq calculation
L2CAP ERTM txseq calculation uses now information about control field type.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
0b209fae |
| 11-Oct-2011 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Bluetooth: EWS: rewrite reqseq calculation
reqseq calculation uses now information about control field type.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo
Bluetooth: EWS: rewrite reqseq calculation
reqseq calculation uses now information about control field type.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
7e0ef6ee |
| 11-Oct-2011 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Bluetooth: EWS: rewrite handling SAR bits
Segmentation and Reassembly (SAR) occupies different windows in standard and extended control fields. Convert hardcoded masks to relative ones and use shift
Bluetooth: EWS: rewrite handling SAR bits
Segmentation and Reassembly (SAR) occupies different windows in standard and extended control fields. Convert hardcoded masks to relative ones and use shift to access SAR bits.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
ab784b73 |
| 11-Oct-2011 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Bluetooth: EWS: rewrite handling Supervisory (S) bits
Supervisory bits occupy different windows in standard / extended control fields. Convert hardcoded masks to relative ones and use shift to acces
Bluetooth: EWS: rewrite handling Supervisory (S) bits
Supervisory bits occupy different windows in standard / extended control fields. Convert hardcoded masks to relative ones and use shift to access S-bit window.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
57253fd8 |
| 11-Oct-2011 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Bluetooth: EWS: adds ext control field bit mask
Adds extended control field bit masks and rearrange defines to logical groups: masks, flags and shift groups.
Signed-off-by: Andrei Emeltchenko <andr
Bluetooth: EWS: adds ext control field bit mask
Adds extended control field bit masks and rearrange defines to logical groups: masks, flags and shift groups.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
6327eb98 |
| 11-Oct-2011 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Bluetooth: EWS: extended window size option support
Adds support for extended window size (EWS) config option. We enable EWS feature in L2CAP Info RSP when hs enabled. EWS option is included in L2CA
Bluetooth: EWS: extended window size option support
Adds support for extended window size (EWS) config option. We enable EWS feature in L2CAP Info RSP when hs enabled. EWS option is included in L2CAP Config Req if tx_win (which is set via socket) bigger then standard default value (63) && hs enabled && remote side supports EWS feature.
Using EWS selects extended control field in L2CAP.
Code partly based on Qualcomm and Atheros patches sent upstream a year ago.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
8d6765aa |
| 11-Oct-2011 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Bluetooth: clean up spaces in L2CAP header
Spaces converted to tabs
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
|
#
43bd0f32 |
| 11-Oct-2011 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Bluetooth: convert role_switch variable to flag in l2cap chan
role_switch variable inside l2cap_chan is a logical one and can be easily converted to flag
Signed-off-by: Andrei Emeltchenko <andrei.e
Bluetooth: convert role_switch variable to flag in l2cap chan
role_switch variable inside l2cap_chan is a logical one and can be easily converted to flag
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
15770b1a |
| 11-Oct-2011 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Bluetooth: convert force_active variable to flag in l2cap chan
force_active variable inside l2cap_chan is a logical one and can be easily converted to flag
Signed-off-by: Andrei Emeltchenko <andrei
Bluetooth: convert force_active variable to flag in l2cap chan
force_active variable inside l2cap_chan is a logical one and can be easily converted to flag
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
ecf61bdb |
| 11-Oct-2011 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Bluetooth: convert force_reliable variable to flag in l2cap chan
force_reliable variable inside l2cap_chan is a logical one and can be easily converted to flag
Signed-off-by: Andrei Emeltchenko <an
Bluetooth: convert force_reliable variable to flag in l2cap chan
force_reliable variable inside l2cap_chan is a logical one and can be easily converted to flag
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
d57b0e8b |
| 11-Oct-2011 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Bluetooth: convert flushable variable to flag in l2cap chan
flushable variable inside l2cap_chan is a logical one and can be easily converted to flag. Added flags in l2cap_chan structure.
Signed-of
Bluetooth: convert flushable variable to flag in l2cap chan
flushable variable inside l2cap_chan is a logical one and can be easily converted to flag. Added flags in l2cap_chan structure.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
a858393b |
| 16-Sep-2011 |
Andrei Emeltchenko <andrei.emeltchenko@intel.com> |
Bluetooth: EFS: l2cap extended feature mask update
Update L2CAP extended feature mask to reflect recent BT spec.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gust
Bluetooth: EFS: l2cap extended feature mask update
Update L2CAP extended feature mask to reflect recent BT spec.
Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|
#
84084a31 |
| 22-Jul-2011 |
Mat Martineau <mathewm@codeaurora.org> |
Bluetooth: Perform L2CAP SDU reassembly without copying data
Use sk_buff fragment capabilities to link together incoming skbs instead of allocating a new skb for reassembly and copying.
The new rea
Bluetooth: Perform L2CAP SDU reassembly without copying data
Use sk_buff fragment capabilities to link together incoming skbs instead of allocating a new skb for reassembly and copying.
The new reassembly code works equally well for ERTM and streaming mode, so there is now one reassembly function instead of two.
Signed-off-by: Mat Martineau <mathewm@codeaurora.org> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
show more ...
|