mirror of
https://github.com/bluekitchen/btstack.git
synced 2025-03-25 16:43:28 +00:00
l2cap-ertm: reorder l2cap-ertm fields
This commit is contained in:
parent
9c0e62d33a
commit
af3e22a342
66
src/l2cap.h
66
src/l2cap.h
@ -219,9 +219,13 @@ typedef struct {
|
|||||||
uint16_t automatic_credits;
|
uint16_t automatic_credits;
|
||||||
|
|
||||||
#ifdef ENABLE_L2CAP_ENHANCED_RETRANSMISSION_MODE
|
#ifdef ENABLE_L2CAP_ENHANCED_RETRANSMISSION_MODE
|
||||||
|
|
||||||
// l2cap channel mode: basic or enhanced retransmission mode
|
// l2cap channel mode: basic or enhanced retransmission mode
|
||||||
l2cap_channel_mode_t mode;
|
l2cap_channel_mode_t mode;
|
||||||
|
|
||||||
|
// local mps = size of rx/tx buffers
|
||||||
|
uint16_t local_mps;
|
||||||
|
|
||||||
// retransmission timer
|
// retransmission timer
|
||||||
btstack_timer_source_t retransmission_timer;
|
btstack_timer_source_t retransmission_timer;
|
||||||
|
|
||||||
@ -243,6 +247,9 @@ typedef struct {
|
|||||||
// if ertm is not mandatory, allow fallback to L2CAP Basic Mode - flag
|
// if ertm is not mandatory, allow fallback to L2CAP Basic Mode - flag
|
||||||
uint8_t ertm_mandatory;
|
uint8_t ertm_mandatory;
|
||||||
|
|
||||||
|
// sender: max num of stored outgoing frames
|
||||||
|
uint8_t num_tx_buffers;
|
||||||
|
|
||||||
// sender: number of unacknowledeged I-Frames - frames have been sent, but not acknowledged yet
|
// sender: number of unacknowledeged I-Frames - frames have been sent, but not acknowledged yet
|
||||||
uint8_t unacked_frames;
|
uint8_t unacked_frames;
|
||||||
|
|
||||||
@ -261,6 +268,22 @@ typedef struct {
|
|||||||
// sender: selective retransmission requested
|
// sender: selective retransmission requested
|
||||||
uint8_t srej_active;
|
uint8_t srej_active;
|
||||||
|
|
||||||
|
|
||||||
|
// receiver: max num out-of-order packets // tx_window
|
||||||
|
uint8_t num_rx_buffers;
|
||||||
|
|
||||||
|
// receiver: buffer index of to store packet with delta = 1
|
||||||
|
uint8_t rx_store_index;
|
||||||
|
|
||||||
|
// receiver: value of tx_seq in next expected i-frame
|
||||||
|
uint8_t expected_tx_seq;
|
||||||
|
|
||||||
|
// receiver: request transmission with tx_seq = req_seq and ack up to and including req_seq
|
||||||
|
uint8_t req_seq;
|
||||||
|
|
||||||
|
// receiver: local busy condition
|
||||||
|
uint8_t local_busy;
|
||||||
|
|
||||||
// receiver: send RR frame with optional final flag set - flag
|
// receiver: send RR frame with optional final flag set - flag
|
||||||
uint8_t send_supervisor_frame_receiver_ready;
|
uint8_t send_supervisor_frame_receiver_ready;
|
||||||
|
|
||||||
@ -279,46 +302,25 @@ typedef struct {
|
|||||||
// set final bit after poll packet with poll bit was received
|
// set final bit after poll packet with poll bit was received
|
||||||
uint8_t set_final_bit_after_packet_with_poll_bit_set;
|
uint8_t set_final_bit_after_packet_with_poll_bit_set;
|
||||||
|
|
||||||
// receiver: value of tx_seq in next expected i-frame
|
// receiver: meta data for out-of-order frames
|
||||||
uint8_t expected_tx_seq;
|
|
||||||
|
|
||||||
// receiver: request transmiissoin with tx_seq = req_seq and ack up to and including req_seq
|
|
||||||
uint8_t req_seq;
|
|
||||||
|
|
||||||
// local busy condition
|
|
||||||
uint8_t local_busy;
|
|
||||||
|
|
||||||
// max num out-of-order packets // tx_window
|
|
||||||
uint8_t num_rx_buffers;
|
|
||||||
|
|
||||||
// max num of unacknowledged outgoing packets
|
|
||||||
uint8_t num_tx_buffers;
|
|
||||||
|
|
||||||
// local mps = size of rx/tx packets
|
|
||||||
uint16_t local_mps;
|
|
||||||
|
|
||||||
// receiver: buffer index of to store packet with delta = 1
|
|
||||||
uint8_t rx_store_index;
|
|
||||||
|
|
||||||
// receiver - reassemly
|
|
||||||
uint16_t reassembly_pos;
|
|
||||||
|
|
||||||
// receiver - reassemly
|
|
||||||
uint16_t reassembly_sdu_length;
|
|
||||||
|
|
||||||
// re-assembly state
|
|
||||||
l2cap_ertm_rx_packet_state_t * rx_packets_state;
|
l2cap_ertm_rx_packet_state_t * rx_packets_state;
|
||||||
|
|
||||||
// retransmission state
|
// sender: retransmission state
|
||||||
l2cap_ertm_tx_packet_state_t * tx_packets_state;
|
l2cap_ertm_tx_packet_state_t * tx_packets_state;
|
||||||
|
|
||||||
// reassembly buffer
|
// receiver: reassemly pos
|
||||||
|
uint16_t reassembly_pos;
|
||||||
|
|
||||||
|
// receiver: reassemly sdu length
|
||||||
|
uint16_t reassembly_sdu_length;
|
||||||
|
|
||||||
|
// receiver: eassembly buffer
|
||||||
uint8_t * reassembly_buffer;
|
uint8_t * reassembly_buffer;
|
||||||
|
|
||||||
// data, each of size local_mtu
|
// receiver: num_rx_buffers of size local_mps
|
||||||
uint8_t * rx_packets_data;
|
uint8_t * rx_packets_data;
|
||||||
|
|
||||||
// data, each of size local_mtu
|
// sender: num_tx_buffers of size local_mps
|
||||||
uint8_t * tx_packets_data;
|
uint8_t * tx_packets_data;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user