diff --git a/drivers/staging/winbond/ds_tkip.h b/drivers/staging/winbond/ds_tkip.h
deleted file mode 100644
index 9c5c4e73f2c2..000000000000
--- a/drivers/staging/winbond/ds_tkip.h
+++ /dev/null
@@ -1,37 +0,0 @@
-#ifndef __WINBOND_DS_TKIP_H
-#define __WINBOND_DS_TKIP_H
-
-#include <linux/types.h>
-
-// Rotation functions on 32 bit values
-#define ROL32( A, n ) \
-    ( ((A) << (n)) | ( ((A)>>(32-(n)))  & ( (1UL << (n)) - 1 ) ) )
-
-#define ROR32( A, n )   ROL32( (A), 32-(n) )
-
-
-typedef struct tkip
-{
-    u32	K0, K1;		// Key
-	union
-	{
-		struct // Current state
-		{
-			u32	L;
-			u32	R;
-		};
-		u8	LR[8];
-	};
-	union
-	{
-		u32	M;		// Message accumulator (single word)
-		u8	Mb[4];
-	};
-	s32		bytes_in_M;	// # bytes in M
-} tkip_t;
-
-//void _append_data( u8 *pData, u16 size, tkip_t *p );
-void Mds_MicGet(  void* adapter,  void* pRxLayer1,  u8 *pKey,  u8 *pMic );
-void Mds_MicFill(  void* adapter,  void* pDes,  u8 *XmitBufAddress );
-
-#endif
diff --git a/drivers/staging/winbond/mds.c b/drivers/staging/winbond/mds.c
index 59cdba8592be..8c77784ae225 100644
--- a/drivers/staging/winbond/mds.c
+++ b/drivers/staging/winbond/mds.c
@@ -1,4 +1,3 @@
-#include "ds_tkip.h"
 #include "gl_80211.h"
 #include "mds_f.h"
 #include "mlmetxrx_f.h"
@@ -425,7 +424,7 @@ Mds_Tx(struct wbsoft_priv * adapter)
 	u8		*XmitBufAddress;
 	u16		XmitBufSize, PacketSize, stmp, CurrentSize, FragmentThreshold;
 	u8		FillIndex, TxDesIndex, FragmentCount, FillCount;
-	unsigned char	BufferFilled = false, MICAdd = 0;
+	unsigned char	BufferFilled = false;
 
 
 	if (pMds->TxPause)
@@ -499,12 +498,6 @@ Mds_Tx(struct wbsoft_priv * adapter)
 			// Set RTS/CTS and Normal duration field into buffer
 			Mds_DurationSet(adapter, pTxDes, XmitBufAddress);
 
-			//
-			// Calculation MIC from buffer which maybe fragment, then fill into temporary address 8 byte
-			// 931130.5.e
-			if (MICAdd)
-				Mds_MicFill( adapter, pTxDes, XmitBufAddress );
-
 			//Shift to the next address
 			XmitBufSize += CurrentSize;
 			XmitBufAddress += CurrentSize;