diff options
Diffstat (limited to 'drivers/staging/wilc1000/wilc_wfi_netdevice.h')
-rw-r--r-- | drivers/staging/wilc1000/wilc_wfi_netdevice.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/drivers/staging/wilc1000/wilc_wfi_netdevice.h b/drivers/staging/wilc1000/wilc_wfi_netdevice.h index f20a2e366d5d..09f619b18067 100644 --- a/drivers/staging/wilc1000/wilc_wfi_netdevice.h +++ b/drivers/staging/wilc1000/wilc_wfi_netdevice.h @@ -104,6 +104,32 @@ struct frame_reg { bool reg; }; +#define MAX_TCP_SESSION 25 +#define MAX_PENDING_ACKS 256 + +struct ack_session_info { + u32 seq_num; + u32 bigger_ack_num; + u16 src_port; + u16 dst_port; + u16 status; +}; + +struct pending_acks_info { + u32 ack_num; + u32 session_index; + struct txq_entry_t *txqe; +}; + +struct tcp_ack_filter { + struct ack_session_info ack_session_info[2 * MAX_TCP_SESSION]; + struct pending_acks_info pending_acks_info[MAX_PENDING_ACKS]; + u32 pending_base; + u32 tcp_session; + u32 pending_acks; + bool enabled; +}; + struct wilc_vif { u8 idx; u8 iftype; @@ -122,6 +148,7 @@ struct wilc_vif { bool obtaining_ip; struct timer_list periodic_rssi; struct rf_info periodic_stat; + struct tcp_ack_filter ack_filter; }; struct wilc { |