mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-28 11:18:45 +07:00
staging: vt6655: mac80211 conversion: changes to CARDbSetPhyParameter
CARDbSetPhyParameter appears to use two different strutures to find supported rates. Remove PWLAN_IE_SUPP_RATES and use basic_rates to find rates supported. mac80211 now sets bShortSlotTime, bBarkerPreambleMd and byPreambleType remove these. Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
e99d357c6f
commit
0614a0e84d
@ -74,15 +74,6 @@
|
||||
|
||||
#define WAIT_BEACON_TX_DOWN_TMO 3 /* Times */
|
||||
|
||||
/* 1M, 2M, 5M, 11M, 18M, 24M, 36M, 54M */
|
||||
static unsigned char abyDefaultSuppRatesG[] = {WLAN_EID_SUPP_RATES, 8, 0x02, 0x04, 0x0B, 0x16, 0x24, 0x30, 0x48, 0x6C};
|
||||
/* 6M, 9M, 12M, 48M */
|
||||
static unsigned char abyDefaultExtSuppRatesG[] = {WLAN_EID_EXTSUPP_RATES, 4, 0x0C, 0x12, 0x18, 0x60};
|
||||
/* 6M, 9M, 12M, 18M, 24M, 36M, 48M, 54M */
|
||||
static unsigned char abyDefaultSuppRatesA[] = {WLAN_EID_SUPP_RATES, 8, 0x0C, 0x12, 0x18, 0x24, 0x30, 0x48, 0x60, 0x6C};
|
||||
/* 1M, 2M, 5M, 11M, */
|
||||
static unsigned char abyDefaultSuppRatesB[] = {WLAN_EID_SUPP_RATES, 4, 0x02, 0x04, 0x0B, 0x16};
|
||||
|
||||
/*--------------------- Static Variables --------------------------*/
|
||||
|
||||
static const unsigned short cwRXBCNTSFOff[MAX_RATE] =
|
||||
@ -384,14 +375,10 @@ bool CARDbSetPhyParameter(struct vnt_private *pDevice, CARD_PHY_TYPE ePHYType,
|
||||
unsigned char bySIFS = 0;
|
||||
unsigned char byDIFS = 0;
|
||||
unsigned char byData;
|
||||
PWLAN_IE_SUPP_RATES pSupportRates = (PWLAN_IE_SUPP_RATES) pvSupportRateIEs;
|
||||
PWLAN_IE_SUPP_RATES pExtSupportRates = (PWLAN_IE_SUPP_RATES) pvExtSupportRateIEs;
|
||||
int i;
|
||||
|
||||
/* Set SIFS, DIFS, EIFS, SlotTime, CwMin */
|
||||
if (ePHYType == PHY_TYPE_11A) {
|
||||
if (pSupportRates == NULL)
|
||||
pSupportRates = (PWLAN_IE_SUPP_RATES) abyDefaultSuppRatesA;
|
||||
|
||||
if (pDevice->byRFType == RF_AIROHA7230) {
|
||||
/* AL7230 use single PAPE and connect to PAPE_2.4G */
|
||||
MACvSetBBType(pDevice->PortOffset, BB_TYPE_11G);
|
||||
@ -419,9 +406,6 @@ bool CARDbSetPhyParameter(struct vnt_private *pDevice, CARD_PHY_TYPE ePHYType,
|
||||
byDIFS = C_SIFS_A + 2*C_SLOT_SHORT;
|
||||
byCWMaxMin = 0xA4;
|
||||
} else if (ePHYType == PHY_TYPE_11B) {
|
||||
if (pSupportRates == NULL)
|
||||
pSupportRates = (PWLAN_IE_SUPP_RATES) abyDefaultSuppRatesB;
|
||||
|
||||
MACvSetBBType(pDevice->PortOffset, BB_TYPE_11B);
|
||||
if (pDevice->byRFType == RF_AIROHA7230) {
|
||||
pDevice->abyBBVGA[0] = 0x1C;
|
||||
@ -445,10 +429,6 @@ bool CARDbSetPhyParameter(struct vnt_private *pDevice, CARD_PHY_TYPE ePHYType,
|
||||
byDIFS = C_SIFS_BG + 2*C_SLOT_LONG;
|
||||
byCWMaxMin = 0xA5;
|
||||
} else { /* PK_TYPE_11GA & PK_TYPE_11GB */
|
||||
if (pSupportRates == NULL) {
|
||||
pSupportRates = (PWLAN_IE_SUPP_RATES) abyDefaultSuppRatesG;
|
||||
pExtSupportRates = (PWLAN_IE_SUPP_RATES) abyDefaultExtSuppRatesG;
|
||||
}
|
||||
MACvSetBBType(pDevice->PortOffset, BB_TYPE_11G);
|
||||
if (pDevice->byRFType == RF_AIROHA7230) {
|
||||
pDevice->abyBBVGA[0] = 0x1C;
|
||||
@ -468,32 +448,22 @@ bool CARDbSetPhyParameter(struct vnt_private *pDevice, CARD_PHY_TYPE ePHYType,
|
||||
}
|
||||
BBbWriteEmbedded(pDevice->PortOffset, 0x88, 0x08);
|
||||
bySIFS = C_SIFS_BG;
|
||||
if (VNTWIFIbIsShortSlotTime(wCapInfo)) {
|
||||
|
||||
if (pDevice->bShortSlotTime) {
|
||||
bySlot = C_SLOT_SHORT;
|
||||
byDIFS = C_SIFS_BG + 2*C_SLOT_SHORT;
|
||||
} else {
|
||||
bySlot = C_SLOT_LONG;
|
||||
byDIFS = C_SIFS_BG + 2*C_SLOT_LONG;
|
||||
}
|
||||
if (VNTWIFIbyGetMaxSupportRate(pSupportRates, pExtSupportRates) > RATE_11M)
|
||||
byCWMaxMin = 0xA4;
|
||||
else
|
||||
byCWMaxMin = 0xA5;
|
||||
|
||||
if (pDevice->bProtectMode != VNTWIFIbIsProtectMode(byERPField)) {
|
||||
pDevice->bProtectMode = VNTWIFIbIsProtectMode(byERPField);
|
||||
if (pDevice->bProtectMode)
|
||||
MACvEnableProtectMD(pDevice->PortOffset);
|
||||
else
|
||||
MACvDisableProtectMD(pDevice->PortOffset);
|
||||
byCWMaxMin = 0xa4;
|
||||
|
||||
}
|
||||
if (pDevice->bBarkerPreambleMd != VNTWIFIbIsBarkerMode(byERPField)) {
|
||||
pDevice->bBarkerPreambleMd = VNTWIFIbIsBarkerMode(byERPField);
|
||||
if (pDevice->bBarkerPreambleMd)
|
||||
MACvEnableBarkerPreambleMd(pDevice->PortOffset);
|
||||
else
|
||||
MACvDisableBarkerPreambleMd(pDevice->PortOffset);
|
||||
for (i = RATE_54M; i >= RATE_6M; i--) {
|
||||
if (pDevice->basic_rates & ((u32)(0x1 << i))) {
|
||||
byCWMaxMin |= 0x1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -526,10 +496,6 @@ bool CARDbSetPhyParameter(struct vnt_private *pDevice, CARD_PHY_TYPE ePHYType,
|
||||
if (pDevice->bySlot != bySlot) {
|
||||
pDevice->bySlot = bySlot;
|
||||
VNSvOutPortB(pDevice->PortOffset + MAC_REG_SLOT, pDevice->bySlot);
|
||||
if (pDevice->bySlot == C_SLOT_SHORT)
|
||||
pDevice->bShortSlotTime = true;
|
||||
else
|
||||
pDevice->bShortSlotTime = false;
|
||||
|
||||
BBvSetShortSlotTime(pDevice);
|
||||
}
|
||||
@ -537,14 +503,9 @@ bool CARDbSetPhyParameter(struct vnt_private *pDevice, CARD_PHY_TYPE ePHYType,
|
||||
pDevice->byCWMaxMin = byCWMaxMin;
|
||||
VNSvOutPortB(pDevice->PortOffset + MAC_REG_CWMAXMIN0, pDevice->byCWMaxMin);
|
||||
}
|
||||
if (VNTWIFIbIsShortPreamble(wCapInfo))
|
||||
pDevice->byPreambleType = pDevice->byShortPreamble;
|
||||
else
|
||||
pDevice->byPreambleType = 0;
|
||||
|
||||
s_vSetRSPINF(pDevice, ePHYType, pSupportRates, pExtSupportRates);
|
||||
pDevice->eCurrentPHYType = ePHYType;
|
||||
/* set for NDIS OID_802_11SUPPORTED_RATES */
|
||||
s_vSetRSPINF(pDevice, ePHYType, NULL, NULL);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user