All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
To: "Greg Kroah-Hartman" <gregkh@suse.de>
Cc: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>,
	linux-kernel@vger.kernel.org
Subject: [PATCH 06/22] Staging: rtl8192su: remove USB_RX_AGGREGATION_SUPPORT ifdefs
Date: Fri, 03 Jul 2009 16:06:40 +0200	[thread overview]
Message-ID: <20090703140640.7303.21490.sendpatchset@localhost.localdomain> (raw)
In-Reply-To: <20090703140605.7303.54416.sendpatchset@localhost.localdomain>

From: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Subject: [PATCH staging] Staging: rtl8192su: remove USB_RX_AGGREGATION_SUPPORT ifdefs

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
---
 drivers/staging/rtl8192su/Makefile                   |    1 
 drivers/staging/rtl8192su/ieee80211/rtl819x_HT.h     |    6 
 drivers/staging/rtl8192su/ieee80211/rtl819x_HTProc.c |   15 
 drivers/staging/rtl8192su/r8192U.h                   |   32 -
 drivers/staging/rtl8192su/r8192U_core.c              |  471 -------------------
 drivers/staging/rtl8192su/r8192U_dm.c                |   98 ---
 drivers/staging/rtl8192su/r819xU_HTType.h            |    6 
 7 files changed, 629 deletions(-)

Index: b/drivers/staging/rtl8192su/Makefile
===================================================================
--- a/drivers/staging/rtl8192su/Makefile
+++ b/drivers/staging/rtl8192su/Makefile
@@ -12,7 +12,6 @@ EXTRA_CFLAGS += -DRTL8190_Download_Firmw
 EXTRA_CFLAGS += -DRTL8192S_PREPARE_FOR_NORMAL_RELEASE
 EXTRA_CFLAGS += -DRTL8192SU_DISABLE_IQK=1
 
-#EXTRA_CFLAGS += -DUSB_RX_AGGREGATION_SUPPORT=0
 #EXTRA_CFLAGS += -DUSB_TX_DRIVER_AGGREGATION_ENABLE=0
 #EXTRA_CFLAGS += -DRTL8192SU_DISABLE_CCK_RATE=0
 EXTRA_CFLAGS += -DRTL8192S_DISABLE_FW_DM=0
