summaryrefslogtreecommitdiff
path: root/network/wlan/WDI/COMMON/Defrag.h
diff options
context:
space:
mode:
authorDaiqian Hu <[email protected]>2016-11-21 08:54:24 +0800
committerDaiqian Hu <[email protected]>2016-11-21 08:54:24 +0800
commita95eaad088f61aa55da9d73015cf1ed86e64a67e (patch)
tree15b498a08a4aee4b7f8b1627d39c965b3aa3ba98 /network/wlan/WDI/COMMON/Defrag.h
parent1aa0338ec5418345ea0c383e92b4fa19f7c98425 (diff)
Re-submit for WDI sample driver to GitHub
Submit WDI sample driver to GitHub for RS1.
Diffstat (limited to 'network/wlan/WDI/COMMON/Defrag.h')
-rw-r--r--network/wlan/WDI/COMMON/Defrag.h104
1 files changed, 104 insertions, 0 deletions
diff --git a/network/wlan/WDI/COMMON/Defrag.h b/network/wlan/WDI/COMMON/Defrag.h
new file mode 100644
index 00000000..690fe7fe
--- /dev/null
+++ b/network/wlan/WDI/COMMON/Defrag.h
@@ -0,0 +1,104 @@
+#ifndef __INC_DEFRAG_H
+#define __INC_DEFRAG_H
+
+#define MaxDefragLifeTime 51200 // in us
+
+
+VOID
+DefragInitialize(
+ PADAPTER Adapter
+ );
+
+PRT_RFD
+DefragAddRFD(
+ PADAPTER Adapter,
+ PRT_RFD pRfd,
+ pu1Byte pSenderAddr,
+ u1Byte TID,
+ u2Byte SeqNum,
+ u1Byte FragNum,
+ BOOLEAN bMoreFrag,
+ BOOLEAN bEncrypted
+ );
+
+VOID
+DefragReset(
+ PADAPTER Adapter
+ );
+
+
+/*
+ * Note: Following functions should not be called outside Defrag.c
+ *
+*/
+VOID
+DefragInit(
+ PDEFRAG_ENTRY pDefragArray,
+ u2Byte Size
+ );
+
+PDEFRAG_ENTRY
+DefragSearch(
+ PDEFRAG_ENTRY pDefragArray,
+ u2Byte Size,
+ pu1Byte pSenderAddr,
+ u1Byte TID,
+ u2Byte SeqNum,
+ u1Byte FragNum
+ );
+
+VOID
+DefragRemoveOldest(
+ PADAPTER Adapter
+ );
+
+PDEFRAG_ENTRY
+DefragFindFreeEntry(
+ PDEFRAG_ENTRY pDefragArray,
+ u2Byte Size
+ );
+
+VOID
+DefragAge(
+ PDEFRAG_ENTRY pDefragArray,
+ u2Byte Size,
+ u8Byte usCurrentTime,
+ PADAPTER Adapter
+ );
+
+VOID
+DefragEntrySetRFD(
+ PDEFRAG_ENTRY pEntry,
+ PRT_RFD pRfd,
+ pu1Byte pSenderAddr,
+ u1Byte TID,
+ u2Byte SeqNum,
+ u1Byte FragNum
+ );
+
+VOID
+DefragEntryAddRFD(
+ PDEFRAG_ENTRY pEntry,
+ PRT_RFD pRfd,
+ u1Byte FragNum
+ );
+
+VOID
+DefragEntryFree(
+ PDEFRAG_ENTRY pEntry,
+ PADAPTER Adapter
+ );
+
+VOID
+DefragRecycleRFD(
+ PADAPTER Adapter
+ );
+
+VOID
+DefragFreeLRUEntry(
+ PDEFRAG_ENTRY pDefragArray,
+ u2Byte Size,
+ PADAPTER Adapter
+ );
+
+#endif // #ifndef __INC_DEFRAG_H