1 // SPDX-License-Identifier: GPL-2.0
2 /* Copyright(c) 2007 - 2011 Realtek Corporation. */
4 #include "../include/odm_precomp.h"
6 void odm_ConfigRFReg_8188E(struct odm_dm_struct *pDM_Odm, u32 Addr,
7 u32 Data, enum rf_radio_path RF_PATH,
12 } else if (Addr == 0xfd) {
14 } else if (Addr == 0xfc) {
16 } else if (Addr == 0xfb) {
18 } else if (Addr == 0xfa) {
20 } else if (Addr == 0xf9) {
23 ODM_SetRFReg(pDM_Odm, RF_PATH, RegAddr, bRFRegOffsetMask, Data);
24 /* Add 1us delay between BB/RF register setting. */
29 void odm_ConfigRF_RadioA_8188E(struct odm_dm_struct *pDM_Odm, u32 Addr, u32 Data)
31 u32 content = 0x1000; /* RF_Content: radioa_txt */
32 u32 maskforPhySet = (u32)(content&0xE000);
34 odm_ConfigRFReg_8188E(pDM_Odm, Addr, Data, RF_PATH_A, Addr|maskforPhySet);
37 void odm_ConfigRF_RadioB_8188E(struct odm_dm_struct *pDM_Odm, u32 Addr, u32 Data)
39 u32 content = 0x1001; /* RF_Content: radiob_txt */
40 u32 maskforPhySet = (u32)(content&0xE000);
42 odm_ConfigRFReg_8188E(pDM_Odm, Addr, Data, RF_PATH_B, Addr|maskforPhySet);
45 void odm_ConfigMAC_8188E(struct odm_dm_struct *pDM_Odm, u32 Addr, u8 Data)
47 ODM_Write1Byte(pDM_Odm, Addr, Data);
50 void odm_ConfigBB_AGC_8188E(struct odm_dm_struct *pDM_Odm, u32 Addr, u32 Bitmask, u32 Data)
52 ODM_SetBBReg(pDM_Odm, Addr, Bitmask, Data);
53 /* Add 1us delay between BB/RF register setting. */
57 void odm_ConfigBB_PHY_REG_PG_8188E(struct odm_dm_struct *pDM_Odm, u32 Addr,
58 u32 Bitmask, u32 Data)
62 else if (Addr == 0xfd)
64 else if (Addr == 0xfc)
66 else if (Addr == 0xfb)
68 else if (Addr == 0xfa)
70 else if (Addr == 0xf9)
73 storePwrIndexDiffRateOffset(pDM_Odm->Adapter, Addr, Bitmask, Data);
76 void odm_ConfigBB_PHY_8188E(struct odm_dm_struct *pDM_Odm, u32 Addr, u32 Bitmask, u32 Data)
80 } else if (Addr == 0xfd) {
82 } else if (Addr == 0xfc) {
84 } else if (Addr == 0xfb) {
86 } else if (Addr == 0xfa) {
88 } else if (Addr == 0xf9) {
92 pDM_Odm->RFCalibrateInfo.RegA24 = Data;
93 ODM_SetBBReg(pDM_Odm, Addr, Bitmask, Data);
95 /* Add 1us delay between BB/RF register setting. */