1 /****************************************************************************** 2 * 3 * Copyright(c) 2007 - 2017 Realtek Corporation. 4 * 5 * This program is free software; you can redistribute it and/or modify it 6 * under the terms of version 2 of the GNU General Public License as 7 * published by the Free Software Foundation. 8 * 9 * This program is distributed in the hope that it will be useful, but WITHOUT 10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for 12 * more details. 13 * 14 *****************************************************************************/ 15 16 #ifndef __HAL_PG_H__ 17 #define __HAL_PG_H__ 18 19 #define PPG_BB_GAIN_2G_TX_OFFSET_MASK 0x0F 20 #define PPG_BB_GAIN_2G_TXB_OFFSET_MASK 0xF0 21 22 #define PPG_BB_GAIN_5G_TX_OFFSET_MASK 0x1F 23 #define PPG_THERMAL_OFFSET_MASK 0x1F 24 #define KFREE_BB_GAIN_2G_TX_OFFSET(_ppg_v) (((_ppg_v) == PPG_BB_GAIN_2G_TX_OFFSET_MASK) ? 0 : (((_ppg_v) & 0x01) ? ((_ppg_v) >> 1) : (-((_ppg_v) >> 1)))) 25 #define KFREE_BB_GAIN_2G_TXB_OFFSET(_ppg_v) (((_ppg_v) == PPG_BB_GAIN_2G_TXB_OFFSET_MASK) ? 0 : (((_ppg_v) & 0x10) ? ((_ppg_v) >> 5) : (-((_ppg_v) >> 5)))) 26 #define KFREE_BB_GAIN_5G_TX_OFFSET(_ppg_v) (((_ppg_v) == PPG_BB_GAIN_5G_TX_OFFSET_MASK) ? 0 : (((_ppg_v) & 0x01) ? ((_ppg_v) >> 1) : (-((_ppg_v) >> 1)))) 27 #define KFREE_THERMAL_OFFSET(_ppg_v) (((_ppg_v) == PPG_THERMAL_OFFSET_MASK) ? 0 : (((_ppg_v) & 0x01) ? ((_ppg_v) >> 1) : (-((_ppg_v) >> 1)))) 28 29 /* **************************************************** 30 * EEPROM/Efuse PG Offset for 88EE/88EU/88ES 31 * **************************************************** */ 32 #define EEPROM_ChannelPlan_88E 0xB8 33 #define EEPROM_XTAL_88E 0xB9 34 #define EEPROM_THERMAL_METER_88E 0xBA 35 #define EEPROM_IQK_LCK_88E 0xBB 36 37 #define EEPROM_RF_BOARD_OPTION_88E 0xC1 38 #define EEPROM_RF_FEATURE_OPTION_88E 0xC2 39 #define EEPROM_RF_BT_SETTING_88E 0xC3 40 #define EEPROM_VERSION_88E 0xC4 41 #define EEPROM_CustomID_88E 0xC5 42 #define EEPROM_RF_ANTENNA_OPT_88E 0xC9 43 #define EEPROM_COUNTRY_CODE_88E 0xCB 44 45 /* RTL88EE */ 46 #define EEPROM_MAC_ADDR_88EE 0xD0 47 #define EEPROM_VID_88EE 0xD6 48 #define EEPROM_DID_88EE 0xD8 49 #define EEPROM_SVID_88EE 0xDA 50 #define EEPROM_SMID_88EE 0xDC 51 52 /* RTL88EU */ 53 #define EEPROM_MAC_ADDR_88EU 0xD7 54 #define EEPROM_VID_88EU 0xD0 55 #define EEPROM_PID_88EU 0xD2 56 #define EEPROM_USB_OPTIONAL_FUNCTION0 0xD4 /* 8188EU, 8192EU, 8812AU is the same */ 57 #define EEPROM_USB_OPTIONAL_FUNCTION0_8811AU 0x104 58 59 /* RTL88ES */ 60 #define EEPROM_MAC_ADDR_88ES 0x11A 61 /* **************************************************** 62 * EEPROM/Efuse PG Offset for 8192EE/8192EU/8192ES 63 * **************************************************** */ 64 #define GET_PG_KFREE_ON_8192E(_pg_m) LE_BITS_TO_1BYTE(((u8 *)(_pg_m)) + 0xC1, 4, 1) 65 #define GET_PG_KFREE_THERMAL_K_ON_8192E(_pg_m) LE_BITS_TO_1BYTE(((u8 *)(_pg_m)) + 0xC8, 5, 1) 66 67 #define PPG_BB_GAIN_2G_TXA_OFFSET_8192E 0x1F6 68 #define PPG_THERMAL_OFFSET_8192E 0x1F5 69 70 #define EEPROM_ChannelPlan_8192E 0xB8 71 #define EEPROM_XTAL_8192E 0xB9 72 #define EEPROM_THERMAL_METER_8192E 0xBA 73 #define EEPROM_IQK_LCK_8192E 0xBB 74 #define EEPROM_2G_5G_PA_TYPE_8192E 0xBC 75 #define EEPROM_2G_LNA_TYPE_GAIN_SEL_8192E 0xBD 76 #define EEPROM_5G_LNA_TYPE_GAIN_SEL_8192E 0xBF 77 78 #define EEPROM_RF_BOARD_OPTION_8192E 0xC1 79 #define EEPROM_RF_FEATURE_OPTION_8192E 0xC2 80 #define EEPROM_RF_BT_SETTING_8192E 0xC3 81 #define EEPROM_VERSION_8192E 0xC4 82 #define EEPROM_CustomID_8192E 0xC5 83 #define EEPROM_TX_BBSWING_2G_8192E 0xC6 84 #define EEPROM_TX_BBSWING_5G_8192E 0xC7 85 #define EEPROM_TX_PWR_CALIBRATE_RATE_8192E 0xC8 86 #define EEPROM_RF_ANTENNA_OPT_8192E 0xC9 87 #define EEPROM_RFE_OPTION_8192E 0xCA 88 #define EEPROM_RFE_OPTION_8188E 0xCA 89 #define EEPROM_COUNTRY_CODE_8192E 0xCB 90 91 /* RTL8192EE */ 92 #define EEPROM_MAC_ADDR_8192EE 0xD0 93 #define EEPROM_VID_8192EE 0xD6 94 #define EEPROM_DID_8192EE 0xD8 95 #define EEPROM_SVID_8192EE 0xDA 96 #define EEPROM_SMID_8192EE 0xDC 97 98 /* RTL8192EU */ 99 #define EEPROM_MAC_ADDR_8192EU 0xD7 100 #define EEPROM_VID_8192EU 0xD0 101 #define EEPROM_PID_8192EU 0xD2 102 #define EEPROM_PA_TYPE_8192EU 0xBC 103 #define EEPROM_LNA_TYPE_2G_8192EU 0xBD 104 #define EEPROM_LNA_TYPE_5G_8192EU 0xBF 105 106 /* RTL8192ES */ 107 #define EEPROM_MAC_ADDR_8192ES 0x11A 108 /* **************************************************** 109 * EEPROM/Efuse PG Offset for 8812AE/8812AU/8812AS 110 * *****************************************************/ 111 #define EEPROM_USB_MODE_8812 0x08 112 113 #define EEPROM_ChannelPlan_8812 0xB8 114 #define EEPROM_XTAL_8812 0xB9 115 #define EEPROM_THERMAL_METER_8812 0xBA 116 #define EEPROM_IQK_LCK_8812 0xBB 117 #define EEPROM_2G_5G_PA_TYPE_8812 0xBC 118 #define EEPROM_2G_LNA_TYPE_GAIN_SEL_8812 0xBD 119 #define EEPROM_5G_LNA_TYPE_GAIN_SEL_8812 0xBF 120 121 #define EEPROM_RF_BOARD_OPTION_8812 0xC1 122 #define EEPROM_RF_FEATURE_OPTION_8812 0xC2 123 #define EEPROM_RF_BT_SETTING_8812 0xC3 124 #define EEPROM_VERSION_8812 0xC4 125 #define EEPROM_CustomID_8812 0xC5 126 #define EEPROM_TX_BBSWING_2G_8812 0xC6 127 #define EEPROM_TX_BBSWING_5G_8812 0xC7 128 #define EEPROM_TX_PWR_CALIBRATE_RATE_8812 0xC8 129 #define EEPROM_RF_ANTENNA_OPT_8812 0xC9 130 #define EEPROM_RFE_OPTION_8812 0xCA 131 #define EEPROM_COUNTRY_CODE_8812 0xCB 132 133 /* RTL8812AE */ 134 #define EEPROM_MAC_ADDR_8812AE 0xD0 135 #define EEPROM_VID_8812AE 0xD6 136 #define EEPROM_DID_8812AE 0xD8 137 #define EEPROM_SVID_8812AE 0xDA 138 #define EEPROM_SMID_8812AE 0xDC 139 140 /* RTL8812AU */ 141 #define EEPROM_MAC_ADDR_8812AU 0xD7 142 #define EEPROM_VID_8812AU 0xD0 143 #define EEPROM_PID_8812AU 0xD2 144 #define EEPROM_PA_TYPE_8812AU 0xBC 145 #define EEPROM_LNA_TYPE_2G_8812AU 0xBD 146 #define EEPROM_LNA_TYPE_5G_8812AU 0xBF 147 148 /* RTL8814AU */ 149 #define EEPROM_MAC_ADDR_8814AU 0xD8 150 #define EEPROM_VID_8814AU 0xD0 151 #define EEPROM_PID_8814AU 0xD2 152 #define EEPROM_PA_TYPE_8814AU 0xBC 153 #define EEPROM_LNA_TYPE_2G_8814AU 0xBD 154 #define EEPROM_LNA_TYPE_5G_8814AU 0xBF 155 156 /* RTL8814AE */ 157 #define EEPROM_MAC_ADDR_8814AE 0xD0 158 #define EEPROM_VID_8814AE 0xD6 159 #define EEPROM_DID_8814AE 0xD8 160 #define EEPROM_SVID_8814AE 0xDA 161 #define EEPROM_SMID_8814AE 0xDC 162 163 /* **************************************************** 164 * EEPROM/Efuse PG Offset for 8814AU 165 * **************************************************** */ 166 #define GET_PG_KFREE_ON_8814A(_pg_m) LE_BITS_TO_1BYTE(((u8 *)(_pg_m)) + 0xC8, 4, 1) 167 #define GET_PG_KFREE_THERMAL_K_ON_8814A(_pg_m) LE_BITS_TO_1BYTE(((u8 *)(_pg_m)) + 0xC8, 5, 1) 168 #define GET_PG_TX_POWER_TRACKING_MODE_8814A(_pg_m) LE_BITS_TO_1BYTE(((u8 *)(_pg_m)) + 0xC8, 6, 2) 169 170 #define KFREE_GAIN_DATA_LENGTH_8814A 22 171 172 #define PPG_BB_GAIN_2G_TXBA_OFFSET_8814A 0x3EE 173 174 #define PPG_THERMAL_OFFSET_8814A 0x3EF 175 176 #define EEPROM_USB_MODE_8814A 0x0E 177 #define EEPROM_ChannelPlan_8814 0xB8 178 #define EEPROM_XTAL_8814 0xB9 179 #define EEPROM_THERMAL_METER_8814 0xBA 180 #define EEPROM_IQK_LCK_8814 0xBB 181 182 183 #define EEPROM_PA_TYPE_8814 0xBC 184 #define EEPROM_LNA_TYPE_AB_2G_8814 0xBD 185 #define EEPROM_LNA_TYPE_CD_2G_8814 0xBE 186 #define EEPROM_LNA_TYPE_AB_5G_8814 0xBF 187 #define EEPROM_LNA_TYPE_CD_5G_8814 0xC0 188 #define EEPROM_RF_BOARD_OPTION_8814 0xC1 189 #define EEPROM_RF_BT_SETTING_8814 0xC3 190 #define EEPROM_VERSION_8814 0xC4 191 #define EEPROM_CustomID_8814 0xC5 192 #define EEPROM_TX_BBSWING_2G_8814 0xC6 193 #define EEPROM_TX_BBSWING_5G_8814 0xC7 194 #define EEPROM_TRX_ANTENNA_OPTION_8814 0xC9 195 #define EEPROM_RFE_OPTION_8814 0xCA 196 #define EEPROM_COUNTRY_CODE_8814 0xCB 197 198 /*Extra Info for 8814A Initial Gain Fine Tune suggested by Willis, JIRA: MP123*/ 199 #define EEPROM_IG_OFFSET_4_AB_2G_8814A 0x120 200 #define EEPROM_IG_OFFSET_4_CD_2G_8814A 0x121 201 #define EEPROM_IG_OFFSET_4_AB_5GL_8814A 0x122 202 #define EEPROM_IG_OFFSET_4_CD_5GL_8814A 0x123 203 #define EEPROM_IG_OFFSET_4_AB_5GM_8814A 0x124 204 #define EEPROM_IG_OFFSET_4_CD_5GM_8814A 0x125 205 #define EEPROM_IG_OFFSET_4_AB_5GH_8814A 0x126 206 #define EEPROM_IG_OFFSET_4_CD_5GH_8814A 0x127 207 208 /* **************************************************** 209 * EEPROM/Efuse PG Offset for 8821AE/8821AU/8821AS 210 * **************************************************** */ 211 212 #define GET_PG_KFREE_ON_8821A(_pg_m) LE_BITS_TO_1BYTE(((u8 *)(_pg_m)) + 0xC8, 4, 1) 213 #define GET_PG_KFREE_THERMAL_K_ON_8821A(_pg_m) LE_BITS_TO_1BYTE(((u8 *)(_pg_m)) + 0xC8, 5, 1) 214 215 #define PPG_BB_GAIN_2G_TXA_OFFSET_8821A 0x1F6 216 #define PPG_THERMAL_OFFSET_8821A 0x1F5 217 #define PPG_BB_GAIN_5GLB1_TXA_OFFSET_8821A 0x1F4 218 #define PPG_BB_GAIN_5GLB2_TXA_OFFSET_8821A 0x1F3 219 #define PPG_BB_GAIN_5GMB1_TXA_OFFSET_8821A 0x1F2 220 #define PPG_BB_GAIN_5GMB2_TXA_OFFSET_8821A 0x1F1 221 #define PPG_BB_GAIN_5GHB_TXA_OFFSET_8821A 0x1F0 222 223 #define EEPROM_ChannelPlan_8821 0xB8 224 #define EEPROM_XTAL_8821 0xB9 225 #define EEPROM_THERMAL_METER_8821 0xBA 226 #define EEPROM_IQK_LCK_8821 0xBB 227 228 229 #define EEPROM_RF_BOARD_OPTION_8821 0xC1 230 #define EEPROM_RF_FEATURE_OPTION_8821 0xC2 231 #define EEPROM_RF_BT_SETTING_8821 0xC3 232 #define EEPROM_VERSION_8821 0xC4 233 #define EEPROM_CustomID_8821 0xC5 234 #define EEPROM_RF_ANTENNA_OPT_8821 0xC9 235 236 /* RTL8821AE */ 237 #define EEPROM_MAC_ADDR_8821AE 0xD0 238 #define EEPROM_VID_8821AE 0xD6 239 #define EEPROM_DID_8821AE 0xD8 240 #define EEPROM_SVID_8821AE 0xDA 241 #define EEPROM_SMID_8821AE 0xDC 242 243 /* RTL8821AU */ 244 #define EEPROM_PA_TYPE_8821AU 0xBC 245 #define EEPROM_LNA_TYPE_8821AU 0xBF 246 247 /* RTL8821AS */ 248 #define EEPROM_MAC_ADDR_8821AS 0x11A 249 250 /* RTL8821AU */ 251 #define EEPROM_MAC_ADDR_8821AU 0x107 252 #define EEPROM_VID_8821AU 0x100 253 #define EEPROM_PID_8821AU 0x102 254 255 256 /* **************************************************** 257 * EEPROM/Efuse PG Offset for 8192 SE/SU 258 * **************************************************** */ 259 #define EEPROM_VID_92SE 0x0A 260 #define EEPROM_DID_92SE 0x0C 261 #define EEPROM_SVID_92SE 0x0E 262 #define EEPROM_SMID_92SE 0x10 263 264 #define EEPROM_MAC_ADDR_92S 0x12 265 266 #define EEPROM_TSSI_A_92SE 0x74 267 #define EEPROM_TSSI_B_92SE 0x75 268 269 #define EEPROM_Version_92SE 0x7C 270 271 272 #define EEPROM_VID_92SU 0x08 273 #define EEPROM_PID_92SU 0x0A 274 275 #define EEPROM_Version_92SU 0x50 276 #define EEPROM_TSSI_A_92SU 0x6b 277 #define EEPROM_TSSI_B_92SU 0x6c 278 279 /* ==================================================== 280 EEPROM/Efuse PG Offset for 8188FE/8188FU/8188FS 281 ==================================================== 282 */ 283 284 #define GET_PG_KFREE_ON_8188F(_pg_m) LE_BITS_TO_1BYTE(((u8 *)(_pg_m)) + 0xC1, 4, 1) 285 #define GET_PG_KFREE_THERMAL_K_ON_8188F(_pg_m) LE_BITS_TO_1BYTE(((u8 *)(_pg_m)) + 0xC8, 5, 1) 286 287 #define PPG_BB_GAIN_2G_TXA_OFFSET_8188F 0xEE 288 #define PPG_THERMAL_OFFSET_8188F 0xEF 289 290 #define EEPROM_ChannelPlan_8188F 0xB8 291 #define EEPROM_XTAL_8188F 0xB9 292 #define EEPROM_THERMAL_METER_8188F 0xBA 293 #define EEPROM_IQK_LCK_8188F 0xBB 294 #define EEPROM_2G_5G_PA_TYPE_8188F 0xBC 295 #define EEPROM_2G_LNA_TYPE_GAIN_SEL_8188F 0xBD 296 #define EEPROM_5G_LNA_TYPE_GAIN_SEL_8188F 0xBF 297 298 #define EEPROM_RF_BOARD_OPTION_8188F 0xC1 299 #define EEPROM_FEATURE_OPTION_8188F 0xC2 300 #define EEPROM_RF_BT_SETTING_8188F 0xC3 301 #define EEPROM_VERSION_8188F 0xC4 302 #define EEPROM_CustomID_8188F 0xC5 303 #define EEPROM_TX_BBSWING_2G_8188F 0xC6 304 #define EEPROM_TX_PWR_CALIBRATE_RATE_8188F 0xC8 305 #define EEPROM_RF_ANTENNA_OPT_8188F 0xC9 306 #define EEPROM_RFE_OPTION_8188F 0xCA 307 #define EEPROM_COUNTRY_CODE_8188F 0xCB 308 #define EEPROM_CUSTOMER_ID_8188F 0x7F 309 #define EEPROM_SUBCUSTOMER_ID_8188F 0x59 310 311 /* RTL8188FU */ 312 #define EEPROM_MAC_ADDR_8188FU 0xD7 313 #define EEPROM_VID_8188FU 0xD0 314 #define EEPROM_PID_8188FU 0xD2 315 #define EEPROM_PA_TYPE_8188FU 0xBC 316 #define EEPROM_LNA_TYPE_2G_8188FU 0xBD 317 #define EEPROM_USB_OPTIONAL_FUNCTION0_8188FU 0xD4 318 319 /* RTL8188FS */ 320 #define EEPROM_MAC_ADDR_8188FS 0x11A 321 #define EEPROM_Voltage_ADDR_8188F 0x8 322 323 /* ==================================================== 324 EEPROM/Efuse PG Offset for 8188GTV/8188GTVS 325 ==================================================== 326 */ 327 328 #define GET_PG_KFREE_ON_8188GTV(_pg_m) LE_BITS_TO_1BYTE(((u8 *)(_pg_m)) + 0xC1, 4, 1) 329 #define GET_PG_KFREE_THERMAL_K_ON_8188GTV(_pg_m) LE_BITS_TO_1BYTE(((u8 *)(_pg_m)) + 0xC8, 5, 1) 330 331 #define PPG_BB_GAIN_2G_TXA_OFFSET_8188GTV 0xEE 332 #define PPG_THERMAL_OFFSET_8188GTV 0xEF 333 334 #define EEPROM_ChannelPlan_8188GTV 0xB8 335 #define EEPROM_XTAL_8188GTV 0xB9 336 #define EEPROM_THERMAL_METER_8188GTV 0xBA 337 #define EEPROM_IQK_LCK_8188GTV 0xBB 338 #define EEPROM_2G_5G_PA_TYPE_8188GTV 0xBC 339 #define EEPROM_2G_LNA_TYPE_GAIN_SEL_8188GTV 0xBD 340 #define EEPROM_5G_LNA_TYPE_GAIN_SEL_8188GTV 0xBF 341 342 #define EEPROM_RF_BOARD_OPTION_8188GTV 0xC1 343 #define EEPROM_FEATURE_OPTION_8188GTV 0xC2 344 #define EEPROM_RF_BT_SETTING_8188GTV 0xC3 345 #define EEPROM_VERSION_8188GTV 0xC4 346 #define EEPROM_CustomID_8188GTV 0xC5 347 #define EEPROM_TX_BBSWING_2G_8188GTV 0xC6 348 #define EEPROM_TX_PWR_CALIBRATE_RATE_8188GTV 0xC8 349 #define EEPROM_RF_ANTENNA_OPT_8188GTV 0xC9 350 #define EEPROM_RFE_OPTION_8188GTV 0xCA 351 #define EEPROM_COUNTRY_CODE_8188GTV 0xCB 352 #define EEPROM_CUSTOMER_ID_8188GTV 0x7F 353 #define EEPROM_SUBCUSTOMER_ID_8188GTV 0x59 354 355 /* RTL8188GTVU */ 356 #define EEPROM_MAC_ADDR_8188GTVU 0xD7 357 #define EEPROM_VID_8188GTVU 0xD0 358 #define EEPROM_PID_8188GTVU 0xD2 359 #define EEPROM_PA_TYPE_8188GTVU 0xBC 360 #define EEPROM_LNA_TYPE_2G_8188GTVU 0xBD 361 #define EEPROM_USB_OPTIONAL_FUNCTION0_8188GTVU 0xD4 362 363 /* RTL8188GTVS */ 364 #define EEPROM_MAC_ADDR_8188GTVS 0x11A 365 #define EEPROM_Voltage_ADDR_8188GTV 0x8 366 367 /* **************************************************** 368 * EEPROM/Efuse PG Offset for 8723BE/8723BU/8723BS 369 * *****************************************************/ 370 #define EEPROM_ChannelPlan_8723B 0xB8 371 #define EEPROM_XTAL_8723B 0xB9 372 #define EEPROM_THERMAL_METER_8723B 0xBA 373 #define EEPROM_IQK_LCK_8723B 0xBB 374 #define EEPROM_2G_5G_PA_TYPE_8723B 0xBC 375 #define EEPROM_2G_LNA_TYPE_GAIN_SEL_8723B 0xBD 376 #define EEPROM_5G_LNA_TYPE_GAIN_SEL_8723B 0xBF 377 378 #define EEPROM_RF_BOARD_OPTION_8723B 0xC1 379 #define EEPROM_FEATURE_OPTION_8723B 0xC2 380 #define EEPROM_RF_BT_SETTING_8723B 0xC3 381 #define EEPROM_VERSION_8723B 0xC4 382 #define EEPROM_CustomID_8723B 0xC5 383 #define EEPROM_TX_BBSWING_2G_8723B 0xC6 384 #define EEPROM_TX_PWR_CALIBRATE_RATE_8723B 0xC8 385 #define EEPROM_RF_ANTENNA_OPT_8723B 0xC9 386 #define EEPROM_RFE_OPTION_8723B 0xCA 387 #define EEPROM_COUNTRY_CODE_8723B 0xCB 388 389 /* RTL8723BE */ 390 #define EEPROM_MAC_ADDR_8723BE 0xD0 391 #define EEPROM_VID_8723BE 0xD6 392 #define EEPROM_DID_8723BE 0xD8 393 #define EEPROM_SVID_8723BE 0xDA 394 #define EEPROM_SMID_8723BE 0xDC 395 396 /* RTL8723BU */ 397 #define EEPROM_MAC_ADDR_8723BU 0x107 398 #define EEPROM_VID_8723BU 0x100 399 #define EEPROM_PID_8723BU 0x102 400 #define EEPROM_PA_TYPE_8723BU 0xBC 401 #define EEPROM_LNA_TYPE_2G_8723BU 0xBD 402 403 404 /* RTL8723BS */ 405 #define EEPROM_MAC_ADDR_8723BS 0x11A 406 #define EEPROM_Voltage_ADDR_8723B 0x8 407 408 /* **************************************************** 409 * EEPROM/Efuse PG Offset for 8703B 410 * **************************************************** */ 411 #define GET_PG_KFREE_ON_8703B(_pg_m) LE_BITS_TO_1BYTE(((u8 *)(_pg_m)) + 0xC1, 4, 1) 412 #define GET_PG_KFREE_THERMAL_K_ON_8703B(_pg_m) LE_BITS_TO_1BYTE(((u8 *)(_pg_m)) + 0xC8, 5, 1) 413 414 #define PPG_BB_GAIN_2G_TXA_OFFSET_8703B 0xEE 415 #define PPG_THERMAL_OFFSET_8703B 0xEF 416 417 #define EEPROM_ChannelPlan_8703B 0xB8 418 #define EEPROM_XTAL_8703B 0xB9 419 #define EEPROM_THERMAL_METER_8703B 0xBA 420 #define EEPROM_IQK_LCK_8703B 0xBB 421 #define EEPROM_2G_5G_PA_TYPE_8703B 0xBC 422 #define EEPROM_2G_LNA_TYPE_GAIN_SEL_8703B 0xBD 423 #define EEPROM_5G_LNA_TYPE_GAIN_SEL_8703B 0xBF 424 425 #define EEPROM_RF_BOARD_OPTION_8703B 0xC1 426 #define EEPROM_FEATURE_OPTION_8703B 0xC2 427 #define EEPROM_RF_BT_SETTING_8703B 0xC3 428 #define EEPROM_VERSION_8703B 0xC4 429 #define EEPROM_CustomID_8703B 0xC5 430 #define EEPROM_TX_BBSWING_2G_8703B 0xC6 431 #define EEPROM_TX_PWR_CALIBRATE_RATE_8703B 0xC8 432 #define EEPROM_RF_ANTENNA_OPT_8703B 0xC9 433 #define EEPROM_RFE_OPTION_8703B 0xCA 434 #define EEPROM_COUNTRY_CODE_8703B 0xCB 435 436 /* RTL8703BU */ 437 #define EEPROM_MAC_ADDR_8703BU 0x107 438 #define EEPROM_VID_8703BU 0x100 439 #define EEPROM_PID_8703BU 0x102 440 #define EEPROM_USB_OPTIONAL_FUNCTION0_8703BU 0x104 441 #define EEPROM_PA_TYPE_8703BU 0xBC 442 #define EEPROM_LNA_TYPE_2G_8703BU 0xBD 443 444 /* RTL8703BS */ 445 #define EEPROM_MAC_ADDR_8703BS 0x11A 446 #define EEPROM_Voltage_ADDR_8703B 0x8 447 448 /* 449 * ==================================================== 450 * EEPROM/Efuse PG Offset for 8822B 451 * ==================================================== 452 */ 453 #define EEPROM_ChannelPlan_8822B 0xB8 454 #define EEPROM_XTAL_8822B 0xB9 455 #define EEPROM_THERMAL_METER_8822B 0xBA 456 #define EEPROM_IQK_LCK_8822B 0xBB 457 #define EEPROM_2G_5G_PA_TYPE_8822B 0xBC 458 /* PATH A & PATH B */ 459 #define EEPROM_2G_LNA_TYPE_GAIN_SEL_AB_8822B 0xBD 460 /* PATH C & PATH D */ 461 #define EEPROM_2G_LNA_TYPE_GAIN_SEL_CD_8822B 0xBE 462 /* PATH A & PATH B */ 463 #define EEPROM_5G_LNA_TYPE_GAIN_SEL_AB_8822B 0xBF 464 /* PATH C & PATH D */ 465 #define EEPROM_5G_LNA_TYPE_GAIN_SEL_CD_8822B 0xC0 466 467 #define EEPROM_RF_BOARD_OPTION_8822B 0xC1 468 #define EEPROM_FEATURE_OPTION_8822B 0xC2 469 #define EEPROM_RF_BT_SETTING_8822B 0xC3 470 #define EEPROM_VERSION_8822B 0xC4 471 #define EEPROM_CustomID_8822B 0xC5 472 #define EEPROM_TX_BBSWING_2G_8822B 0xC6 473 #define EEPROM_TX_PWR_CALIBRATE_RATE_8822B 0xC8 474 #define EEPROM_RF_ANTENNA_OPT_8822B 0xC9 475 #define EEPROM_RFE_OPTION_8822B 0xCA 476 #define EEPROM_COUNTRY_CODE_8822B 0xCB 477 478 /* RTL8822BU */ 479 #define EEPROM_MAC_ADDR_8822BU 0x107 480 #define EEPROM_VID_8822BU 0x100 481 #define EEPROM_PID_8822BU 0x102 482 #define EEPROM_USB_OPTIONAL_FUNCTION0_8822BU 0x104 483 #define EEPROM_USB_MODE_8822BU 0x06 484 485 /* RTL8822BS */ 486 #define EEPROM_MAC_ADDR_8822BS 0x11A 487 488 /* RTL8822BE */ 489 #define EEPROM_MAC_ADDR_8822BE 0xD0 490 /* 491 * ==================================================== 492 * EEPROM/Efuse PG Offset for 8821C 493 * ==================================================== 494 */ 495 #define EEPROM_CHANNEL_PLAN_8821C 0xB8 496 #define EEPROM_XTAL_8821C 0xB9 497 #define EEPROM_THERMAL_METER_8821C 0xBA 498 #define EEPROM_IQK_LCK_8821C 0xBB 499 #define EEPROM_2G_5G_PA_TYPE_8821C 0xBC 500 /* PATH A & PATH B */ 501 #define EEPROM_2G_LNA_TYPE_GAIN_SEL_AB_8821C 0xBD 502 /* PATH C & PATH D */ 503 #define EEPROM_2G_LNA_TYPE_GAIN_SEL_CD_8821C 0xBE 504 /* PATH A & PATH B */ 505 #define EEPROM_5G_LNA_TYPE_GAIN_SEL_AB_8821C 0xBF 506 /* PATH C & PATH D */ 507 #define EEPROM_5G_LNA_TYPE_GAIN_SEL_CD_8821C 0xC0 508 509 #define EEPROM_RF_BOARD_OPTION_8821C 0xC1 510 #define EEPROM_FEATURE_OPTION_8821C 0xC2 511 #define EEPROM_RF_BT_SETTING_8821C 0xC3 512 #define EEPROM_VERSION_8821C 0xC4 513 #define EEPROM_CUSTOMER_ID_8821C 0xC5 514 #define EEPROM_TX_BBSWING_2G_8821C 0xC6 515 #define EEPROM_TX_BBSWING_5G_8821C 0xC7 516 #define EEPROM_TX_PWR_CALIBRATE_RATE_8821C 0xC8 517 #define EEPROM_RF_ANTENNA_OPT_8821C 0xC9 518 #define EEPROM_RFE_OPTION_8821C 0xCA 519 #define EEPROM_COUNTRY_CODE_8821C 0xCB 520 521 /* RTL8821CU */ 522 #define EEPROM_MAC_ADDR_8821CU 0x107 523 #define EEPROM_VID_8821CU 0x100 524 #define EEPROM_PID_8821CU 0x102 525 #define EEPROM_USB_OPTIONAL_FUNCTION0_8821CU 0x104 526 #define EEPROM_USB_MODE_8821CU 0x06 527 528 /* RTL8821CS */ 529 #define EEPROM_MAC_ADDR_8821CS 0x11A 530 531 /* RTL8821CE */ 532 #define EEPROM_MAC_ADDR_8821CE 0xD0 533 /* **************************************************** 534 * EEPROM/Efuse PG Offset for 8723D 535 * **************************************************** */ 536 #define GET_PG_KFREE_ON_8723D(_pg_m) \ 537 LE_BITS_TO_1BYTE(((u8 *)(_pg_m)) + 0xC1, 4, 1) 538 #define GET_PG_KFREE_THERMAL_K_ON_8723D(_pg_m) \ 539 LE_BITS_TO_1BYTE(((u8 *)(_pg_m)) + 0xC8, 5, 1) 540 541 #define PPG_8723D_S1 0 542 #define PPG_8723D_S0 1 543 544 #define PPG_BB_GAIN_2G_TXA_OFFSET_8723D 0xEE 545 #define PPG_BB_GAIN_2G_TX_OFFSET_8723D 0x1EE 546 #define PPG_THERMAL_OFFSET_8723D 0xEF 547 548 #define EEPROM_ChannelPlan_8723D 0xB8 549 #define EEPROM_XTAL_8723D 0xB9 550 #define EEPROM_THERMAL_METER_8723D 0xBA 551 #define EEPROM_IQK_LCK_8723D 0xBB 552 #define EEPROM_2G_5G_PA_TYPE_8723D 0xBC 553 #define EEPROM_2G_LNA_TYPE_GAIN_SEL_8723D 0xBD 554 #define EEPROM_5G_LNA_TYPE_GAIN_SEL_8723D 0xBF 555 556 #define EEPROM_RF_BOARD_OPTION_8723D 0xC1 557 #define EEPROM_FEATURE_OPTION_8723D 0xC2 558 #define EEPROM_RF_BT_SETTING_8723D 0xC3 559 #define EEPROM_VERSION_8723D 0xC4 560 #define EEPROM_CustomID_8723D 0xC5 561 #define EEPROM_TX_BBSWING_2G_8723D 0xC6 562 #define EEPROM_TX_PWR_CALIBRATE_RATE_8723D 0xC8 563 #define EEPROM_RF_ANTENNA_OPT_8723D 0xC9 564 #define EEPROM_RFE_OPTION_8723D 0xCA 565 #define EEPROM_COUNTRY_CODE_8723D 0xCB 566 567 /* RTL8723DE */ 568 #define EEPROM_MAC_ADDR_8723DE 0xD0 569 #define EEPROM_VID_8723DE 0xD6 570 #define EEPROM_DID_8723DE 0xD8 571 #define EEPROM_SVID_8723DE 0xDA 572 #define EEPROM_SMID_8723DE 0xDC 573 574 /* RTL8723DU */ 575 #define EEPROM_MAC_ADDR_8723DU 0x107 576 #define EEPROM_VID_8723DU 0x100 577 #define EEPROM_PID_8723DU 0x102 578 #define EEPROM_USB_OPTIONAL_FUNCTION0_8723DU 0x104 579 580 /* RTL8723BS */ 581 #define EEPROM_MAC_ADDR_8723DS 0x11A 582 #define EEPROM_Voltage_ADDR_8723D 0x8 583 584 /* 585 * ==================================================== 586 * EEPROM/Efuse PG Offset for 8822C 587 * ==================================================== 588 */ 589 #define EEPROM_TX_PWR_INX_8822C 0x10 590 #define EEPROM_ChannelPlan_8822C 0xB8 591 #define EEPROM_XTAL_B9_8822C 0xB9 592 #define EEPROM_IQK_LCK_8822C 0xBB 593 #define EEPROM_2G_5G_PA_TYPE_8822C 0xBC 594 /* PATH A & PATH B */ 595 #define EEPROM_2G_LNA_TYPE_GAIN_SEL_AB_8822C 0xBD 596 /* PATH C & PATH D */ 597 #define EEPROM_2G_LNA_TYPE_GAIN_SEL_CD_8822C 0xBE 598 /* PATH A & PATH B */ 599 #define EEPROM_5G_LNA_TYPE_GAIN_SEL_AB_8822C 0xBF 600 /* PATH C & PATH D */ 601 #define EEPROM_5G_LNA_TYPE_GAIN_SEL_CD_8822C 0xC0 602 603 #define EEPROM_RF_BOARD_OPTION_8822C 0xC1 604 #define EEPROM_FEATURE_OPTION_8822C 0xC2 605 #define EEPROM_RF_BT_SETTING_8822C 0xC3 606 #define EEPROM_VERSION_8822C 0xC4 607 #define EEPROM_CustomID_8822C 0xC5 608 #define EEPROM_TX_BBSWING_2G_8822C 0xC6 609 #define EEPROM_TX_PWR_CALIBRATE_RATE_8822C 0xC8 610 #define EEPROM_RF_ANTENNA_OPT_8822C 0xC9 611 #define EEPROM_RFE_OPTION_8822C 0xCA 612 #define EEPROM_COUNTRY_CODE_8822C 0xCB 613 #define EEPROM_THERMAL_METER_A_8822C 0xD0 614 #define EEPROM_THERMAL_METER_B_8822C 0xD1 615 616 #define EEPROM_XTAL_110_8822C 0x110 617 #define EEPROM_XTAL_111_8822C 0x111 618 619 /* RTL8822CU */ 620 #define EEPROM_MAC_ADDR_8822CU 0x157 621 #define EEPROM_VID_8822CU 0x100 622 #define EEPROM_PID_8822CU 0x102 623 #define EEPROM_USB_OPTIONAL_FUNCTION0_8822CU 0x104 624 #define EEPROM_USB_MODE_8822CU 0x06 625 626 /* RTL8822CS */ 627 #define EEPROM_MAC_ADDR_8822CS 0x16A 628 629 /* RTL8822CE */ 630 #define EEPROM_MAC_ADDR_8822CE 0x120 631 632 /* **************************************************** 633 * EEPROM/Efuse PG Offset for 8192F 634 * **************************************************** */ 635 #define EEPROM_ChannelPlan_8192F 0xB8 636 #define EEPROM_XTAL_8192F 0xB9 637 #define EEPROM_THERMAL_METER_8192F 0xBA 638 #define EEPROM_IQK_LCK_8192F 0xBB 639 #define EEPROM_2G_5G_PA_TYPE_8192F 0xBC 640 #define EEPROM_2G_LNA_TYPE_GAIN_SEL_8192F 0xBD 641 #define EEPROM_5G_LNA_TYPE_GAIN_SEL_8192F 0xBF 642 643 #define EEPROM_RF_BOARD_OPTION_8192F 0xC1 644 #define EEPROM_FEATURE_OPTION_8192F 0xC2 645 #define EEPROM_RF_BT_SETTING_8192F 0xC3 646 #define EEPROM_VERSION_8192F 0xC4 647 #define EEPROM_CustomID_8192F 0xC5 648 #define EEPROM_TX_BBSWING_2G_8192F 0xC6 649 #define EEPROM_TX_BBSWING_5G_8192F 0xC7 650 #define EEPROM_TX_PWR_CALIBRATE_RATE_8192F 0xC8 651 #define EEPROM_RF_ANTENNA_OPT_8192F 0xC9 652 #define EEPROM_RFE_OPTION_8192F 0xCA 653 #define EEPROM_COUNTRY_CODE_8192F 0xCB 654 /*RTL8192FS*/ 655 #define EEPROM_MAC_ADDR_8192FS 0x11A 656 #define EEPROM_Voltage_ADDR_8192F 0x8 657 /* RTL8192FU */ 658 #define EEPROM_MAC_ADDR_8192FU 0x107 659 #define EEPROM_VID_8192FU 0x100 660 #define EEPROM_PID_8192FU 0x102 661 #define EEPROM_USB_OPTIONAL_FUNCTION0_8192FU 0x104 662 /* RTL8192FE */ 663 #define EEPROM_MAC_ADDR_8192FE 0xD0 664 #define EEPROM_VID_8192FE 0xD6 665 #define EEPROM_DID_8192FE 0xD8 666 #define EEPROM_SVID_8192FE 0xDA 667 #define EEPROM_SMID_8192FE 0xDC 668 669 /* **************************************************** 670 * EEPROM/Efuse PG Offset for 8710B 671 * **************************************************** */ 672 #define RTL_EEPROM_ID_8710B 0x8195 673 #define EEPROM_Default_ThermalMeter_8710B 0x1A 674 675 #define EEPROM_CHANNEL_PLAN_8710B 0xC8 676 #define EEPROM_XTAL_8710B 0xC9 677 #define EEPROM_THERMAL_METER_8710B 0xCA 678 #define EEPROM_IQK_LCK_8710B 0xCB 679 #define EEPROM_2G_5G_PA_TYPE_8710B 0xCC 680 #define EEPROM_2G_LNA_TYPE_GAIN_SEL_8710B 0xCD 681 #define EEPROM_5G_LNA_TYPE_GAIN_SEL_8710B 0xCF 682 #define EEPROM_TX_KFREE_8710B 0xEE //Physical Efuse Address 683 #define EEPROM_THERMAL_8710B 0xEF //Physical Efuse Address 684 #define EEPROM_PACKAGE_TYPE_8710B 0xF8 //Physical Efuse Address 685 686 #define EEPROM_RF_BOARD_OPTION_8710B 0x131 687 #define EEPROM_RF_FEATURE_OPTION_8710B 0x132 688 #define EEPROM_RF_BT_SETTING_8710B 0x133 689 #define EEPROM_VERSION_8710B 0x134 690 #define EEPROM_CUSTOM_ID_8710B 0x135 691 #define EEPROM_TX_BBSWING_2G_8710B 0x136 692 #define EEPROM_TX_BBSWING_5G_8710B 0x137 693 #define EEPROM_TX_PWR_CALIBRATE_RATE_8710B 0x138 694 #define EEPROM_RF_ANTENNA_OPT_8710B 0x139 695 #define EEPROM_RFE_OPTION_8710B 0x13A 696 #define EEPROM_COUNTRY_CODE_8710B 0x13B 697 #define EEPROM_COUNTRY_CODE_2_8710B 0x13C 698 699 #define EEPROM_MAC_ADDR_8710B 0x11A 700 #define EEPROM_VID_8710BU 0x1C0 701 #define EEPROM_PID_8710BU 0x1C2 702 703 /* **************************************************** 704 * EEPROM/Efuse PG Offset for 8814B 705 * **************************************************** */ 706 707 #define EEPROM_USB_MODE_8814BU 0x06 708 /* 0x10 ~ 0x63 = TX power area. */ 709 #define EEPROM_TX_PWR_INX_8814B 0x10 710 #define EEPROM_ChannelPlan_8814B 0xB8 711 #define EEPROM_XTAL_8814B 0xB9 712 #define EEPROM_IQK_LCK_8814B 0xBB 713 714 #define EEPROM_RF_BOARD_OPTION_8814B 0xC1 715 #define EEPROM_RF_FEATURE_OPTION_8814B 0xC2 716 #define EEPROM_RF_BT_SETTING_8814B 0xC3 717 #define EEPROM_VERSION_8814B 0xC4 718 #define EEPROM_CustomID_8814B 0xC5 719 #define EEPROM_TX_BBSWING_2G_8814B 0xC6 720 #define EEPROM_TX_BBSWING_5G_8814B 0xC7 721 #define EEPROM_TX_PWR_CALIBRATE_RATE_8814B 0xC8 722 #define EEPROM_RF_ANTENNA_OPT_8814B 0xC9 723 #define EEPROM_RFE_OPTION_8814B 0xCA 724 #define EEPROM_COUNTRY_CODE_8814B 0xCB 725 726 #define EEPROM_THERMAL_METER_A_8814B 0xD0 727 #define EEPROM_THERMAL_METER_B_8814B 0xD1 728 #define EEPROM_THERMAL_METER_C_8814B 0xD2 729 #define EEPROM_THERMAL_METER_D_8814B 0xD3 730 731 #define EEPROM_MAC_ADDR_8814BE 0x120 732 #define EEPROM_VID_8814B 0x126 733 #define EEPROM_DID_8814B 0x128 734 #define EEPROM_SVID_8814B 0x12A 735 #define EEPROM_SMID_8814B 0x12C 736 737 /* RTL8814BU */ 738 #define EEPROM_MAC_ADDR_8814BU 0x157 739 #define EEPROM_VID_8814BU 0x150 740 #define EEPROM_PID_8814BU 0x152 741 #define EEPROM_USB_OPTIONAL_FUNCTION0_8814BU 0x154 742 743 /* 744 * ==================================================== 745 * EEPROM/Efuse PG Offset for 8723F 746 * ==================================================== 747 */ 748 #define EEPROM_TX_PWR_INX_8723F 0x10 749 #define EEPROM_ChannelPlan_8723F 0xB8 750 #define EEPROM_XTAL_B9_8723F 0xB9 751 #define EEPROM_THERMAL_METER_8723F 0xBA 752 #define EEPROM_IQK_LCK_8723F 0xBB 753 #define EEPROM_2G_5G_PA_TYPE_8723F 0xBC 754 /* PATH A & PATH B */ 755 #define EEPROM_2G_LNA_TYPE_GAIN_SEL_AB_8723F 0xBD 756 /* PATH C & PATH D */ 757 #define EEPROM_2G_LNA_TYPE_GAIN_SEL_CD_8723F 0xBE 758 /* PATH A & PATH B */ 759 #define EEPROM_5G_LNA_TYPE_GAIN_SEL_AB_8723F 0xBF 760 /* PATH C & PATH D */ 761 #define EEPROM_5G_LNA_TYPE_GAIN_SEL_CD_8723F 0xC0 762 763 #define EEPROM_RF_BOARD_OPTION_8723F 0xC1 764 #define EEPROM_FEATURE_OPTION_8723F 0xC2 765 #define EEPROM_RF_BT_SETTING_8723F 0xC3 766 #define EEPROM_VERSION_8723F 0xC4 767 #define EEPROM_CustomID_8723F 0xC5 768 #define EEPROM_TX_BBSWING_2G_8723F 0xC6 769 #define EEPROM_TX_PWR_CALIBRATE_RATE_8723F 0xC8 770 #define EEPROM_RF_ANTENNA_OPT_8723F 0xC9 771 #define EEPROM_RFE_OPTION_8723F 0xCA 772 #define EEPROM_COUNTRY_CODE_8723F 0xCB 773 774 /* RTL8723FU */ 775 #define EEPROM_MAC_ADDR_8723FU 0x108 776 #define EEPROM_VID_8723FU 0x100 777 #define EEPROM_PID_8723FU 0x102 778 #define EEPROM_USB_OPTIONAL_FUNCTION0_8723FU 0x104 779 #define EEPROM_USB_MODE_8723FU 0x03 780 781 /* RTL8723FS */ 782 #define EEPROM_MAC_ADDR_8723FS 0x11A 783 784 /* **************************************************** 785 * EEPROM/Efuse Value Type 786 * **************************************************** */ 787 #define EETYPE_TX_PWR 0x0 788 #define EETYPE_MAX_RFE_8192F 0x31 789 /* **************************************************** 790 * EEPROM/Efuse Default Value 791 * **************************************************** */ 792 #define EEPROM_CID_DEFAULT 0x0 793 #define EEPROM_CID_DEFAULT_EXT 0xFF /* Reserved for Realtek */ 794 #define EEPROM_CID_TOSHIBA 0x4 795 #define EEPROM_CID_CCX 0x10 796 #define EEPROM_CID_QMI 0x0D 797 #define EEPROM_CID_WHQL 0xFE 798 799 #define EEPROM_CHANNEL_PLAN_FCC 0x0 800 #define EEPROM_CHANNEL_PLAN_IC 0x1 801 #define EEPROM_CHANNEL_PLAN_ETSI 0x2 802 #define EEPROM_CHANNEL_PLAN_SPAIN 0x3 803 #define EEPROM_CHANNEL_PLAN_FRANCE 0x4 804 #define EEPROM_CHANNEL_PLAN_MKK 0x5 805 #define EEPROM_CHANNEL_PLAN_MKK1 0x6 806 #define EEPROM_CHANNEL_PLAN_ISRAEL 0x7 807 #define EEPROM_CHANNEL_PLAN_TELEC 0x8 808 #define EEPROM_CHANNEL_PLAN_GLOBAL_DOMAIN 0x9 809 #define EEPROM_CHANNEL_PLAN_WORLD_WIDE_13 0xA 810 #define EEPROM_CHANNEL_PLAN_NCC_TAIWAN 0xB 811 #define EEPROM_CHANNEL_PLAN_CHIAN 0XC 812 #define EEPROM_CHANNEL_PLAN_SINGAPORE_INDIA_MEXICO 0XD 813 #define EEPROM_CHANNEL_PLAN_KOREA 0xE 814 #define EEPROM_CHANNEL_PLAN_TURKEY 0xF 815 #define EEPROM_CHANNEL_PLAN_JAPAN 0x10 816 #define EEPROM_CHANNEL_PLAN_FCC_NO_DFS 0x11 817 #define EEPROM_CHANNEL_PLAN_JAPAN_NO_DFS 0x12 818 #define EEPROM_CHANNEL_PLAN_WORLD_WIDE_5G 0x13 819 #define EEPROM_CHANNEL_PLAN_TAIWAN_NO_DFS 0x14 820 821 #define EEPROM_USB_OPTIONAL1 0xE 822 #define EEPROM_CHANNEL_PLAN_BY_HW_MASK 0x80 823 824 #define RTL_EEPROM_ID 0x8129 825 #define EEPROM_Default_TSSI 0x0 826 #define EEPROM_Default_BoardType 0x02 827 #define EEPROM_Default_ThermalMeter 0x12 828 #define EEPROM_Default_ThermalMeter_92SU 0x7 829 #define EEPROM_Default_ThermalMeter_88E 0x18 830 #define EEPROM_Default_ThermalMeter_8812 0x18 831 #define EEPROM_Default_ThermalMeter_8192E 0x1A 832 #define EEPROM_Default_ThermalMeter_8723B 0x18 833 #define EEPROM_Default_ThermalMeter_8703B 0x18 834 #define EEPROM_Default_ThermalMeter_8723D 0x18 835 #define EEPROM_Default_ThermalMeter_8188F 0x18 836 #define EEPROM_Default_ThermalMeter_8188GTV 0x18 837 #define EEPROM_Default_ThermalMeter_8814A 0x18 838 #define EEPROM_Default_ThermalMeter_8192F 0x1A 839 #define EEPROM_Default_ThermalMeter_8814B 0x20 840 841 #define EEPROM_Default_CrystalCap 0x0 842 #define EEPROM_Default_CrystalCap_8723A 0x20 843 #define EEPROM_Default_CrystalCap_88E 0x20 844 #define EEPROM_Default_CrystalCap_8812 0x20 845 #define EEPROM_Default_CrystalCap_8814 0x20 846 #define EEPROM_Default_CrystalCap_8192E 0x20 847 #define EEPROM_Default_CrystalCap_8723B 0x20 848 #define EEPROM_Default_CrystalCap_8703B 0x20 849 #define EEPROM_Default_CrystalCap_8723D 0x20 850 #define EEPROM_Default_CrystalCap_8723F 0x3F 851 #define EEPROM_Default_CrystalCap_8188F 0x20 852 #define EEPROM_Default_CrystalCap_8188GTV 0x20 853 #define EEPROM_Default_CrystalCap_8192F 0x20 854 #define EEPROM_Default_CrystalCap_B9_8822C 0x3F 855 #define EEPROM_Default_CrystalCap_110_8822C 0x40 856 #define EEPROM_Default_CrystalCap_111_8822C 0x40 857 #define EEPROM_Default_CrystalCap_8814B 0x40 858 #define EEPROM_Default_CrystalFreq 0x0 859 #define EEPROM_Default_TxPowerLevel_92C 0x22 860 #define EEPROM_Default_TxPowerLevel_2G 0x2C 861 #define EEPROM_Default_TxPowerLevel_5G 0x22 862 #define EEPROM_Default_TxPowerLevel 0x22 863 #define EEPROM_Default_HT40_2SDiff 0x0 864 #define EEPROM_Default_HT20_Diff 2 865 #define EEPROM_Default_LegacyHTTxPowerDiff 0x3 866 #define EEPROM_Default_LegacyHTTxPowerDiff_92C 0x3 867 #define EEPROM_Default_LegacyHTTxPowerDiff_92D 0x4 868 #define EEPROM_Default_HT40_PwrMaxOffset 0 869 #define EEPROM_Default_HT20_PwrMaxOffset 0 870 871 #define EEPROM_Default_PID 0x1234 872 #define EEPROM_Default_VID 0x5678 873 #define EEPROM_Default_CustomerID 0xAB 874 #define EEPROM_Default_CustomerID_8188E 0x00 875 #define EEPROM_Default_SubCustomerID 0xCD 876 #define EEPROM_Default_Version 0 877 878 #define EEPROM_Default_externalPA_C9 0x00 879 #define EEPROM_Default_externalPA_CC 0xFF 880 #define EEPROM_Default_internalPA_SP3T_C9 0xAA 881 #define EEPROM_Default_internalPA_SP3T_CC 0xAF 882 #define EEPROM_Default_internalPA_SPDT_C9 0xAA 883 #ifdef CONFIG_PCI_HCI 884 #define EEPROM_Default_internalPA_SPDT_CC 0xA0 885 #else 886 #define EEPROM_Default_internalPA_SPDT_CC 0xFA 887 #endif 888 #define EEPROM_Default_PAType 0 889 #define EEPROM_Default_LNAType 0 890 891 /* New EFUSE default value */ 892 #define EEPROM_DEFAULT_CHANNEL_PLAN 0x7F 893 #define EEPROM_DEFAULT_BOARD_OPTION 0x00 894 #define EEPROM_DEFAULT_RFE_OPTION_8192E 0xFF 895 #define EEPROM_DEFAULT_RFE_OPTION_8188E 0xFF 896 #define EEPROM_DEFAULT_RFE_OPTION 0x04 897 #define EEPROM_DEFAULT_FEATURE_OPTION 0x00 898 #define EEPROM_DEFAULT_BT_OPTION 0x10 899 900 901 #define EEPROM_DEFAULT_TX_CALIBRATE_RATE 0x00 902 903 /* PCIe related */ 904 #define EEPROM_PCIE_DEV_CAP_01 0xE0 /* Express device capability in PCIe configuration space, i.e., map to offset 0x74 */ 905 #define EEPROM_PCIE_DEV_CAP_02 0xE1 /* Express device capability in PCIe configuration space, i.e., map to offset 0x75 */ 906 907 908 /* 909 * For VHT series TX power by rate table. 910 * VHT TX power by rate off setArray = 911 * Band:-2G&5G = 0 / 1 912 * RF: at most 4*4 = ABCD=0/1/2/3 913 * CCK=0 OFDM=1/2 HT-MCS 0-15=3/4/56 VHT=7/8/9/10/11 914 * */ 915 #define TX_PWR_BY_RATE_NUM_BAND 2 916 #define TX_PWR_BY_RATE_NUM_RF 4 917 #define TX_PWR_BY_RATE_NUM_RATE 84 918 919 #define TXPWR_LMT_MAX_RF 4 920 921 /* ---------------------------------------------------------------------------- 922 * EEPROM/EFUSE data structure definition. 923 * ---------------------------------------------------------------------------- */ 924 925 /* For 88E new structure */ 926 927 /* 928 2.4G: 929 { 930 {1,2}, 931 {3,4,5}, 932 {6,7,8}, 933 {9,10,11}, 934 {12,13}, 935 {14} 936 } 937 938 5G: 939 { 940 {36,38,40}, 941 {44,46,48}, 942 {52,54,56}, 943 {60,62,64}, 944 {100,102,104}, 945 {108,110,112}, 946 {116,118,120}, 947 {124,126,128}, 948 {132,134,136}, 949 {140,142,144}, 950 {149,151,153}, 951 {157,159,161}, 952 {173,175,177}, 953 } 954 */ 955 #define MAX_RF_PATH 4 956 #define RF_PATH_MAX MAX_RF_PATH 957 #define MAX_CHNL_GROUP_24G 6 958 #define MAX_CHNL_GROUP_5G 14 959 960 /* It must always set to 4, otherwise read efuse table sequence will be wrong. */ 961 #define MAX_TX_COUNT 4 962 963 typedef enum _BT_Ant_NUM { 964 Ant_x2 = 0, 965 Ant_x1 = 1 966 } BT_Ant_NUM, *PBT_Ant_NUM; 967 968 typedef enum _BT_CoType { 969 BT_2WIRE = 0, 970 BT_ISSC_3WIRE = 1, 971 BT_ACCEL = 2, 972 BT_CSR_BC4 = 3, 973 BT_CSR_BC8 = 4, 974 BT_RTL8756 = 5, 975 BT_RTL8723A = 6, 976 BT_RTL8821 = 7, 977 BT_RTL8723B = 8, 978 BT_RTL8192E = 9, 979 BT_RTL8814A = 10, 980 BT_RTL8812A = 11, 981 BT_RTL8703B = 12, 982 BT_RTL8822B = 13, 983 BT_RTL8723D = 14, 984 BT_RTL8821C = 15, 985 BT_RTL8192F = 16, 986 BT_RTL8822C = 17, 987 BT_RTL8814B = 18, 988 BT_RTL8723F = 19, 989 } BT_CoType, *PBT_CoType; 990 991 typedef enum _BT_RadioShared { 992 BT_Radio_Shared = 0, 993 BT_Radio_Individual = 1, 994 } BT_RadioShared, *PBT_RadioShared; 995 996 997 #endif 998