mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-13 16:50:05 +00:00
Staging: rtl8192su: remove USB_TX_DRIVER_AGGREGATION_ENABLE ifdefs
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
db28336458
commit
5b36d3bfbc
@ -12,7 +12,6 @@ EXTRA_CFLAGS += -DRTL8190_Download_Firmware_From_Header=1
|
||||
EXTRA_CFLAGS += -DRTL8192S_PREPARE_FOR_NORMAL_RELEASE
|
||||
EXTRA_CFLAGS += -DRTL8192SU_DISABLE_IQK=1
|
||||
|
||||
#EXTRA_CFLAGS += -DUSB_TX_DRIVER_AGGREGATION_ENABLE=0
|
||||
#EXTRA_CFLAGS += -DRTL8192SU_DISABLE_CCK_RATE=0
|
||||
EXTRA_CFLAGS += -DRTL8192S_DISABLE_FW_DM=0
|
||||
EXTRA_CFLAGS += -DDISABLE_BB_RF=0
|
||||
|
@ -2237,11 +2237,7 @@ void ieee80211_softmac_xmit(struct ieee80211_txb *txb, struct ieee80211_device *
|
||||
#if 1
|
||||
/* if xmit available, just xmit it immediately, else just insert it to the wait queue */
|
||||
for(i = 0; i < txb->nr_frags; i++) {
|
||||
#ifdef USB_TX_DRIVER_AGGREGATION_ENABLE
|
||||
if ((skb_queue_len(&ieee->skb_drv_aggQ[queue_index]) != 0) ||
|
||||
#else
|
||||
if ((skb_queue_len(&ieee->skb_waitQ[queue_index]) != 0) ||
|
||||
#endif
|
||||
(!ieee->check_nic_enough_desc(ieee->dev,queue_index))||\
|
||||
(ieee->queue_stop)) {
|
||||
/* insert the skb packet to the wait queue */
|
||||
@ -2250,11 +2246,7 @@ void ieee80211_softmac_xmit(struct ieee80211_txb *txb, struct ieee80211_device *
|
||||
* */
|
||||
//printk("error:no descriptor left@queue_index %d, %d, %d\n", queue_index, skb_queue_len(&ieee->skb_waitQ[queue_index]), ieee->check_nic_enough_desc(ieee->dev,queue_index));
|
||||
//ieee80211_stop_queue(ieee);
|
||||
#ifdef USB_TX_DRIVER_AGGREGATION_ENABLE
|
||||
skb_queue_tail(&ieee->skb_drv_aggQ[queue_index], txb->fragments[i]);
|
||||
#else
|
||||
skb_queue_tail(&ieee->skb_waitQ[queue_index], txb->fragments[i]);
|
||||
#endif
|
||||
}else{
|
||||
ieee->softmac_data_hard_start_xmit(
|
||||
txb->fragments[i],
|
||||
|
@ -324,9 +324,6 @@ typedef struct _RT_HIGH_THROUGHPUT{
|
||||
u8 RxReorderPendingTime;
|
||||
u16 RxReorderDropCounter;
|
||||
|
||||
#ifdef USB_TX_DRIVER_AGGREGATION_ENABLE
|
||||
u8 UsbTxAggrNum;
|
||||
#endif
|
||||
|
||||
// Add for Broadcom(Linksys) IOT. Joseph
|
||||
u8 bIsPeerBcm;
|
||||
|
@ -102,9 +102,6 @@ void HTUpdateDefaultSetting(struct ieee80211_device* ieee)
|
||||
pHTInfo->RxReorderWinSize = 64;
|
||||
pHTInfo->RxReorderPendingTime = 30;
|
||||
|
||||
#ifdef USB_TX_DRIVER_AGGREGATION_ENABLE
|
||||
pHTInfo->UsbTxAggrNum = 4;
|
||||
#endif
|
||||
|
||||
|
||||
}
|
||||
|
@ -465,30 +465,6 @@ typedef struct _tx_desc_819x_usb {
|
||||
}tx_desc_819x_usb, *ptx_desc_819x_usb;
|
||||
#endif
|
||||
|
||||
#ifdef USB_TX_DRIVER_AGGREGATION_ENABLE
|
||||
typedef struct _tx_desc_819x_usb_aggr_subframe {
|
||||
//DWORD 0
|
||||
u16 PktSize;
|
||||
u8 Offset;
|
||||
u8 TxFWInfoSize;
|
||||
|
||||
//DWORD 1
|
||||
u8 RATid:3;
|
||||
u8 DISFB:1;
|
||||
u8 USERATE:1;
|
||||
u8 MOREFRAG:1;
|
||||
u8 NoEnc:1;
|
||||
u8 PIFS:1;
|
||||
u8 QueueSelect:5;
|
||||
u8 NoACM:1;
|
||||
u8 Reserved1:2;
|
||||
u8 SecCAMID:5;
|
||||
u8 SecDescAssign:1;
|
||||
u8 SecType:2;
|
||||
u8 PacketID:7;
|
||||
u8 OWN:1;
|
||||
}tx_desc_819x_usb_aggr_subframe, *ptx_desc_819x_usb_aggr_subframe;
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef RTL8192SU
|
||||
@ -868,17 +844,10 @@ typedef struct rx_drvinfo_819x_usb{
|
||||
//#define TX_PACKET_SHIFT_BYTES (USB_HWDESC_HEADER_LEN + sizeof(tx_fwinfo_819x_usb))
|
||||
#define MAX_FRAGMENT_COUNT 8
|
||||
#ifdef RTL8192U
|
||||
#ifdef USB_TX_DRIVER_AGGREGATION_ENABLE
|
||||
#define MAX_TRANSMIT_BUFFER_SIZE 32000
|
||||
#else
|
||||
#define MAX_TRANSMIT_BUFFER_SIZE 8000
|
||||
#endif
|
||||
#else
|
||||
#define MAX_TRANSMIT_BUFFER_SIZE (1600+(MAX_802_11_HEADER_LENGTH+ENCRYPTION_MAX_OVERHEAD)*MAX_FRAGMENT_COUNT)
|
||||
#endif
|
||||
#ifdef USB_TX_DRIVER_AGGREGATION_ENABLE
|
||||
#define TX_PACKET_DRVAGGR_SUBFRAME_SHIFT_BYTES (sizeof(tx_desc_819x_usb_aggr_subframe) + sizeof(tx_fwinfo_819x_usb))
|
||||
#endif
|
||||
#define scrclng 4 // octets for crc32 (FCS, ICV)
|
||||
|
||||
typedef enum rf_optype
|
||||
|
@ -2163,249 +2163,6 @@ int rtl8192_hard_start_xmit(struct sk_buff *skb,struct net_device *dev)
|
||||
|
||||
void rtl8192_try_wake_queue(struct net_device *dev, int pri);
|
||||
|
||||
#ifdef USB_TX_DRIVER_AGGREGATION_ENABLE
|
||||
u16 DrvAggr_PaddingAdd(struct net_device *dev, struct sk_buff *skb)
|
||||
{
|
||||
u16 PaddingNum = 256 - ((skb->len + TX_PACKET_DRVAGGR_SUBFRAME_SHIFT_BYTES) % 256);
|
||||
return (PaddingNum&0xff);
|
||||
}
|
||||
|
||||
u8 MRateToHwRate8190Pci(u8 rate);
|
||||
u8 QueryIsShort(u8 TxHT, u8 TxRate, cb_desc *tcb_desc);
|
||||
u8 MapHwQueueToFirmwareQueue(u8 QueueID);
|
||||
struct sk_buff *DrvAggr_Aggregation(struct net_device *dev, struct ieee80211_drv_agg_txb *pSendList)
|
||||
{
|
||||
struct ieee80211_device *ieee = netdev_priv(dev);
|
||||
struct r8192_priv *priv = ieee80211_priv(dev);
|
||||
cb_desc *tcb_desc = NULL;
|
||||
u8 i;
|
||||
u32 TotalLength;
|
||||
struct sk_buff *skb;
|
||||
struct sk_buff *agg_skb;
|
||||
tx_desc_819x_usb_aggr_subframe *tx_agg_desc = NULL;
|
||||
tx_fwinfo_819x_usb *tx_fwinfo = NULL;
|
||||
|
||||
//
|
||||
// Local variable initialization.
|
||||
//
|
||||
/* first skb initialization */
|
||||
skb = pSendList->tx_agg_frames[0];
|
||||
TotalLength = skb->len;
|
||||
|
||||
/* Get the total aggregation length including the padding space and
|
||||
* sub frame header.
|
||||
*/
|
||||
for(i = 1; i < pSendList->nr_drv_agg_frames; i++) {
|
||||
TotalLength += DrvAggr_PaddingAdd(dev, skb);
|
||||
skb = pSendList->tx_agg_frames[i];
|
||||
TotalLength += (skb->len + TX_PACKET_DRVAGGR_SUBFRAME_SHIFT_BYTES);
|
||||
}
|
||||
|
||||
/* allocate skb to contain the aggregated packets */
|
||||
agg_skb = dev_alloc_skb(TotalLength + ieee->tx_headroom);
|
||||
memset(agg_skb->data, 0, agg_skb->len);
|
||||
skb_reserve(agg_skb, ieee->tx_headroom);
|
||||
|
||||
// RT_DEBUG_DATA(COMP_SEND, skb->cb, sizeof(skb->cb));
|
||||
/* reserve info for first subframe Tx descriptor to be set in the tx function */
|
||||
skb = pSendList->tx_agg_frames[0];
|
||||
tcb_desc = (cb_desc *)(skb->cb + MAX_DEV_ADDR_SIZE);
|
||||
tcb_desc->drv_agg_enable = 1;
|
||||
tcb_desc->pkt_size = skb->len;
|
||||
tcb_desc->DrvAggrNum = pSendList->nr_drv_agg_frames;
|
||||
printk("DrvAggNum = %d\n", tcb_desc->DrvAggrNum);
|
||||
// RT_DEBUG_DATA(COMP_SEND, skb->cb, sizeof(skb->cb));
|
||||
// printk("========>skb->data ======> \n");
|
||||
// RT_DEBUG_DATA(COMP_SEND, skb->data, skb->len);
|
||||
memcpy(agg_skb->cb, skb->cb, sizeof(skb->cb));
|
||||
memcpy(skb_put(agg_skb,skb->len),skb->data,skb->len);
|
||||
|
||||
for(i = 1; i < pSendList->nr_drv_agg_frames; i++) {
|
||||
/* push the next sub frame to be 256 byte aline */
|
||||
skb_put(agg_skb,DrvAggr_PaddingAdd(dev,skb));
|
||||
|
||||
/* Subframe drv Tx descriptor and firmware info setting */
|
||||
skb = pSendList->tx_agg_frames[i];
|
||||
tcb_desc = (cb_desc *)(skb->cb + MAX_DEV_ADDR_SIZE);
|
||||
tx_agg_desc = (tx_desc_819x_usb_aggr_subframe *)agg_skb->tail;
|
||||
tx_fwinfo = (tx_fwinfo_819x_usb *)(agg_skb->tail + sizeof(tx_desc_819x_usb_aggr_subframe));
|
||||
|
||||
memset(tx_fwinfo,0,sizeof(tx_fwinfo_819x_usb));
|
||||
/* DWORD 0 */
|
||||
tx_fwinfo->TxHT = (tcb_desc->data_rate&0x80)?1:0;
|
||||
tx_fwinfo->TxRate = MRateToHwRate8190Pci(tcb_desc->data_rate);
|
||||
tx_fwinfo->EnableCPUDur = tcb_desc->bTxEnableFwCalcDur;
|
||||
tx_fwinfo->Short = QueryIsShort(tx_fwinfo->TxHT, tx_fwinfo->TxRate, tcb_desc);
|
||||
if(tcb_desc->bAMPDUEnable) {//AMPDU enabled
|
||||
tx_fwinfo->AllowAggregation = 1;
|
||||
/* DWORD 1 */
|
||||
tx_fwinfo->RxMF = tcb_desc->ampdu_factor;
|
||||
tx_fwinfo->RxAMD = tcb_desc->ampdu_density&0x07;//ampdudensity
|
||||
} else {
|
||||
tx_fwinfo->AllowAggregation = 0;
|
||||
/* DWORD 1 */
|
||||
tx_fwinfo->RxMF = 0;
|
||||
tx_fwinfo->RxAMD = 0;
|
||||
}
|
||||
|
||||
/* Protection mode related */
|
||||
tx_fwinfo->RtsEnable = (tcb_desc->bRTSEnable)?1:0;
|
||||
tx_fwinfo->CtsEnable = (tcb_desc->bCTSEnable)?1:0;
|
||||
tx_fwinfo->RtsSTBC = (tcb_desc->bRTSSTBC)?1:0;
|
||||
tx_fwinfo->RtsHT = (tcb_desc->rts_rate&0x80)?1:0;
|
||||
tx_fwinfo->RtsRate = MRateToHwRate8190Pci((u8)tcb_desc->rts_rate);
|
||||
tx_fwinfo->RtsSubcarrier = (tx_fwinfo->RtsHT==0)?(tcb_desc->RTSSC):0;
|
||||
tx_fwinfo->RtsBandwidth = (tx_fwinfo->RtsHT==1)?((tcb_desc->bRTSBW)?1:0):0;
|
||||
tx_fwinfo->RtsShort = (tx_fwinfo->RtsHT==0)?(tcb_desc->bRTSUseShortPreamble?1:0):\
|
||||
(tcb_desc->bRTSUseShortGI?1:0);
|
||||
|
||||
/* Set Bandwidth and sub-channel settings. */
|
||||
if(priv->CurrentChannelBW == HT_CHANNEL_WIDTH_20_40)
|
||||
{
|
||||
if(tcb_desc->bPacketBW) {
|
||||
tx_fwinfo->TxBandwidth = 1;
|
||||
tx_fwinfo->TxSubCarrier = 0; //By SD3's Jerry suggestion, use duplicated mode
|
||||
} else {
|
||||
tx_fwinfo->TxBandwidth = 0;
|
||||
tx_fwinfo->TxSubCarrier = priv->nCur40MhzPrimeSC;
|
||||
}
|
||||
} else {
|
||||
tx_fwinfo->TxBandwidth = 0;
|
||||
tx_fwinfo->TxSubCarrier = 0;
|
||||
}
|
||||
|
||||
/* Fill Tx descriptor */
|
||||
memset(tx_agg_desc, 0, sizeof(tx_desc_819x_usb_aggr_subframe));
|
||||
/* DWORD 0 */
|
||||
//tx_agg_desc->LINIP = 0;
|
||||
//tx_agg_desc->CmdInit = 1;
|
||||
tx_agg_desc->Offset = sizeof(tx_fwinfo_819x_usb) + 8;
|
||||
/* already raw data, need not to substract header length */
|
||||
tx_agg_desc->PktSize = skb->len & 0xffff;
|
||||
|
||||
/*DWORD 1*/
|
||||
tx_agg_desc->SecCAMID= 0;
|
||||
tx_agg_desc->RATid = tcb_desc->RATRIndex;
|
||||
#if 0
|
||||
/* Fill security related */
|
||||
if( pTcb->bEncrypt && !Adapter->MgntInfo.SecurityInfo.SWTxEncryptFlag)
|
||||
{
|
||||
EncAlg = SecGetEncryptionOverhead(
|
||||
Adapter,
|
||||
&EncryptionMPDUHeadOverhead,
|
||||
&EncryptionMPDUTailOverhead,
|
||||
NULL,
|
||||
NULL,
|
||||
FALSE,
|
||||
FALSE);
|
||||
//2004/07/22, kcwu, EncryptionMPDUHeadOverhead has been added in previous code
|
||||
//MPDUOverhead = EncryptionMPDUHeadOverhead + EncryptionMPDUTailOverhead;
|
||||
MPDUOverhead = EncryptionMPDUTailOverhead;
|
||||
tx_agg_desc->NoEnc = 0;
|
||||
RT_TRACE(COMP_SEC, DBG_LOUD, ("******We in the loop SecCAMID is %d SecDescAssign is %d The Sec is %d********\n",tx_agg_desc->SecCAMID,tx_agg_desc->SecDescAssign,EncAlg));
|
||||
//CamDumpAll(Adapter);
|
||||
}
|
||||
else
|
||||
#endif
|
||||
{
|
||||
//MPDUOverhead = 0;
|
||||
tx_agg_desc->NoEnc = 1;
|
||||
}
|
||||
#if 0
|
||||
switch(EncAlg){
|
||||
case NO_Encryption:
|
||||
tx_agg_desc->SecType = 0x0;
|
||||
break;
|
||||
case WEP40_Encryption:
|
||||
case WEP104_Encryption:
|
||||
tx_agg_desc->SecType = 0x1;
|
||||
break;
|
||||
case TKIP_Encryption:
|
||||
tx_agg_desc->SecType = 0x2;
|
||||
break;
|
||||
case AESCCMP_Encryption:
|
||||
tx_agg_desc->SecType = 0x3;
|
||||
break;
|
||||
default:
|
||||
tx_agg_desc->SecType = 0x0;
|
||||
break;
|
||||
}
|
||||
#else
|
||||
tx_agg_desc->SecType = 0x0;
|
||||
#endif
|
||||
|
||||
if (tcb_desc->bHwSec) {
|
||||
switch (priv->ieee80211->pairwise_key_type)
|
||||
{
|
||||
case KEY_TYPE_WEP40:
|
||||
case KEY_TYPE_WEP104:
|
||||
tx_agg_desc->SecType = 0x1;
|
||||
tx_agg_desc->NoEnc = 0;
|
||||
break;
|
||||
case KEY_TYPE_TKIP:
|
||||
tx_agg_desc->SecType = 0x2;
|
||||
tx_agg_desc->NoEnc = 0;
|
||||
break;
|
||||
case KEY_TYPE_CCMP:
|
||||
tx_agg_desc->SecType = 0x3;
|
||||
tx_agg_desc->NoEnc = 0;
|
||||
break;
|
||||
case KEY_TYPE_NA:
|
||||
tx_agg_desc->SecType = 0x0;
|
||||
tx_agg_desc->NoEnc = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
tx_agg_desc->QueueSelect = MapHwQueueToFirmwareQueue(tcb_desc->queue_index);
|
||||
tx_agg_desc->TxFWInfoSize = sizeof(tx_fwinfo_819x_usb);
|
||||
|
||||
tx_agg_desc->DISFB = tcb_desc->bTxDisableRateFallBack;
|
||||
tx_agg_desc->USERATE = tcb_desc->bTxUseDriverAssingedRate;
|
||||
|
||||
tx_agg_desc->OWN = 1;
|
||||
|
||||
//DWORD 2
|
||||
/* According windows driver, it seems that there no need to fill this field */
|
||||
//tx_agg_desc->TxBufferSize= (u32)(skb->len - USB_HWDESC_HEADER_LEN);
|
||||
|
||||
/* to fill next packet */
|
||||
skb_put(agg_skb,TX_PACKET_DRVAGGR_SUBFRAME_SHIFT_BYTES);
|
||||
memcpy(skb_put(agg_skb,skb->len),skb->data,skb->len);
|
||||
}
|
||||
|
||||
for(i = 0; i < pSendList->nr_drv_agg_frames; i++) {
|
||||
dev_kfree_skb_any(pSendList->tx_agg_frames[i]);
|
||||
}
|
||||
|
||||
return agg_skb;
|
||||
}
|
||||
|
||||
/* NOTE:
|
||||
This function return a list of PTCB which is proper to be aggregate with the input TCB.
|
||||
If no proper TCB is found to do aggregation, SendList will only contain the input TCB.
|
||||
*/
|
||||
u8 DrvAggr_GetAggregatibleList(struct net_device *dev, struct sk_buff *skb,
|
||||
struct ieee80211_drv_agg_txb *pSendList)
|
||||
{
|
||||
struct ieee80211_device *ieee = netdev_priv(dev);
|
||||
PRT_HIGH_THROUGHPUT pHTInfo = ieee->pHTInfo;
|
||||
u16 nMaxAggrNum = pHTInfo->UsbTxAggrNum;
|
||||
cb_desc *tcb_desc = (cb_desc *)(skb->cb + MAX_DEV_ADDR_SIZE);
|
||||
u8 QueueID = tcb_desc->queue_index;
|
||||
|
||||
do {
|
||||
pSendList->tx_agg_frames[pSendList->nr_drv_agg_frames++] = skb;
|
||||
if(pSendList->nr_drv_agg_frames >= nMaxAggrNum) {
|
||||
break;
|
||||
}
|
||||
|
||||
} while((skb = skb_dequeue(&ieee->skb_drv_aggQ[QueueID])));
|
||||
|
||||
RT_TRACE(COMP_AMSDU, "DrvAggr_GetAggregatibleList, nAggrTcbNum = %d \n", pSendList->nr_drv_agg_frames);
|
||||
return pSendList->nr_drv_agg_frames;
|
||||
}
|
||||
#endif
|
||||
|
||||
static void rtl8192_tx_isr(struct urb *tx_urb)
|
||||
{
|
||||
@ -2490,54 +2247,6 @@ static void rtl8192_tx_isr(struct urb *tx_urb)
|
||||
|
||||
return; //modified by david to avoid further processing AMSDU
|
||||
}
|
||||
#ifdef USB_TX_DRIVER_AGGREGATION_ENABLE
|
||||
else if ((skb_queue_len(&priv->ieee80211->skb_drv_aggQ[queue_index])!= 0)&&\
|
||||
(!(priv->ieee80211->queue_stop))) {
|
||||
// Tx Driver Aggregation process
|
||||
/* The driver will aggregation the packets according to the following stets
|
||||
* 1. check whether there's tx irq available, for it's a completion return
|
||||
* function, it should contain enough tx irq;
|
||||
* 2. check pakcet type;
|
||||
* 3. intialize sendlist, check whether the to-be send packet no greater than 1
|
||||
* 4. aggregation the packets, and fill firmware info and tx desc to it, etc.
|
||||
* 5. check whehter the packet could be sent, otherwise just insert to wait head
|
||||
* */
|
||||
skb = skb_dequeue(&priv->ieee80211->skb_drv_aggQ[queue_index]);
|
||||
if(!check_nic_enough_desc(dev, queue_index)) {
|
||||
skb_queue_head(&(priv->ieee80211->skb_drv_aggQ[queue_index]), skb);
|
||||
return;
|
||||
}
|
||||
|
||||
{
|
||||
/*TODO*/
|
||||
/*
|
||||
u8* pHeader = skb->data;
|
||||
|
||||
if(IsMgntQosData(pHeader) ||
|
||||
IsMgntQData_Ack(pHeader) ||
|
||||
IsMgntQData_Poll(pHeader) ||
|
||||
IsMgntQData_Poll_Ack(pHeader)
|
||||
)
|
||||
*/
|
||||
{
|
||||
struct ieee80211_drv_agg_txb SendList;
|
||||
|
||||
memset(&SendList, 0, sizeof(struct ieee80211_drv_agg_txb));
|
||||
if(DrvAggr_GetAggregatibleList(dev, skb, &SendList) > 1) {
|
||||
skb = DrvAggr_Aggregation(dev, &SendList);
|
||||
|
||||
#if 0
|
||||
printk("=============>to send aggregated packet!\n");
|
||||
RT_DEBUG_DATA(COMP_SEND, skb->cb, sizeof(skb->cb));
|
||||
printk("\n=================skb->len = %d\n", skb->len);
|
||||
RT_DEBUG_DATA(COMP_SEND, skb->data, skb->len);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
priv->ieee80211->softmac_hard_start_xmit(skb, dev);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
@ -3343,12 +3052,6 @@ short rtl8192SU_tx(struct net_device *dev, struct sk_buff* skb)
|
||||
tx_desc->TxSubCarrier = 0;
|
||||
}
|
||||
|
||||
#ifdef USB_TX_DRIVER_AGGREGATION_ENABLE
|
||||
if (tcb_desc->drv_agg_enable)
|
||||
{
|
||||
//tx_desc->Tx_INFO_RSVD = (tcb_desc->DrvAggrNum & 0x1f) << 1; //92su del
|
||||
}
|
||||
#endif
|
||||
|
||||
//memset(tx_desc, 0, sizeof(tx_desc_819x_usb));
|
||||
/* DWORD 0 */
|
||||
@ -3356,11 +3059,6 @@ short rtl8192SU_tx(struct net_device *dev, struct sk_buff* skb)
|
||||
//tx_desc->CmdInit = 1; //92su del
|
||||
tx_desc->Offset = USB_HWDESC_HEADER_LEN;
|
||||
|
||||
#ifdef USB_TX_DRIVER_AGGREGATION_ENABLE
|
||||
if (tcb_desc->drv_agg_enable) {
|
||||
tx_desc->PktSize = tcb_desc->pkt_size;//FIXLZM
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
tx_desc->PktSize = (skb->len - USB_HWDESC_HEADER_LEN) & 0xffff;
|
||||
}
|
||||
@ -3469,11 +3167,6 @@ short rtl8192SU_tx(struct net_device *dev, struct sk_buff* skb)
|
||||
#endif
|
||||
tx_desc->OWN = 1;
|
||||
|
||||
#ifdef USB_TX_DRIVER_AGGREGATION_ENABLE
|
||||
if (tcb_desc->drv_agg_enable) {
|
||||
tx_desc->TxBufferSize = tcb_desc->pkt_size + sizeof(tx_fwinfo_819x_usb);
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
//DWORD 2
|
||||
//tx_desc->TxBufferSize = (u32)(skb->len - USB_HWDESC_HEADER_LEN);
|
||||
@ -3653,12 +3346,6 @@ short rtl8192_tx(struct net_device *dev, struct sk_buff* skb)
|
||||
tx_fwinfo->TxSubCarrier = 0;
|
||||
}
|
||||
|
||||
#ifdef USB_TX_DRIVER_AGGREGATION_ENABLE
|
||||
if (tcb_desc->drv_agg_enable)
|
||||
{
|
||||
tx_fwinfo->Tx_INFO_RSVD = (tcb_desc->DrvAggrNum & 0x1f) << 1;
|
||||
}
|
||||
#endif
|
||||
/* Fill Tx descriptor */
|
||||
memset(tx_desc, 0, sizeof(tx_desc_819x_usb));
|
||||
/* DWORD 0 */
|
||||
@ -3666,11 +3353,6 @@ short rtl8192_tx(struct net_device *dev, struct sk_buff* skb)
|
||||
tx_desc->CmdInit = 1;
|
||||
tx_desc->Offset = sizeof(tx_fwinfo_819x_usb) + 8;
|
||||
|
||||
#ifdef USB_TX_DRIVER_AGGREGATION_ENABLE
|
||||
if (tcb_desc->drv_agg_enable) {
|
||||
tx_desc->PktSize = tcb_desc->pkt_size;
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
tx_desc->PktSize = (skb->len - TX_PACKET_SHIFT_BYTES) & 0xffff;
|
||||
}
|
||||
@ -3766,11 +3448,6 @@ short rtl8192_tx(struct net_device *dev, struct sk_buff* skb)
|
||||
#endif
|
||||
tx_desc->OWN = 1;
|
||||
|
||||
#ifdef USB_TX_DRIVER_AGGREGATION_ENABLE
|
||||
if (tcb_desc->drv_agg_enable) {
|
||||
tx_desc->TxBufferSize = tcb_desc->pkt_size + sizeof(tx_fwinfo_819x_usb);
|
||||
} else
|
||||
#endif
|
||||
{
|
||||
//DWORD 2
|
||||
tx_desc->TxBufferSize = (u32)(skb->len - USB_HWDESC_HEADER_LEN);
|
||||
@ -8017,11 +7694,7 @@ TxCheckStuck(struct net_device *dev)
|
||||
if(QueueID == TXCMD_QUEUE)
|
||||
continue;
|
||||
#if 1
|
||||
#ifdef USB_TX_DRIVER_AGGREGATION_ENABLE
|
||||
if((skb_queue_len(&priv->ieee80211->skb_waitQ[QueueID]) == 0) && (skb_queue_len(&priv->ieee80211->skb_aggQ[QueueID]) == 0) && (skb_queue_len(&priv->ieee80211->skb_drv_aggQ[QueueID]) == 0))
|
||||
#else
|
||||
if((skb_queue_len(&priv->ieee80211->skb_waitQ[QueueID]) == 0) && (skb_queue_len(&priv->ieee80211->skb_aggQ[QueueID]) == 0))
|
||||
#endif
|
||||
continue;
|
||||
#endif
|
||||
|
||||
|
@ -293,9 +293,6 @@ typedef struct _RT_HIGH_THROUGHPUT{
|
||||
u8 RxReorderPendingTime;
|
||||
u16 RxReorderDropCounter;
|
||||
|
||||
#ifdef USB_TX_DRIVER_AGGREGATION_ENABLE
|
||||
u8 UsbTxAggrNum;
|
||||
#endif
|
||||
|
||||
// Add for Broadcom(Linksys) IOT. Joseph
|
||||
u8 bIsPeerBcm;
|
||||
|
Loading…
x
Reference in New Issue
Block a user