diff options
Diffstat (limited to 'drivers/staging/vt6655/bssdb.c')
-rw-r--r-- | drivers/staging/vt6655/bssdb.c | 99 |
1 files changed, 54 insertions, 45 deletions
diff --git a/drivers/staging/vt6655/bssdb.c b/drivers/staging/vt6655/bssdb.c index 9569f43a3ed7..996d3302ce3d 100644 --- a/drivers/staging/vt6655/bssdb.c +++ b/drivers/staging/vt6655/bssdb.c @@ -63,8 +63,6 @@ /*--------------------- Static Classes ----------------------------*/ /*--------------------- Static Variables --------------------------*/ -static int msglevel = MSG_LEVEL_INFO; - static const unsigned short awHWRetry0[5][5] = { {RATE_18M, RATE_18M, RATE_12M, RATE_12M, RATE_12M}, {RATE_24M, RATE_24M, RATE_18M, RATE_12M, RATE_12M}, @@ -117,7 +115,7 @@ BSSpSearchBSSList( CARD_PHY_TYPE ePhyType ) { - PSDevice pDevice = (PSDevice)hDeviceContext; + struct vnt_private *pDevice = hDeviceContext; PSMgmtObject pMgmt = pDevice->pMgmt; unsigned char *pbyBSSID = NULL; PWLAN_IE_SSID pSSID = NULL; @@ -127,8 +125,7 @@ BSSpSearchBSSList( unsigned int ii = 0; if (pbyDesireBSSID != NULL) { - DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO - "BSSpSearchBSSList BSSID[%pM]\n", pbyDesireBSSID); + pr_debug("BSSpSearchBSSList BSSID[%pM]\n", pbyDesireBSSID); if ((!is_broadcast_ether_addr(pbyDesireBSSID)) && (memcmp(pbyDesireBSSID, ZeroBSSID, 6) != 0)) pbyBSSID = pbyDesireBSSID; @@ -194,7 +191,9 @@ BSSpSearchBSSList( ((pMgmt->eConfigMode == WMAC_CONFIG_ESS_STA) && WLAN_GET_CAP_INFO_IBSS(pCurrBSS->wCapInfo)) ) { /* Type not match skip this BSS */ - DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO "BSS type mismatch.... Config[%d] BSS[0x%04x]\n", pMgmt->eConfigMode, pCurrBSS->wCapInfo); + pr_debug("BSS type mismatch.... Config[%d] BSS[0x%04x]\n", + pMgmt->eConfigMode, + pCurrBSS->wCapInfo); continue; } @@ -202,7 +201,9 @@ BSSpSearchBSSList( if (((ePhyType == PHY_TYPE_11A) && (PHY_TYPE_11A != pCurrBSS->eNetworkTypeInUse)) || ((ePhyType != PHY_TYPE_11A) && (PHY_TYPE_11A == pCurrBSS->eNetworkTypeInUse))) { /* PhyType not match skip this BSS */ - DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO "Physical type mismatch.... ePhyType[%d] BSS[%d]\n", ePhyType, pCurrBSS->eNetworkTypeInUse); + pr_debug("Physical type mismatch.... ePhyType[%d] BSS[%d]\n", + ePhyType, + pCurrBSS->eNetworkTypeInUse); continue; } } @@ -240,7 +241,7 @@ BSSvClearBSSList( bool bKeepCurrBSSID ) { - PSDevice pDevice = (PSDevice)hDeviceContext; + struct vnt_private *pDevice = hDeviceContext; PSMgmtObject pMgmt = pDevice->pMgmt; unsigned int ii; @@ -280,7 +281,7 @@ BSSpAddrIsInBSSList( PWLAN_IE_SSID pSSID ) { - PSDevice pDevice = (PSDevice)hDeviceContext; + struct vnt_private *pDevice = hDeviceContext; PSMgmtObject pMgmt = pDevice->pMgmt; PKnownBSS pBSSList = NULL; unsigned int ii; @@ -316,7 +317,7 @@ bool BSSbInsertToBSSList( void *hDeviceContext, unsigned char *abyBSSIDAddr, - QWORD qwTimestamp, + __le64 qwTimestamp, unsigned short wBeaconInterval, unsigned short wCapInfo, unsigned char byCurrChannel, @@ -333,7 +334,7 @@ BSSbInsertToBSSList( void *pRxPacketContext ) { - PSDevice pDevice = (PSDevice)hDeviceContext; + struct vnt_private *pDevice = hDeviceContext; PSMgmtObject pMgmt = pDevice->pMgmt; PSRxMgmtPacket pRxPacket = (PSRxMgmtPacket)pRxPacketContext; PKnownBSS pBSSList = NULL; @@ -350,14 +351,13 @@ BSSbInsertToBSSList( } if (ii == MAX_BSS_NUM) { - DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO "Get free KnowBSS node failed.\n"); + pr_debug("Get free KnowBSS node failed\n"); return false; } /* save the BSS info */ pBSSList->bActive = true; memcpy(pBSSList->abyBSSID, abyBSSIDAddr, WLAN_BSSID_LEN); - HIDWORD(pBSSList->qwBSSTimestamp) = cpu_to_le32(HIDWORD(qwTimestamp)); - LODWORD(pBSSList->qwBSSTimestamp) = cpu_to_le32(LODWORD(qwTimestamp)); + pBSSList->qwBSSTimestamp = le64_to_cpu(qwTimestamp); pBSSList->wBeaconInterval = cpu_to_le16(wBeaconInterval); pBSSList->wCapInfo = cpu_to_le16(wCapInfo); pBSSList->uClearCount = 0; @@ -376,7 +376,8 @@ BSSbInsertToBSSList( if (pExtSuppRates->len > WLAN_RATES_MAXLEN) pExtSuppRates->len = WLAN_RATES_MAXLEN; memcpy(pBSSList->abyExtSuppRates, pExtSuppRates, pExtSuppRates->len + WLAN_IEHDR_LEN); - DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO "BSSbInsertToBSSList: pExtSuppRates->len = %d\n", pExtSuppRates->len); + pr_debug("BSSbInsertToBSSList: pExtSuppRates->len = %d\n", + pExtSuppRates->len); } else { memset(pBSSList->abyExtSuppRates, 0, WLAN_IEHDR_LEN + WLAN_RATES_MAXLEN + 1); @@ -521,7 +522,7 @@ BSSbInsertToBSSList( bool BSSbUpdateToBSSList( void *hDeviceContext, - QWORD qwTimestamp, + __le64 qwTimestamp, unsigned short wBeaconInterval, unsigned short wCapInfo, unsigned char byCurrChannel, @@ -541,7 +542,7 @@ BSSbUpdateToBSSList( ) { int ii; - PSDevice pDevice = (PSDevice)hDeviceContext; + struct vnt_private *pDevice = hDeviceContext; PSMgmtObject pMgmt = pDevice->pMgmt; PSRxMgmtPacket pRxPacket = (PSRxMgmtPacket)pRxPacketContext; long ldBm; @@ -551,8 +552,7 @@ BSSbUpdateToBSSList( if (pBSSList == NULL) return false; - HIDWORD(pBSSList->qwBSSTimestamp) = cpu_to_le32(HIDWORD(qwTimestamp)); - LODWORD(pBSSList->qwBSSTimestamp) = cpu_to_le32(LODWORD(qwTimestamp)); + pBSSList->qwBSSTimestamp = le64_to_cpu(qwTimestamp); pBSSList->wBeaconInterval = cpu_to_le16(wBeaconInterval); pBSSList->wCapInfo = cpu_to_le16(wCapInfo); pBSSList->uClearCount = 0; @@ -717,7 +717,7 @@ BSSDBbIsSTAInNodeDB(void *pMgmtObject, unsigned char *abyDstAddr, void BSSvCreateOneNode(void *hDeviceContext, unsigned int *puNodeIndex) { - PSDevice pDevice = (PSDevice)hDeviceContext; + struct vnt_private *pDevice = hDeviceContext; PSMgmtObject pMgmt = pDevice->pMgmt; unsigned int ii; unsigned int BigestCount = 0; @@ -742,7 +742,7 @@ BSSvCreateOneNode(void *hDeviceContext, unsigned int *puNodeIndex) /* if not found replace uInActiveCount is largest one */ if (ii == (MAX_NODE_NUM + 1)) { *puNodeIndex = SelectIndex; - DBG_PRT(MSG_LEVEL_NOTICE, KERN_INFO "Replace inactive node = %d\n", SelectIndex); + pr_info("Replace inactive node = %d\n", SelectIndex); /* clear ps buffer */ if (pMgmt->sNodeDBTable[*puNodeIndex].sTxPSQueue.next != NULL) { while ((skb = skb_dequeue(&pMgmt->sNodeDBTable[*puNodeIndex].sTxPSQueue)) != NULL) @@ -759,7 +759,7 @@ BSSvCreateOneNode(void *hDeviceContext, unsigned int *puNodeIndex) skb_queue_head_init(&pMgmt->sNodeDBTable[*puNodeIndex].sTxPSQueue); pMgmt->sNodeDBTable[*puNodeIndex].byAuthSequence = 0; pMgmt->sNodeDBTable[*puNodeIndex].wEnQueueCnt = 0; - DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO "Create node index = %d\n", ii); + pr_debug("Create node index = %d\n", ii); return; }; @@ -779,7 +779,7 @@ BSSvRemoveOneNode( unsigned int uNodeIndex ) { - PSDevice pDevice = (PSDevice)hDeviceContext; + struct vnt_private *pDevice = hDeviceContext; PSMgmtObject pMgmt = pDevice->pMgmt; unsigned char byMask[8] = {1, 2, 4, 8, 0x10, 0x20, 0x40, 0x80}; struct sk_buff *skb; @@ -812,7 +812,7 @@ BSSvUpdateAPNode( PWLAN_IE_SUPP_RATES pExtSuppRates ) { - PSDevice pDevice = (PSDevice)hDeviceContext; + struct vnt_private *pDevice = hDeviceContext; PSMgmtObject pMgmt = pDevice->pMgmt; unsigned int uRateLen = WLAN_RATES_MAXLEN; @@ -844,7 +844,8 @@ BSSvUpdateAPNode( netdev_dbg(pDevice->dev, "BSSvUpdateAPNode:MaxSuppRate is %d\n", pMgmt->sNodeDBTable[0].wMaxSuppRate); /* auto rate fallback function initiation */ - DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO "pMgmt->sNodeDBTable[0].wTxDataRate = %d\n", pMgmt->sNodeDBTable[0].wTxDataRate); + pr_debug("pMgmt->sNodeDBTable[0].wTxDataRate = %d\n", + pMgmt->sNodeDBTable[0].wTxDataRate); }; /*+ @@ -863,7 +864,7 @@ BSSvAddMulticastNode( void *hDeviceContext ) { - PSDevice pDevice = (PSDevice)hDeviceContext; + struct vnt_private *pDevice = hDeviceContext; PSMgmtObject pMgmt = pDevice->pMgmt; if (!pDevice->bEnableHostWEP) @@ -906,7 +907,7 @@ BSSvSecondCallBack( void *hDeviceContext ) { - PSDevice pDevice = (PSDevice)hDeviceContext; + struct vnt_private *pDevice = hDeviceContext; PSMgmtObject pMgmt = pDevice->pMgmt; unsigned int ii; PWLAN_IE_SSID pItemSSID, pCurrSSID; @@ -961,8 +962,8 @@ BSSvSecondCallBack( if (ii > 0) { if (pMgmt->sNodeDBTable[ii].uInActiveCount > MAX_INACTIVE_COUNT) { BSSvRemoveOneNode(pDevice, ii); - DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO - "Inactive timeout [%d] sec, STA index = [%d] remove\n", MAX_INACTIVE_COUNT, ii); + pr_debug("Inactive timeout [%d] sec, STA index = [%d] remove\n", + MAX_INACTIVE_COUNT, ii); continue; } @@ -1012,11 +1013,13 @@ BSSvSecondCallBack( /* check if pending PS queue */ if (pMgmt->sNodeDBTable[ii].wEnQueueCnt != 0) { - DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO "Index= %d, Queue = %d pending\n", - ii, pMgmt->sNodeDBTable[ii].wEnQueueCnt); + pr_debug("Index= %d, Queue = %d pending\n", + ii, + pMgmt->sNodeDBTable[ii].wEnQueueCnt); if ((ii > 0) && (pMgmt->sNodeDBTable[ii].wEnQueueCnt > 15)) { BSSvRemoveOneNode(pDevice, ii); - DBG_PRT(MSG_LEVEL_NOTICE, KERN_INFO "Pending many queues PS STA Index = %d remove\n", ii); + pr_info("Pending many queues PS STA Index = %d remove\n", + ii); continue; } } @@ -1100,7 +1103,8 @@ BSSvSecondCallBack( netif_stop_queue(pDevice->dev); pDevice->bLinkPass = false; pDevice->bRoaming = true; - DBG_PRT(MSG_LEVEL_NOTICE, KERN_INFO "Lost AP beacon [%d] sec, disconnected !\n", pMgmt->sNodeDBTable[0].uInActiveCount); + pr_info("Lost AP beacon [%d] sec, disconnected !\n", + pMgmt->sNodeDBTable[0].uInActiveCount); if ((pDevice->bWPADEVUp) && (pDevice->skb != NULL)) { wpahdr = (viawget_wpa_header *)pDevice->skb->data; wpahdr->type = VIAWGET_DISASSOC_MSG; @@ -1145,7 +1149,7 @@ BSSvSecondCallBack( if (pDevice->bWPADEVUp) pDevice->eEncryptionStatus = pDevice->eOldEncryptionStatus; - DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO "Roaming ...\n"); + pr_debug("Roaming ...\n"); BSSvClearBSSList((void *)pDevice, pDevice->bLinkPass); pMgmt->eScanType = WMAC_SCAN_ACTIVE; bScheduleCommand((void *)pDevice, WLAN_CMD_BSSID_SCAN, pMgmt->abyDesireSSID); @@ -1161,7 +1165,7 @@ BSSvSecondCallBack( if (pDevice->uAutoReConnectTime < 10) { pDevice->uAutoReConnectTime++; } else { - DBG_PRT(MSG_LEVEL_NOTICE, KERN_INFO "Adhoc re-scanning ...\n"); + pr_info("Adhoc re-scanning ...\n"); pMgmt->eScanType = WMAC_SCAN_ACTIVE; bScheduleCommand((void *)pDevice, WLAN_CMD_BSSID_SCAN, NULL); bScheduleCommand((void *)pDevice, WLAN_CMD_SSID, NULL); @@ -1172,7 +1176,8 @@ BSSvSecondCallBack( if (pDevice->bUpdateBBVGA) s_vCheckPreEDThreshold((void *)pDevice); if (pMgmt->sNodeDBTable[0].uInActiveCount >= ADHOC_LOST_BEACON_COUNT) { - DBG_PRT(MSG_LEVEL_NOTICE, KERN_INFO "Lost other STA beacon [%d] sec, started !\n", pMgmt->sNodeDBTable[0].uInActiveCount); + pr_info("Lost other STA beacon [%d] sec, started !\n", + pMgmt->sNodeDBTable[0].uInActiveCount); pMgmt->sNodeDBTable[0].uInActiveCount = 0; pMgmt->eCurrState = WMAC_STATE_STARTED; netif_stop_queue(pDevice->dev); @@ -1209,7 +1214,7 @@ BSSvUpdateNodeTxCounter( unsigned int uFIFOHeaderSize ) { - PSDevice pDevice = (PSDevice)hDeviceContext; + struct vnt_private *pDevice = hDeviceContext; PSMgmtObject pMgmt = pDevice->pMgmt; unsigned int uNodeIndex = 0; unsigned char byTxRetry = (byTsr0 & TSR0_NCR); @@ -1231,7 +1236,8 @@ BSSvUpdateNodeTxCounter( /* Only Unicast using support rates */ if (pTxBufHead->wFIFOCtl & FIFOCTL_NEEDACK) { - DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO "wRate %04X, byTsr0 %02X, byTsr1 %02X\n", wRate, byTsr0, byTsr1); + pr_debug("wRate %04X, byTsr0 %02X, byTsr1 %02X\n", + wRate, byTsr0, byTsr1); if (pMgmt->eCurrMode == WMAC_MODE_ESS_STA) { pMgmt->sNodeDBTable[0].uTxAttempts += 1; if ((byTsr1 & TSR1_TERR) == 0) { @@ -1362,7 +1368,7 @@ BSSvClearNodeDBTable( ) { - PSDevice pDevice = (PSDevice)hDeviceContext; + struct vnt_private *pDevice = hDeviceContext; PSMgmtObject pMgmt = pDevice->pMgmt; struct sk_buff *skb; unsigned int ii; @@ -1372,7 +1378,7 @@ BSSvClearNodeDBTable( /* check if sTxPSQueue has been initial */ if (pMgmt->sNodeDBTable[ii].sTxPSQueue.next != NULL) { while ((skb = skb_dequeue(&pMgmt->sNodeDBTable[ii].sTxPSQueue)) != NULL) { - DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO "PS skb != NULL %d\n", ii); + pr_debug("PS skb != NULL %d\n", ii); dev_kfree_skb(skb); } } @@ -1387,7 +1393,7 @@ void s_vCheckSensitivity( void *hDeviceContext ) { - PSDevice pDevice = (PSDevice)hDeviceContext; + struct vnt_private *pDevice = hDeviceContext; PKnownBSS pBSSList = NULL; PSMgmtObject pMgmt = pDevice->pMgmt; int ii; @@ -1414,7 +1420,10 @@ void s_vCheckSensitivity( if (uNumofdBm > 0) { LocalldBmAverage = LocalldBmAverage/uNumofdBm; for (ii = 0; ii < BB_VGA_LEVEL; ii++) { - DBG_PRT(MSG_LEVEL_DEBUG, KERN_INFO "LocalldBmAverage:%ld, %ld %02x\n", LocalldBmAverage, pDevice->ldBmThreshold[ii], pDevice->abyBBVGA[ii]); + pr_debug("LocalldBmAverage:%ld, %ld %02x\n", + LocalldBmAverage, + pDevice->ldBmThreshold[ii], + pDevice->abyBBVGA[ii]); if (LocalldBmAverage < pDevice->ldBmThreshold[ii]) { pDevice->byBBVGANew = pDevice->abyBBVGA[ii]; break; @@ -1437,7 +1446,7 @@ BSSvClearAnyBSSJoinRecord( void *hDeviceContext ) { - PSDevice pDevice = (PSDevice)hDeviceContext; + struct vnt_private *pDevice = hDeviceContext; PSMgmtObject pMgmt = pDevice->pMgmt; unsigned int ii; @@ -1450,7 +1459,7 @@ void s_uCalculateLinkQual( void *hDeviceContext ) { - PSDevice pDevice = (PSDevice)hDeviceContext; + struct vnt_private *pDevice = hDeviceContext; unsigned long TxOkRatio, TxCnt; unsigned long RxOkRatio, RxCnt; unsigned long RssiRatio; @@ -1490,7 +1499,7 @@ void s_vCheckPreEDThreshold( void *hDeviceContext ) { - PSDevice pDevice = (PSDevice)hDeviceContext; + struct vnt_private *pDevice = hDeviceContext; PKnownBSS pBSSList = NULL; PSMgmtObject pMgmt = &(pDevice->sMgmtObj); |