Exemplo n.º 1
0
void rtl8821au_phy_rf6052_set_ofdm_txpower(struct rtl_priv *rtlpriv,
	IN	uint8_t *		pPowerLevelOFDM,
	IN	uint8_t *		pPowerLevelBW20,
	IN	uint8_t *		pPowerLevelBW40,
	IN	uint8_t		Channel)
{
	uint32_t writeVal[2], powerBase0[2], powerBase1[2], pwrtrac_value;
	uint8_t index = 0;


	//DBG_871X("PHY_RF6052SetOFDMTxPower, channel(%d) \n", Channel);

	getPowerBase8812(rtlpriv, pPowerLevelOFDM,pPowerLevelBW20,pPowerLevelBW40, Channel, &powerBase0[0], &powerBase1[0]);

	for(index=0; index<6; index++)
	{
		getTxPowerWriteValByRegulatory8812(rtlpriv, Channel, index,
			&powerBase0[0], &powerBase1[0], &writeVal[0]);

		writeOFDMPowerReg8812(rtlpriv, index, &writeVal[0]);
	}
}
VOID 
PHY_RF6052SetOFDMTxPower8812(
	IN	PADAPTER	Adapter,
	IN	u8*		pPowerLevelOFDM,
	IN	u8*		pPowerLevelBW20,
	IN	u8*		pPowerLevelBW40,	
	IN	u8		Channel)
{
	u32 writeVal[2], powerBase0[2], powerBase1[2], pwrtrac_value;
	u8 index = 0;	
	

	//DBG_871X("PHY_RF6052SetOFDMTxPower, channel(%d) \n", Channel);

	getPowerBase8812(Adapter, pPowerLevelOFDM,pPowerLevelBW20,pPowerLevelBW40, Channel, &powerBase0[0], &powerBase1[0]);
	
	for(index=0; index<6; index++)
	{
		getTxPowerWriteValByRegulatory8812(Adapter, Channel, index, 
			&powerBase0[0], &powerBase1[0], &writeVal[0]);

		writeOFDMPowerReg8812(Adapter, index, &writeVal[0]);
	}
}