Index: b/drivers/staging/rtl8192su/ieee80211/rtl819x_HT.h
===================================================================
--- a/drivers/staging/rtl8192su/ieee80211/rtl819x_HT.h
+++ b/drivers/staging/rtl8192su/ieee80211/rtl819x_HT.h
@@ -327,12 +327,6 @@ typedef struct _RT_HIGH_THROUGHPUT{
 #ifdef USB_TX_DRIVER_AGGREGATION_ENABLE
 	u8				UsbTxAggrNum;
 #endif
-#ifdef USB_RX_AGGREGATION_SUPPORT
-	u8				UsbRxFwAggrEn;
-	u8				UsbRxFwAggrPageNum;
-	u8				UsbRxFwAggrPacketNum;
-	u8				UsbRxFwAggrTimeout;
-#endif
 
 	// Add for Broadcom(Linksys) IOT. Joseph
 	u8				bIsPeerBcm;
Index: b/drivers/staging/rtl8192su/ieee80211/rtl819x_HTProc.c
===================================================================
--- a/drivers/staging/rtl8192su/ieee80211/rtl819x_HTProc.c
+++ b/drivers/staging/rtl8192su/ieee80211/rtl819x_HTProc.c
@@ -105,21 +105,6 @@ void HTUpdateDefaultSetting(struct ieee8
 #ifdef USB_TX_DRIVER_AGGREGATION_ENABLE
 	pHTInfo->UsbTxAggrNum = 4;
 #endif
-#ifdef USB_RX_AGGREGATION_SUPPORT
-#ifdef RTL8192SU
-	pHTInfo->UsbRxFwAggrEn = 1;
-	pHTInfo->UsbRxFwAggrPageNum = 16;
-	pHTInfo->UsbRxFwAggrPacketNum = 8;
-	pHTInfo->UsbRxFwAggrTimeout = 4; ////usb rx FW aggregation timeout threshold.It's in units of 64us
-	// For page size of receive packet buffer.
-	pHTInfo->UsbRxPageSize= 128;
-#else
-	pHTInfo->UsbRxFwAggrEn = 1;
-	pHTInfo->UsbRxFwAggrPageNum = 24;
-	pHTInfo->UsbRxFwAggrPacketNum = 8;
-	pHTInfo->UsbRxFwAggrTimeout = 16; ////usb rx FW aggregation timeout threshold.It's in units of 64us
-#endif
-#endif
 
 
 }
Index: b/drivers/staging/rtl8192su/r8192U.h
===================================================================
--- a/drivers/staging/rtl8192su/r8192U.h
+++ b/drivers/staging/rtl8192su/r8192U.h
@@ -693,11 +693,7 @@ typedef struct rx_desc_819x_usb{
 	//DWORD 2
 	u16		Seq:12;
 	u16		Frag:4;
-#ifdef USB_RX_AGGREGATION_SUPPORT
-	u8		UsbAggPktNum;//:8;
-#else
 	u8		NextPktLen;//:8;
-#endif
 	u8		Rsvd0:6;
 	u8		NextIND:1;
 	u8		Rsvd1:1;
@@ -751,27 +747,6 @@ typedef struct rx_desc_819x_usb{
 }rx_desc_819x_usb, *prx_desc_819x_usb;
 #endif
 
-#ifdef USB_RX_AGGREGATION_SUPPORT
-typedef struct _rx_desc_819x_usb_aggr_subframe{
-	//DOWRD 0
-	u16			Length:14;
-	u16			CRC32:1;
-	u16			ICV:1;
-	u8			Offset;
-	u8			RxDrvInfoSize;
-	//DOWRD 1
-	u8			Shift:2;
-	u8			PHYStatus:1;
-	u8			SWDec:1;
-	u8			Reserved1:4;
-	u8			Reserved2;
-	u16			Reserved3;
-	//DWORD 2
-	//u4Byte		Reserved3;
-	//DWORD 3
-	//u4Byte           	BufferAddress;
-}rx_desc_819x_usb_aggr_subframe, *prx_desc_819x_usb_aggr_subframe;
-#endif
 
 #ifdef RTL8192SU
 //
@@ -1896,13 +1871,6 @@ typedef struct r8192_priv
 //#endif
 
 
-#ifdef USB_RX_AGGREGATION_SUPPORT
-	bool		bCurrentRxAggrEnable;
-	bool		bForcedUsbRxAggr;
-	u32		ForcedUsbRxAggrInfo;
-	u32		LastUsbRxAggrInfoSetting;
-	u32		RegUsbRxAggrInfo;
-#endif
 
 
 
Index: b/drivers/staging/rtl8192su/r8192U_core.c
===================================================================
--- a/drivers/staging/rtl8192su/r8192U_core.c
+++ b/drivers/staging/rtl8192su/r8192U_core.c
@@ -1601,12 +1601,6 @@ static void rtl8192_rx_isr(struct urb *u
 u32 get_rxpacket_shiftbytes_819xusb(struct ieee80211_rx_stats *pstats)
 {
 
-#ifdef USB_RX_AGGREGATION_SUPPORT
-	if (pstats->bisrxaggrsubframe)
-		return (sizeof(rx_desc_819x_usb) + pstats->RxDrvInfoSize
-			+ pstats->RxBufShift + 8);
-	else
-#endif
 		return (sizeof(rx_desc_819x_usb) + pstats->RxDrvInfoSize
 				+ pstats->RxBufShift);
 
@@ -6780,20 +6774,6 @@ void rtl8192_hwconfig(struct net_device*
 }
 
 #ifdef RTL8192SU
-#ifdef USB_RX_AGGREGATION_SUPPORT
-u8 rtl8192SU_MapRxPageSizeToIdx(u16 RxPktSize	)
-{
-	switch(RxPktSize)
-	{
-		case 64:		return 0; break;
-		case 128	:	return 1; break;
-		case 256:		return 2; break;
-		case 512:		return 3; break;
-		case 1024:	return 4; break;
-		default:		return 0;	// We use 64bytes in defult.
-	}
-}
-#endif
 
 //
 //	Description:
@@ -6951,165 +6931,8 @@ static void rtl8192SU_MacConfigBeforeFwD
 
 	RT_TRACE(COMP_INIT, "<---MacConfigBeforeFwDownloadASIC()\n");
 }
-#ifdef USB_RX_AGGREGATION_SUPPORT
-void rtl8192SU_HalUsbRxAggr8192SUsb(struct net_device *dev, bool Value)
-{
-	struct r8192_priv *priv = ieee80211_priv((struct net_device *)dev);
-	PRT_HIGH_THROUGHPUT	pHTInfo = priv->ieee80211->pHTInfo;;
 
 
-	//
-	// <Roger_Notes> We decrease Rx page aggregated threshold in B/G mode.
-	// 2008.10.29
-	//
-	if(priv->ieee80211->mode == WIRELESS_MODE_B ||  priv->ieee80211->mode == WIRELESS_MODE_G)
-	{// Overwrite current settings to disable Rx Aggregation.
-		Value = false;
-	}
-
-	// Alway set Rx Aggregation to Disable if current platform is Win2K USB 1.1, by Emily
-	//if(PLATFORM_LIMITED_RX_BUF_SIZE(Adapter))
-	//	Value = FALSE;
-
-	// Always set Rx Aggregation to Disable if connected AP is Realtek AP, by Joseph
-	//if(pHTInfo->bCurrentRT2RTAggregation)
-	//	Value = FALSE;
-
-	// The RX aggregation may be enabled/disabled dynamically according current traffic stream.
-	//Enable Rx aggregation if downlink traffic is busier than uplink traffic. by Guangan
-	if(priv->bCurrentRxAggrEnable != Value)
-	{
-		priv->bCurrentRxAggrEnable = Value;
-		//Adapter->HalFunc.SetHwRegHandler(Adapter, HW_VAR_USB_RX_AGGR, (pu1Byte)&pHalData->bCurrentRxAggrEnable);
-		{
-			//u8 	Setting = ((pu1Byte)(val))[0];
-			u8 	Setting = priv->bCurrentRxAggrEnable
-			u32 	ulValue;
-
-			if(Setting==0)
-			{
-				//
-				// <Roger_Notes> Reduce aggregated page threshold to 0x01 and set minimal threshold 0x0a.
-				// i.e., disable Rx aggregation.
-				//
-				ulValue = 0x0001000a;
-			}
-			else
-			{
-				//PRT_HIGH_THROUGHPUT	pHTInfo = priv->ieee80211->pHTInfo;
-				//HAL_DATA_TYPE *pHalData = GET_HAL_DATA(Adapter);
-
-				if (priv->bForcedUsbRxAggr)
-				{// Using forced settings.
-					ulValue = priv->ForcedUsbRxAggrInfo;
-				}
-				else
-				{// Using default settings.
-
-					ulValue = (pHTInfo->UsbRxFwAggrEn<<24) | (pHTInfo->UsbRxFwAggrPageNum<<16) |
-							(pHTInfo->UsbRxFwAggrPacketNum<<8) | (pHTInfo->UsbRxFwAggrTimeout);
-				}
-			}
-
-			write_nic_byte(dev, RXDMA_AGG_PG_TH, (u8)((ulValue&0xff0000)>>16));
-			write_nic_byte_E(dev, USB_RX_AGG_TIMEOUT, (u8)(ulValue&0xff));
-
-			priv->LastUsbRxAggrInfoSetting = ulValue;
-
-			RT_TRACE(COMP_HT|COMP_RECV, "Set HW_VAR_USB_RX_AGGR: ulValue(%#x)\n", ulValue);
-		}
-		RT_TRACE(COMP_RECV, "HalUsbRxAggr8192SUsb() :  Set RxAggregation to %s\n", Value?"ON":"OFF");
-	}
-
-}
-#endif
-
-#ifdef USB_RX_AGGREGATION_SUPPORT
-void rtl8192SU_HalUsbRxAggr8192SUsb(struct net_device *dev, bool Value)
-{
-	struct r8192_priv *priv = ieee80211_priv((struct net_device *)dev);
-	PRT_HIGH_THROUGHPUT	pHTInfo = priv->ieee80211->pHTInfo;;
-
-
-	//
-	// <Roger_Notes> We decrease Rx page aggregated threshold in B/G mode.
-	// 2008.10.29
-	//
-	if((priv->ieee80211->mode & WIRELESS_MODE_B) || (priv->ieee80211->mode & WIRELESS_MODE_G))
-	{// Overwrite current settings to disable Rx Aggregation.
-		Value = false;
-	}
-
-	// Alway set Rx Aggregation to Disable if current platform is Win2K USB 1.1, by Emily
-	//if(PLATFORM_LIMITED_RX_BUF_SIZE(Adapter))
-	//	Value = FALSE;
-
-	// Always set Rx Aggregation to Disable if connected AP is Realtek AP, by Joseph
-	//if(pHTInfo->bCurrentRT2RTAggregation)
-	//	Value = FALSE;
-
-	// The RX aggregation may be enabled/disabled dynamically according current traffic stream.
-	//Enable Rx aggregation if downlink traffic is busier than uplink traffic. by Guangan
-	if(priv->bCurrentRxAggrEnable != Value)
-	{
-		priv->bCurrentRxAggrEnable = Value;
-		//Adapter->HalFunc.SetHwRegHandler(Adapter, HW_VAR_USB_RX_AGGR, (pu1Byte)&pHalData->bCurrentRxAggrEnable);
-		{
-			//u8 	Setting = ((pu1Byte)(val))[0];
-			u8 	Setting = priv->bCurrentRxAggrEnable
-			u32 	ulValue;
-
-			if(Setting==0)
-			{
-				//
-				// <Roger_Notes> Reduce aggregated page threshold to 0x01 and set minimal threshold 0x0a.
-				// i.e., disable Rx aggregation.
-				//
-				ulValue = 0x0001000a;
-			}
-			else
-			{
-				//PRT_HIGH_THROUGHPUT	pHTInfo = priv->ieee80211->pHTInfo;
-				//HAL_DATA_TYPE *pHalData = GET_HAL_DATA(Adapter);
-
-				if (priv->bForcedUsbRxAggr)
-				{// Using forced settings.
-					ulValue = priv->ForcedUsbRxAggrInfo;
-				}
-				else
-				{// Using default settings.
-
-					ulValue = (pHTInfo->UsbRxFwAggrEn<<24) | (pHTInfo->UsbRxFwAggrPageNum<<16) |
-							(pHTInfo->UsbRxFwAggrPacketNum<<8) | (pHTInfo->UsbRxFwAggrTimeout);
-				}
-			}
-
-			write_nic_byte(dev, RXDMA_AGG_PG_TH, (u8)((ulValue&0xff0000)>>16));
-			write_nic_byte_E(dev, USB_RX_AGG_TIMEOUT, (u8)(ulValue&0xff));
-
-			priv->LastUsbRxAggrInfoSetting = ulValue;
-
-			RT_TRACE(COMP_HT|COMP_RECV, "Set HW_VAR_USB_RX_AGGR: ulValue(%#x)\n", ulValue);
-		}
-		RT_TRACE(COMP_RECV, "HalUsbRxAggr8192SUsb() :  Set RxAggregation to %s\n", Value?"ON":"OFF");
-	}
-
-}
-
-u8 rtl8192SU_MapRxPageSizeToIdx(u16 RxPktSize	)
-{
-	switch(RxPktSize)
-	{
-		case 64:		return 0; break;
-		case 128	:	return 1; break;
-		case 256:		return 2; break;
-		case 512:		return 3; break;
-		case 1024:	return 4; break;
-		default:		return 0;	// We use 64bytes in defult.
-	}
-}
-#endif
-
 #if 0
 static void rtl8192SU_SetHwRegAmpduMinSpace(struct net_device *dev, u8 MinSpaceCfg)
 {
@@ -7224,19 +7047,6 @@ static void rtl8192SU_MacConfigAfterFwDo
 #endif
 #endif
 
-#ifdef USB_RX_AGGREGATION_SUPPORT
-	// Size of Tx/Rx packet buffer.
-	tmpU1b = read_nic_byte(dev, PBP);
-	RxPageCfg = rtl8192SU_MapRxPageSizeToIdx(priv->ieee80211->pHTInfo.UsbRxPageSize);
-	write_nic_byte(dev, PBP, tmpU1b|RxPageCfg); // Set page size of Rx packet buffer to 128 bytes.
-	tmpU1b = read_nic_byte(dev, RXDMA);
-
-	write_nic_byte(dev, RXDMA, tmpU1b|RXDMA_AGG_EN); // Rx aggregation enable.
-	//PlatformIOWrite1Byte(Adapter, RXDMA_AGG_PG_TH, 0x14);	// Set page size of RxDMA aggregation threshold, default: 20.
-	//write_nic_byte(dev, RXDMA_AGG_PG_TH, 0x40); // By Scott's suggestion, 2008.09.30.//92su del
-	//write_nic_byte(dev, USB_RX_AGG_TIMEOUT, RXDMA_AGG_TIMEOUT_17_4_MS); // Set aggregation time-out to 17ms/4.
-	rtl8192SU_HalUsbRxAggr8192SUsb(dev, true);
-#endif
 
 	// Fix the RX FIFO issue(USB error), Rivesed by Roger, 2008-06-14
 	tmpU1b = read_nic_byte_E(dev, 0x5C);
@@ -7961,23 +7771,6 @@ bool rtl8192_adapter_start(struct net_de
 		for (i=0; i<QOS_QUEUE_NUM; i++)
 		write_nic_dword(dev, WDCAPARA_ADD[i], DEFAULT_EDCA);
 	}
-#ifdef USB_RX_AGGREGATION_SUPPORT
-	//3 For usb rx firmware aggregation control
-	if(priv->ResetProgress == RESET_TYPE_NORESET)
-	{
-		u32 ulValue;
-		PRT_HIGH_THROUGHPUT	pHTInfo = priv->ieee80211->pHTInfo;
-		ulValue = (pHTInfo->UsbRxFwAggrEn<<24) | (pHTInfo->UsbRxFwAggrPageNum<<16) |
-					(pHTInfo->UsbRxFwAggrPacketNum<<8) | (pHTInfo->UsbRxFwAggrTimeout);
-		/*
-		 * If usb rx firmware aggregation is enabled,
-		 * when anyone of three threshold conditions above is reached,
-		 * firmware will send aggregated packet to driver.
-		 */
-		write_nic_dword(dev, 0x1a8, ulValue);
-		priv->bCurrentRxAggrEnable = true;
-	}
-#endif
 
 	rtl8192_phy_configmac(dev);
 
@@ -10496,11 +10289,6 @@ void rtl8192SU_query_rxdesc_status(struc
 	//pu1Byte		pDesc = (pu1Byte)pDescIn;
 	//PRX_DRIVER_INFO_8192S		pDrvInfo;
 
-#ifdef USB_RX_AGGREGATION_SUPPORT//FIXLZM
-	//if (bIsRxAggrSubframe)
-		rx_desc_819x_usb_aggr_subframe *desc = (rx_desc_819x_usb_aggr_subframe *)skb->data;
-	else
-#endif
 	rx_desc_819x_usb *desc = (rx_desc_819x_usb *)skb->data;
 
 	if(0)
@@ -10637,19 +10425,6 @@ void query_rxdesc_status(struct sk_buff 
 	//
 	//Get Rx Descriptor Information
 	//
-#ifdef USB_RX_AGGREGATION_SUPPORT
-	if (bIsRxAggrSubframe)
-	{
-		rx_desc_819x_usb_aggr_subframe *desc = (rx_desc_819x_usb_aggr_subframe *)skb->data;
-		stats->Length = desc->Length ;
-		stats->RxDrvInfoSize = desc->RxDrvInfoSize;
-		stats->RxBufShift = 0; //RxBufShift = 2 in RxDesc, but usb didn't shift bytes in fact.
-		stats->bICV = desc->ICV;
-		stats->bCRC = desc->CRC32;
-		stats->bHwError = stats->bCRC|stats->bICV;
-		stats->Decrypted = !desc->SWDec;//RTL8190 set this bit to indicate that Hw does not decrypt packet
-	} else
-#endif
 	{
 		rx_desc_819x_usb *desc = (rx_desc_819x_usb *)skb->data;
 
@@ -10738,12 +10513,6 @@ void query_rxdesc_status(struct sk_buff 
 		skb_pull(skb,stats->RxBufShift + stats->RxDrvInfoSize);
 	}
 
-#ifdef USB_RX_AGGREGATION_SUPPORT
-	/* for the rx aggregated sub frame, the redundant space truelly contained in the packet */
-	if(bIsRxAggrSubframe) {
-		skb_pull(skb, 8);
-	}
-#endif
 	/* for debug 2008.5.29 */
 #if 0
 	{
@@ -10906,27 +10675,6 @@ void rtl8192SU_rx_nomal(struct sk_buff* 
 	struct ieee80211_hdr_1addr *ieee80211_hdr = NULL;
 	bool unicast_packet = false;
 
-#ifdef USB_RX_AGGREGATION_SUPPORT
-	struct sk_buff *agg_skb = NULL;
-	u32  TotalLength = 0;//Total packet length for all aggregated packets.
-	u32  TempDWord = 0;
-	u32  PacketLength = 0;// Per-packet length include size of RxDesc.
-	u32  PacketOccupiedLendth = 0;
-	u8   TempByte = 0;
-	u32  PacketShiftBytes = 0;
-	rx_desc_819x_usb_aggr_subframe *RxDescr = NULL;
-	u8  PaddingBytes = 0;
-	//add just for testing
-	u8   testing;
-
-	u8	TotalAggPkt = 0;
-	PRT_HIGH_THROUGHPUT	pHTInfo =priv-> ieee80211->pHTInfo;
-	u16	RxPageSize = pHTInfo->UsbRxPageSize;
-
-	stats->nTotalAggPkt = 0;
-	//stats->bIsRxAggrSubframe = FALSE;
-
-#endif
 	//printk("**********skb->len = %d\n", skb->len);
 	/* 20 is for ps-poll */
 	if((skb->len >=(20 + sizeof(rx_desc_819x_usb))) && (skb->len < RX_URB_SIZE)) {
@@ -10936,14 +10684,6 @@ void rtl8192SU_rx_nomal(struct sk_buff* 
 		/* TODO */
 
 		/* hardware related info */
-#ifdef USB_RX_AGGREGATION_SUPPORT
-		TotalAggPkt = stats->nTotalAggPkt;
-		PacketLength = stats->Length + GetRxPacketShiftBytes8192SU(&stats, false);
-
-		agg_skb = skb;
-		skb = dev_alloc_skb(PacketLength);
-		memcpy(skb_put(skb,PacketLength),agg_skb->data,PacketLength);
-#endif
 		priv->stats.rxoktotal++;  //YJ,test,090108
 
 		/* Process the MPDU recevied */
@@ -10971,106 +10711,6 @@ void rtl8192SU_rx_nomal(struct sk_buff* 
 		}
 
 		//up is firs pkt, follow is next and next
-#ifdef USB_RX_AGGREGATION_SUPPORT
-		//
-		// The following operations are for processing Rx aggregated packets.
-		//
-		if(TotalAggPkt>0)
-			TotalAggPkt--;
-
-		while ( TotalAggPkt>0 )
-		{// More aggregated packets need to process.
-
-			u8 tmpCRC = 0, tmpICV = 0;
-
-			//Page size must align to multiple of 128-Bytes.
-			if((PacketLength%RxPageSize) != 0)
-				//PacketLength = ((PacketLength/RxPageSize)+1)*RxPageSize;
-				PacketLength = ((PacketLength>>7)+1)*RxPageSize; // RxPageSize is 128bytes as default.
-
-			// Current total packet occupied length in this buffer.
-			PacketOccupiedLendth += PacketLength;
-
-#if (defined (RTL8192SU_FPGA_2MAC_VERIFICATION)||defined (RTL8192SU_ASIC_VERIFICATION))
-			//if(PacketOccupiedLendth>pContext->BufLenUsed)
-			if(PacketOccupiedLendth>skb->len)
-			{
-				RT_TRACE(COMP_RECV, "(1)HalUsbInMpduComplete8192SUsb(): pRtRfdStatus->Length(%#x)!!\n", stats->Length);
-				RT_TRACE(COMP_RECV, "(1)HalUsbInMpduComplete8192SUsb(): Invalid PacketOccupiedLendth(%#x)!!, BufLenUsed(%#x)\n", PacketOccupiedLendth, stats->BufLenUsed);
-				break;
-			}
-#endif
-
-			skb_pull(agg_skb, PacketLength);
-
-			//
-			// Process the MPDU recevied.
-			//
-			//RT_TRACE(COMP_RECV,"%s:aggred pkt,total_len = %d\n",__FUNCTION__,agg_skb->len);
-			RxDescr = (rx_desc_819x_usb_aggr_subframe *)(agg_skb->data);
-
-#if 0//92SU del
-			tmpCRC = RxDescr->CRC32;
-			tmpICV = RxDescr->ICV;
-			memcpy(agg_skb->data, &agg_skb->data[44], 2);
-			RxDescr->CRC32 = tmpCRC;
-			RxDescr->ICV = tmpICV;
-#endif
-			memset(&stats, 0, sizeof(struct ieee80211_rx_stats));
-			stats.signal = 0;
-			stats.noise = -98;
-			stats.rate = 0;
-			stats.freq = IEEE80211_24GHZ_BAND;
-
-			rtl8192SU_query_rxdesc_status(agg_skb, &stats, true);
-			//PacketLength = stats.Length;
-			PacketLength = stats.Length +  GetRxPacketShiftBytes8192SU(&stats, true);
-
-#if (defined (RTL8192SU_FPGA_2MAC_VERIFICATION)||defined (RTL8192SU_ASIC_VERIFICATION))
-			if((PacketOccupiedLendth+PacketLength)>skb->len)
-			{
-				RT_TRACE(COMP_RECV, "(2)HalUsbInMpduComplete8192SUsb(): Invalid PacketOccupiedLendth(%#x)+PacketLength(%#x)!!, BufLenUsed(%#x)\n",
-					PacketOccupiedLendth, PacketLength, pContext->BufLenUsed);
-				break;
-			}
-#endif
-
-			if(PacketLength > agg_skb->len) {
-				break;
-			}
-
-			/* Process the MPDU recevied */
-			skb = dev_alloc_skb(PacketLength);
-			memcpy(skb_put(skb,PacketLength),agg_skb->data, PacketLength);
-			skb_trim(skb, skb->len - 4/*sCrcLng*/);
-
-			rx_pkt_len = skb->len;
-			ieee80211_hdr = (struct ieee80211_hdr_1addr *)skb->data;
-			unicast_packet = false;
-			if(is_broadcast_ether_addr(ieee80211_hdr->addr1)) {
-				//TODO
-			}else if(is_multicast_ether_addr(ieee80211_hdr->addr1)){
-				//TODO
-			}else {
-				/* unicast packet */
-				unicast_packet = true;
-			}
-			if(!ieee80211_rx(priv->ieee80211,skb, &stats)) {
-				dev_kfree_skb_any(skb);
-			} else {
-				priv->stats.rxoktotal++;
-				if(unicast_packet) {
-					priv->stats.rxbytesunicast += rx_pkt_len;
-				}
-			}
-
-			TotalAggPkt--;
-
-			skb_pull(agg_skb, TempDWord);
-		}
-
-		dev_kfree_skb(agg_skb);
-#endif
 	}
 	else
 	{
@@ -11083,12 +10723,6 @@ void rtl8192SU_rx_nomal(struct sk_buff* 
 #else
 u32 GetRxPacketShiftBytes819xUsb(struct ieee80211_rx_stats  *Status, bool bIsRxAggrSubframe)
 {
-#ifdef USB_RX_AGGREGATION_SUPPORT
-	if (bIsRxAggrSubframe)
-		return (sizeof(rx_desc_819x_usb) + Status->RxDrvInfoSize
-			+ Status->RxBufShift + 8);
-	else
-#endif
 		return (sizeof(rx_desc_819x_usb) + Status->RxDrvInfoSize
 				+ Status->RxBufShift);
 }
@@ -11108,44 +10742,13 @@ void rtl8192_rx_nomal(struct sk_buff* sk
 	u32 rx_pkt_len = 0;
 	struct ieee80211_hdr_1addr *ieee80211_hdr = NULL;
 	bool unicast_packet = false;
-#ifdef USB_RX_AGGREGATION_SUPPORT
-	struct sk_buff *agg_skb = NULL;
-	u32  TotalLength = 0;
-	u32  TempDWord = 0;
-	u32  PacketLength = 0;
-	u32  PacketOccupiedLendth = 0;
-	u8   TempByte = 0;
-	u32  PacketShiftBytes = 0;
-	rx_desc_819x_usb_aggr_subframe *RxDescr = NULL;
-	u8  PaddingBytes = 0;
-	//add just for testing
-	u8   testing;
-
-#endif
 
 	/* 20 is for ps-poll */
 	if((skb->len >=(20 + sizeof(rx_desc_819x_usb))) && (skb->len < RX_URB_SIZE)) {
-#ifdef USB_RX_AGGREGATION_SUPPORT
-		TempByte = *(skb->data + sizeof(rx_desc_819x_usb));
-#endif
 		/* first packet should not contain Rx aggregation header */
 		query_rxdesc_status(skb, &stats, false);
 		/* TODO */
 		/* hardware related info */
-#ifdef USB_RX_AGGREGATION_SUPPORT
-		if (TempByte & BIT0) {
-			agg_skb = skb;
-			//TotalLength = agg_skb->len - 4; /*sCrcLng*/
-			TotalLength = stats.Length - 4; /*sCrcLng*/
-			//RT_TRACE(COMP_RECV, "%s:first aggregated packet!Length=%d\n",__FUNCTION__,TotalLength);
-			/* though the head pointer has passed this position  */
-			TempDWord = *(u32 *)(agg_skb->data - 4);
-			PacketLength = (u16)(TempDWord & 0x3FFF); /*sCrcLng*/
-			skb = dev_alloc_skb(PacketLength);
-			memcpy(skb_put(skb,PacketLength),agg_skb->data,PacketLength);
-			PacketShiftBytes = GetRxPacketShiftBytes819xUsb(&stats, false);
-		}
-#endif
 		/* Process the MPDU recevied */
 		skb_trim(skb, skb->len - 4/*sCrcLng*/);
 
@@ -11169,80 +10772,6 @@ void rtl8192_rx_nomal(struct sk_buff* sk
 				priv->stats.rxbytesunicast += rx_pkt_len;
 			}
 		}
-#ifdef USB_RX_AGGREGATION_SUPPORT
-		testing = 1;
-		// (PipeIndex == 0) && (TempByte & BIT0) => TotalLength > 0.
-		if (TotalLength > 0) {
-			PacketOccupiedLendth = PacketLength + (PacketShiftBytes + 8);
-			if ((PacketOccupiedLendth & 0xFF) != 0)
-				PacketOccupiedLendth = (PacketOccupiedLendth & 0xFFFFFF00) + 256;
-			PacketOccupiedLendth -= 8;
-			TempDWord = PacketOccupiedLendth - PacketShiftBytes; /*- PacketLength */
-			if (agg_skb->len > TempDWord)
-				skb_pull(agg_skb, TempDWord);
-			else
-				agg_skb->len = 0;
-
-			while (agg_skb->len>=GetRxPacketShiftBytes819xUsb(&stats, true)) {
-				u8 tmpCRC = 0, tmpICV = 0;
-				//RT_TRACE(COMP_RECV,"%s:aggred pkt,total_len = %d\n",__FUNCTION__,agg_skb->len);
-				RxDescr = (rx_desc_819x_usb_aggr_subframe *)(agg_skb->data);
-				tmpCRC = RxDescr->CRC32;
-				tmpICV = RxDescr->ICV;
-				memcpy(agg_skb->data, &agg_skb->data[44], 2);
-				RxDescr->CRC32 = tmpCRC;
-				RxDescr->ICV = tmpICV;
-
-				memset(&stats, 0, sizeof(struct ieee80211_rx_stats));
-				stats.signal = 0;
-				stats.noise = -98;
-				stats.rate = 0;
-				stats.freq = IEEE80211_24GHZ_BAND;
-				query_rxdesc_status(agg_skb, &stats, true);
-				PacketLength = stats.Length;
-
-				if(PacketLength > agg_skb->len) {
-					break;
-				}
-				/* Process the MPDU recevied */
-				skb = dev_alloc_skb(PacketLength);
-				memcpy(skb_put(skb,PacketLength),agg_skb->data, PacketLength);
-				skb_trim(skb, skb->len - 4/*sCrcLng*/);
-
-				rx_pkt_len = skb->len;
-				ieee80211_hdr = (struct ieee80211_hdr_1addr *)skb->data;
-				unicast_packet = false;
-				if(is_broadcast_ether_addr(ieee80211_hdr->addr1)) {
-					//TODO
-				}else if(is_multicast_ether_addr(ieee80211_hdr->addr1)){
-					//TODO
-				}else {
-					/* unicast packet */
-					unicast_packet = true;
-				}
-				if(!ieee80211_rx(priv->ieee80211,skb, &stats)) {
-					dev_kfree_skb_any(skb);
-				} else {
-					priv->stats.rxoktotal++;
-					if(unicast_packet) {
-						priv->stats.rxbytesunicast += rx_pkt_len;
-					}
-				}
-				/* should trim the packet which has been copied to target skb */
-				skb_pull(agg_skb, PacketLength);
-				PacketShiftBytes = GetRxPacketShiftBytes819xUsb(&stats, true);
-				PacketOccupiedLendth = PacketLength + PacketShiftBytes;
-				if ((PacketOccupiedLendth & 0xFF) != 0) {
-					PaddingBytes = 256 - (PacketOccupiedLendth & 0xFF);
-					if (agg_skb->len > PaddingBytes)
-						skb_pull(agg_skb, PaddingBytes);
-					else
-						agg_skb->len = 0;
-				}
-			}
-			dev_kfree_skb(agg_skb);
-		}
-#endif
 	} else {
 		priv->stats.rxurberr++;
 		printk("actual_length:%d\n", skb->len);
Index: b/drivers/staging/rtl8192su/r8192U_dm.c
===================================================================
--- a/drivers/staging/rtl8192su/r8192U_dm.c
+++ b/drivers/staging/rtl8192su/r8192U_dm.c
@@ -315,98 +315,6 @@ extern void deinit_hal_dm(struct net_dev
 }
 
 
-#ifdef USB_RX_AGGREGATION_SUPPORT
-void dm_CheckRxAggregation(struct net_device *dev) {
-	struct r8192_priv *priv = ieee80211_priv((struct net_device *)dev);
-	PRT_HIGH_THROUGHPUT	pHTInfo = priv->ieee80211->pHTInfo;
-	static unsigned long	lastTxOkCnt = 0;
-	static unsigned long	lastRxOkCnt = 0;
-	unsigned long		curTxOkCnt = 0;
-	unsigned long		curRxOkCnt = 0;
-
-/*
-	if (pHalData->bForcedUsbRxAggr) {
-		if (pHalData->ForcedUsbRxAggrInfo == 0) {
-			if (pHalData->bCurrentRxAggrEnable) {
-				Adapter->HalFunc.HalUsbRxAggrHandler(Adapter, FALSE);
-			}
-		} else {
-			if (!pHalData->bCurrentRxAggrEnable || (pHalData->ForcedUsbRxAggrInfo != pHalData->LastUsbRxAggrInfoSetting)) {
-				Adapter->HalFunc.HalUsbRxAggrHandler(Adapter, TRUE);
-			}
-		}
-		return;
-	}
-
-*/
-#ifdef RTL8192SU
-	if (priv->bForcedUsbRxAggr) {
-		if (priv->ForcedUsbRxAggrInfo == 0) {
-			if (priv->bCurrentRxAggrEnable) {
-				//Adapter->HalFunc.HalUsbRxAggrHandler(Adapter, FALSE);
-				write_nic_dword(dev, 0x1a8, 0);
-				priv->bCurrentRxAggrEnable = false;
-			}
-		} else {
-			if (!priv->bCurrentRxAggrEnable || (priv->ForcedUsbRxAggrInfo != priv->LastUsbRxAggrInfoSetting)) {
-				u32 ulValue;
-				ulValue = (pHTInfo->UsbRxFwAggrEn<<24) | (pHTInfo->UsbRxFwAggrPageNum<<16) |
-						(pHTInfo->UsbRxFwAggrPacketNum<<8) | (pHTInfo->UsbRxFwAggrTimeout);
-				/*
-				 * If usb rx firmware aggregation is enabled,
-				 * when anyone of three threshold conditions above is reached,
-				 * firmware will send aggregated packet to driver.
-			 	*/
-				write_nic_dword(dev, 0x1a8, ulValue);
-				priv->bCurrentRxAggrEnable = true;
-			}
-		}
-		return;
-	}
-
-	if((priv->ieee80211->mode & WIRELESS_MODE_B) || (priv->ieee80211->mode & WIRELESS_MODE_G))
-	{
-		if (priv->bCurrentRxAggrEnable)
-		{
-			RT_TRACE(COMP_RECV, "dm_CheckRxAggregation() :  Disable Rx Aggregation!!\n");
-			write_nic_dword(dev, 0x1a8, 0);
-			priv->bCurrentRxAggrEnable = false;
-			return;
-		}
-	}
-#endif
-
-	curTxOkCnt = priv->stats.txbytesunicast - lastTxOkCnt;
-	curRxOkCnt = priv->stats.rxbytesunicast - lastRxOkCnt;
-
-	if((curTxOkCnt + curRxOkCnt) < 15000000) {
-		return;
-	}
-
-	if(curTxOkCnt > 4*curRxOkCnt) {
-		if (priv->bCurrentRxAggrEnable) {
-			write_nic_dword(dev, 0x1a8, 0);
-			priv->bCurrentRxAggrEnable = false;
-		}
-	}else{
-		if (!priv->bCurrentRxAggrEnable && !pHTInfo->bCurrentRT2RTAggregation) {
-			u32 ulValue;
-			ulValue = (pHTInfo->UsbRxFwAggrEn<<24) | (pHTInfo->UsbRxFwAggrPageNum<<16) |
-				(pHTInfo->UsbRxFwAggrPacketNum<<8) | (pHTInfo->UsbRxFwAggrTimeout);
-			/*
-			 * If usb rx firmware aggregation is enabled,
-			 * when anyone of three threshold conditions above is reached,
-			 * firmware will send aggregated packet to driver.
-			 */
-			write_nic_dword(dev, 0x1a8, ulValue);
-			priv->bCurrentRxAggrEnable = true;
-		}
-	}
-
-	lastTxOkCnt = priv->stats.txbytesunicast;
-	lastRxOkCnt = priv->stats.rxbytesunicast;
-}	// dm_CheckEdcaTurbo
-#endif
 
 
 #ifdef RTL8192SU
@@ -438,9 +346,6 @@ extern  void    hal_dm_watchdog(struct n
 	//if (IS_HARDWARE_TYPE_8192S(dev))
 	return;
 
-#ifdef USB_RX_AGGREGATION_SUPPORT
-	dm_CheckRxAggregation(dev);
-#endif
 #ifdef TO_DO_LIST
 	if(Adapter->MgntInfo.mActingAsAp)
 	{
@@ -490,9 +395,6 @@ extern  void    hal_dm_watchdog(struct n
 	dm_check_pbc_gpio(dev);
 	dm_send_rssi_tofw(dev);
 	dm_ctstoself(dev);
-#ifdef USB_RX_AGGREGATION_SUPPORT
-	dm_CheckRxAggregation(dev);
-#endif
 }	//HalDmWatchDog
 #endif
 
Index: b/drivers/staging/rtl8192su/r819xU_HTType.h
===================================================================
--- a/drivers/staging/rtl8192su/r819xU_HTType.h
+++ b/drivers/staging/rtl8192su/r819xU_HTType.h
@@ -296,12 +296,6 @@ typedef struct _RT_HIGH_THROUGHPUT{
 #ifdef USB_TX_DRIVER_AGGREGATION_ENABLE
 	u8				UsbTxAggrNum;
 #endif
-#ifdef USB_RX_AGGREGATION_SUPPORT
-	u8				UsbRxFwAggrEn;
-	u8				UsbRxFwAggrPageNum;
-	u8				UsbRxFwAggrPacketNum;
-	u8				UsbRxFwAggrTimeout;
-#endif
 
 	// Add for Broadcom(Linksys) IOT. Joseph
 	u8				bIsPeerBcm;

  parent reply	other threads:[~2009-07-03 14:01 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-07-03 14:06 [PATCH 01/22] Staging: rtl8192su: remove ENABLE_DOT11D ifdefs Bartlomiej Zolnierkiewicz
2009-07-03 14:06 ` [PATCH 02/22] Staging: rtl8192su: remove CONFIG_RTL8192_PM ifdefs Bartlomiej Zolnierkiewicz
2009-07-03 14:06 ` [PATCH 03/22] Staging: rtl8192su: remove THOMAS_TURBO ifdefs Bartlomiej Zolnierkiewicz
2009-07-03 14:06 ` [PATCH 04/22] Staging: rtl8192su: remove USE_ONE_PIPE ifdefs Bartlomiej Zolnierkiewicz
2009-07-03 14:06 ` [PATCH 05/22] Staging: rtl8192su: remove EEPROM_OLD_FORMAT_SUPPORT ifdefs Bartlomiej Zolnierkiewicz
2009-07-03 14:06 ` Bartlomiej Zolnierkiewicz [this message]
2009-07-03 14:06 ` [PATCH 07/22] Staging: rtl8192su: remove USB_TX_DRIVER_AGGREGATION_ENABLE ifdefs Bartlomiej Zolnierkiewicz
2009-07-03 14:06 ` [PATCH 08/22] Staging: rtl8192su: remove RTL8192SU_DISABLE_CCK_RATE ifdefs Bartlomiej Zolnierkiewicz
2009-07-03 14:07 ` [PATCH 09/22] Staging: rtl8192su: remove RTL8192S_DISABLE_FW_DM ifdefs Bartlomiej Zolnierkiewicz
2009-07-03 14:07 ` [PATCH 10/22] Staging: rtl8192su: remove DISABLE_BB_RF ifdefs Bartlomiej Zolnierkiewicz
2009-07-03 14:07 ` [PATCH 11/22] Staging: rtl8192su: remove RTL8192SU_USE_PARAM_TXPWR ifdefs Bartlomiej Zolnierkiewicz
2009-07-03 14:07 ` [PATCH 12/22] Staging: rtl8192su: remove RTL8192SU_FPGA_UNSPECIFIED_NETWORK ifdefs Bartlomiej Zolnierkiewicz
2009-07-03 14:07 ` [PATCH 13/22] Staging: rtl8192su: remove RTL8192SU_FPGA_2MAC_VERIFICATION ifdefs Bartlomiej Zolnierkiewicz
2009-07-03 14:07 ` [PATCH 14/22] Staging: rtl8192su: remove RTL8192SU_ASIC_VERIFICATION ifdefs Bartlomiej Zolnierkiewicz
2009-07-03 14:07 ` [PATCH 15/22] Staging: rtl8192su: remove RTL8192SU_USB_PHY_TEST ifdefs Bartlomiej Zolnierkiewicz
2009-07-03 14:07 ` [PATCH 16/22] Staging: rtl8192su: remove RTL8190_Download_Firmware_From_Header ifdefs Bartlomiej Zolnierkiewicz
2009-07-03 14:07 ` [PATCH 17/22] Staging: rtl8192su: remove RTL8192S_PREPARE_FOR_NORMAL_RELEASE ifdefs Bartlomiej Zolnierkiewicz
2009-07-03 14:08 ` [PATCH 18/22] Staging: rtl8192su: remove RTL8192SU_DISABLE_IQK ifdefs Bartlomiej Zolnierkiewicz
2009-07-03 14:08 ` [PATCH 19/22] Staging: rtl8192su: remove RTL8192SE ifdefs Bartlomiej Zolnierkiewicz
2009-07-03 14:08 ` [PATCH 20/22] Staging: rtl8192su: remove RTL8192SU ifdefs Bartlomiej Zolnierkiewicz
2009-07-03 14:08 ` [PATCH 21/22] Staging: rtl8192su: remove unused files Bartlomiej Zolnierkiewicz
2009-07-03 14:08 ` [PATCH 22/22] Staging: rtl8192su: remove dead code Bartlomiej Zolnierkiewicz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20090703140640.7303.21490.sendpatchset@localhost.localdomain \
    --to=bzolnier@gmail.com \
    --cc=gregkh@suse.de \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.