Matthias Ringwald
|
9664600160
|
l2cap-ertm: extract l2cap_ertm_can_store_packet_now, implement l2cap_ertm_notify_channel_can_send, support l2cap_request_can_send_now_event for ERTM connections
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
0b20b13bb3
|
l2cap-ertm: implement l2cap_can_send_packet_now for ERTM
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
f85ade6bf6
|
l2cap-ertm: set final bit for RR with p=1 in S-REJ, process stored frames and send updated S-RR
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
707347078f
|
l2cap-ertm: store out of sequence SDUs, process in order after missing packet is received
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
e32be4094e
|
l2cap-ertm: pass payload of current packet to l2cap_ertm_handle_in_sequence_sdu, simplify code
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
e8e9809fca
|
l2cap-ertm: reassemble ertm packets in dedicated reassembly buffer
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
d48432d429
|
l2cap-ertm: extract l2cap_ertm_handle_in_sequence_sdu
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
7bebc11caa
|
l2cap-ertm: fragment outgoing data into tx buffers
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
82bb0e2240
|
l2cap-ertm: prepare for segmentation
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
843bae5d26
|
l2cap-ertm: reserve buffer for packet reassembly, too. calculate local mps and use in ertm config
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
3844aeadb3
|
l2cap-ertm: track remote mps
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
2bea1b8d8a
|
l2cap-ertm: signal/clear local busy condition
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
11b576c5ca
|
l2cap-ertm: handle I with F=1 - caused by S-RR with P=1
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
3233d8ab19
|
l2cap-ertm: handle S-RR with F=1 - caused by S-RR with P=1
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
d2afdd388b
|
l2cap-ertm: track p=1 bit in set_final_bit_after_packet_with_poll_bit_set for now
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
df2191a738
|
l2cap-ertm: send S-SREJ if only a single packet is missing
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
c7309e8d6f
|
l2cap-ertm: set req_seq to tx_seq + 1 if expected, send S-REJ for unexpected packets
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
dcb071b72b
|
l2cap-ertm: send req_seq in i-frames
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
bc4521b70e
|
l2cap-ertm: acknowledge more than one packets
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
7b7901d861
|
l2cap-ertm: handle S-REJ
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
9ffcbce4d5
|
l2cap-ertm: handle S-REJ
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
db55d2e9b3
|
l2cap-ertm: disconnect l2cap after monitor timeout and rety count has reached max transmit
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
20fa474d9d
|
l2cap-ertm: send RR with Poll after monitor timeout
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
78cd8a226d
|
l2cap-ertm: send RR with F=1 if RR with P=1 is received
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
62041d70a9
|
l2cap-ertm: send RR with poll=1 if packet is not acknowledged
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
8f1c963925
|
l2cap-ertm: implement l2cap_ertm_set_busy
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
67a3a5b71d
|
l2cap-ertm: add (empty) l2cap_ertm_set_busy and set_ready to signal local busy condition
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
2a424812a1
|
l2cap-ertm: free tx packets based on req seq in i-frame
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
212b6be258
|
l2cap-ertm: only send tx packet when num unack packages < tx window size
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
bdbe2e4960
|
l2cap-ertm: free tx packets that receive an RR s-frame
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
675e6881a7
|
l2cap-ertm: send tx packets from l2cap_run
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
f0fb4cd727
|
l2cap-ertm: store tx packets in channel->tx_packets_data before sending
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
d84e866fb8
|
l2cap-ertm: use send_supervisor_frame_receiver_ready to request RR frame
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
25cd60d37c
|
l2cap-ertm: store remote config in optional ertm mode, too
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
38f62777f8
|
l2cap-ertm: ack correclty received tx packets with s-frame RR
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
bbc0a9e771
|
l2cap-ertm: store remote ERTM config
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
2b70d7058b
|
l2cap-ertm: validate ertm config
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
ed971c5a8f
|
l2cap-ertm: reassemble L2CAP SDU segmented by ERTM
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
7b1816297b
|
l2cap-ertm: store ertm config in channel struct, setup rx+tx packet state tracking
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
501329faba
|
l2cap-ertm: add ERTM configuration options to create and accept l2cap connection API
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
27e0774ac6
|
l2cap-ertm: check FCS for packets in ERTM. pass complete packets to higher layer
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
585d028271
|
l2cap-ertm: dump l2cap data packets in l2cap_test
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
5260604380
|
l2cap-ertm: query remote extended feature mask before accepting connection request
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
450ad7ecde
|
l2cap-ertm: extract l2cap_setup_options_mtu and l2cap_setup_options_ertm from l2cap_setup_options
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
ac8f130048
|
l2cap-ertm: renegotiate basic mode if ERTM not requested
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
5b1804341c
|
l2cap-ertm: add l2cap configuration result defines
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
85ddcd8496
|
l2cap-ertm: send data as i-frames for ertm mode, calculate crc16 using table
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
f073f0868e
|
l2cap-ertm: fallback to basic mode if remote doesn't indicate support for ertm in information response
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
f2fa388d63
|
l2cap-ertm: handle fallback for optional ERTM
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
45caebe58e
|
l2cap-ertm: add ertm_mandatory flag to create and accept connection
|
2017-07-25 15:15:01 +02:00 |
|