1 1.1 christos /* $NetBSD: arn9380reg.h,v 1.1 2013/03/30 02:53:02 christos Exp $ */ 2 1.1 christos /* $OpenBSD: ar9380reg.h,v 1.19 2012/10/20 09:54:20 stsp Exp $ */ 3 1.1 christos 4 1.1 christos /*- 5 1.1 christos * Copyright (c) 2010 Damien Bergamini <damien.bergamini (at) free.fr> 6 1.1 christos * Copyright (c) 2010 Atheros Communications Inc. 7 1.1 christos * 8 1.1 christos * Permission to use, copy, modify, and/or distribute this software for any 9 1.1 christos * purpose with or without fee is hereby granted, provided that the above 10 1.1 christos * copyright notice and this permission notice appear in all copies. 11 1.1 christos * 12 1.1 christos * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 13 1.1 christos * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 14 1.1 christos * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 15 1.1 christos * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 16 1.1 christos * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 17 1.1 christos * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 18 1.1 christos * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 19 1.1 christos */ 20 1.1 christos 21 1.1 christos #ifndef _ARN9380REG_H_ 22 1.1 christos #define _ARN9380REG_H_ 23 1.1 christos 24 1.1 christos #define AR9380_MAX_CHAINS 3 25 1.1 christos 26 1.1 christos #define AR9380_PHY_CCA_NOM_VAL_2GHZ (-110) 27 1.1 christos #define AR9380_PHY_CCA_NOM_VAL_5GHZ (-115) 28 1.1 christos #define AR9380_PHY_CCA_MIN_GOOD_VAL_2GHZ (-125) 29 1.1 christos #define AR9380_PHY_CCA_MIN_GOOD_VAL_5GHZ (-125) 30 1.1 christos #define AR9380_PHY_CCA_MAX_GOOD_VAL_2GHZ ( -95) 31 1.1 christos #define AR9380_PHY_CCA_MAX_GOOD_VAL_5GHZ (-100) 32 1.1 christos 33 1.1 christos /* 34 1.1 christos * ROM layout used by AR9380. 35 1.1 christos */ 36 1.1 christos #define AR9380_NUM_5G_CAL_PIERS 8 37 1.1 christos #define AR9380_NUM_2G_CAL_PIERS 3 38 1.1 christos #define AR9380_NUM_5G_20_TARGET_POWERS 8 39 1.1 christos #define AR9380_NUM_5G_40_TARGET_POWERS 8 40 1.1 christos #define AR9380_NUM_2G_CCK_TARGET_POWERS 2 41 1.1 christos #define AR9380_NUM_2G_20_TARGET_POWERS 3 42 1.1 christos #define AR9380_NUM_2G_40_TARGET_POWERS 3 43 1.1 christos #define AR9380_NUM_CTLS_5G 9 44 1.1 christos #define AR9380_NUM_CTLS_2G 12 45 1.1 christos #define AR9380_NUM_BAND_EDGES_5G 8 46 1.1 christos #define AR9380_NUM_BAND_EDGES_2G 4 47 1.1 christos #define AR9380_NUM_PD_GAINS 4 48 1.1 christos #define AR9380_PD_GAINS_IN_MASK 4 49 1.1 christos #define AR9380_PD_GAIN_ICEPTS 5 50 1.1 christos #define AR9380_EEPROM_MODAL_SPURS 5 51 1.1 christos #define AR9380_CUSTOMER_DATA_SIZE 20 52 1.1 christos 53 1.1 christos struct ar9380_cal_ctl_data_2g { 54 1.1 christos uint8_t ctlEdges[AR9380_NUM_BAND_EDGES_2G]; 55 1.1 christos } __packed; 56 1.1 christos 57 1.1 christos struct ar9380_cal_ctl_data_5g { 58 1.1 christos uint8_t ctlEdges[AR9380_NUM_BAND_EDGES_5G]; 59 1.1 christos } __packed; 60 1.1 christos 61 1.1 christos struct ar9380_base_eep_hdr { 62 1.1 christos uint16_t regDmn[2]; 63 1.1 christos uint8_t txrxMask; 64 1.1 christos #define AR_EEP_TX_MASK_M 0xf0 65 1.1 christos #define AR_EEP_TX_MASK_S 4 66 1.1 christos #define AR_EEP_RX_MASK_M 0x0f 67 1.1 christos #define AR_EEP_RX_MASK_S 0 68 1.1 christos 69 1.1 christos uint8_t opFlags; 70 1.1 christos #define AR_OPFLAGS_11A 0x01 71 1.1 christos #define AR_OPFLAGS_11G 0x02 72 1.1 christos #define AR_OPFLAGS_11N_5G40 0x04 73 1.1 christos #define AR_OPFLAGS_11N_2G40 0x08 74 1.1 christos #define AR_OPFLAGS_11N_5G20 0x10 75 1.1 christos #define AR_OPFLAGS_11N_2G20 0x20 76 1.1 christos /* Shortcut. */ 77 1.1 christos #define AR_OPFLAGS_11N 0x3c 78 1.1 christos 79 1.1 christos uint8_t eepMisc; 80 1.1 christos uint8_t rfSilent; 81 1.1 christos #define AR_EEP_RFSILENT_ENABLED 0x0001 82 1.1 christos #define AR_EEP_RFSILENT_GPIO_SEL_M 0x001c 83 1.1 christos #define AR_EEP_RFSILENT_GPIO_SEL_S 2 84 1.1 christos #define AR_EEP_RFSILENT_POLARITY 0x0002 85 1.1 christos 86 1.1 christos uint8_t blueToothOptions; 87 1.1 christos uint8_t deviceCap; 88 1.1 christos uint8_t deviceType; 89 1.1 christos int8_t pwrTableOffset; 90 1.1 christos uint8_t params_for_tuning_caps[2]; 91 1.1 christos uint8_t featureEnable; 92 1.1 christos #define AR_EEP_TX_TEMP_COMP_EN 0x01 93 1.1 christos #define AR_EEP_TX_VOLT_COMP_EN 0x02 94 1.1 christos #define AR_EEP_FAST_CLOCK_EN 0x04 95 1.1 christos #define AR_EEP_DOUBLING_EN 0x08 96 1.1 christos #define AR_EEP_INTERNAL_REGULATOR 0x10 97 1.1 christos #define AR_EEP_PAPRD 0x20 98 1.1 christos #define AR_EEP_TUNING_CAPS 0x40 99 1.1 christos 100 1.1 christos uint8_t miscConfiguration; 101 1.1 christos #define AR_EEP_DRIVE_STRENGTH 0x01 102 1.1 christos #define AR_EEP_CHAIN_MASK_REDUCE 0x08 103 1.1 christos 104 1.1 christos uint8_t eepromWriteEnableGpio; 105 1.1 christos uint8_t wlanDisableGpio; 106 1.1 christos uint8_t wlanLedGpio; 107 1.1 christos uint8_t rxBandSelectGpio; 108 1.1 christos uint8_t txrxgain; 109 1.1 christos #define AR_EEP_TX_GAIN_M 0xf0 110 1.1 christos #define AR_EEP_TX_GAIN_S 4 111 1.1 christos #define AR_EEP_TX_GAIN_HIGH_OB_DB 1 112 1.1 christos #define AR_EEP_TX_GAIN_LOW_OB_DB 2 113 1.1 christos #define AR_EEP_TX_GAIN_HIGH_POWER 3 114 1.1 christos #define AR_EEP_RX_GAIN_M 0x0f 115 1.1 christos #define AR_EEP_RX_GAIN_S 0 116 1.1 christos #define AR_EEP_RX_GAIN_WO_XLNA 1 117 1.1 christos 118 1.1 christos uint32_t swreg; 119 1.1 christos } __packed; 120 1.1 christos 121 1.1 christos struct ar9380_modal_eep_header { 122 1.1 christos uint32_t antCtrlCommon; 123 1.1 christos uint32_t antCtrlCommon2; 124 1.1 christos uint16_t antCtrlChain[AR9380_MAX_CHAINS]; 125 1.1 christos uint8_t xatten1DB[AR9380_MAX_CHAINS]; 126 1.1 christos uint8_t xatten1Margin[AR9380_MAX_CHAINS]; 127 1.1 christos int8_t tempSlope; 128 1.1 christos int8_t voltSlope; 129 1.1 christos uint8_t spurChans[AR9380_EEPROM_MODAL_SPURS]; 130 1.1 christos int8_t noiseFloorThreshCh[AR9380_MAX_CHAINS]; 131 1.1 christos uint8_t ob[AR9380_MAX_CHAINS]; 132 1.1 christos uint8_t db_stage2[AR9380_MAX_CHAINS]; 133 1.1 christos uint8_t db_stage3[AR9380_MAX_CHAINS]; 134 1.1 christos uint8_t db_stage4[AR9380_MAX_CHAINS]; 135 1.1 christos uint8_t xpaBiasLvl; 136 1.1 christos uint8_t txFrameToDataStart; 137 1.1 christos uint8_t txFrameToPaOn; 138 1.1 christos uint8_t txClip; 139 1.1 christos int8_t antennaGain; 140 1.1 christos uint8_t switchSettling; 141 1.1 christos int8_t adcDesiredSize; 142 1.1 christos uint8_t txEndToXpaOff; 143 1.1 christos uint8_t txEndToRxOn; 144 1.1 christos uint8_t txFrameToXpaOn; 145 1.1 christos uint8_t thresh62; 146 1.1 christos uint32_t papdRateMaskHt20; 147 1.1 christos uint32_t papdRateMaskHt40; 148 1.1 christos uint8_t futureModal[10]; 149 1.1 christos } __packed; 150 1.1 christos 151 1.1 christos struct ar9380_cal_data_per_freq_op_loop { 152 1.1 christos int8_t refPower; 153 1.1 christos uint8_t voltMeas; 154 1.1 christos uint8_t tempMeas; 155 1.1 christos int8_t rxNoisefloorCal; 156 1.1 christos int8_t rxNoisefloorPower; 157 1.1 christos uint8_t rxTempMeas; 158 1.1 christos } __packed; 159 1.1 christos 160 1.1 christos struct ar9380_base_extension_1 { 161 1.1 christos uint8_t ant_div_control; 162 1.1 christos #define AR_EEP_ANT_DIV_CTRL_ALL_M 0x3f 163 1.1 christos #define AR_EEP_ANT_DIV_CTRL_ALL_S 0 164 1.1 christos #define AR_EEP_ANT_DIV_CTRL_ANT_DIV 0x40 165 1.1 christos #define AR_EEP_ANT_DIV_CTRL_FAST_DIV 0x80 166 1.1 christos 167 1.1 christos uint8_t future[13]; 168 1.1 christos } __packed; 169 1.1 christos 170 1.1 christos struct ar9380_base_extension_2 { 171 1.1 christos int8_t tempSlopeLow; 172 1.1 christos int8_t tempSlopeHigh; 173 1.1 christos uint8_t xatten1DBLow[AR9380_MAX_CHAINS]; 174 1.1 christos uint8_t xatten1MarginLow[AR9380_MAX_CHAINS]; 175 1.1 christos uint8_t xatten1DBHigh[AR9380_MAX_CHAINS]; 176 1.1 christos uint8_t xatten1MarginHigh[AR9380_MAX_CHAINS]; 177 1.1 christos } __packed; 178 1.1 christos 179 1.1 christos struct ar9380_eeprom { 180 1.1 christos uint8_t eepromVersion; 181 1.1 christos uint8_t templateVersion; 182 1.1 christos uint8_t macAddr[6]; 183 1.1 christos uint8_t custData[AR9380_CUSTOMER_DATA_SIZE]; 184 1.1 christos struct ar9380_base_eep_hdr baseEepHeader; 185 1.1 christos struct ar9380_modal_eep_header modalHeader2G; 186 1.1 christos struct ar9380_base_extension_1 base_ext1; 187 1.1 christos uint8_t calFreqPier2G[AR9380_NUM_2G_CAL_PIERS]; 188 1.1 christos struct ar9380_cal_data_per_freq_op_loop 189 1.1 christos calPierData2G[AR9380_MAX_CHAINS][AR9380_NUM_2G_CAL_PIERS]; 190 1.1 christos uint8_t calTargetFbinCck[AR9380_NUM_2G_CCK_TARGET_POWERS]; 191 1.1 christos uint8_t calTargetFbin2G[AR9380_NUM_2G_20_TARGET_POWERS]; 192 1.1 christos uint8_t calTargetFbin2GHT20[AR9380_NUM_2G_20_TARGET_POWERS]; 193 1.1 christos uint8_t calTargetFbin2GHT40[AR9380_NUM_2G_40_TARGET_POWERS]; 194 1.1 christos struct ar_cal_target_power_leg 195 1.1 christos calTargetPowerCck[AR9380_NUM_2G_CCK_TARGET_POWERS]; 196 1.1 christos struct ar_cal_target_power_leg 197 1.1 christos calTargetPower2G[AR9380_NUM_2G_20_TARGET_POWERS]; 198 1.1 christos struct ar_cal_target_power_ht 199 1.1 christos calTargetPower2GHT20[AR9380_NUM_2G_20_TARGET_POWERS]; 200 1.1 christos struct ar_cal_target_power_ht 201 1.1 christos calTargetPower2GHT40[AR9380_NUM_2G_40_TARGET_POWERS]; 202 1.1 christos uint8_t ctlIndex_2G[AR9380_NUM_CTLS_2G]; 203 1.1 christos uint8_t ctl_freqbin_2G[AR9380_NUM_CTLS_2G][AR9380_NUM_BAND_EDGES_2G]; 204 1.1 christos struct ar9380_cal_ctl_data_2g ctlPowerData_2G[AR9380_NUM_CTLS_2G]; 205 1.1 christos struct ar9380_modal_eep_header modalHeader5G; 206 1.1 christos struct ar9380_base_extension_2 base_ext2; 207 1.1 christos uint8_t calFreqPier5G[AR9380_NUM_5G_CAL_PIERS]; 208 1.1 christos struct ar9380_cal_data_per_freq_op_loop 209 1.1 christos calPierData5G[AR9380_MAX_CHAINS][AR9380_NUM_5G_CAL_PIERS]; 210 1.1 christos uint8_t calTargetFbin5G[AR9380_NUM_5G_20_TARGET_POWERS]; 211 1.1 christos uint8_t calTargetFbin5GHT20[AR9380_NUM_5G_20_TARGET_POWERS]; 212 1.1 christos uint8_t calTargetFbin5GHT40[AR9380_NUM_5G_40_TARGET_POWERS]; 213 1.1 christos struct ar_cal_target_power_leg 214 1.1 christos calTargetPower5G[AR9380_NUM_5G_20_TARGET_POWERS]; 215 1.1 christos struct ar_cal_target_power_ht 216 1.1 christos calTargetPower5GHT20[AR9380_NUM_5G_20_TARGET_POWERS]; 217 1.1 christos struct ar_cal_target_power_ht 218 1.1 christos calTargetPower5GHT40[AR9380_NUM_5G_40_TARGET_POWERS]; 219 1.1 christos uint8_t ctlIndex_5G[AR9380_NUM_CTLS_5G]; 220 1.1 christos uint8_t ctl_freqbin_5G[AR9380_NUM_CTLS_5G][AR9380_NUM_BAND_EDGES_5G]; 221 1.1 christos struct ar9380_cal_ctl_data_5g ctlPowerData_5G[AR9380_NUM_CTLS_5G]; 222 1.1 christos } __packed; 223 1.1 christos 224 1.1 christos /* 225 1.1 christos * ROM templates (little endian). 226 1.1 christos */ 227 1.1 christos static const uint8_t ar9380_def_rom[] = { 228 1.1 christos 0x02, 0x02, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x00, 0x00, 229 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 230 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 231 1.1 christos 0x1f, 0x00, 0x77, 0x03, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 232 1.1 christos 0x00, 0x00, 0x0c, 0x00, 0x03, 0x00, 0x08, 0xff, 0x00, 0x00, 233 1.1 christos 0x00, 0x00, 0x00, 0x10, 0x01, 0x00, 0x00, 0x22, 0x22, 0x02, 234 1.1 christos 0x00, 0x50, 0x01, 0x50, 0x01, 0x50, 0x01, 0x00, 0x00, 0x00, 235 1.1 christos 0x00, 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 236 1.1 christos 0xff, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 237 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x0e, 0x03, 0x00, 238 1.1 christos 0x2c, 0xe2, 0x00, 0x02, 0x0e, 0x1c, 0xe0, 0xe0, 0xf0, 0x0c, 239 1.1 christos 0xe0, 0xe0, 0xf0, 0x6c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 240 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 241 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x89, 242 1.1 christos 0xac, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 243 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 244 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 245 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 246 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 247 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0xb8, 0x70, 0x89, 0xac, 248 1.1 christos 0x70, 0x89, 0xac, 0x70, 0x89, 0xac, 0x24, 0x24, 0x24, 0x24, 249 1.1 christos 0x24, 0x24, 0x24, 0x24, 0x20, 0x20, 0x1c, 0x18, 0x20, 0x20, 250 1.1 christos 0x1c, 0x18, 0x20, 0x20, 0x1c, 0x18, 0x20, 0x20, 0x20, 0x20, 251 1.1 christos 0x1c, 0x14, 0x20, 0x20, 0x1c, 0x14, 0x20, 0x20, 0x1c, 0x14, 252 1.1 christos 0x20, 0x20, 0x20, 0x20, 0x1c, 0x14, 0x20, 0x20, 0x1c, 0x14, 253 1.1 christos 0x20, 0x20, 0x1c, 0x14, 0x20, 0x20, 0x20, 0x20, 0x1c, 0x14, 254 1.1 christos 0x20, 0x20, 0x1c, 0x14, 0x20, 0x20, 0x1c, 0x14, 0x20, 0x20, 255 1.1 christos 0x20, 0x20, 0x1c, 0x14, 0x20, 0x20, 0x1c, 0x14, 0x20, 0x20, 256 1.1 christos 0x1c, 0x14, 0x20, 0x20, 0x20, 0x20, 0x1c, 0x14, 0x20, 0x20, 257 1.1 christos 0x1c, 0x14, 0x20, 0x20, 0x1c, 0x14, 0x20, 0x20, 0x20, 0x20, 258 1.1 christos 0x1c, 0x14, 0x20, 0x20, 0x1c, 0x14, 0x20, 0x20, 0x1c, 0x14, 259 1.1 christos 0x11, 0x12, 0x15, 0x17, 0x41, 0x42, 0x45, 0x47, 0x31, 0x32, 260 1.1 christos 0x35, 0x37, 0x70, 0x75, 0x9d, 0xa2, 0x70, 0x75, 0xa2, 0xff, 261 1.1 christos 0x70, 0x75, 0xa2, 0xff, 0x7a, 0x7f, 0x93, 0x98, 0x70, 0x75, 262 1.1 christos 0xac, 0xb8, 0x70, 0x75, 0xac, 0x00, 0x70, 0x75, 0xac, 0x00, 263 1.1 christos 0x7a, 0x7f, 0x93, 0xa2, 0x70, 0x75, 0xac, 0x00, 0x70, 0x75, 264 1.1 christos 0xac, 0x00, 0x70, 0x75, 0xac, 0x00, 0x7a, 0x7f, 0x93, 0xa2, 265 1.1 christos 0x3c, 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x3c, 0x3c, 0x7c, 0x3c, 266 1.1 christos 0x3c, 0x7c, 0x7c, 0x3c, 0x00, 0x00, 0x3c, 0x7c, 0x3c, 0x3c, 267 1.1 christos 0x3c, 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x7c, 0x3c, 0x3c, 0x7c, 268 1.1 christos 0x3c, 0x3c, 0x3c, 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x3c, 0x3c, 269 1.1 christos 0x3c, 0x7c, 0x7c, 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x10, 0x01, 270 1.1 christos 0x00, 0x00, 0x22, 0x22, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 271 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x00, 272 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x03, 0x03, 273 1.1 christos 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 274 1.1 christos 0x00, 0x0e, 0x0e, 0x03, 0x00, 0x2d, 0xe2, 0x00, 0x02, 0x0e, 275 1.1 christos 0x1c, 0x80, 0xc0, 0x80, 0x0c, 0x80, 0xc0, 0x80, 0x00, 0x00, 276 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 277 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 278 1.1 christos 0x00, 0x00, 0x00, 0x4c, 0x54, 0x68, 0x78, 0x8c, 0xa0, 0xb9, 279 1.1 christos 0xcd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 280 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 281 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 282 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 283 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 284 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 285 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 286 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 287 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 288 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 289 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 290 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 291 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 292 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 293 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x54, 0x68, 0x78, 0x8c, 294 1.1 christos 0xa0, 0xb9, 0xcd, 0x4c, 0x58, 0x68, 0x8c, 0xb4, 0xbd, 0xb9, 295 1.1 christos 0xcd, 0x4c, 0x58, 0x68, 0x8c, 0xb4, 0xbd, 0xb9, 0xcd, 0x14, 296 1.1 christos 0x14, 0x14, 0x0a, 0x14, 0x14, 0x14, 0x0a, 0x14, 0x14, 0x14, 297 1.1 christos 0x0a, 0x14, 0x14, 0x14, 0x0a, 0x14, 0x14, 0x14, 0x0a, 0x14, 298 1.1 christos 0x14, 0x14, 0x0a, 0x14, 0x14, 0x14, 0x0a, 0x14, 0x14, 0x14, 299 1.1 christos 0x0a, 0x14, 0x14, 0x0a, 0x0a, 0x00, 0x00, 0x0a, 0x0a, 0x00, 300 1.1 christos 0x00, 0x0a, 0x0a, 0x00, 0x00, 0x14, 0x14, 0x0a, 0x0a, 0x00, 301 1.1 christos 0x00, 0x0a, 0x0a, 0x00, 0x00, 0x0a, 0x0a, 0x00, 0x00, 0x14, 302 1.1 christos 0x14, 0x0a, 0x0a, 0x00, 0x00, 0x0a, 0x0a, 0x00, 0x00, 0x0a, 303 1.1 christos 0x0a, 0x00, 0x00, 0x14, 0x14, 0x0a, 0x0a, 0x00, 0x00, 0x0a, 304 1.1 christos 0x0a, 0x00, 0x00, 0x0a, 0x0a, 0x00, 0x00, 0x14, 0x14, 0x0a, 305 1.1 christos 0x0a, 0x00, 0x00, 0x0a, 0x0a, 0x00, 0x00, 0x0a, 0x0a, 0x00, 306 1.1 christos 0x00, 0x14, 0x14, 0x0a, 0x0a, 0x00, 0x00, 0x0a, 0x0a, 0x00, 307 1.1 christos 0x00, 0x0a, 0x0a, 0x00, 0x00, 0x14, 0x14, 0x0a, 0x0a, 0x00, 308 1.1 christos 0x00, 0x0a, 0x0a, 0x00, 0x00, 0x0a, 0x0a, 0x00, 0x00, 0x14, 309 1.1 christos 0x14, 0x0a, 0x0a, 0x00, 0x00, 0x0a, 0x0a, 0x00, 0x00, 0x0a, 310 1.1 christos 0x0a, 0x00, 0x00, 0x14, 0x14, 0x0a, 0x0a, 0x00, 0x00, 0x0a, 311 1.1 christos 0x0a, 0x00, 0x00, 0x0a, 0x0a, 0x00, 0x00, 0x14, 0x14, 0x0a, 312 1.1 christos 0x0a, 0x00, 0x00, 0x0a, 0x0a, 0x00, 0x00, 0x0a, 0x0a, 0x00, 313 1.1 christos 0x00, 0x14, 0x14, 0x0a, 0x0a, 0x00, 0x00, 0x0a, 0x0a, 0x00, 314 1.1 christos 0x00, 0x0a, 0x0a, 0x00, 0x00, 0x14, 0x14, 0x0a, 0x0a, 0x00, 315 1.1 christos 0x00, 0x0a, 0x0a, 0x00, 0x00, 0x0a, 0x0a, 0x00, 0x00, 0x14, 316 1.1 christos 0x14, 0x0a, 0x0a, 0x00, 0x00, 0x0a, 0x0a, 0x00, 0x00, 0x0a, 317 1.1 christos 0x0a, 0x00, 0x00, 0x14, 0x14, 0x0a, 0x0a, 0x00, 0x00, 0x0a, 318 1.1 christos 0x0a, 0x00, 0x00, 0x0a, 0x0a, 0x00, 0x00, 0x14, 0x14, 0x0a, 319 1.1 christos 0x0a, 0x00, 0x00, 0x0a, 0x0a, 0x00, 0x00, 0x0a, 0x0a, 0x00, 320 1.1 christos 0x00, 0x14, 0x14, 0x0a, 0x0a, 0x00, 0x00, 0x0a, 0x0a, 0x00, 321 1.1 christos 0x00, 0x0a, 0x0a, 0x00, 0x00, 0x10, 0x16, 0x18, 0x40, 0x46, 322 1.1 christos 0x48, 0x30, 0x36, 0x38, 0x4c, 0x5c, 0x60, 0x8c, 0xa0, 0xb4, 323 1.1 christos 0xbd, 0xcd, 0x4c, 0x5c, 0x60, 0x8c, 0x90, 0xb4, 0xbd, 0xcd, 324 1.1 christos 0x4e, 0x56, 0x5e, 0x66, 0x8e, 0x96, 0xae, 0xbf, 0x4c, 0x50, 325 1.1 christos 0x5c, 0x68, 0x8c, 0xb4, 0xff, 0xff, 0x4c, 0x5c, 0x8c, 0xb4, 326 1.1 christos 0xff, 0xff, 0xff, 0xff, 0x4e, 0x5e, 0x66, 0x8e, 0x9e, 0xae, 327 1.1 christos 0xff, 0xff, 0x4c, 0x50, 0x54, 0x5c, 0x8c, 0xa0, 0xb4, 0xbd, 328 1.1 christos 0x4c, 0x5c, 0x68, 0x8c, 0x98, 0xb4, 0xbd, 0xcd, 0x4e, 0x56, 329 1.1 christos 0x5e, 0x8e, 0x96, 0xae, 0xbf, 0xc7, 0x7c, 0x7c, 0x7c, 0x7c, 330 1.1 christos 0x7c, 0x7c, 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 331 1.1 christos 0x7c, 0x3c, 0x3c, 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 332 1.1 christos 0x3c, 0x7c, 0x7c, 0x3c, 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x7c, 333 1.1 christos 0x7c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 334 1.1 christos 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 335 1.1 christos 0x7c, 0x7c, 0x7c, 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x3c, 336 1.1 christos 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x3c, 0x7c 337 1.1 christos }; 338 1.1 christos 339 1.1 christos static const uint8_t ar9380_def_rom_h112[] = { 340 1.1 christos 0x02, 0x03, 0x00, 0x03, 0x7f, 0x00, 0x00, 0x00, 0x68, 0x31, 341 1.1 christos 0x31, 0x32, 0x2d, 0x32, 0x34, 0x31, 0x2d, 0x66, 0x30, 0x30, 342 1.1 christos 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 343 1.1 christos 0x1f, 0x00, 0x77, 0x03, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 344 1.1 christos 0x00, 0x00, 0x0d, 0x00, 0x06, 0x00, 0x08, 0xff, 0x10, 0x00, 345 1.1 christos 0x00, 0x00, 0x00, 0x10, 0x01, 0x00, 0x00, 0x44, 0x44, 0x04, 346 1.1 christos 0x00, 0x50, 0x01, 0x50, 0x01, 0x50, 0x01, 0x00, 0x00, 0x00, 347 1.1 christos 0x00, 0x00, 0x00, 0x19, 0x00, 0xa4, 0x00, 0x00, 0x00, 0x00, 348 1.1 christos 0xff, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 349 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x0e, 0x03, 0x00, 350 1.1 christos 0x2c, 0xe2, 0x00, 0x02, 0x0e, 0x1c, 0x80, 0xc0, 0x80, 0x00, 351 1.1 christos 0x80, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 352 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 353 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x89, 354 1.1 christos 0xac, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 355 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 356 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 357 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 358 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 359 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0xb8, 0x70, 0x89, 0xac, 360 1.1 christos 0x70, 0x89, 0xac, 0x70, 0x89, 0xac, 0x22, 0x22, 0x22, 0x22, 361 1.1 christos 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x20, 0x20, 0x22, 0x22, 362 1.1 christos 0x20, 0x20, 0x22, 0x22, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 363 1.1 christos 0x20, 0x1e, 0x20, 0x20, 0x1e, 0x1c, 0x1c, 0x1c, 0x1c, 0x18, 364 1.1 christos 0x20, 0x20, 0x20, 0x20, 0x20, 0x1e, 0x20, 0x20, 0x1e, 0x1c, 365 1.1 christos 0x1c, 0x1c, 0x1c, 0x18, 0x20, 0x20, 0x20, 0x20, 0x20, 0x1e, 366 1.1 christos 0x20, 0x20, 0x1e, 0x1c, 0x1c, 0x1c, 0x1c, 0x18, 0x1e, 0x1e, 367 1.1 christos 0x1e, 0x1e, 0x1e, 0x1c, 0x1e, 0x1e, 0x1c, 0x1a, 0x1a, 0x1a, 368 1.1 christos 0x1a, 0x16, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1c, 0x1e, 0x1e, 369 1.1 christos 0x1c, 0x1a, 0x1a, 0x1a, 0x1a, 0x16, 0x1e, 0x1e, 0x1e, 0x1e, 370 1.1 christos 0x1e, 0x1c, 0x1e, 0x1e, 0x1c, 0x1a, 0x1a, 0x1a, 0x1a, 0x16, 371 1.1 christos 0x11, 0x12, 0x15, 0x17, 0x41, 0x42, 0x45, 0x47, 0x31, 0x32, 372 1.1 christos 0x35, 0x37, 0x70, 0x75, 0x9d, 0xa2, 0x70, 0x75, 0xa2, 0xff, 373 1.1 christos 0x70, 0x75, 0xa2, 0xff, 0x7a, 0x7f, 0x93, 0x98, 0x70, 0x75, 374 1.1 christos 0xac, 0xb8, 0x70, 0x75, 0xac, 0x00, 0x70, 0x75, 0xac, 0x00, 375 1.1 christos 0x7a, 0x7f, 0x93, 0xa2, 0x70, 0x75, 0xac, 0x00, 0x70, 0x75, 376 1.1 christos 0xac, 0x00, 0x70, 0x75, 0xac, 0x00, 0x7a, 0x7f, 0x93, 0xa2, 377 1.1 christos 0x3c, 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x3c, 0x3c, 0x7c, 0x3c, 378 1.1 christos 0x3c, 0x7c, 0x7c, 0x3c, 0x00, 0x00, 0x3c, 0x7c, 0x3c, 0x3c, 379 1.1 christos 0x3c, 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x7c, 0x3c, 0x3c, 0x7c, 380 1.1 christos 0x3c, 0x3c, 0x3c, 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x3c, 0x3c, 381 1.1 christos 0x3c, 0x7c, 0x7c, 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x20, 0x02, 382 1.1 christos 0x00, 0x00, 0x44, 0x44, 0x04, 0x00, 0x50, 0x01, 0x50, 0x01, 383 1.1 christos 0x50, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x00, 384 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x03, 0x03, 385 1.1 christos 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 386 1.1 christos 0x00, 0x0e, 0x0e, 0x03, 0x00, 0x2d, 0xe2, 0x00, 0x02, 0x0e, 387 1.1 christos 0x1c, 0xe0, 0xe0, 0xf0, 0x0c, 0xe0, 0xe0, 0xf0, 0x6c, 0x00, 388 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 389 1.1 christos 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 390 1.1 christos 0x00, 0x00, 0x00, 0x4c, 0x54, 0x68, 0x78, 0x8c, 0xa0, 0xb4, 391 1.1 christos 0xcd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 392 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 393 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 394 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 395 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 396 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 397 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 398 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 399 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 400 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 401 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 402 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 403 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 404 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 405 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x58, 0x68, 0x78, 0x8c, 406 1.1 christos 0xa0, 0xb4, 0xcd, 0x4c, 0x58, 0x68, 0x78, 0x8c, 0xb4, 0xbd, 407 1.1 christos 0xcd, 0x4c, 0x58, 0x68, 0x78, 0x8c, 0xb4, 0xbd, 0xcd, 0x1e, 408 1.1 christos 0x1e, 0x1c, 0x18, 0x1e, 0x1e, 0x1c, 0x18, 0x1e, 0x1e, 0x1c, 409 1.1 christos 0x18, 0x1e, 0x1e, 0x1c, 0x18, 0x1e, 0x1e, 0x1c, 0x18, 0x1e, 410 1.1 christos 0x1e, 0x1c, 0x18, 0x1e, 0x1e, 0x1c, 0x18, 0x1e, 0x1e, 0x1c, 411 1.1 christos 0x18, 0x1e, 0x1e, 0x1e, 0x1c, 0x18, 0x14, 0x1e, 0x1c, 0x18, 412 1.1 christos 0x14, 0x14, 0x14, 0x14, 0x10, 0x1e, 0x1e, 0x1e, 0x1c, 0x18, 413 1.1 christos 0x14, 0x1e, 0x1c, 0x18, 0x14, 0x14, 0x14, 0x14, 0x10, 0x1e, 414 1.1 christos 0x1e, 0x1e, 0x1a, 0x16, 0x12, 0x1e, 0x1a, 0x16, 0x12, 0x12, 415 1.1 christos 0x12, 0x12, 0x10, 0x1e, 0x1e, 0x1e, 0x1a, 0x16, 0x12, 0x1e, 416 1.1 christos 0x1a, 0x16, 0x12, 0x12, 0x12, 0x12, 0x10, 0x1e, 0x1e, 0x1e, 417 1.1 christos 0x18, 0x14, 0x10, 0x1e, 0x18, 0x14, 0x10, 0x10, 0x10, 0x10, 418 1.1 christos 0x0e, 0x1e, 0x1e, 0x1e, 0x18, 0x14, 0x10, 0x1e, 0x18, 0x14, 419 1.1 christos 0x10, 0x10, 0x10, 0x10, 0x0e, 0x1e, 0x1e, 0x1e, 0x16, 0x12, 420 1.1 christos 0x0e, 0x1e, 0x16, 0x12, 0x0e, 0x0e, 0x0e, 0x0e, 0x0c, 0x1e, 421 1.1 christos 0x1e, 0x1e, 0x16, 0x12, 0x0e, 0x1e, 0x16, 0x12, 0x0e, 0x0e, 422 1.1 christos 0x0e, 0x0e, 0x0c, 0x1c, 0x1c, 0x1c, 0x1a, 0x16, 0x12, 0x1c, 423 1.1 christos 0x1a, 0x16, 0x12, 0x12, 0x12, 0x12, 0x0e, 0x1c, 0x1c, 0x1c, 424 1.1 christos 0x1a, 0x16, 0x12, 0x1c, 0x1a, 0x16, 0x12, 0x12, 0x12, 0x12, 425 1.1 christos 0x0e, 0x1c, 0x1c, 0x1c, 0x18, 0x14, 0x10, 0x1c, 0x18, 0x14, 426 1.1 christos 0x10, 0x10, 0x10, 0x10, 0x0c, 0x1c, 0x1c, 0x1c, 0x18, 0x14, 427 1.1 christos 0x10, 0x1c, 0x18, 0x14, 0x10, 0x10, 0x10, 0x10, 0x0c, 0x1c, 428 1.1 christos 0x1c, 0x1c, 0x16, 0x12, 0x0e, 0x1c, 0x16, 0x12, 0x0e, 0x0e, 429 1.1 christos 0x0e, 0x0e, 0x0a, 0x1c, 0x1c, 0x1c, 0x16, 0x12, 0x0e, 0x1c, 430 1.1 christos 0x16, 0x12, 0x0e, 0x0e, 0x0e, 0x0e, 0x0a, 0x1c, 0x1c, 0x1c, 431 1.1 christos 0x14, 0x10, 0x0c, 0x1c, 0x14, 0x10, 0x0c, 0x0c, 0x0c, 0x0c, 432 1.1 christos 0x08, 0x1c, 0x1c, 0x1c, 0x14, 0x10, 0x0c, 0x1c, 0x14, 0x10, 433 1.1 christos 0x0c, 0x0c, 0x0c, 0x0c, 0x08, 0x10, 0x16, 0x18, 0x40, 0x46, 434 1.1 christos 0x48, 0x30, 0x36, 0x38, 0x4c, 0x5c, 0x60, 0x8c, 0xa0, 0xb4, 435 1.1 christos 0xbd, 0xcd, 0x4c, 0x5c, 0x60, 0x8c, 0x90, 0xb4, 0xbd, 0xcd, 436 1.1 christos 0x4e, 0x56, 0x5e, 0x66, 0x8e, 0x96, 0xae, 0xbf, 0x4c, 0x50, 437 1.1 christos 0x5c, 0x68, 0x8c, 0xb4, 0xff, 0xff, 0x4c, 0x5c, 0x8c, 0xb4, 438 1.1 christos 0xff, 0xff, 0xff, 0xff, 0x4e, 0x5e, 0x66, 0x8e, 0x9e, 0xae, 439 1.1 christos 0xff, 0xff, 0x4c, 0x50, 0x54, 0x5c, 0x8c, 0xa0, 0xb4, 0xbd, 440 1.1 christos 0x4c, 0x5c, 0x68, 0x8c, 0x98, 0xb4, 0xbd, 0xcd, 0x4e, 0x56, 441 1.1 christos 0x5e, 0x8e, 0x96, 0xae, 0xbf, 0xc7, 0x7c, 0x7c, 0x7c, 0x7c, 442 1.1 christos 0x7c, 0x7c, 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 443 1.1 christos 0x7c, 0x3c, 0x3c, 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 444 1.1 christos 0x3c, 0x7c, 0x7c, 0x3c, 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x7c, 445 1.1 christos 0x7c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 446 1.1 christos 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 447 1.1 christos 0x7c, 0x7c, 0x7c, 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x3c, 448 1.1 christos 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x3c, 0x7c 449 1.1 christos }; 450 1.1 christos 451 1.1 christos static const uint8_t ar9380_def_rom_h116[] = { 452 1.1 christos 0x02, 0x04, 0x00, 0x03, 0x7f, 0x00, 0x00, 0x00, 0x68, 0x31, 453 1.1 christos 0x31, 0x36, 0x2d, 0x30, 0x34, 0x31, 0x2d, 0x66, 0x30, 0x30, 454 1.1 christos 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 455 1.1 christos 0x1f, 0x00, 0x33, 0x03, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 456 1.1 christos 0x00, 0x00, 0x0d, 0x00, 0x06, 0x00, 0x08, 0xff, 0x10, 0x00, 457 1.1 christos 0x00, 0x00, 0x00, 0x10, 0x01, 0x00, 0x00, 0x44, 0x44, 0x04, 458 1.1 christos 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0x1f, 0x1f, 0x1f, 459 1.1 christos 0x12, 0x12, 0x12, 0x19, 0x00, 0xa4, 0x00, 0x00, 0x00, 0x00, 460 1.1 christos 0xff, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 461 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x0e, 0x03, 0x00, 462 1.1 christos 0x2c, 0xe2, 0x00, 0x02, 0x0e, 0x1c, 0x80, 0xc0, 0x80, 0x0c, 463 1.1 christos 0x80, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 464 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 465 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x89, 466 1.1 christos 0xac, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 467 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 468 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 469 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 470 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 471 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0xac, 0x70, 0x89, 0xac, 472 1.1 christos 0x70, 0x89, 0xac, 0x70, 0x89, 0xac, 0x22, 0x22, 0x22, 0x22, 473 1.1 christos 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x20, 0x20, 0x22, 0x22, 474 1.1 christos 0x20, 0x20, 0x22, 0x22, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 475 1.1 christos 0x20, 0x1e, 0x20, 0x20, 0x1e, 0x1c, 0x00, 0x00, 0x00, 0x00, 476 1.1 christos 0x20, 0x20, 0x20, 0x20, 0x20, 0x1e, 0x20, 0x20, 0x1e, 0x1c, 477 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0x20, 0x20, 0x20, 0x1e, 478 1.1 christos 0x20, 0x20, 0x1e, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x1e, 479 1.1 christos 0x1e, 0x1e, 0x1e, 0x1c, 0x1e, 0x1e, 0x1c, 0x1a, 0x00, 0x00, 480 1.1 christos 0x00, 0x00, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1c, 0x1e, 0x1e, 481 1.1 christos 0x1c, 0x1a, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x1e, 0x1e, 0x1e, 482 1.1 christos 0x1e, 0x1c, 0x1e, 0x1e, 0x1c, 0x1a, 0x00, 0x00, 0x00, 0x00, 483 1.1 christos 0x11, 0x12, 0x15, 0x17, 0x41, 0x42, 0x45, 0x47, 0x31, 0x32, 484 1.1 christos 0x35, 0x37, 0x70, 0x75, 0x9d, 0xa2, 0x70, 0x75, 0xa2, 0xff, 485 1.1 christos 0x70, 0x75, 0xa2, 0xff, 0x7a, 0x7f, 0x93, 0x98, 0x70, 0x75, 486 1.1 christos 0xac, 0xb8, 0x70, 0x75, 0xac, 0x00, 0x70, 0x75, 0xac, 0x00, 487 1.1 christos 0x7a, 0x7f, 0x93, 0xa2, 0x70, 0x75, 0xac, 0x00, 0x70, 0x75, 488 1.1 christos 0xac, 0x00, 0x70, 0x75, 0xac, 0x00, 0x7a, 0x7f, 0x93, 0xa2, 489 1.1 christos 0x3c, 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x3c, 0x3c, 0x7c, 0x3c, 490 1.1 christos 0x3c, 0x7c, 0x7c, 0x3c, 0x00, 0x00, 0x3c, 0x7c, 0x3c, 0x3c, 491 1.1 christos 0x3c, 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x7c, 0x3c, 0x3c, 0x7c, 492 1.1 christos 0x3c, 0x3c, 0x3c, 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x3c, 0x3c, 493 1.1 christos 0x3c, 0x7c, 0x7c, 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x20, 0x02, 494 1.1 christos 0x00, 0x00, 0x44, 0x44, 0x04, 0x00, 0x50, 0x01, 0x50, 0x01, 495 1.1 christos 0x50, 0x01, 0x19, 0x19, 0x19, 0x14, 0x14, 0x14, 0x46, 0x00, 496 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x03, 0x03, 497 1.1 christos 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 498 1.1 christos 0x00, 0x0e, 0x0e, 0x03, 0x00, 0x2d, 0xe2, 0x00, 0x02, 0x0e, 499 1.1 christos 0x1c, 0xe0, 0xe0, 0xf0, 0x0c, 0xe0, 0xe0, 0xf0, 0x6c, 0x00, 500 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x23, 501 1.1 christos 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 502 1.1 christos 0x00, 0x00, 0x00, 0x4c, 0x54, 0x68, 0x78, 0x8c, 0xa0, 0xb4, 503 1.1 christos 0xc5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 504 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 505 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 506 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 507 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 508 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 509 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 510 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 511 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 512 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 513 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 514 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 515 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 516 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 517 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x58, 0x68, 0x78, 0x8c, 518 1.1 christos 0xa0, 0xb4, 0xcd, 0x4c, 0x58, 0x68, 0x78, 0x8c, 0xb4, 0xbd, 519 1.1 christos 0xcd, 0x4c, 0x58, 0x68, 0x78, 0x8c, 0xb4, 0xbd, 0xcd, 0x1e, 520 1.1 christos 0x1e, 0x1c, 0x18, 0x1e, 0x1e, 0x1c, 0x18, 0x1e, 0x1e, 0x1c, 521 1.1 christos 0x18, 0x1e, 0x1e, 0x1c, 0x18, 0x1e, 0x1e, 0x1c, 0x18, 0x1e, 522 1.1 christos 0x1e, 0x1c, 0x18, 0x1e, 0x1e, 0x1c, 0x18, 0x1e, 0x1e, 0x1c, 523 1.1 christos 0x18, 0x1e, 0x1e, 0x1e, 0x1c, 0x18, 0x14, 0x1e, 0x1c, 0x18, 524 1.1 christos 0x14, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x1e, 0x1e, 0x1c, 0x18, 525 1.1 christos 0x14, 0x1e, 0x1c, 0x18, 0x14, 0x00, 0x00, 0x00, 0x00, 0x1e, 526 1.1 christos 0x1e, 0x1e, 0x1a, 0x16, 0x12, 0x1e, 0x1a, 0x16, 0x12, 0x00, 527 1.1 christos 0x00, 0x00, 0x00, 0x1e, 0x1e, 0x1e, 0x1a, 0x16, 0x12, 0x1e, 528 1.1 christos 0x1a, 0x16, 0x12, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x1e, 0x1e, 529 1.1 christos 0x18, 0x14, 0x10, 0x1e, 0x18, 0x14, 0x10, 0x00, 0x00, 0x00, 530 1.1 christos 0x00, 0x1e, 0x1e, 0x1e, 0x18, 0x14, 0x10, 0x1e, 0x18, 0x14, 531 1.1 christos 0x10, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x1e, 0x1e, 0x16, 0x12, 532 1.1 christos 0x0e, 0x1e, 0x16, 0x12, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x1e, 533 1.1 christos 0x1e, 0x1e, 0x16, 0x12, 0x0e, 0x1e, 0x16, 0x12, 0x0e, 0x00, 534 1.1 christos 0x00, 0x00, 0x00, 0x1c, 0x1c, 0x1c, 0x1a, 0x16, 0x12, 0x1c, 535 1.1 christos 0x1a, 0x16, 0x12, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x1c, 0x1c, 536 1.1 christos 0x1a, 0x16, 0x12, 0x1c, 0x1a, 0x16, 0x12, 0x00, 0x00, 0x00, 537 1.1 christos 0x00, 0x1c, 0x1c, 0x1c, 0x18, 0x14, 0x10, 0x1c, 0x18, 0x14, 538 1.1 christos 0x10, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x1c, 0x1c, 0x18, 0x14, 539 1.1 christos 0x10, 0x1c, 0x18, 0x14, 0x10, 0x00, 0x00, 0x00, 0x00, 0x1c, 540 1.1 christos 0x1c, 0x1c, 0x16, 0x12, 0x0e, 0x1c, 0x16, 0x12, 0x0e, 0x00, 541 1.1 christos 0x00, 0x00, 0x00, 0x1c, 0x1c, 0x1c, 0x16, 0x12, 0x0e, 0x1c, 542 1.1 christos 0x16, 0x12, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x1c, 0x1c, 543 1.1 christos 0x14, 0x10, 0x0c, 0x1c, 0x14, 0x10, 0x0c, 0x00, 0x00, 0x00, 544 1.1 christos 0x00, 0x1c, 0x1c, 0x1c, 0x14, 0x10, 0x0c, 0x1c, 0x14, 0x10, 545 1.1 christos 0x0c, 0x00, 0x00, 0x00, 0x00, 0x10, 0x16, 0x18, 0x40, 0x46, 546 1.1 christos 0x48, 0x30, 0x36, 0x38, 0x4c, 0x5c, 0x60, 0x8c, 0xa0, 0xb4, 547 1.1 christos 0xbd, 0xcd, 0x4c, 0x5c, 0x60, 0x8c, 0x90, 0xb4, 0xbd, 0xcd, 548 1.1 christos 0x4e, 0x56, 0x5e, 0x66, 0x8e, 0x96, 0xae, 0xbf, 0x4c, 0x50, 549 1.1 christos 0x5c, 0x68, 0x8c, 0xb4, 0xff, 0xff, 0x4c, 0x5c, 0x8c, 0xb4, 550 1.1 christos 0xff, 0xff, 0xff, 0xff, 0x4e, 0x5e, 0x66, 0x8e, 0x9e, 0xae, 551 1.1 christos 0xff, 0xff, 0x4c, 0x50, 0x54, 0x5c, 0x8c, 0xa0, 0xb4, 0xbd, 552 1.1 christos 0x4c, 0x5c, 0x68, 0x8c, 0x98, 0xb4, 0xbd, 0xcd, 0x4e, 0x56, 553 1.1 christos 0x5e, 0x8e, 0x96, 0xae, 0xbf, 0xc7, 0x7c, 0x7c, 0x7c, 0x7c, 554 1.1 christos 0x7c, 0x7c, 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 555 1.1 christos 0x7c, 0x3c, 0x3c, 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 556 1.1 christos 0x3c, 0x7c, 0x7c, 0x3c, 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x7c, 557 1.1 christos 0x7c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 558 1.1 christos 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 559 1.1 christos 0x7c, 0x7c, 0x7c, 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x3c, 560 1.1 christos 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x3c, 0x7c 561 1.1 christos }; 562 1.1 christos 563 1.1 christos static const uint8_t ar9380_def_rom_x112[] = { 564 1.1 christos 0x02, 0x05, 0x00, 0x03, 0x7f, 0x00, 0x00, 0x00, 0x78, 0x31, 565 1.1 christos 0x31, 0x32, 0x2d, 0x30, 0x34, 0x31, 0x2d, 0x66, 0x30, 0x30, 566 1.1 christos 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 567 1.1 christos 0x1f, 0x00, 0x77, 0x03, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 568 1.1 christos 0x00, 0x00, 0x0d, 0x00, 0x06, 0x00, 0x08, 0xff, 0x00, 0x00, 569 1.1 christos 0x00, 0x00, 0x00, 0x10, 0x01, 0x00, 0x00, 0x22, 0x22, 0x02, 570 1.1 christos 0x00, 0x10, 0x00, 0x10, 0x00, 0x10, 0x00, 0x1b, 0x1b, 0x1b, 571 1.1 christos 0x15, 0x15, 0x15, 0x32, 0x00, 0xa4, 0x00, 0x00, 0x00, 0x00, 572 1.1 christos 0xff, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 573 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x0e, 0x03, 0x00, 574 1.1 christos 0x2c, 0xe2, 0x00, 0x02, 0x0e, 0x1c, 0x80, 0xc0, 0x80, 0x0c, 575 1.1 christos 0x80, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 576 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 577 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x89, 578 1.1 christos 0xac, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 579 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 580 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 581 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 582 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 583 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0xac, 0x70, 0x89, 0xac, 584 1.1 christos 0x70, 0x89, 0xac, 0x70, 0x89, 0xac, 0x26, 0x26, 0x26, 0x26, 585 1.1 christos 0x26, 0x26, 0x26, 0x26, 0x26, 0x26, 0x24, 0x22, 0x26, 0x26, 586 1.1 christos 0x24, 0x22, 0x26, 0x26, 0x22, 0x20, 0x24, 0x24, 0x24, 0x24, 587 1.1 christos 0x24, 0x22, 0x22, 0x20, 0x1e, 0x1c, 0x1c, 0x1c, 0x1c, 0x1a, 588 1.1 christos 0x24, 0x24, 0x24, 0x24, 0x24, 0x22, 0x24, 0x22, 0x20, 0x1e, 589 1.1 christos 0x1e, 0x1e, 0x1c, 0x1a, 0x24, 0x24, 0x24, 0x24, 0x24, 0x22, 590 1.1 christos 0x22, 0x20, 0x1e, 0x1c, 0x1c, 0x1c, 0x1c, 0x1a, 0x24, 0x24, 591 1.1 christos 0x24, 0x24, 0x22, 0x20, 0x20, 0x1e, 0x1c, 0x1a, 0x1a, 0x1a, 592 1.1 christos 0x1a, 0x18, 0x24, 0x24, 0x24, 0x24, 0x22, 0x20, 0x22, 0x20, 593 1.1 christos 0x1e, 0x1c, 0x1c, 0x1c, 0x1c, 0x18, 0x24, 0x24, 0x24, 0x24, 594 1.1 christos 0x22, 0x20, 0x20, 0x1e, 0x1c, 0x1a, 0x1a, 0x1a, 0x1a, 0x18, 595 1.1 christos 0x11, 0x12, 0x15, 0x17, 0x41, 0x42, 0x45, 0x47, 0x31, 0x32, 596 1.1 christos 0x35, 0x37, 0x70, 0x75, 0x9d, 0xa2, 0x70, 0x75, 0xa2, 0xff, 597 1.1 christos 0x70, 0x75, 0xa2, 0xff, 0x7a, 0x7f, 0x93, 0x98, 0x70, 0x75, 598 1.1 christos 0xac, 0xb8, 0x70, 0x75, 0xac, 0x00, 0x70, 0x75, 0xac, 0x00, 599 1.1 christos 0x7a, 0x7f, 0x93, 0xa2, 0x70, 0x75, 0xac, 0x00, 0x70, 0x75, 600 1.1 christos 0xac, 0x00, 0x70, 0x75, 0xac, 0x00, 0x7a, 0x7f, 0x93, 0xa2, 601 1.1 christos 0x3c, 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x3c, 0x3c, 0x7c, 0x3c, 602 1.1 christos 0x3c, 0x7c, 0x7c, 0x3c, 0x00, 0x00, 0x3c, 0x7c, 0x3c, 0x3c, 603 1.1 christos 0x3c, 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x7c, 0x3c, 0x3c, 0x7c, 604 1.1 christos 0x3c, 0x3c, 0x3c, 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x3c, 0x3c, 605 1.1 christos 0x3c, 0x7c, 0x7c, 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x10, 0x01, 606 1.1 christos 0x00, 0x00, 0x22, 0x22, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 607 1.1 christos 0x00, 0x00, 0x13, 0x19, 0x17, 0x19, 0x19, 0x19, 0x46, 0x0f, 608 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x03, 0x03, 609 1.1 christos 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 610 1.1 christos 0x00, 0x0e, 0x0e, 0x03, 0x00, 0x2d, 0xe2, 0x00, 0x02, 0x0e, 611 1.1 christos 0x1c, 0xe0, 0xe0, 0xf0, 0x0c, 0xe0, 0xe0, 0xf0, 0x6c, 0x00, 612 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 613 1.1 christos 0x69, 0x10, 0x14, 0x10, 0x19, 0x19, 0x19, 0x1d, 0x20, 0x24, 614 1.1 christos 0x10, 0x10, 0x10, 0x4c, 0x54, 0x68, 0x78, 0x8c, 0xa0, 0xb4, 615 1.1 christos 0xc5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 616 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 617 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 618 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 619 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 620 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 621 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 622 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 623 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 624 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 625 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 626 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 627 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 628 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 629 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x54, 0x68, 0x78, 0x8c, 630 1.1 christos 0xa0, 0xb9, 0xcd, 0x4c, 0x54, 0x68, 0x78, 0x8c, 0xa0, 0xb9, 631 1.1 christos 0xcd, 0x4c, 0x54, 0x68, 0x78, 0x8c, 0xa0, 0xb9, 0xcd, 0x20, 632 1.1 christos 0x20, 0x1c, 0x1a, 0x20, 0x20, 0x1c, 0x1a, 0x20, 0x20, 0x1c, 633 1.1 christos 0x1a, 0x20, 0x20, 0x1a, 0x18, 0x20, 0x20, 0x1a, 0x18, 0x20, 634 1.1 christos 0x20, 0x18, 0x16, 0x1e, 0x1e, 0x18, 0x16, 0x1e, 0x1e, 0x18, 635 1.1 christos 0x16, 0x20, 0x20, 0x20, 0x20, 0x1c, 0x1a, 0x20, 0x1c, 0x1a, 636 1.1 christos 0x18, 0x18, 0x18, 0x16, 0x16, 0x20, 0x20, 0x20, 0x20, 0x1c, 637 1.1 christos 0x1a, 0x20, 0x1c, 0x1a, 0x18, 0x18, 0x18, 0x16, 0x16, 0x20, 638 1.1 christos 0x20, 0x20, 0x20, 0x1c, 0x1a, 0x20, 0x1c, 0x1a, 0x18, 0x18, 639 1.1 christos 0x18, 0x16, 0x16, 0x20, 0x20, 0x20, 0x20, 0x1c, 0x1a, 0x20, 640 1.1 christos 0x1a, 0x18, 0x16, 0x16, 0x16, 0x14, 0x14, 0x20, 0x20, 0x20, 641 1.1 christos 0x20, 0x1c, 0x1a, 0x20, 0x1a, 0x18, 0x16, 0x14, 0x12, 0x10, 642 1.1 christos 0x10, 0x20, 0x20, 0x20, 0x20, 0x1c, 0x1a, 0x20, 0x18, 0x14, 643 1.1 christos 0x10, 0x12, 0x10, 0x0e, 0x0e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1c, 644 1.1 christos 0x1a, 0x1e, 0x18, 0x14, 0x10, 0x12, 0x10, 0x0e, 0x0e, 0x1e, 645 1.1 christos 0x1e, 0x1e, 0x1e, 0x1c, 0x1a, 0x1e, 0x18, 0x14, 0x10, 0x12, 646 1.1 christos 0x10, 0x0e, 0x0e, 0x20, 0x20, 0x20, 0x1e, 0x1c, 0x1a, 0x1e, 647 1.1 christos 0x1c, 0x1a, 0x18, 0x18, 0x18, 0x16, 0x16, 0x20, 0x20, 0x20, 648 1.1 christos 0x1e, 0x1c, 0x1a, 0x1e, 0x1c, 0x1a, 0x18, 0x18, 0x18, 0x16, 649 1.1 christos 0x16, 0x20, 0x20, 0x20, 0x1e, 0x1c, 0x1a, 0x1e, 0x1c, 0x1a, 650 1.1 christos 0x18, 0x18, 0x18, 0x16, 0x16, 0x20, 0x20, 0x20, 0x1e, 0x1c, 651 1.1 christos 0x1a, 0x1e, 0x1a, 0x18, 0x16, 0x16, 0x16, 0x14, 0x14, 0x20, 652 1.1 christos 0x20, 0x20, 0x1e, 0x1c, 0x1a, 0x1e, 0x1a, 0x18, 0x16, 0x14, 653 1.1 christos 0x12, 0x10, 0x10, 0x20, 0x20, 0x20, 0x1e, 0x1c, 0x1a, 0x1e, 654 1.1 christos 0x16, 0x14, 0x10, 0x12, 0x10, 0x0e, 0x0e, 0x1e, 0x1e, 0x1e, 655 1.1 christos 0x1e, 0x1c, 0x1a, 0x1e, 0x16, 0x14, 0x10, 0x12, 0x10, 0x0e, 656 1.1 christos 0x0e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1c, 0x1a, 0x1e, 0x16, 0x14, 657 1.1 christos 0x10, 0x12, 0x10, 0x0e, 0x0e, 0x10, 0x16, 0x18, 0x40, 0x46, 658 1.1 christos 0x48, 0x30, 0x36, 0x38, 0x4c, 0x5c, 0x60, 0x8c, 0xa0, 0xb4, 659 1.1 christos 0xbd, 0xcd, 0x4c, 0x5c, 0x60, 0x8c, 0x90, 0xb4, 0xbd, 0xcd, 660 1.1 christos 0x4e, 0x56, 0x5e, 0x66, 0x8e, 0x96, 0xae, 0xbf, 0x4c, 0x50, 661 1.1 christos 0x5c, 0x68, 0x8c, 0xb4, 0xff, 0xff, 0x4c, 0x5c, 0x8c, 0xb4, 662 1.1 christos 0xff, 0xff, 0xff, 0xff, 0x4e, 0x5e, 0x66, 0x8e, 0x9e, 0xae, 663 1.1 christos 0xff, 0xff, 0x4c, 0x50, 0x54, 0x5c, 0x8c, 0xa0, 0xb4, 0xbd, 664 1.1 christos 0x4c, 0x5c, 0x68, 0x8c, 0x98, 0xb4, 0xbd, 0xcd, 0x4e, 0x56, 665 1.1 christos 0x5e, 0x8e, 0x96, 0xae, 0xbf, 0xc7, 0x7c, 0x7c, 0x7c, 0x7c, 666 1.1 christos 0x7c, 0x7c, 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 667 1.1 christos 0x7c, 0x3c, 0x3c, 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 668 1.1 christos 0x3c, 0x7c, 0x7c, 0x3c, 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x7c, 669 1.1 christos 0x7c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 670 1.1 christos 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 671 1.1 christos 0x7c, 0x7c, 0x7c, 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x3c, 672 1.1 christos 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x3c, 0x7c 673 1.1 christos }; 674 1.1 christos 675 1.1 christos static const uint8_t ar9380_def_rom_x113[] = { 676 1.1 christos 0x02, 0x06, 0x00, 0x03, 0x7f, 0x00, 0x00, 0x00, 0x78, 0x31, 677 1.1 christos 0x31, 0x33, 0x2d, 0x30, 0x32, 0x33, 0x2d, 0x66, 0x30, 0x30, 678 1.1 christos 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 679 1.1 christos 0x1f, 0x00, 0x77, 0x03, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 680 1.1 christos 0x00, 0x00, 0x0d, 0x00, 0x06, 0x00, 0x08, 0xff, 0x21, 0x00, 681 1.1 christos 0x00, 0x00, 0x00, 0x10, 0x01, 0x00, 0x00, 0x44, 0x44, 0x04, 682 1.1 christos 0x00, 0x50, 0x01, 0x50, 0x01, 0x50, 0x01, 0x00, 0x00, 0x00, 683 1.1 christos 0x00, 0x00, 0x00, 0x19, 0x00, 0xa4, 0x00, 0x00, 0x00, 0x00, 684 1.1 christos 0xff, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 685 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x0e, 0x03, 0x00, 686 1.1 christos 0x2c, 0xe2, 0x00, 0x02, 0x0e, 0x1c, 0x80, 0xc0, 0x80, 0x0c, 687 1.1 christos 0x80, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 688 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 689 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x89, 690 1.1 christos 0xac, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 691 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 692 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 693 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 694 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 695 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0xac, 0x70, 0x89, 0xac, 696 1.1 christos 0x70, 0x89, 0xac, 0x70, 0x89, 0xac, 0x22, 0x22, 0x22, 0x22, 697 1.1 christos 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x20, 0x20, 0x22, 0x22, 698 1.1 christos 0x20, 0x20, 0x22, 0x22, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 699 1.1 christos 0x20, 0x1c, 0x20, 0x20, 0x1e, 0x1c, 0x00, 0x00, 0x00, 0x00, 700 1.1 christos 0x20, 0x20, 0x20, 0x20, 0x20, 0x1c, 0x20, 0x20, 0x1e, 0x1c, 701 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0x20, 0x20, 0x20, 0x1c, 702 1.1 christos 0x20, 0x20, 0x1e, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x1e, 703 1.1 christos 0x1e, 0x1e, 0x1e, 0x1c, 0x1e, 0x1e, 0x1c, 0x1a, 0x00, 0x00, 704 1.1 christos 0x00, 0x00, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1c, 0x1e, 0x1e, 705 1.1 christos 0x1c, 0x1a, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x1e, 0x1e, 0x1e, 706 1.1 christos 0x1e, 0x1c, 0x1e, 0x1e, 0x1c, 0x1a, 0x00, 0x00, 0x00, 0x00, 707 1.1 christos 0x11, 0x12, 0x15, 0x17, 0x41, 0x42, 0x45, 0x47, 0x31, 0x32, 708 1.1 christos 0x35, 0x37, 0x70, 0x75, 0x9d, 0xa2, 0x70, 0x75, 0xa2, 0xff, 709 1.1 christos 0x70, 0x75, 0xa2, 0xff, 0x7a, 0x7f, 0x93, 0x98, 0x70, 0x75, 710 1.1 christos 0xac, 0xb8, 0x70, 0x75, 0xac, 0x00, 0x70, 0x75, 0xac, 0x00, 711 1.1 christos 0x7a, 0x7f, 0x93, 0xa2, 0x70, 0x75, 0xac, 0x00, 0x70, 0x75, 712 1.1 christos 0xac, 0x00, 0x70, 0x75, 0xac, 0x00, 0x7a, 0x7f, 0x93, 0xa2, 713 1.1 christos 0x3c, 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x3c, 0x3c, 0x7c, 0x3c, 714 1.1 christos 0x3c, 0x7c, 0x7c, 0x3c, 0x00, 0x00, 0x3c, 0x7c, 0x3c, 0x3c, 715 1.1 christos 0x3c, 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x7c, 0x3c, 0x3c, 0x7c, 716 1.1 christos 0x3c, 0x3c, 0x3c, 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x3c, 0x3c, 717 1.1 christos 0x3c, 0x7c, 0x7c, 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x20, 0x02, 718 1.1 christos 0x00, 0x00, 0x11, 0x11, 0x01, 0x00, 0x50, 0x01, 0x50, 0x01, 719 1.1 christos 0x50, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x00, 720 1.1 christos 0x8c, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x03, 0x03, 721 1.1 christos 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 722 1.1 christos 0x00, 0x0e, 0x0e, 0x03, 0x00, 0x2d, 0xe2, 0x00, 0x02, 0x0e, 723 1.1 christos 0x1c, 0xe0, 0xe0, 0xf0, 0x0c, 0xe0, 0xe0, 0xf0, 0x6c, 0x00, 724 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 725 1.1 christos 0x69, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 726 1.1 christos 0x00, 0x00, 0x00, 0x4c, 0x58, 0x68, 0x78, 0x8c, 0xa0, 0xbd, 727 1.1 christos 0xc5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 728 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 729 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 730 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 731 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 732 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 733 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 734 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 735 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 736 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 737 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 738 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 739 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 740 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 741 1.1 christos 0x00, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x54, 0x68, 0x78, 0x8c, 742 1.1 christos 0xa0, 0xbd, 0xc5, 0x4c, 0x58, 0x68, 0x78, 0x8c, 0xb4, 0xbd, 743 1.1 christos 0xcd, 0x4e, 0x56, 0x68, 0x7a, 0x8e, 0xae, 0xbf, 0xcd, 0x2a, 744 1.1 christos 0x28, 0x28, 0x22, 0x2a, 0x28, 0x28, 0x22, 0x2a, 0x28, 0x28, 745 1.1 christos 0x22, 0x2a, 0x28, 0x28, 0x22, 0x2a, 0x28, 0x28, 0x22, 0x2a, 746 1.1 christos 0x28, 0x28, 0x22, 0x2a, 0x28, 0x28, 0x22, 0x2a, 0x28, 0x28, 747 1.1 christos 0x22, 0x28, 0x28, 0x28, 0x28, 0x20, 0x1c, 0x28, 0x28, 0x20, 748 1.1 christos 0x1c, 0x28, 0x28, 0x20, 0x14, 0x28, 0x28, 0x28, 0x28, 0x20, 749 1.1 christos 0x1c, 0x28, 0x28, 0x20, 0x1c, 0x28, 0x28, 0x20, 0x14, 0x28, 750 1.1 christos 0x28, 0x28, 0x28, 0x20, 0x1c, 0x28, 0x28, 0x20, 0x1c, 0x28, 751 1.1 christos 0x28, 0x20, 0x14, 0x28, 0x28, 0x28, 0x28, 0x20, 0x1c, 0x28, 752 1.1 christos 0x28, 0x20, 0x1c, 0x28, 0x28, 0x20, 0x14, 0x28, 0x28, 0x28, 753 1.1 christos 0x28, 0x20, 0x1c, 0x28, 0x28, 0x20, 0x1c, 0x28, 0x28, 0x20, 754 1.1 christos 0x14, 0x28, 0x28, 0x28, 0x28, 0x20, 0x1c, 0x28, 0x28, 0x20, 755 1.1 christos 0x1c, 0x28, 0x28, 0x20, 0x14, 0x26, 0x26, 0x26, 0x26, 0x20, 756 1.1 christos 0x1c, 0x26, 0x26, 0x20, 0x1c, 0x26, 0x26, 0x20, 0x1a, 0x24, 757 1.1 christos 0x24, 0x24, 0x24, 0x20, 0x1c, 0x24, 0x24, 0x20, 0x1c, 0x24, 758 1.1 christos 0x24, 0x20, 0x1a, 0x28, 0x28, 0x28, 0x26, 0x1e, 0x1a, 0x28, 759 1.1 christos 0x28, 0x1e, 0x1a, 0x28, 0x28, 0x1e, 0x18, 0x28, 0x28, 0x28, 760 1.1 christos 0x26, 0x1e, 0x1a, 0x28, 0x28, 0x1e, 0x1a, 0x28, 0x28, 0x1e, 761 1.1 christos 0x18, 0x28, 0x28, 0x28, 0x26, 0x1e, 0x1a, 0x28, 0x28, 0x1e, 762 1.1 christos 0x1a, 0x28, 0x28, 0x1e, 0x18, 0x28, 0x28, 0x28, 0x26, 0x1e, 763 1.1 christos 0x1a, 0x28, 0x28, 0x1e, 0x1a, 0x28, 0x28, 0x1e, 0x18, 0x28, 764 1.1 christos 0x28, 0x28, 0x26, 0x1e, 0x1a, 0x28, 0x28, 0x1e, 0x1a, 0x28, 765 1.1 christos 0x28, 0x1e, 0x18, 0x28, 0x28, 0x28, 0x26, 0x1e, 0x1a, 0x28, 766 1.1 christos 0x28, 0x1e, 0x1a, 0x28, 0x28, 0x1e, 0x18, 0x24, 0x24, 0x24, 767 1.1 christos 0x24, 0x1e, 0x1a, 0x24, 0x24, 0x1e, 0x1a, 0x24, 0x24, 0x1e, 768 1.1 christos 0x18, 0x22, 0x22, 0x22, 0x22, 0x1e, 0x1a, 0x22, 0x22, 0x1e, 769 1.1 christos 0x1a, 0x22, 0x22, 0x1e, 0x18, 0x10, 0x16, 0x18, 0x40, 0x46, 770 1.1 christos 0x48, 0x30, 0x36, 0x38, 0x4c, 0x5c, 0x60, 0x8c, 0xa0, 0xb4, 771 1.1 christos 0xbd, 0xcd, 0x4c, 0x5c, 0x60, 0x8c, 0x90, 0xb4, 0xbd, 0xcd, 772 1.1 christos 0x4e, 0x56, 0x5e, 0x66, 0x8e, 0x96, 0xae, 0xbf, 0x4c, 0x50, 773 1.1 christos 0x5c, 0x68, 0x8c, 0xb4, 0xff, 0xff, 0x4c, 0x5c, 0x8c, 0xb4, 774 1.1 christos 0xff, 0xff, 0xff, 0xff, 0x4e, 0x5e, 0x66, 0x8e, 0x9e, 0xae, 775 1.1 christos 0xff, 0xff, 0x4c, 0x50, 0x54, 0x5c, 0x8c, 0xa0, 0xb4, 0xbd, 776 1.1 christos 0x4c, 0x5c, 0x68, 0x8c, 0x98, 0xb4, 0xbd, 0xcd, 0x4e, 0x56, 777 1.1 christos 0x5e, 0x8e, 0x96, 0xae, 0xbf, 0xc7, 0x7c, 0x7c, 0x7c, 0x7c, 778 1.1 christos 0x7c, 0x7c, 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 779 1.1 christos 0x7c, 0x3c, 0x3c, 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 780 1.1 christos 0x3c, 0x7c, 0x7c, 0x3c, 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x7c, 781 1.1 christos 0x7c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 782 1.1 christos 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 783 1.1 christos 0x7c, 0x7c, 0x7c, 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x3c, 784 1.1 christos 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x3c, 0x7c 785 1.1 christos }; 786 1.1 christos 787 1.1 christos static const uint8_t *ar9380_rom_templates[] = { 788 1.1 christos ar9380_def_rom, 789 1.1 christos ar9380_def_rom_h112, 790 1.1 christos ar9380_def_rom_h116, 791 1.1 christos ar9380_def_rom_x112, 792 1.1 christos ar9380_def_rom_x113 793 1.1 christos }; 794 1.1 christos 795 1.1 christos /* Macro to "pack" registers to 16-bit to save some .rodata space. */ 796 1.1 christos #define P(x) ((x) >> 2) 797 1.1 christos 798 1.1 christos /* 799 1.1 christos * AR9380 2.2 programming. 800 1.1 christos */ 801 1.1 christos static const uint16_t ar9380_2_2_regs[] = { 802 1.1 christos P(0x07010), P(0x01030), P(0x01070), P(0x010b0), P(0x08014), 803 1.1 christos P(0x0801c), P(0x08120), P(0x081d0), P(0x08318), P(0x1609c), 804 1.1 christos P(0x160ac), P(0x160b0), P(0x1610c), P(0x16140), P(0x1650c), 805 1.1 christos P(0x16540), P(0x1690c), P(0x16940), P(0x09810), P(0x09820), 806 1.1 christos P(0x09824), P(0x09828), P(0x0982c), P(0x09830), P(0x09c00), 807 1.1 christos P(0x09e00), P(0x09e04), P(0x09e0c), P(0x09e10), P(0x09e14), 808 1.1 christos P(0x09e18), P(0x09e1c), P(0x09e20), P(0x09e2c), P(0x09e3c), 809 1.1 christos P(0x09e44), P(0x09e48), P(0x09fc8), P(0x0a204), P(0x0a208), 810 1.1 christos P(0x0a22c), P(0x0a230), P(0x0a234), P(0x0a238), P(0x0a250), 811 1.1 christos P(0x0a254), P(0x0a258), P(0x0a25c), P(0x0a260), P(0x0a264), 812 1.1 christos P(0x0a280), P(0x0a284), P(0x0a288), P(0x0a28c), P(0x0a2c4), 813 1.1 christos P(0x0a2d0), P(0x0a2d8), P(0x0a358), P(0x0a830), P(0x0ae04), 814 1.1 christos P(0x0ae18), P(0x0ae1c), P(0x0ae20), P(0x0b284), P(0x0b830), 815 1.1 christos P(0x0be04), P(0x0be18), P(0x0be1c), P(0x0be20), P(0x0c284) 816 1.1 christos }; 817 1.1 christos 818 1.1 christos static const uint32_t ar9380_2_2_vals_5g20[] = { 819 1.1 christos 0x00000023, 0x00000230, 0x00000168, 0x00000e60, 0x03e803e8, 820 1.1 christos 0x128d8027, 0x08f04800, 0x00003210, 0x00003e80, 0x0dd08f29, 821 1.1 christos 0xa4653c00, 0x03284f3e, 0x08000000, 0x10804008, 0x08000000, 822 1.1 christos 0x10804008, 0x08000000, 0x10804008, 0xd00a8005, 0x206a022e, 823 1.1 christos 0x5ac640d0, 0x06903081, 0x05eea6d4, 0x0000059c, 0x000000c4, 824 1.1 christos 0x0372111a, 0x001c2020, 0x6c4000e2, 0x7ec88d2e, 0x37b95d5e, 825 1.1 christos 0x00000000, 0x0001cf9c, 0x000003b5, 0x0000001c, 0xcf946220, 826 1.1 christos 0x02321e27, 0x5030201a, 0x0003f000, 0x000037c0, 0x00000104, 827 1.1 christos 0x01026a2f, 0x0000000a, 0x00000fff, 0xffb81018, 0x00000000, 828 1.1 christos 0x000007d0, 0x02020002, 0x01000e0e, 0x0a021501, 0x00000e0e, 829 1.1 christos 0x00000007, 0x00000000, 0x00000110, 0x00022222, 0x00158d18, 830 1.1 christos 0x00071981, 0x7999a83a, 0x00000000, 0x0000019c, 0x001c0000, 831 1.1 christos 0x00000000, 0x0000019c, 0x000001b5, 0x00000000, 0x0000019c, 832 1.1 christos 0x001c0000, 0x00000000, 0x0000019c, 0x000001b5, 0x00000000 833 1.1 christos }; 834 1.1 christos 835 1.1 christos #ifndef IEEE80211_NO_HT 836 1.1 christos static const uint32_t ar9380_2_2_vals_5g40[] = { 837 1.1 christos 0x00000023, 0x00000460, 0x000002d0, 0x00001cc0, 0x07d007d0, 838 1.1 christos 0x128d804f, 0x08f04800, 0x00003210, 0x00007d00, 0x0dd08f29, 839 1.1 christos 0xa4653c00, 0x03284f3e, 0x00000000, 0x10804008, 0x00000000, 840 1.1 christos 0x10804008, 0x00000000, 0x10804008, 0xd00a8005, 0x206a022e, 841 1.1 christos 0x5ac640d0, 0x06903081, 0x05eea6d4, 0x0000059c, 0x000000c4, 842 1.1 christos 0x0372111a, 0x001c2020, 0x6d4000e2, 0x7ec88d2e, 0x37b9605e, 843 1.1 christos 0x00000000, 0x0001cf9c, 0x000003b5, 0x0000001c, 0xcf946220, 844 1.1 christos 0x02321e27, 0x5030201a, 0x0003f000, 0x000037c4, 0x00000104, 845 1.1 christos 0x01026a2f, 0x00000014, 0x10000fff, 0xffb81018, 0x00000000, 846 1.1 christos 0x00000fa0, 0x02020002, 0x01000e0e, 0x0a021501, 0x00000e0e, 847 1.1 christos 0x00000007, 0x00000000, 0x00000110, 0x00022222, 0x00158d18, 848 1.1 christos 0x00071981, 0x7999a83a, 0x00000000, 0x0000019c, 0x001c0000, 849 1.1 christos 0x00000000, 0x0000019c, 0x000001b5, 0x00000000, 0x0000019c, 850 1.1 christos 0x001c0000, 0x00000000, 0x0000019c, 0x000001b5, 0x00000000 851 1.1 christos }; 852 1.1 christos 853 1.1 christos static const uint32_t ar9380_2_2_vals_2g40[] = { 854 1.1 christos 0x00000023, 0x000002c0, 0x00000318, 0x00007c70, 0x10801600, 855 1.1 christos 0x12e00057, 0x08f04810, 0x0000320a, 0x00006880, 0x0b283f31, 856 1.1 christos 0x24652800, 0x05d08f20, 0x00000000, 0x50804008, 0x00000000, 857 1.1 christos 0x50804008, 0x00000000, 0x50804008, 0xd00a8011, 0x206a012e, 858 1.1 christos 0x5ac640d0, 0x06903881, 0x05eea6d4, 0x0000119c, 0x000000c4, 859 1.1 christos 0x037216a0, 0x001c2020, 0x6d4000e2, 0x7ec84d2e, 0x3379605e, 860 1.1 christos 0x00000000, 0x00021f9c, 0x000003ce, 0x00000021, 0xcf946222, 861 1.1 christos 0x02291e27, 0x50302012, 0x0001a000, 0x000037c4, 0x00000004, 862 1.1 christos 0x01026a2f, 0x00000016, 0x10000fff, 0xffb81018, 0x00000210, 863 1.1 christos 0x00001130, 0x02020002, 0x01000e0e, 0x3a021501, 0x00000e0e, 864 1.1 christos 0x0000000b, 0x00000150, 0x00000110, 0x00022222, 0x00158d18, 865 1.1 christos 0x00071981, 0x7999a83a, 0x00000000, 0x0000019c, 0x001c0000, 866 1.1 christos 0x00000000, 0x0000019c, 0x000001ce, 0x00000150, 0x0000019c, 867 1.1 christos 0x001c0000, 0x00000000, 0x0000019c, 0x000001ce, 0x00000150 868 1.1 christos }; 869 1.1 christos #endif 870 1.1 christos 871 1.1 christos static const uint32_t ar9380_2_2_vals_2g20[] = { 872 1.1 christos 0x00000023, 0x00000160, 0x0000018c, 0x00003e38, 0x08400b00, 873 1.1 christos 0x12e0002b, 0x08f04810, 0x0000320a, 0x00003440, 0x0b283f31, 874 1.1 christos 0x24652800, 0x05d08f20, 0x00000000, 0x50804008, 0x00000000, 875 1.1 christos 0x50804008, 0x00000000, 0x50804008, 0xd00a8011, 0x206a012e, 876 1.1 christos 0x5ac640d0, 0x06903881, 0x05eea6d4, 0x0000119c, 0x000000c4, 877 1.1 christos 0x037216a0, 0x001c2020, 0x6c4000e2, 0x7ec84d2e, 0x33795d5e, 878 1.1 christos 0x00000000, 0x00021f9c, 0x000003ce, 0x00000021, 0xcf946222, 879 1.1 christos 0x02291e27, 0x50302012, 0x0001a000, 0x000037c0, 0x00000004, 880 1.1 christos 0x01026a2f, 0x0000000b, 0x00000fff, 0xffb81018, 0x00000108, 881 1.1 christos 0x00000898, 0x02020002, 0x01000e0e, 0x3a021501, 0x00000e0e, 882 1.1 christos 0x0000000b, 0x00000150, 0x00000110, 0x00022222, 0x00158d18, 883 1.1 christos 0x00071982, 0x7999a83a, 0x00000000, 0x0000019c, 0x001c0000, 884 1.1 christos 0x00000000, 0x0000019c, 0x000001ce, 0x00000150, 0x0000019c, 885 1.1 christos 0x001c0000, 0x00000000, 0x0000019c, 0x000001ce, 0x00000150 886 1.1 christos }; 887 1.1 christos 888 1.1 christos static const uint16_t ar9380_2_2_cm_regs[] = { 889 1.1 christos P(0x040a4), P(0x07008), P(0x07020), P(0x07034), P(0x07038), 890 1.1 christos P(0x07048), P(0x00008), P(0x00030), P(0x00034), P(0x00040), 891 1.1 christos P(0x00044), P(0x00048), P(0x0004c), P(0x00050), P(0x01040), 892 1.1 christos P(0x01044), P(0x01048), P(0x0104c), P(0x01050), P(0x01054), 893 1.1 christos P(0x01058), P(0x0105c), P(0x01060), P(0x01064), P(0x010f0), 894 1.1 christos P(0x01270), P(0x012b0), P(0x012f0), P(0x0143c), P(0x0147c), 895 1.1 christos P(0x08000), P(0x08004), P(0x08008), P(0x0800c), P(0x08018), 896 1.1 christos P(0x08020), P(0x08038), P(0x0803c), P(0x08040), P(0x08044), 897 1.1 christos P(0x08048), P(0x0804c), P(0x08054), P(0x08058), P(0x0805c), 898 1.1 christos P(0x08060), P(0x08064), P(0x08070), P(0x08074), P(0x08078), 899 1.1 christos P(0x0809c), P(0x080a0), P(0x080a4), P(0x080a8), P(0x080ac), 900 1.1 christos P(0x080b0), P(0x080b4), P(0x080b8), P(0x080bc), P(0x080c0), 901 1.1 christos P(0x080c4), P(0x080c8), P(0x080cc), P(0x080d0), P(0x080d4), 902 1.1 christos P(0x080d8), P(0x080dc), P(0x080e0), P(0x080e4), P(0x080e8), 903 1.1 christos P(0x080ec), P(0x080f0), P(0x080f4), P(0x080fc), P(0x08100), 904 1.1 christos P(0x08108), P(0x0810c), P(0x08110), P(0x08114), P(0x08118), 905 1.1 christos P(0x0811c), P(0x08124), P(0x08128), P(0x0812c), P(0x08130), 906 1.1 christos P(0x08134), P(0x08138), P(0x0813c), P(0x08144), P(0x08168), 907 1.1 christos P(0x0816c), P(0x081c0), P(0x081c4), P(0x081c8), P(0x081cc), 908 1.1 christos P(0x081ec), P(0x081f0), P(0x081f4), P(0x081f8), P(0x081fc), 909 1.1 christos P(0x08240), P(0x08244), P(0x08248), P(0x0824c), P(0x08250), 910 1.1 christos P(0x08254), P(0x08258), P(0x0825c), P(0x08260), P(0x08264), 911 1.1 christos P(0x08268), P(0x0826c), P(0x08270), P(0x08274), P(0x08278), 912 1.1 christos P(0x0827c), P(0x08284), P(0x08288), P(0x0828c), P(0x08294), 913 1.1 christos P(0x08298), P(0x0829c), P(0x08300), P(0x08314), P(0x0831c), 914 1.1 christos P(0x08328), P(0x0832c), P(0x08330), P(0x08334), P(0x08338), 915 1.1 christos P(0x0833c), P(0x08340), P(0x08344), P(0x08348), P(0x0835c), 916 1.1 christos P(0x08360), P(0x08364), P(0x08368), P(0x08370), P(0x08374), 917 1.1 christos P(0x08378), P(0x0837c), P(0x08380), P(0x08384), P(0x08390), 918 1.1 christos P(0x08394), P(0x08398), P(0x0839c), P(0x083a0), P(0x083a4), 919 1.1 christos P(0x083a8), P(0x083ac), P(0x083b0), P(0x083b4), P(0x083b8), 920 1.1 christos P(0x083bc), P(0x083c0), P(0x083c4), P(0x083c8), P(0x083cc), 921 1.1 christos P(0x083d0), P(0x09800), P(0x09804), P(0x09808), P(0x0980c), 922 1.1 christos P(0x09814), P(0x09818), P(0x0981c), P(0x09834), P(0x09838), 923 1.1 christos P(0x0983c), P(0x09880), P(0x09884), P(0x098a4), P(0x098b0), 924 1.1 christos P(0x098d0), P(0x098d4), P(0x098dc), P(0x098f0), P(0x098f4), 925 1.1 christos P(0x09c04), P(0x09c08), P(0x09c0c), P(0x09c10), P(0x09c14), 926 1.1 christos P(0x09c18), P(0x09c1c), P(0x09d00), P(0x09d04), P(0x09d08), 927 1.1 christos P(0x09d0c), P(0x09d10), P(0x09d14), P(0x09d18), P(0x09e08), 928 1.1 christos P(0x09e24), P(0x09e28), P(0x09e30), P(0x09e34), P(0x09e38), 929 1.1 christos P(0x09e40), P(0x09e4c), P(0x09e50), P(0x09e54), P(0x09fc0), 930 1.1 christos P(0x09fc4), P(0x09fcc), P(0x09fd0), P(0x0a20c), P(0x0a220), 931 1.1 christos P(0x0a224), P(0x0a228), P(0x0a23c), P(0x0a244), P(0x0a2a0), 932 1.1 christos P(0x0a2c0), P(0x0a2c8), P(0x0a2cc), P(0x0a2d4), P(0x0a2ec), 933 1.1 christos P(0x0a2f0), P(0x0a2f4), P(0x0a2f8), P(0x0a344), P(0x0a34c), 934 1.1 christos P(0x0a350), P(0x0a364), P(0x0a370), P(0x0a390), P(0x0a394), 935 1.1 christos P(0x0a398), P(0x0a39c), P(0x0a3a0), P(0x0a3a4), P(0x0a3a8), 936 1.1 christos P(0x0a3ac), P(0x0a3c0), P(0x0a3c4), P(0x0a3c8), P(0x0a3cc), 937 1.1 christos P(0x0a3d0), P(0x0a3d4), P(0x0a3d8), P(0x0a3dc), P(0x0a3e0), 938 1.1 christos P(0x0a3e4), P(0x0a3e8), P(0x0a3ec), P(0x0a3f0), P(0x0a3f4), 939 1.1 christos P(0x0a3f8), P(0x0a3fc), P(0x0a400), P(0x0a404), P(0x0a408), 940 1.1 christos P(0x0a40c), P(0x0a414), P(0x0a418), P(0x0a41c), P(0x0a420), 941 1.1 christos P(0x0a424), P(0x0a428), P(0x0a42c), P(0x0a430), P(0x0a434), 942 1.1 christos P(0x0a438), P(0x0a43c), P(0x0a440), P(0x0a444), P(0x0a448), 943 1.1 christos P(0x0a44c), P(0x0a450), P(0x0a458), P(0x0a640), P(0x0a644), 944 1.1 christos P(0x0a648), P(0x0a64c), P(0x0a670), P(0x0a674), P(0x0a678), 945 1.1 christos P(0x0a67c), P(0x0a680), P(0x0a684), P(0x0a688), P(0x0a690), 946 1.1 christos P(0x0a7c0), P(0x0a7c4), P(0x0a7c8), P(0x0a7cc), P(0x0a7d0), 947 1.1 christos P(0x0a7d4), P(0x0a7dc), P(0x0a8d0), P(0x0a8d4), P(0x0a8dc), 948 1.1 christos P(0x0a8f0), P(0x0a8f4), P(0x0b2d0), P(0x0b2d4), P(0x0b2ec), 949 1.1 christos P(0x0b2f0), P(0x0b2f4), P(0x0b2f8), P(0x0b408), P(0x0b40c), 950 1.1 christos P(0x0b420), P(0x0b8d0), P(0x0b8d4), P(0x0b8dc), P(0x0b8f0), 951 1.1 christos P(0x0b8f4), P(0x0c2d0), P(0x0c2d4), P(0x0c2ec), P(0x0c2f0), 952 1.1 christos P(0x0c2f4), P(0x0c2f8), P(0x0c408), P(0x0c40c), P(0x0c420), 953 1.1 christos P(0x16000), P(0x16004), P(0x16008), P(0x1600c), P(0x16040), 954 1.1 christos P(0x1604c), P(0x16050), P(0x16054), P(0x16058), P(0x1605c), 955 1.1 christos P(0x16060), P(0x16064), P(0x1606c), P(0x16080), P(0x16084), 956 1.1 christos P(0x16088), P(0x1608c), P(0x16090), P(0x16098), P(0x160a0), 957 1.1 christos P(0x160a4), P(0x160a8), P(0x160b4), P(0x160c0), P(0x160c4), 958 1.1 christos P(0x160c8), P(0x160cc), P(0x16100), P(0x16104), P(0x16108), 959 1.1 christos P(0x16144), P(0x16148), P(0x16280), P(0x16284), P(0x16288), 960 1.1 christos P(0x1628c), P(0x16290), P(0x16294), P(0x16380), P(0x16384), 961 1.1 christos P(0x16388), P(0x1638c), P(0x16390), P(0x16394), P(0x16398), 962 1.1 christos P(0x1639c), P(0x163a0), P(0x163a4), P(0x163a8), P(0x163ac), 963 1.1 christos P(0x163b0), P(0x163b4), P(0x163b8), P(0x163bc), P(0x163c0), 964 1.1 christos P(0x163c4), P(0x163c8), P(0x163cc), P(0x163d0), P(0x163d4), 965 1.1 christos P(0x16400), P(0x16404), P(0x16408), P(0x1640c), P(0x16440), 966 1.1 christos P(0x1644c), P(0x16450), P(0x16454), P(0x16458), P(0x1645c), 967 1.1 christos P(0x16460), P(0x16464), P(0x1646c), P(0x16500), P(0x16504), 968 1.1 christos P(0x16508), P(0x16544), P(0x16548), P(0x16780), P(0x16784), 969 1.1 christos P(0x16788), P(0x1678c), P(0x16790), P(0x16794), P(0x16798), 970 1.1 christos P(0x1679c), P(0x167a0), P(0x167a4), P(0x167a8), P(0x167ac), 971 1.1 christos P(0x167b0), P(0x167b4), P(0x167b8), P(0x167bc), P(0x167c0), 972 1.1 christos P(0x167c4), P(0x167c8), P(0x167cc), P(0x167d0), P(0x167d4), 973 1.1 christos P(0x16800), P(0x16804), P(0x16808), P(0x1680c), P(0x16840), 974 1.1 christos P(0x1684c), P(0x16850), P(0x16854), P(0x16858), P(0x1685c), 975 1.1 christos P(0x16860), P(0x16864), P(0x1686c), P(0x16900), P(0x16904), 976 1.1 christos P(0x16908), P(0x16944), P(0x16948), P(0x16b80), P(0x16b84), 977 1.1 christos P(0x16b88), P(0x16b8c), P(0x16b90), P(0x16b94), P(0x16b98), 978 1.1 christos P(0x16b9c), P(0x16ba0), P(0x16ba4), P(0x16ba8), P(0x16bac), 979 1.1 christos P(0x16bb0), P(0x16bb4), P(0x16bb8), P(0x16bbc), P(0x16bc0), 980 1.1 christos P(0x16bc4), P(0x16bc8), P(0x16bcc), P(0x16bd0), P(0x16bd4) 981 1.1 christos }; 982 1.1 christos 983 1.1 christos static const uint32_t ar9380_2_2_cm_vals[] = { 984 1.1 christos 0x00a0c1c9, 0x00000000, 0x00000000, 0x00000002, 0x000004c2, 985 1.1 christos 0x00000008, 0x00000000, 0x00020085, 0x00000005, 0x00000000, 986 1.1 christos 0x00000000, 0x00000008, 0x00000010, 0x00000000, 0x002ffc0f, 987 1.1 christos 0x002ffc0f, 0x002ffc0f, 0x002ffc0f, 0x002ffc0f, 0x002ffc0f, 988 1.1 christos 0x002ffc0f, 0x002ffc0f, 0x002ffc0f, 0x002ffc0f, 0x00000100, 989 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 990 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 991 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 992 1.1 christos 0x00000000, 0xffffffff, 0x00000000, 0x00000000, 0x000fc78f, 993 1.1 christos 0x0000000f, 0x00000000, 0x00000310, 0x00000020, 0x00000000, 994 1.1 christos 0x0000000f, 0x00000000, 0x02ff0000, 0x0e070605, 0x0000000d, 995 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x2a800000, 996 1.1 christos 0x06900168, 0x13881c20, 0x01f40000, 0x00252500, 0x00a00000, 997 1.1 christos 0x00400000, 0x00000000, 0xffffffff, 0x0000ffff, 0x3f3f3f3f, 998 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00020000, 0x00000000, 999 1.1 christos 0x00000052, 0x00000000, 0x00000000, 0x000007ff, 0x000000aa, 1000 1.1 christos 0x00003210, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1001 1.1 christos 0x00000000, 0x00000000, 0x0000ffff, 0xffffffff, 0x00000000, 1002 1.1 christos 0x00000000, 0x00000000, 0x33332210, 0x00000000, 0x00000000, 1003 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1004 1.1 christos 0x00100000, 0x0010f424, 0x00000800, 0x0001e848, 0x00000000, 1005 1.1 christos 0x00000000, 0x00000000, 0x40000000, 0x00080922, 0x9bc00010, 1006 1.1 christos 0xffffffff, 0x0000ffff, 0x00000000, 0x40000000, 0x003e4180, 1007 1.1 christos 0x00000004, 0x0000002c, 0x0000002c, 0x000000ff, 0x00000000, 1008 1.1 christos 0x00000000, 0x00000000, 0x00000140, 0x00000000, 0x0000010d, 1009 1.1 christos 0x00000000, 0x00000007, 0x00000302, 0x00000700, 0x00ff0000, 1010 1.1 christos 0x02400000, 0x000107ff, 0xaa48105b, 0x008f0000, 0x00000000, 1011 1.1 christos 0xffffffff, 0xffffffff, 0x00000000, 0x00000000, 0x000000ff, 1012 1.1 christos 0x00000000, 0x00000000, 0xffffffff, 0xffffffff, 0xffffffff, 1013 1.1 christos 0xffffffff, 0x00000000, 0x00000000, 0x00000000, 0x0000fa14, 1014 1.1 christos 0x000f0c00, 0x33332210, 0x33332210, 0x33332210, 0x33332210, 1015 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000200, 1016 1.1 christos 0x000301ff, 0xafe68e30, 0xfd14e000, 0x9c0a9f6b, 0x04900000, 1017 1.1 christos 0x9280c00a, 0x00000000, 0x00020028, 0x6400a290, 0x0108ecff, 1018 1.1 christos 0x0d000600, 0x201fff00, 0x00001042, 0x00200400, 0x32840bbe, 1019 1.1 christos 0x004b6a8e, 0x00000820, 0x00000000, 0x00000000, 0x00000000, 1020 1.1 christos 0xff55ff55, 0x0320ff55, 0x00000000, 0x00000000, 0x00046384, 1021 1.1 christos 0x05b6b440, 0x00b6b440, 0xc080a333, 0x40206c10, 0x009c4060, 1022 1.1 christos 0x9883800a, 0x01834061, 0x00c0040b, 0x00000000, 0x0038230c, 1023 1.1 christos 0x990bb515, 0x0c6f0000, 0x06336f77, 0x6af6532f, 0x0cc80c00, 1024 1.1 christos 0x0d261820, 0x00001004, 0x00ff03f1, 0x00000000, 0x803e4788, 1025 1.1 christos 0x0001efb5, 0x40000014, 0x01193b93, 0x00000000, 0x00000000, 1026 1.1 christos 0x00000000, 0x10002310, 0x00000000, 0x0c000000, 0x00000001, 1027 1.1 christos 0x00000001, 0x00000000, 0x18c43433, 0x00000000, 0x00000000, 1028 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1029 1.1 christos 0x0000a000, 0x00000000, 0x00000000, 0x00000001, 0x00000444, 1030 1.1 christos 0x001f0e0f, 0x0075393f, 0xb79f6427, 0x00000000, 0xaaaaaaaa, 1031 1.1 christos 0x3c466478, 0x20202020, 0x22222220, 0x20200020, 0x20202020, 1032 1.1 christos 0x20202020, 0x20202020, 0x20202020, 0x20202020, 0x20202020, 1033 1.1 christos 0x20202020, 0x20202020, 0x20202020, 0x00000000, 0x00000246, 1034 1.1 christos 0x0cdbd380, 0x000f0f01, 0x8fa91f01, 0x00000000, 0x0e79e5c6, 1035 1.1 christos 0x00820820, 0x1ce739ce, 0x2d001dce, 0x1ce739ce, 0x000001ce, 1036 1.1 christos 0x1ce739ce, 0x000001ce, 0x1ce739ce, 0x1ce739ce, 0x00000000, 1037 1.1 christos 0x00001801, 0x00100000, 0x00000000, 0x00000000, 0x06000080, 1038 1.1 christos 0x00000001, 0x00010000, 0x00000000, 0x00000000, 0x3fad9d74, 1039 1.1 christos 0x0048060a, 0x00003c37, 0x03020100, 0x09080504, 0x0d0c0b0a, 1040 1.1 christos 0x13121110, 0x31301514, 0x35343332, 0x00000036, 0x00000838, 1041 1.1 christos 0x00000000, 0xfffffffc, 0x00000000, 0x00000000, 0x00000000, 1042 1.1 christos 0x00000004, 0x00000001, 0x004b6a8e, 0x00000820, 0x00000000, 1043 1.1 christos 0x00000000, 0x00000000, 0x00000080, 0x00000000, 0x00000000, 1044 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x0e79e5c0, 0x00820820, 1045 1.1 christos 0x00000000, 0x004b6a8e, 0x00000820, 0x00000000, 0x00000000, 1046 1.1 christos 0x00000000, 0x00000080, 0x00000000, 0x00000000, 0x00000000, 1047 1.1 christos 0x00000000, 0x00000000, 0x0e79e5c0, 0x00820820, 0x00000000, 1048 1.1 christos 0x36db6db6, 0x6db6db40, 0x73f00000, 0x00000000, 0x7f80fff8, 1049 1.1 christos 0x76d005b5, 0x556cf031, 0x13449440, 0x0c51c92c, 0x3db7fffc, 1050 1.1 christos 0xfffffffc, 0x000f0278, 0x6db60000, 0x00000000, 0x0e48048c, 1051 1.1 christos 0x54214514, 0x119f481e, 0x24926490, 0xd2888888, 0x0a108ffe, 1052 1.1 christos 0x812fc370, 0x423c8000, 0x92480080, 0x00adb6d0, 0x6db6db60, 1053 1.1 christos 0x6db6db6c, 0x01e6c000, 0x3fffbe01, 0xfff80000, 0x00080010, 1054 1.1 christos 0x02084080, 0x00000000, 0x058a0001, 0x3d840208, 0x05a20408, 1055 1.1 christos 0x00038c07, 0x00000004, 0x458aa14f, 0x00000000, 0x00000000, 1056 1.1 christos 0x00800700, 0x00800700, 0x00800700, 0x00000000, 0x00000000, 1057 1.1 christos 0x00000000, 0x00000001, 0x00000001, 0x00000000, 0x00000000, 1058 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000000a0, 1059 1.1 christos 0x000c0000, 0x14021402, 0x00001402, 0x00000000, 0x00000000, 1060 1.1 christos 0x36db6db6, 0x6db6db40, 0x73f00000, 0x00000000, 0x7f80fff8, 1061 1.1 christos 0x76d005b5, 0x556cf031, 0x13449440, 0x0c51c92c, 0x3db7fffc, 1062 1.1 christos 0xfffffffc, 0x000f0278, 0x6db60000, 0x3fffbe01, 0xfff80000, 1063 1.1 christos 0x00080010, 0x02084080, 0x00000000, 0x00000000, 0x00000000, 1064 1.1 christos 0x00800700, 0x00800700, 0x00800700, 0x00000000, 0x00000000, 1065 1.1 christos 0x00000000, 0x00000001, 0x00000001, 0x00000000, 0x00000000, 1066 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000000a0, 1067 1.1 christos 0x000c0000, 0x14021402, 0x00001402, 0x00000000, 0x00000000, 1068 1.1 christos 0x36db6db6, 0x6db6db40, 0x73f00000, 0x00000000, 0x7f80fff8, 1069 1.1 christos 0x76d005b5, 0x556cf031, 0x13449440, 0x0c51c92c, 0x3db7fffc, 1070 1.1 christos 0xfffffffc, 0x000f0278, 0x6db60000, 0x3fffbe01, 0xfff80000, 1071 1.1 christos 0x00080010, 0x02084080, 0x00000000, 0x00000000, 0x00000000, 1072 1.1 christos 0x00800700, 0x00800700, 0x00800700, 0x00000000, 0x00000000, 1073 1.1 christos 0x00000000, 0x00000001, 0x00000001, 0x00000000, 0x00000000, 1074 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x000000a0, 1075 1.1 christos 0x000c0000, 0x14021402, 0x00001402, 0x00000000, 0x00000000 1076 1.1 christos }; 1077 1.1 christos 1078 1.1 christos static const uint16_t ar9380_2_2_fast_clock_regs[] = { 1079 1.1 christos P(0x01030), P(0x01070), P(0x010b0), P(0x08014), P(0x0801c), 1080 1.1 christos P(0x08318), P(0x09e00), P(0x0a230), P(0x0a254) 1081 1.1 christos }; 1082 1.1 christos 1083 1.1 christos static const uint32_t ar9380_2_2_fast_clock_vals_5g20[] = { 1084 1.1 christos 0x00000268, 0x0000018c, 0x00000fd0, 0x044c044c, 0x148ec02b, 1085 1.1 christos 0x000044c0, 0x0372131c, 0x0000000b, 0x00000898 1086 1.1 christos }; 1087 1.1 christos 1088 1.1 christos #ifndef IEEE80211_NO_HT 1089 1.1 christos static const uint32_t ar9380_2_2_fast_clock_vals_5g40[] = { 1090 1.1 christos 0x000004d0, 0x00000318, 0x00001fa0, 0x08980898, 0x148ec057, 1091 1.1 christos 0x00008980, 0x0372131c, 0x00000016, 0x00001130 1092 1.1 christos }; 1093 1.1 christos #endif 1094 1.1 christos 1095 1.1 christos static const struct athn_ini ar9380_2_2_ini = { 1096 1.1 christos .nregs = __arraycount(ar9380_2_2_regs), 1097 1.1 christos .regs = ar9380_2_2_regs, 1098 1.1 christos .vals_5g20 = ar9380_2_2_vals_5g20, 1099 1.1 christos #ifndef IEEE80211_NO_HT 1100 1.1 christos .vals_5g40 = ar9380_2_2_vals_5g40, 1101 1.1 christos .vals_2g40 = ar9380_2_2_vals_2g40, 1102 1.1 christos #endif 1103 1.1 christos .vals_2g20 = ar9380_2_2_vals_2g20, 1104 1.1 christos .ncmregs = __arraycount(ar9380_2_2_cm_regs), 1105 1.1 christos .cmregs = ar9380_2_2_cm_regs, 1106 1.1 christos .cmvals = ar9380_2_2_cm_vals, 1107 1.1 christos .nfastregs = __arraycount(ar9380_2_2_fast_clock_regs), 1108 1.1 christos .fastregs = ar9380_2_2_fast_clock_regs, 1109 1.1 christos .fastvals_5g20 = ar9380_2_2_fast_clock_vals_5g20, 1110 1.1 christos #ifndef IEEE80211_NO_HT 1111 1.1 christos .fastvals_5g50 = ar9380_2_2_fast_clock_vals_5g40 1112 1.1 christos #endif 1113 1.1 christos }; 1114 1.1 christos 1115 1.1 christos /* 1116 1.1 christos * AR9485 1.1 programming. 1117 1.1 christos */ 1118 1.1 christos 1119 1.1 christos static const uint16_t ar9485_1_1_regs[] = { 1120 1.1 christos P(0x01030), P(0x01070), P(0x010b0), P(0x08014), P(0x0801c), 1121 1.1 christos P(0x08120), P(0x081d0), P(0x08318), P(0x09810), P(0x09820), 1122 1.1 christos P(0x09824), P(0x09828), P(0x0982c), P(0x09830), P(0x09c00), 1123 1.1 christos P(0x09e00), P(0x09e04), P(0x09e0c), P(0x09e10), P(0x09e14), 1124 1.1 christos P(0x09e18), P(0x09e1c), P(0x09e20), P(0x09e2c), P(0x09e3c), 1125 1.1 christos P(0x09e44), P(0x09e48), P(0x09fc8), P(0x0a204), P(0x0a208), 1126 1.1 christos P(0x0a230), P(0x0a234), P(0x0a238), P(0x0a250), P(0x0a254), 1127 1.1 christos P(0x0a258), P(0x0a25c), P(0x0a260), P(0x0a264), P(0x0a280), 1128 1.1 christos P(0x0a284), P(0x0a288), P(0x0a28c), P(0x0a2c4), P(0x0a2d0), 1129 1.1 christos P(0x0a2d8), P(0x0a358), P(0x0be04), P(0x0be18), P(0x1609c), 1130 1.1 christos P(0x160ac), P(0x160b0), P(0x1610c), P(0x16140) 1131 1.1 christos }; 1132 1.1 christos 1133 1.1 christos static const uint32_t ar9485_1_1_vals_2g40[] = { 1134 1.1 christos 0x000002c0, 0x00000318, 0x00007c70, 0x10801600, 0x12e00057, 1135 1.1 christos 0x08f04810, 0x0000320a, 0x00006880, 0xd00a8005, 0x206a002e, 1136 1.1 christos 0x5ac640d0, 0x06903881, 0x05eea6d4, 0x0000059c, 0x00000044, 1137 1.1 christos 0x037216a0, 0x00182020, 0x6d4000e2, 0x7ec80d2e, 0x3139605e, 1138 1.1 christos 0x00000000, 0x00021f9c, 0x000003ce, 0x00000021, 0xcf946222, 1139 1.1 christos 0x02282324, 0x50302010, 0x0001a000, 0x01303fc4, 0x00000004, 1140 1.1 christos 0x00004016, 0x10000fff, 0xffb81018, 0x00000210, 0x00001130, 1141 1.1 christos 0x02020002, 0x01000e0e, 0x3a021501, 0x00000e0e, 0x0000000b, 1142 1.1 christos 0x000002a0, 0x00000000, 0x00000000, 0x00158d18, 0x00071982, 1143 1.1 christos 0xf999a83a, 0x00000000, 0x00802020, 0x00000000, 0x0b283f31, 1144 1.1 christos 0x24611800, 0x03284f3e, 0x00170000, 0x50804008 1145 1.1 christos }; 1146 1.1 christos 1147 1.1 christos static const uint32_t ar9485_1_1_vals_2g20[] = { 1148 1.1 christos 0x00000160, 0x0000018c, 0x00003e38, 0x08400b00, 0x12e0002b, 1149 1.1 christos 0x08f04810, 0x0000320a, 0x00003440, 0xd00a8005, 0x206a002e, 1150 1.1 christos 0x5ac640d0, 0x06903881, 0x05eea6d4, 0x0000059c, 0x00000044, 1151 1.1 christos 0x037216a0, 0x00182020, 0x6c4000e2, 0x7ec80d2e, 0x31395d5e, 1152 1.1 christos 0x00000000, 0x00021f9c, 0x000003ce, 0x00000021, 0xcf946222, 1153 1.1 christos 0x02282324, 0x50302010, 0x0001a000, 0x01303fc0, 0x00000004, 1154 1.1 christos 0x0000400b, 0x10000fff, 0xffb81018, 0x00000108, 0x00000898, 1155 1.1 christos 0x02020002, 0x01000e0e, 0x3a021501, 0x00000e0e, 0x0000000b, 1156 1.1 christos 0x000002a0, 0x00000000, 0x00000000, 0x00158d18, 0x00071982, 1157 1.1 christos 0xf999a83a, 0x00000000, 0x00802020, 0x00000000, 0x0b283f31, 1158 1.1 christos 0x24611800, 0x03284f3e, 0x00170000, 0x50804008 1159 1.1 christos }; 1160 1.1 christos 1161 1.1 christos static const uint16_t ar9485_1_1_cm_regs[] = { 1162 1.1 christos P(0x00008), P(0x00030), P(0x00034), P(0x00040), P(0x00044), 1163 1.1 christos P(0x00048), P(0x0004c), P(0x00050), P(0x01040), P(0x01044), 1164 1.1 christos P(0x01048), P(0x0104c), P(0x01050), P(0x01054), P(0x01058), 1165 1.1 christos P(0x0105c), P(0x01060), P(0x01064), P(0x010f0), P(0x01270), 1166 1.1 christos P(0x012b0), P(0x012f0), P(0x0143c), P(0x0147c), P(0x08000), 1167 1.1 christos P(0x08004), P(0x08008), P(0x0800c), P(0x08018), P(0x08020), 1168 1.1 christos P(0x08038), P(0x0803c), P(0x08040), P(0x08044), P(0x08048), 1169 1.1 christos P(0x0804c), P(0x08054), P(0x08058), P(0x0805c), P(0x08060), 1170 1.1 christos P(0x08064), P(0x08070), P(0x08074), P(0x08078), P(0x0809c), 1171 1.1 christos P(0x080a0), P(0x080a4), P(0x080a8), P(0x080ac), P(0x080b0), 1172 1.1 christos P(0x080b4), P(0x080b8), P(0x080bc), P(0x080c0), P(0x080c4), 1173 1.1 christos P(0x080c8), P(0x080cc), P(0x080d0), P(0x080d4), P(0x080d8), 1174 1.1 christos P(0x080dc), P(0x080e0), P(0x080e4), P(0x080e8), P(0x080ec), 1175 1.1 christos P(0x080f0), P(0x080f4), P(0x080fc), P(0x08100), P(0x08108), 1176 1.1 christos P(0x0810c), P(0x08110), P(0x08114), P(0x08118), P(0x0811c), 1177 1.1 christos P(0x08124), P(0x08128), P(0x0812c), P(0x08130), P(0x08134), 1178 1.1 christos P(0x08138), P(0x0813c), P(0x08144), P(0x08168), P(0x0816c), 1179 1.1 christos P(0x08170), P(0x08174), P(0x08178), P(0x0817c), P(0x081c0), 1180 1.1 christos P(0x081c4), P(0x081d4), P(0x081ec), P(0x081f0), P(0x081f4), 1181 1.1 christos P(0x081f8), P(0x081fc), P(0x08240), P(0x08244), P(0x08248), 1182 1.1 christos P(0x0824c), P(0x08250), P(0x08254), P(0x08258), P(0x0825c), 1183 1.1 christos P(0x08260), P(0x08264), P(0x08268), P(0x0826c), P(0x08270), 1184 1.1 christos P(0x08274), P(0x08278), P(0x0827c), P(0x08284), P(0x08288), 1185 1.1 christos P(0x0828c), P(0x08294), P(0x08298), P(0x0829c), P(0x08300), 1186 1.1 christos P(0x08314), P(0x0831c), P(0x08328), P(0x0832c), P(0x08330), 1187 1.1 christos P(0x08334), P(0x08338), P(0x0833c), P(0x08340), P(0x08344), 1188 1.1 christos P(0x08348), P(0x0835c), P(0x08360), P(0x08364), P(0x08368), 1189 1.1 christos P(0x08370), P(0x08374), P(0x08378), P(0x0837c), P(0x08380), 1190 1.1 christos P(0x08384), P(0x08390), P(0x08394), P(0x08398), P(0x0839c), 1191 1.1 christos P(0x083a0), P(0x083a4), P(0x083a8), P(0x083ac), P(0x083b0), 1192 1.1 christos P(0x083b4), P(0x083b8), P(0x083bc), P(0x083c0), P(0x083c4), 1193 1.1 christos P(0x083c8), P(0x083cc), P(0x083d0), P(0x0a580), P(0x0a584), 1194 1.1 christos P(0x0a588), P(0x0a58c), P(0x0a590), P(0x0a594), P(0x0a598), 1195 1.1 christos P(0x0a59c), P(0x0a5a0), P(0x0a5a4), P(0x0a5a8), P(0x0a5ac), 1196 1.1 christos P(0x0a5b0), P(0x0a5b4), P(0x0a5b8), P(0x0a5bc), P(0x09800), 1197 1.1 christos P(0x09804), P(0x09808), P(0x0980c), P(0x09814), P(0x09818), 1198 1.1 christos P(0x0981c), P(0x09834), P(0x09838), P(0x0983c), P(0x09880), 1199 1.1 christos P(0x09884), P(0x098a4), P(0x098b0), P(0x098d0), P(0x098d4), 1200 1.1 christos P(0x098dc), P(0x098f0), P(0x098f4), P(0x09c04), P(0x09c08), 1201 1.1 christos P(0x09c0c), P(0x09c10), P(0x09c14), P(0x09c18), P(0x09c1c), 1202 1.1 christos P(0x09d00), P(0x09d04), P(0x09d08), P(0x09d0c), P(0x09d10), 1203 1.1 christos P(0x09d14), P(0x09d18), P(0x09d1c), P(0x09e08), P(0x09e24), 1204 1.1 christos P(0x09e28), P(0x09e30), P(0x09e34), P(0x09e38), P(0x09e40), 1205 1.1 christos P(0x09e4c), P(0x09e50), P(0x09fc0), P(0x09fc4), P(0x09fcc), 1206 1.1 christos P(0x0a20c), P(0x0a210), P(0x0a220), P(0x0a224), P(0x0a228), 1207 1.1 christos P(0x0a23c), P(0x0a244), P(0x0a2a0), P(0x0a2c0), P(0x0a2c8), 1208 1.1 christos P(0x0a2cc), P(0x0a2d4), P(0x0a2dc), P(0x0a2e0), P(0x0a2e4), 1209 1.1 christos P(0x0a2e8), P(0x0a2ec), P(0x0a2f0), P(0x0a2f4), P(0x0a2f8), 1210 1.1 christos P(0x0a344), P(0x0a34c), P(0x0a350), P(0x0a364), P(0x0a370), 1211 1.1 christos P(0x0a390), P(0x0a394), P(0x0a398), P(0x0a39c), P(0x0a3a0), 1212 1.1 christos P(0x0a3a4), P(0x0a3a8), P(0x0a3ac), P(0x0a3c0), P(0x0a3c4), 1213 1.1 christos P(0x0a3c8), P(0x0a3cc), P(0x0a3d0), P(0x0a3d4), P(0x0a3d8), 1214 1.1 christos P(0x0a3dc), P(0x0a3e0), P(0x0a3e4), P(0x0a3e8), P(0x0a3ec), 1215 1.1 christos P(0x0a3f0), P(0x0a3f4), P(0x0a3f8), P(0x0a3fc), P(0x0a400), 1216 1.1 christos P(0x0a404), P(0x0a408), P(0x0a40c), P(0x0a414), P(0x0a418), 1217 1.1 christos P(0x0a41c), P(0x0a420), P(0x0a424), P(0x0a428), P(0x0a42c), 1218 1.1 christos P(0x0a430), P(0x0a434), P(0x0a438), P(0x0a43c), P(0x0a440), 1219 1.1 christos P(0x0a444), P(0x0a448), P(0x0a44c), P(0x0a450), P(0x0a5c4), 1220 1.1 christos P(0x0a5c8), P(0x0a5cc), P(0x0a760), P(0x0a764), P(0x0a768), 1221 1.1 christos P(0x0a76c), P(0x0a770), P(0x0a774), P(0x0a778), P(0x0a780), 1222 1.1 christos P(0x0a7c0), P(0x0a7c4), P(0x0a7c8), P(0x0a7cc), P(0x0a7d0), 1223 1.1 christos P(0x0a7d4), P(0x0a7dc), P(0x16000), P(0x16004), P(0x16008), 1224 1.1 christos P(0x1600c), P(0x16040), P(0x1604c), P(0x16050), P(0x16054), 1225 1.1 christos P(0x16080), P(0x16084), P(0x16088), P(0x1608c), P(0x16090), 1226 1.1 christos P(0x16098), P(0x160a0), P(0x160a4), P(0x160a8), P(0x160b4), 1227 1.1 christos P(0x160c0), P(0x160c4), P(0x160c8), P(0x160cc), P(0x160d0), 1228 1.1 christos P(0x16100), P(0x16104), P(0x16108), P(0x16144), P(0x16148), 1229 1.1 christos P(0x16240), P(0x16244), P(0x16248), P(0x1624c), P(0x16280), 1230 1.1 christos P(0x16284), P(0x16288), P(0x1628c), P(0x16290), P(0x16380), 1231 1.1 christos P(0x16384), P(0x16388), P(0x1638c), P(0x16390), P(0x16394), 1232 1.1 christos P(0x16398), P(0x1639c), P(0x163a0), P(0x163a4), P(0x163a8), 1233 1.1 christos P(0x163ac), P(0x163b0), P(0x163b4), P(0x163b8), P(0x163bc), 1234 1.1 christos P(0x163c0), P(0x163c4), P(0x163c8), P(0x163cc), P(0x163d0), 1235 1.1 christos P(0x163d4), P(0x16c40), P(0x16c44), P(0x04014), P(0x04090), 1236 1.1 christos P(0x040a4), P(0x07010), P(0x07020), P(0x07034), P(0x07038), 1237 1.1 christos P(0x07048) 1238 1.1 christos }; 1239 1.1 christos 1240 1.1 christos static const uint32_t ar9485_1_1_cm_vals[] = { 1241 1.1 christos 0x00000000, 0x00020085, 0x00000005, 0x00000000, 0x00000000, 1242 1.1 christos 0x00000008, 0x00000010, 0x00000000, 0x002ffc0f, 0x002ffc0f, 1243 1.1 christos 0x002ffc0f, 0x002ffc0f, 0x002ffc0f, 0x002ffc0f, 0x002ffc0f, 1244 1.1 christos 0x002ffc0f, 0x002ffc0f, 0x002ffc0f, 0x00000100, 0x00000000, 1245 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1246 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1247 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1248 1.1 christos 0xffffffff, 0x00000000, 0x00000000, 0x000fc78f, 0x0000000f, 1249 1.1 christos 0x00000000, 0x00000310, 0x00000020, 0x00000000, 0x0000000f, 1250 1.1 christos 0x00000000, 0x02ff0000, 0x0e070605, 0x0000000d, 0x00000000, 1251 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x2a800000, 0x06900168, 1252 1.1 christos 0x13881c22, 0x01f40000, 0x00252500, 0x00a00000, 0x00400000, 1253 1.1 christos 0x00000000, 0xffffffff, 0x0000ffff, 0x3f3f3f3f, 0x00000000, 1254 1.1 christos 0x00000000, 0x00000000, 0x00020000, 0x00000000, 0x00000052, 1255 1.1 christos 0x00000000, 0x00000000, 0x000007ff, 0x000000aa, 0x00003210, 1256 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1257 1.1 christos 0x00000000, 0x0000ffff, 0xffffffff, 0x00000000, 0x00000000, 1258 1.1 christos 0x18486200, 0x33332210, 0x00000000, 0x00020000, 0x00000000, 1259 1.1 christos 0x33332210, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1260 1.1 christos 0x00000000, 0x00000000, 0x00100000, 0x0010f400, 0x00000800, 1261 1.1 christos 0x0001e800, 0x00000000, 0x00000000, 0x00000000, 0x40000000, 1262 1.1 christos 0x00080922, 0x9ca00010, 0xffffffff, 0x0000ffff, 0x00000000, 1263 1.1 christos 0x40000000, 0x003e4180, 0x00000004, 0x0000002c, 0x0000002c, 1264 1.1 christos 0x000000ff, 0x00000000, 0x00000000, 0x00000000, 0x00000140, 1265 1.1 christos 0x00000000, 0x0000010d, 0x00000000, 0x00000007, 0x00000302, 1266 1.1 christos 0x00000700, 0x00ff0000, 0x02400000, 0x000107ff, 0xa248105b, 1267 1.1 christos 0x008f0000, 0x00000000, 0xffffffff, 0xffffffff, 0x00000000, 1268 1.1 christos 0x00000000, 0x000000ff, 0x00000000, 0x00000000, 0xffffffff, 1269 1.1 christos 0xffffffff, 0xffffffff, 0xffffffff, 0x00000000, 0x00000000, 1270 1.1 christos 0x00000000, 0x0000fa14, 0x000f0c00, 0x33332210, 0x33332210, 1271 1.1 christos 0x33332210, 0x33332210, 0x00000000, 0x00000000, 0x00000000, 1272 1.1 christos 0x00000000, 0x00000200, 0x000301ff, 0x00000000, 0x00000000, 1273 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1274 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1275 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0xafe68e30, 1276 1.1 christos 0xfd14e000, 0x9c0a8f6b, 0x04800000, 0x9280c00a, 0x00000000, 1277 1.1 christos 0x00020028, 0x5f3ca3de, 0x0108ecff, 0x14750600, 0x201fff00, 1278 1.1 christos 0x00001042, 0x00200400, 0x52440bbe, 0x004b6a8e, 0x00000820, 1279 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x03200000, 1280 1.1 christos 0x00000000, 0x00000000, 0x00046384, 0x05b6b440, 0x00b6b440, 1281 1.1 christos 0xc080a333, 0x40206c10, 0x009c4060, 0x1883800a, 0x01834061, 1282 1.1 christos 0x00c00400, 0x00000000, 0x00000000, 0x0038233c, 0x9927b515, 1283 1.1 christos 0x12ef0200, 0x06336f77, 0x6af6532f, 0x0cc80c00, 0x0d261820, 1284 1.1 christos 0x00001004, 0x00ff03f1, 0x80be4788, 0x0001efb5, 0x40000014, 1285 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x10002310, 1286 1.1 christos 0x00000000, 0x0c000000, 0x00000001, 0x00000001, 0x00000000, 1287 1.1 christos 0x18c43433, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1288 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1289 1.1 christos 0x00000000, 0x00000000, 0x0000a000, 0x00000000, 0x00000000, 1290 1.1 christos 0x00000001, 0x00000444, 0x001f0e0f, 0x0075393f, 0xb79f6427, 1291 1.1 christos 0x000000ff, 0x3b3b3b3b, 0x2f2f2f2f, 0x20202020, 0x22222220, 1292 1.1 christos 0x20200020, 0x20202020, 0x20202020, 0x20202020, 0x20202020, 1293 1.1 christos 0x20202020, 0x20202020, 0x20202020, 0x20202020, 0x20202020, 1294 1.1 christos 0x00000000, 0x00000006, 0x0cdbd380, 0x000f0f01, 0x8fa91f01, 1295 1.1 christos 0x00000000, 0x0e79e5c6, 0x00820820, 0x1ce739cf, 0x2d0019ce, 1296 1.1 christos 0x1ce739ce, 0x000001ce, 0x1ce739ce, 0x000001ce, 0x1ce739ce, 1297 1.1 christos 0x1ce739ce, 0x00000000, 0x00001801, 0x00000000, 0x00000000, 1298 1.1 christos 0x00000000, 0x04000000, 0x00000001, 0x00010000, 0xbfad9d74, 1299 1.1 christos 0x0048060a, 0x00000637, 0x03020100, 0x09080504, 0x0d0c0b0a, 1300 1.1 christos 0x13121110, 0x31301514, 0x35343332, 0x00000036, 0x00000838, 1301 1.1 christos 0x00000000, 0xfffffffc, 0x00000000, 0x00000000, 0x00000000, 1302 1.1 christos 0x00000004, 0x00000000, 0x36db6db6, 0x6db6db40, 0x73800000, 1303 1.1 christos 0x00000000, 0x7f80fff8, 0x000f0278, 0x4db6db8c, 0x6db60000, 1304 1.1 christos 0x00080000, 0x0e48048c, 0x14214514, 0x119f081e, 0x24926490, 1305 1.1 christos 0xd28b3330, 0xc2108ffe, 0x812fc370, 0x423c8000, 0x92480040, 1306 1.1 christos 0x006db6db, 0x0186db60, 0x6db6db6c, 0x6de6fbe0, 0xf7dfcf3c, 1307 1.1 christos 0x04cb0001, 0xfff80015, 0x00080010, 0x01884080, 0x00008040, 1308 1.1 christos 0x08400000, 0x1bf90f00, 0x00000000, 0x00000000, 0x01000015, 1309 1.1 christos 0x00d30000, 0x00318000, 0x50000000, 0x4b96210f, 0x00000000, 1310 1.1 christos 0x00000000, 0x00800700, 0x00800700, 0x00800700, 0x00000000, 1311 1.1 christos 0x00000000, 0x00000000, 0x00000001, 0x00000001, 0x00000000, 1312 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1313 1.1 christos 0x000000a0, 0x000c0000, 0x14021402, 0x00001402, 0x00000000, 1314 1.1 christos 0x00000000, 0x13188278, 0x12000000, 0xba280400, 0x00aa10aa, 1315 1.1 christos 0x00a0c9c9, 0x00000022, 0x00000000, 0x00000002, 0x000004c2, 1316 1.1 christos 0x00000002 1317 1.1 christos }; 1318 1.1 christos 1319 1.1 christos static const struct athn_ini ar9485_1_1_ini = { 1320 1.1 christos .nregs = __arraycount(ar9485_1_1_regs), 1321 1.1 christos .regs = ar9485_1_1_regs, 1322 1.1 christos .vals_5g20 = NULL, /* 2GHz only. */ 1323 1.1 christos #ifndef IEEE80211_NO_HT 1324 1.1 christos .vals_5g40 = NULL, /* 2GHz only. */ 1325 1.1 christos .vals_2g40 = ar9485_1_1_vals_2g40, 1326 1.1 christos #endif 1327 1.1 christos .vals_2g20 = ar9485_1_1_vals_2g20, 1328 1.1 christos .ncmregs = __arraycount(ar9485_1_1_cm_regs), 1329 1.1 christos .cmregs = ar9485_1_1_cm_regs, 1330 1.1 christos .cmvals = ar9485_1_1_cm_vals 1331 1.1 christos }; 1332 1.1 christos 1333 1.1 christos /* 1334 1.1 christos * AR9380 2.2 Tx gains. 1335 1.1 christos */ 1336 1.1 christos static const uint16_t ar9380_2_2_tx_gain_regs[] = { 1337 1.1 christos P(0x0a2dc), P(0x0a2e0), P(0x0a2e4), P(0x0a2e8), P(0x0a410), 1338 1.1 christos P(0x0a500), P(0x0a504), P(0x0a508), P(0x0a50c), P(0x0a510), 1339 1.1 christos P(0x0a514), P(0x0a518), P(0x0a51c), P(0x0a520), P(0x0a524), 1340 1.1 christos P(0x0a528), P(0x0a52c), P(0x0a530), P(0x0a534), P(0x0a538), 1341 1.1 christos P(0x0a53c), P(0x0a540), P(0x0a544), P(0x0a548), P(0x0a54c), 1342 1.1 christos P(0x0a550), P(0x0a554), P(0x0a558), P(0x0a55c), P(0x0a560), 1343 1.1 christos P(0x0a564), P(0x0a568), P(0x0a56c), P(0x0a570), P(0x0a574), 1344 1.1 christos P(0x0a578), P(0x0a57c), P(0x0a580), P(0x0a584), P(0x0a588), 1345 1.1 christos P(0x0a58c), P(0x0a590), P(0x0a594), P(0x0a598), P(0x0a59c), 1346 1.1 christos P(0x0a5a0), P(0x0a5a4), P(0x0a5a8), P(0x0a5ac), P(0x0a5b0), 1347 1.1 christos P(0x0a5b4), P(0x0a5b8), P(0x0a5bc), P(0x0a5c0), P(0x0a5c4), 1348 1.1 christos P(0x0a5c8), P(0x0a5cc), P(0x0a5d0), P(0x0a5d4), P(0x0a5d8), 1349 1.1 christos P(0x0a5dc), P(0x0a5e0), P(0x0a5e4), P(0x0a5e8), P(0x0a5ec), 1350 1.1 christos P(0x0a5f0), P(0x0a5f4), P(0x0a5f8), P(0x0a5fc), P(0x0a600), 1351 1.1 christos P(0x0a604), P(0x0a608), P(0x0a60c), P(0x0a610), P(0x0a614), 1352 1.1 christos P(0x0a618), P(0x0a61c), P(0x0a620), P(0x0a624), P(0x0a628), 1353 1.1 christos P(0x0a62c), P(0x0a630), P(0x0a634), P(0x0a638), P(0x0a63c), 1354 1.1 christos P(0x0b2dc), P(0x0b2e0), P(0x0b2e4), P(0x0b2e8), P(0x0c2dc), 1355 1.1 christos P(0x0c2e0), P(0x0c2e4), P(0x0c2e8), P(0x16044), P(0x16048), 1356 1.1 christos P(0x16068), P(0x16444), P(0x16448), P(0x16468), P(0x16844), 1357 1.1 christos P(0x16848), P(0x16868) 1358 1.1 christos }; 1359 1.1 christos 1360 1.1 christos static const uint32_t ar9380_2_2_tx_gain_vals_5g[] = { 1361 1.1 christos 0x00033800, 0x0003c000, 0x03fc0000, 0x00000000, 0x000050d9, 1362 1.1 christos 0x00000000, 0x06000003, 0x0a000020, 0x10000023, 0x16000220, 1363 1.1 christos 0x1c000223, 0x21002220, 0x27002223, 0x2b022220, 0x2f022222, 1364 1.1 christos 0x34022225, 0x3a02222a, 0x3e02222c, 0x4202242a, 0x4702244a, 1365 1.1 christos 0x4b02244c, 0x4e02246c, 0x52022470, 0x55022490, 0x59022492, 1366 1.1 christos 0x5d022692, 0x61022892, 0x65024890, 0x69024892, 0x6e024c92, 1367 1.1 christos 0x74026e92, 0x74026e92, 0x74026e92, 0x74026e92, 0x74026e92, 1368 1.1 christos 0x74026e92, 0x74026e92, 0x00800000, 0x06800003, 0x0a800020, 1369 1.1 christos 0x10800023, 0x16800220, 0x1c800223, 0x21802220, 0x27802223, 1370 1.1 christos 0x2b822220, 0x2f822222, 0x34822225, 0x3a82222a, 0x3e82222c, 1371 1.1 christos 0x4282242a, 0x4782244a, 0x4b82244c, 0x4e82246c, 0x52822470, 1372 1.1 christos 0x55822490, 0x59822492, 0x5d822692, 0x61822892, 0x65824890, 1373 1.1 christos 0x69824892, 0x6e824c92, 0x74826e92, 0x74826e92, 0x74826e92, 1374 1.1 christos 0x74826e92, 0x74826e92, 0x74826e92, 0x74826e92, 0x00000000, 1375 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x02004000, 1376 1.1 christos 0x02004801, 0x02808a02, 0x0380ce03, 0x04411104, 0x04411104, 1377 1.1 christos 0x04411104, 0x04411104, 0x04411104, 0x04411104, 0x04411104, 1378 1.1 christos 0x00033800, 0x0003c000, 0x03fc0000, 0x00000000, 0x00033800, 1379 1.1 christos 0x0003c000, 0x03fc0000, 0x00000000, 0x012492d4, 0x62480001, 1380 1.1 christos 0x6db6db6c, 0x012492d4, 0x62480001, 0x6db6db6c, 0x012492d4, 1381 1.1 christos 0x62480001, 0x6db6db6c 1382 1.1 christos }; 1383 1.1 christos 1384 1.1 christos static const uint32_t ar9380_2_2_tx_gain_vals_2g[] = { 1385 1.1 christos 0x00637800, 0x03838000, 0x03fc0000, 0x00000000, 0x000050d9, 1386 1.1 christos 0x00000000, 0x04000002, 0x08000004, 0x0b000200, 0x0f000202, 1387 1.1 christos 0x12000400, 0x16000402, 0x19000404, 0x1c000603, 0x21000a02, 1388 1.1 christos 0x25000a04, 0x28000a20, 0x2c000e20, 0x30000e22, 0x34000e24, 1389 1.1 christos 0x38001640, 0x3c001660, 0x3f001861, 0x43001a81, 0x47001a83, 1390 1.1 christos 0x4a001c84, 0x4e001ce3, 0x52001ce5, 0x56001ce9, 0x5a001ceb, 1391 1.1 christos 0x5d001eec, 0x5d001eec, 0x5d001eec, 0x5d001eec, 0x5d001eec, 1392 1.1 christos 0x5d001eec, 0x5d001eec, 0x00800000, 0x04800002, 0x08800004, 1393 1.1 christos 0x0b800200, 0x0f800202, 0x12800400, 0x16800402, 0x19800404, 1394 1.1 christos 0x1c800603, 0x21800a02, 0x25800a04, 0x28800a20, 0x2c800e20, 1395 1.1 christos 0x30800e22, 0x34800e24, 0x38801640, 0x3c801660, 0x3f801861, 1396 1.1 christos 0x43801a81, 0x47801a83, 0x4a801c84, 0x4e801ce3, 0x52801ce5, 1397 1.1 christos 0x56801ce9, 0x5a801ceb, 0x5d801eec, 0x5d801eec, 0x5d801eec, 1398 1.1 christos 0x5d801eec, 0x5d801eec, 0x5d801eec, 0x5d801eec, 0x00000000, 1399 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x01404000, 1400 1.1 christos 0x01404501, 0x02008501, 0x0280ca03, 0x03010c04, 0x04014c04, 1401 1.1 christos 0x04015005, 0x04015005, 0x04015005, 0x04015005, 0x04015005, 1402 1.1 christos 0x00637800, 0x03838000, 0x03fc0000, 0x00000000, 0x00637800, 1403 1.1 christos 0x03838000, 0x03fc0000, 0x00000000, 0x012492d4, 0x62480001, 1404 1.1 christos 0x6db6db6c, 0x012492d4, 0x62480001, 0x6db6db6c, 0x012492d4, 1405 1.1 christos 0x62480001, 0x6db6db6c 1406 1.1 christos }; 1407 1.1 christos 1408 1.1 christos static const struct athn_gain ar9380_2_2_tx_gain = { 1409 1.1 christos __arraycount(ar9380_2_2_tx_gain_regs), 1410 1.1 christos ar9380_2_2_tx_gain_regs, 1411 1.1 christos ar9380_2_2_tx_gain_vals_5g, 1412 1.1 christos ar9380_2_2_tx_gain_vals_2g 1413 1.1 christos }; 1414 1.1 christos 1415 1.1 christos /* 1416 1.1 christos * AR9380 2.2 high ob/db Tx gains. 1417 1.1 christos */ 1418 1.1 christos static const uint32_t ar9380_2_2_tx_gain_high_ob_db_vals_5g[] = { 1419 1.1 christos 0x01feee00, 0x0000f000, 0x01ff0000, 0x00000000, 0x000050d8, 1420 1.1 christos 0x00002220, 0x04002222, 0x09002421, 0x0d002621, 0x13004620, 1421 1.1 christos 0x19004a20, 0x1d004e20, 0x21005420, 0x26005e20, 0x2b005e40, 1422 1.1 christos 0x2f005e42, 0x33005e44, 0x38005e65, 0x3c005e69, 0x40005e6b, 1423 1.1 christos 0x44005e6d, 0x49005e72, 0x4e005eb2, 0x53005f12, 0x59025eb2, 1424 1.1 christos 0x5e025f12, 0x61027f12, 0x6702bf12, 0x6b02bf14, 0x6f02bf16, 1425 1.1 christos 0x6f02bf16, 0x6f02bf16, 0x6f02bf16, 0x6f02bf16, 0x6f02bf16, 1426 1.1 christos 0x6f02bf16, 0x6f02bf16, 0x00802220, 0x04802222, 0x09802421, 1427 1.1 christos 0x0d802621, 0x13804620, 0x19804a20, 0x1d804e20, 0x21805420, 1428 1.1 christos 0x26805e20, 0x2b805e40, 0x2f805e42, 0x33805e44, 0x38805e65, 1429 1.1 christos 0x3c805e69, 0x40805e6b, 0x44805e6d, 0x49805e72, 0x4e805eb2, 1430 1.1 christos 0x53805f12, 0x59825eb2, 0x5e825f12, 0x61827f12, 0x6782bf12, 1431 1.1 christos 0x6b82bf14, 0x6f82bf16, 0x6f82bf16, 0x6f82bf16, 0x6f82bf16, 1432 1.1 christos 0x6f82bf16, 0x6f82bf16, 0x6f82bf16, 0x6f82bf16, 0x00000000, 1433 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00804000, 0x00804201, 1434 1.1 christos 0x0280c802, 0x0280ca03, 0x04c15104, 0x04c15305, 0x04c15305, 1435 1.1 christos 0x04c15305, 0x04c15305, 0x04c15305, 0x04c15305, 0x04c15305, 1436 1.1 christos 0x01feee00, 0x0000f000, 0x01ff0000, 0x00000000, 0x01feee00, 1437 1.1 christos 0x0000f000, 0x01ff0000, 0x00000000, 0x056db2e4, 0x8e480001, 1438 1.1 christos 0x6db6db6c, 0x056db2e4, 0x8e480001, 0x6db6db6c, 0x056db2e4, 1439 1.1 christos 0x8e480001, 0x6db6db6c 1440 1.1 christos }; 1441 1.1 christos 1442 1.1 christos static const uint32_t ar9380_2_2_tx_gain_high_ob_db_vals_2g[] = { 1443 1.1 christos 0x00637800, 0x03838000, 0x03fc0000, 0x00000000, 0x000050d9, 1444 1.1 christos 0x00000000, 0x04000002, 0x08000004, 0x0b000200, 0x0f000202, 1445 1.1 christos 0x11000400, 0x15000402, 0x19000404, 0x1b000603, 0x1f000a02, 1446 1.1 christos 0x23000a04, 0x26000a20, 0x2a000e20, 0x2e000e22, 0x31000e24, 1447 1.1 christos 0x34001640, 0x38001660, 0x3b001861, 0x3e001a81, 0x42001a83, 1448 1.1 christos 0x44001c84, 0x48001ce3, 0x4c001ce5, 0x50001ce9, 0x54001ceb, 1449 1.1 christos 0x56001eec, 0x56001eec, 0x56001eec, 0x56001eec, 0x56001eec, 1450 1.1 christos 0x56001eec, 0x56001eec, 0x00800000, 0x04800002, 0x08800004, 1451 1.1 christos 0x0b800200, 0x0f800202, 0x11800400, 0x15800402, 0x19800404, 1452 1.1 christos 0x1b800603, 0x1f800a02, 0x23800a04, 0x26800a20, 0x2a800e20, 1453 1.1 christos 0x2e800e22, 0x31800e24, 0x34801640, 0x38801660, 0x3b801861, 1454 1.1 christos 0x3e801a81, 0x42801a83, 0x44801c84, 0x48801ce3, 0x4c801ce5, 1455 1.1 christos 0x50801ce9, 0x54801ceb, 0x56801eec, 0x56801eec, 0x56801eec, 1456 1.1 christos 0x56801eec, 0x56801eec, 0x56801eec, 0x56801eec, 0x00000000, 1457 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x01404000, 1458 1.1 christos 0x01404501, 0x02008501, 0x0280ca03, 0x03010c04, 0x04014c04, 1459 1.1 christos 0x04015005, 0x04015005, 0x04015005, 0x04015005, 0x04015005, 1460 1.1 christos 0x00637800, 0x03838000, 0x03fc0000, 0x00000000, 0x00637800, 1461 1.1 christos 0x03838000, 0x03fc0000, 0x00000000, 0x056db2e4, 0x8e480001, 1462 1.1 christos 0x6db6db6c, 0x056db2e4, 0x8e480001, 0x6db6db6c, 0x056db2e4, 1463 1.1 christos 0x8e480001, 0x6db6db6c 1464 1.1 christos }; 1465 1.1 christos 1466 1.1 christos static const struct athn_gain ar9380_2_2_tx_gain_high_ob_db = { 1467 1.1 christos __arraycount(ar9380_2_2_tx_gain_regs), 1468 1.1 christos ar9380_2_2_tx_gain_regs, 1469 1.1 christos ar9380_2_2_tx_gain_high_ob_db_vals_5g, 1470 1.1 christos ar9380_2_2_tx_gain_high_ob_db_vals_2g 1471 1.1 christos }; 1472 1.1 christos 1473 1.1 christos /* 1474 1.1 christos * AR9380 2.2 low ob/db Tx gains. 1475 1.1 christos */ 1476 1.1 christos static const uint32_t ar9380_2_2_tx_gain_low_ob_db_vals_5g[] = { 1477 1.1 christos 0x0380c7fc, 0x0000f800, 0x03ff0000, 0x00000000, 0x000050d9, 1478 1.1 christos 0x00000000, 0x06000003, 0x0a000020, 0x10000023, 0x16000220, 1479 1.1 christos 0x1c000223, 0x21002220, 0x27002223, 0x2b022220, 0x2f022222, 1480 1.1 christos 0x34022225, 0x3a02222a, 0x3e02222c, 0x4202242a, 0x4702244a, 1481 1.1 christos 0x4b02244c, 0x4e02246c, 0x5302266c, 0x5702286c, 0x5c02486b, 1482 1.1 christos 0x61024a6c, 0x66026a6c, 0x6b026e6c, 0x7002708c, 0x7302b08a, 1483 1.1 christos 0x7702b08c, 0x7702b08c, 0x7702b08c, 0x7702b08c, 0x7702b08c, 1484 1.1 christos 0x7702b08c, 0x7702b08c, 0x00800000, 0x06800003, 0x0a800020, 1485 1.1 christos 0x10800023, 0x16800220, 0x1c800223, 0x21802220, 0x27802223, 1486 1.1 christos 0x2b822220, 0x2f822222, 0x34822225, 0x3a82222a, 0x3e82222c, 1487 1.1 christos 0x4282242a, 0x4782244a, 0x4b82244c, 0x4e82246c, 0x5382266c, 1488 1.1 christos 0x5782286c, 0x5c82486b, 0x61824a6c, 0x66826a6c, 0x6b826e6c, 1489 1.1 christos 0x7082708c, 0x7382b08a, 0x7782b08c, 0x7782b08c, 0x7782b08c, 1490 1.1 christos 0x7782b08c, 0x7782b08c, 0x7782b08c, 0x7782b08c, 0x00000000, 1491 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x01404000, 1492 1.1 christos 0x01404501, 0x02008802, 0x0300cc03, 0x0300cc03, 0x0300cc03, 1493 1.1 christos 0x03810c03, 0x03810e04, 0x03810e04, 0x03810e04, 0x03810e04, 1494 1.1 christos 0x0380c7fc, 0x0000f800, 0x03ff0000, 0x00000000, 0x0380c7fc, 1495 1.1 christos 0x0000f800, 0x03ff0000, 0x00000000, 0x012492d4, 0x66480001, 1496 1.1 christos 0x6db6db6c, 0x012492d4, 0x66480001, 0x6db6db6c, 0x012492d4, 1497 1.1 christos 0x66480001, 0x6db6db6c 1498 1.1 christos }; 1499 1.1 christos 1500 1.1 christos static const uint32_t ar9380_2_2_tx_gain_low_ob_db_vals_2g[] = { 1501 1.1 christos 0x00637800, 0x03838000, 0x03fc0000, 0x00000000, 0x000050d9, 1502 1.1 christos 0x00000000, 0x04000002, 0x08000004, 0x0b000200, 0x0f000202, 1503 1.1 christos 0x12000400, 0x16000402, 0x19000404, 0x1c000603, 0x21000a02, 1504 1.1 christos 0x25000a04, 0x28000a20, 0x2c000e20, 0x30000e22, 0x34000e24, 1505 1.1 christos 0x38001640, 0x3c001660, 0x3f001861, 0x43001a81, 0x47001a83, 1506 1.1 christos 0x4a001c84, 0x4e001ce3, 0x52001ce5, 0x56001ce9, 0x5a001ceb, 1507 1.1 christos 0x5d001eec, 0x5d001eec, 0x5d001eec, 0x5d001eec, 0x5d001eec, 1508 1.1 christos 0x5d001eec, 0x5d001eec, 0x00800000, 0x04800002, 0x08800004, 1509 1.1 christos 0x0b800200, 0x0f800202, 0x12800400, 0x16800402, 0x19800404, 1510 1.1 christos 0x1c800603, 0x21800a02, 0x25800a04, 0x28800a20, 0x2c800e20, 1511 1.1 christos 0x30800e22, 0x34800e24, 0x38801640, 0x3c801660, 0x3f801861, 1512 1.1 christos 0x43801a81, 0x47801a83, 0x4a801c84, 0x4e801ce3, 0x52801ce5, 1513 1.1 christos 0x56801ce9, 0x5a801ceb, 0x5d801eec, 0x5d801eec, 0x5d801eec, 1514 1.1 christos 0x5d801eec, 0x5d801eec, 0x5d801eec, 0x5d801eec, 0x00000000, 1515 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x01404000, 1516 1.1 christos 0x01404501, 0x02008501, 0x0280ca03, 0x03010c04, 0x04014c04, 1517 1.1 christos 0x04015005, 0x04015005, 0x04015005, 0x04015005, 0x04015005, 1518 1.1 christos 0x00637800, 0x03838000, 0x03fc0000, 0x00000000, 0x00637800, 1519 1.1 christos 0x03838000, 0x03fc0000, 0x00000000, 0x012492d4, 0x66480001, 1520 1.1 christos 0x6db6db6c, 0x012492d4, 0x66480001, 0x6db6db6c, 0x012492d4, 1521 1.1 christos 0x66480001, 0x6db6db6c 1522 1.1 christos }; 1523 1.1 christos 1524 1.1 christos static const struct athn_gain ar9380_2_2_tx_gain_low_ob_db = { 1525 1.1 christos __arraycount(ar9380_2_2_tx_gain_regs), 1526 1.1 christos ar9380_2_2_tx_gain_regs, 1527 1.1 christos ar9380_2_2_tx_gain_low_ob_db_vals_5g, 1528 1.1 christos ar9380_2_2_tx_gain_low_ob_db_vals_2g 1529 1.1 christos }; 1530 1.1 christos 1531 1.1 christos /* 1532 1.1 christos * AR9380 2.2 high power Tx gains. 1533 1.1 christos */ 1534 1.1 christos static const uint32_t ar9380_2_2_tx_gain_high_power_vals_5g[] = { 1535 1.1 christos 0x0380c7fc, 0x0000f800, 0x03ff0000, 0x00000000, 0x000050d8, 1536 1.1 christos 0x00002220, 0x04002222, 0x09002421, 0x0d002621, 0x13004620, 1537 1.1 christos 0x19004a20, 0x1d004e20, 0x21005420, 0x26005e20, 0x2b005e40, 1538 1.1 christos 0x2f005e42, 0x33005e44, 0x38005e65, 0x3c005e69, 0x40005e6b, 1539 1.1 christos 0x44005e6d, 0x49005e72, 0x4e005eb2, 0x53005f12, 0x59025eb2, 1540 1.1 christos 0x5e025f12, 0x61027f12, 0x6702bf12, 0x6b02bf14, 0x6f02bf16, 1541 1.1 christos 0x6f02bf16, 0x6f02bf16, 0x6f02bf16, 0x6f02bf16, 0x6f02bf16, 1542 1.1 christos 0x6f02bf16, 0x6f02bf16, 0x00802220, 0x04802222, 0x09802421, 1543 1.1 christos 0x0d802621, 0x13804620, 0x19804a20, 0x1d804e20, 0x21805420, 1544 1.1 christos 0x26805e20, 0x2b805e40, 0x2f805e42, 0x33805e44, 0x38805e65, 1545 1.1 christos 0x3c805e69, 0x40805e6b, 0x44805e6d, 0x49805e72, 0x4e805eb2, 1546 1.1 christos 0x53805f12, 0x59825eb2, 0x5e825f12, 0x61827f12, 0x6782bf12, 1547 1.1 christos 0x6b82bf14, 0x6f82bf16, 0x6f82bf16, 0x6f82bf16, 0x6f82bf16, 1548 1.1 christos 0x6f82bf16, 0x6f82bf16, 0x6f82bf16, 0x6f82bf16, 0x00000000, 1549 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00804000, 0x00804201, 1550 1.1 christos 0x0280c802, 0x0280ca03, 0x04c15104, 0x04c15305, 0x04c15305, 1551 1.1 christos 0x04c15305, 0x04c15305, 0x04c15305, 0x04c15305, 0x04c15305, 1552 1.1 christos 0x0380c7fc, 0x0000f800, 0x03ff0000, 0x00000000, 0x0380c7fc, 1553 1.1 christos 0x0000f800, 0x03ff0000, 0x00000000, 0x056db2e6, 0xae480001, 1554 1.1 christos 0x6eb6db6c, 0x056db2e6, 0xae480001, 0x6eb6db6c, 0x056db2e6, 1555 1.1 christos 0xae480001, 0x6eb6db6c 1556 1.1 christos }; 1557 1.1 christos 1558 1.1 christos static const uint32_t ar9380_2_2_tx_gain_high_power_vals_2g[] = { 1559 1.1 christos 0x00637800, 0x03838000, 0x03fc0000, 0x00000000, 0x000050d9, 1560 1.1 christos 0x00000000, 0x04000002, 0x08000004, 0x0b000200, 0x0f000202, 1561 1.1 christos 0x11000400, 0x15000402, 0x19000404, 0x1b000603, 0x1f000a02, 1562 1.1 christos 0x23000a04, 0x26000a20, 0x2a000e20, 0x2e000e22, 0x31000e24, 1563 1.1 christos 0x34001640, 0x38001660, 0x3b001861, 0x3e001a81, 0x42001a83, 1564 1.1 christos 0x44001c84, 0x48001ce3, 0x4c001ce5, 0x50001ce9, 0x54001ceb, 1565 1.1 christos 0x56001eec, 0x56001eec, 0x56001eec, 0x56001eec, 0x56001eec, 1566 1.1 christos 0x56001eec, 0x56001eec, 0x00800000, 0x04800002, 0x08800004, 1567 1.1 christos 0x0b800200, 0x0f800202, 0x11800400, 0x15800402, 0x19800404, 1568 1.1 christos 0x1b800603, 0x1f800a02, 0x23800a04, 0x26800a20, 0x2a800e20, 1569 1.1 christos 0x2e800e22, 0x31800e24, 0x34801640, 0x38801660, 0x3b801861, 1570 1.1 christos 0x3e801a81, 0x42801a83, 0x44801c84, 0x48801ce3, 0x4c801ce5, 1571 1.1 christos 0x50801ce9, 0x54801ceb, 0x56801eec, 0x56801eec, 0x56801eec, 1572 1.1 christos 0x56801eec, 0x56801eec, 0x56801eec, 0x56801eec, 0x00000000, 1573 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x01404000, 1574 1.1 christos 0x01404501, 0x02008501, 0x0280ca03, 0x03010c04, 0x04014c04, 1575 1.1 christos 0x04015005, 0x04015005, 0x04015005, 0x04015005, 0x04015005, 1576 1.1 christos 0x00637800, 0x03838000, 0x03fc0000, 0x00000000, 0x00637800, 1577 1.1 christos 0x03838000, 0x03fc0000, 0x00000000, 0x056db2e6, 0xae480001, 1578 1.1 christos 0x6eb6db6c, 0x056db2e6, 0xae480001, 0x6eb6db6c, 0x056db2e6, 1579 1.1 christos 0xae480001, 0x6eb6db6c 1580 1.1 christos }; 1581 1.1 christos 1582 1.1 christos static const struct athn_gain ar9380_2_2_tx_gain_high_power = { 1583 1.1 christos __arraycount(ar9380_2_2_tx_gain_regs), 1584 1.1 christos ar9380_2_2_tx_gain_regs, 1585 1.1 christos ar9380_2_2_tx_gain_high_power_vals_5g, 1586 1.1 christos ar9380_2_2_tx_gain_high_power_vals_2g 1587 1.1 christos }; 1588 1.1 christos 1589 1.1 christos /* 1590 1.1 christos * AR9485 1.1 Tx gains. 1591 1.1 christos */ 1592 1.1 christos static const uint16_t ar9485_1_1_tx_gain_regs[] = { 1593 1.1 christos P(0x098bc), P(0x0a410), P(0x0a458), P(0x0a500), P(0x0a504), 1594 1.1 christos P(0x0a508), P(0x0a50c), P(0x0a510), P(0x0a514), P(0x0a518), 1595 1.1 christos P(0x0a51c), P(0x0a520), P(0x0a524), P(0x0a528), P(0x0a52c), 1596 1.1 christos P(0x0a530), P(0x0a534), P(0x0a538), P(0x0a53c), P(0x0a540), 1597 1.1 christos P(0x0a544), P(0x0a548), P(0x0a54c), P(0x0a550), P(0x0a554), 1598 1.1 christos P(0x0a558), P(0x0a55c), P(0x0a560), P(0x0a564), P(0x0a568), 1599 1.1 christos P(0x0a56c), P(0x0a570), P(0x0a574), P(0x0a578), P(0x0a57c), 1600 1.1 christos P(0x0b500), P(0x0b504), P(0x0b508), P(0x0b50c), P(0x0b510), 1601 1.1 christos P(0x0b514), P(0x0b518), P(0x0b51c), P(0x0b520), P(0x0b524), 1602 1.1 christos P(0x0b528), P(0x0b52c), P(0x0b530), P(0x0b534), P(0x0b538), 1603 1.1 christos P(0x0b53c), P(0x0b540), P(0x0b544), P(0x0b548), P(0x0b54c), 1604 1.1 christos P(0x0b550), P(0x0b554), P(0x0b558), P(0x0b55c), P(0x0b560), 1605 1.1 christos P(0x0b564), P(0x0b568), P(0x0b56c), P(0x0b570), P(0x0b574), 1606 1.1 christos P(0x0b578), P(0x0b57c), P(0x16044), P(0x16048), 1607 1.1 christos }; 1608 1.1 christos 1609 1.1 christos static const uint32_t ar9485_1_1_tx_gain_vals_2g[] = { 1610 1.1 christos 0x00000002, 0x000050d8, 0x00000000, 0x00000000, 0x04000002, 1611 1.1 christos 0x08000004, 0x0d000200, 0x11000202, 0x15000400, 0x19000402, 1612 1.1 christos 0x1d000404, 0x21000603, 0x25000605, 0x2a000a03, 0x2c000a04, 1613 1.1 christos 0x34000e20, 0x35000e21, 0x43000e62, 0x45000e63, 0x49000e65, 1614 1.1 christos 0x4b000e66, 0x4d001645, 0x51001865, 0x55001a86, 0x57001ce9, 1615 1.1 christos 0x5a001ceb, 0x5e001eeb, 0x5e001eeb, 0x5e001eeb, 0x5e001eeb, 1616 1.1 christos 0x5e001eeb, 0x5e001eeb, 0x5e001eeb, 0x5e001eeb, 0x5e001eeb, 1617 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1618 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1619 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1620 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1621 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1622 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1623 1.1 christos 0x00000000, 0x00000000, 0x05d6b2db, 0x6c924260 1624 1.1 christos }; 1625 1.1 christos 1626 1.1 christos static const struct athn_gain ar9485_1_1_tx_gain = { 1627 1.1 christos __arraycount(ar9485_1_1_tx_gain_regs), 1628 1.1 christos ar9485_1_1_tx_gain_regs, 1629 1.1 christos NULL, /* 2GHz only. */ 1630 1.1 christos ar9485_1_1_tx_gain_vals_2g 1631 1.1 christos }; 1632 1.1 christos 1633 1.1 christos /* 1634 1.1 christos * AR9380 2.2 Rx gains. 1635 1.1 christos */ 1636 1.1 christos static const uint16_t ar9380_2_2_rx_gain_regs[] = { 1637 1.1 christos P(0x0a000), P(0x0a004), P(0x0a008), P(0x0a00c), P(0x0a010), 1638 1.1 christos P(0x0a014), P(0x0a018), P(0x0a01c), P(0x0a020), P(0x0a024), 1639 1.1 christos P(0x0a028), P(0x0a02c), P(0x0a030), P(0x0a034), P(0x0a038), 1640 1.1 christos P(0x0a03c), P(0x0a040), P(0x0a044), P(0x0a048), P(0x0a04c), 1641 1.1 christos P(0x0a050), P(0x0a054), P(0x0a058), P(0x0a05c), P(0x0a060), 1642 1.1 christos P(0x0a064), P(0x0a068), P(0x0a06c), P(0x0a070), P(0x0a074), 1643 1.1 christos P(0x0a078), P(0x0a07c), P(0x0a080), P(0x0a084), P(0x0a088), 1644 1.1 christos P(0x0a08c), P(0x0a090), P(0x0a094), P(0x0a098), P(0x0a09c), 1645 1.1 christos P(0x0a0a0), P(0x0a0a4), P(0x0a0a8), P(0x0a0ac), P(0x0a0b0), 1646 1.1 christos P(0x0a0b4), P(0x0a0b8), P(0x0a0bc), P(0x0a0c0), P(0x0a0c4), 1647 1.1 christos P(0x0a0c8), P(0x0a0cc), P(0x0a0d0), P(0x0a0d4), P(0x0a0d8), 1648 1.1 christos P(0x0a0dc), P(0x0a0e0), P(0x0a0e4), P(0x0a0e8), P(0x0a0ec), 1649 1.1 christos P(0x0a0f0), P(0x0a0f4), P(0x0a0f8), P(0x0a0fc), P(0x0a100), 1650 1.1 christos P(0x0a104), P(0x0a108), P(0x0a10c), P(0x0a110), P(0x0a114), 1651 1.1 christos P(0x0a118), P(0x0a11c), P(0x0a120), P(0x0a124), P(0x0a128), 1652 1.1 christos P(0x0a12c), P(0x0a130), P(0x0a134), P(0x0a138), P(0x0a13c), 1653 1.1 christos P(0x0a140), P(0x0a144), P(0x0a148), P(0x0a14c), P(0x0a150), 1654 1.1 christos P(0x0a154), P(0x0a158), P(0x0a15c), P(0x0a160), P(0x0a164), 1655 1.1 christos P(0x0a168), P(0x0a16c), P(0x0a170), P(0x0a174), P(0x0a178), 1656 1.1 christos P(0x0a17c), P(0x0a180), P(0x0a184), P(0x0a188), P(0x0a18c), 1657 1.1 christos P(0x0a190), P(0x0a194), P(0x0a198), P(0x0a19c), P(0x0a1a0), 1658 1.1 christos P(0x0a1a4), P(0x0a1a8), P(0x0a1ac), P(0x0a1b0), P(0x0a1b4), 1659 1.1 christos P(0x0a1b8), P(0x0a1bc), P(0x0a1c0), P(0x0a1c4), P(0x0a1c8), 1660 1.1 christos P(0x0a1cc), P(0x0a1d0), P(0x0a1d4), P(0x0a1d8), P(0x0a1dc), 1661 1.1 christos P(0x0a1e0), P(0x0a1e4), P(0x0a1e8), P(0x0a1ec), P(0x0a1f0), 1662 1.1 christos P(0x0a1f4), P(0x0a1f8), P(0x0a1fc), P(0x0b000), P(0x0b004), 1663 1.1 christos P(0x0b008), P(0x0b00c), P(0x0b010), P(0x0b014), P(0x0b018), 1664 1.1 christos P(0x0b01c), P(0x0b020), P(0x0b024), P(0x0b028), P(0x0b02c), 1665 1.1 christos P(0x0b030), P(0x0b034), P(0x0b038), P(0x0b03c), P(0x0b040), 1666 1.1 christos P(0x0b044), P(0x0b048), P(0x0b04c), P(0x0b050), P(0x0b054), 1667 1.1 christos P(0x0b058), P(0x0b05c), P(0x0b060), P(0x0b064), P(0x0b068), 1668 1.1 christos P(0x0b06c), P(0x0b070), P(0x0b074), P(0x0b078), P(0x0b07c), 1669 1.1 christos P(0x0b080), P(0x0b084), P(0x0b088), P(0x0b08c), P(0x0b090), 1670 1.1 christos P(0x0b094), P(0x0b098), P(0x0b09c), P(0x0b0a0), P(0x0b0a4), 1671 1.1 christos P(0x0b0a8), P(0x0b0ac), P(0x0b0b0), P(0x0b0b4), P(0x0b0b8), 1672 1.1 christos P(0x0b0bc), P(0x0b0c0), P(0x0b0c4), P(0x0b0c8), P(0x0b0cc), 1673 1.1 christos P(0x0b0d0), P(0x0b0d4), P(0x0b0d8), P(0x0b0dc), P(0x0b0e0), 1674 1.1 christos P(0x0b0e4), P(0x0b0e8), P(0x0b0ec), P(0x0b0f0), P(0x0b0f4), 1675 1.1 christos P(0x0b0f8), P(0x0b0fc), P(0x0b100), P(0x0b104), P(0x0b108), 1676 1.1 christos P(0x0b10c), P(0x0b110), P(0x0b114), P(0x0b118), P(0x0b11c), 1677 1.1 christos P(0x0b120), P(0x0b124), P(0x0b128), P(0x0b12c), P(0x0b130), 1678 1.1 christos P(0x0b134), P(0x0b138), P(0x0b13c), P(0x0b140), P(0x0b144), 1679 1.1 christos P(0x0b148), P(0x0b14c), P(0x0b150), P(0x0b154), P(0x0b158), 1680 1.1 christos P(0x0b15c), P(0x0b160), P(0x0b164), P(0x0b168), P(0x0b16c), 1681 1.1 christos P(0x0b170), P(0x0b174), P(0x0b178), P(0x0b17c), P(0x0b180), 1682 1.1 christos P(0x0b184), P(0x0b188), P(0x0b18c), P(0x0b190), P(0x0b194), 1683 1.1 christos P(0x0b198), P(0x0b19c), P(0x0b1a0), P(0x0b1a4), P(0x0b1a8), 1684 1.1 christos P(0x0b1ac), P(0x0b1b0), P(0x0b1b4), P(0x0b1b8), P(0x0b1bc), 1685 1.1 christos P(0x0b1c0), P(0x0b1c4), P(0x0b1c8), P(0x0b1cc), P(0x0b1d0), 1686 1.1 christos P(0x0b1d4), P(0x0b1d8), P(0x0b1dc), P(0x0b1e0), P(0x0b1e4), 1687 1.1 christos P(0x0b1e8), P(0x0b1ec), P(0x0b1f0), P(0x0b1f4), P(0x0b1f8), 1688 1.1 christos P(0x0b1fc) 1689 1.1 christos }; 1690 1.1 christos 1691 1.1 christos static const uint32_t ar9380_2_2_rx_gain_vals[] = { 1692 1.1 christos 0x00010000, 0x00030002, 0x00050004, 0x00810080, 0x00830082, 1693 1.1 christos 0x01810180, 0x01830182, 0x01850184, 0x01890188, 0x018b018a, 1694 1.1 christos 0x018d018c, 0x01910190, 0x01930192, 0x01950194, 0x038a0196, 1695 1.1 christos 0x038c038b, 0x0390038d, 0x03920391, 0x03940393, 0x03960395, 1696 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1697 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1698 1.1 christos 0x00000000, 0x00000000, 0x22222229, 0x1d1d1d1d, 0x1d1d1d1d, 1699 1.1 christos 0x1d1d1d1d, 0x171d1d1d, 0x11111717, 0x00030311, 0x00000000, 1700 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1701 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x001f0000, 0x01000101, 1702 1.1 christos 0x011e011f, 0x011c011d, 0x02030204, 0x02010202, 0x021f0200, 1703 1.1 christos 0x0302021e, 0x03000301, 0x031e031f, 0x0402031d, 0x04000401, 1704 1.1 christos 0x041e041f, 0x0502041d, 0x05000501, 0x051e051f, 0x06010602, 1705 1.1 christos 0x061f0600, 0x061d061e, 0x07020703, 0x07000701, 0x00000000, 1706 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1707 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1708 1.1 christos 0x001f0000, 0x01000101, 0x011e011f, 0x011c011d, 0x02030204, 1709 1.1 christos 0x02010202, 0x021f0200, 0x0302021e, 0x03000301, 0x031e031f, 1710 1.1 christos 0x0402031d, 0x04000401, 0x041e041f, 0x0502041d, 0x05000501, 1711 1.1 christos 0x051e051f, 0x06010602, 0x061f0600, 0x061d061e, 0x07020703, 1712 1.1 christos 0x07000701, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1713 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1714 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1715 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1716 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000396, 1717 1.1 christos 0x00000396, 0x00000396, 0x00000196, 0x00010000, 0x00030002, 1718 1.1 christos 0x00050004, 0x00810080, 0x00830082, 0x01810180, 0x01830182, 1719 1.1 christos 0x01850184, 0x02810280, 0x02830282, 0x02850284, 0x02890288, 1720 1.1 christos 0x028b028a, 0x0388028c, 0x038a0389, 0x038c038b, 0x0390038d, 1721 1.1 christos 0x03920391, 0x03940393, 0x03960395, 0x00000000, 0x00000000, 1722 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1723 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1724 1.1 christos 0x2a2d2f32, 0x21232328, 0x19191c1e, 0x12141417, 0x07070e0e, 1725 1.1 christos 0x03030305, 0x00000003, 0x00000000, 0x00000000, 0x00000000, 1726 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1727 1.1 christos 0x00000000, 0x003f0020, 0x00400041, 0x0140005f, 0x0160015f, 1728 1.1 christos 0x017e017f, 0x02410242, 0x025f0240, 0x027f0260, 0x0341027e, 1729 1.1 christos 0x035f0340, 0x037f0360, 0x04400441, 0x0460045f, 0x0541047f, 1730 1.1 christos 0x055f0540, 0x057f0560, 0x06400641, 0x0660065f, 0x067e067f, 1731 1.1 christos 0x07410742, 0x075f0740, 0x077f0760, 0x07800781, 0x07a0079f, 1732 1.1 christos 0x07c107bf, 0x000007c0, 0x00000000, 0x00000000, 0x00000000, 1733 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x003f0020, 0x00400041, 1734 1.1 christos 0x0140005f, 0x0160015f, 0x017e017f, 0x02410242, 0x025f0240, 1735 1.1 christos 0x027f0260, 0x0341027e, 0x035f0340, 0x037f0360, 0x04400441, 1736 1.1 christos 0x0460045f, 0x0541047f, 0x055f0540, 0x057f0560, 0x06400641, 1737 1.1 christos 0x0660065f, 0x067e067f, 0x07410742, 0x075f0740, 0x077f0760, 1738 1.1 christos 0x07800781, 0x07a0079f, 0x07c107bf, 0x000007c0, 0x00000000, 1739 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1740 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1741 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1742 1.1 christos 0x00000000, 0x00000000, 0x00000396, 0x00000396, 0x00000396, 1743 1.1 christos 0x00000196 1744 1.1 christos }; 1745 1.1 christos 1746 1.1 christos static const struct athn_gain ar9380_2_2_rx_gain = { 1747 1.1 christos __arraycount(ar9380_2_2_rx_gain_regs), 1748 1.1 christos ar9380_2_2_rx_gain_regs, 1749 1.1 christos ar9380_2_2_rx_gain_vals, 1750 1.1 christos ar9380_2_2_rx_gain_vals 1751 1.1 christos }; 1752 1.1 christos 1753 1.1 christos /* 1754 1.1 christos * AR9380 2.2 without external low-noise amplifier Rx gains. 1755 1.1 christos */ 1756 1.1 christos static const uint32_t ar9380_2_2_rx_gain_wo_xlna_vals[] = { 1757 1.1 christos 0x00010000, 0x00030002, 0x00050004, 0x00810080, 0x00830082, 1758 1.1 christos 0x01810180, 0x01830182, 0x01850184, 0x01890188, 0x018b018a, 1759 1.1 christos 0x018d018c, 0x03820190, 0x03840383, 0x03880385, 0x038a0389, 1760 1.1 christos 0x038c038b, 0x0390038d, 0x03920391, 0x03940393, 0x03960395, 1761 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1762 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1763 1.1 christos 0x00000000, 0x00000000, 0x29292929, 0x29292929, 0x29292929, 1764 1.1 christos 0x29292929, 0x22292929, 0x1d1d2222, 0x0c111117, 0x00030303, 1765 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1766 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x001f0000, 0x01000101, 1767 1.1 christos 0x011e011f, 0x011c011d, 0x02030204, 0x02010202, 0x021f0200, 1768 1.1 christos 0x0302021e, 0x03000301, 0x031e031f, 0x0402031d, 0x04000401, 1769 1.1 christos 0x041e041f, 0x0502041d, 0x05000501, 0x051e051f, 0x06010602, 1770 1.1 christos 0x061f0600, 0x061d061e, 0x07020703, 0x07000701, 0x00000000, 1771 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1772 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1773 1.1 christos 0x001f0000, 0x01000101, 0x011e011f, 0x011c011d, 0x02030204, 1774 1.1 christos 0x02010202, 0x021f0200, 0x0302021e, 0x03000301, 0x031e031f, 1775 1.1 christos 0x0402031d, 0x04000401, 0x041e041f, 0x0502041d, 0x05000501, 1776 1.1 christos 0x051e051f, 0x06010602, 0x061f0600, 0x061d061e, 0x07020703, 1777 1.1 christos 0x07000701, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1778 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1779 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1780 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1781 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000396, 1782 1.1 christos 0x00000396, 0x00000396, 0x00000196, 0x00010000, 0x00030002, 1783 1.1 christos 0x00050004, 0x00810080, 0x00830082, 0x01810180, 0x01830182, 1784 1.1 christos 0x01850184, 0x02810280, 0x02830282, 0x02850284, 0x02890288, 1785 1.1 christos 0x028b028a, 0x0388028c, 0x038a0389, 0x038c038b, 0x0390038d, 1786 1.1 christos 0x03920391, 0x03940393, 0x03960395, 0x00000000, 0x00000000, 1787 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1788 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1789 1.1 christos 0x32323232, 0x2f2f3232, 0x23282a2d, 0x1c1e2123, 0x14171919, 1790 1.1 christos 0x0e0e1214, 0x03050707, 0x00030303, 0x00000000, 0x00000000, 1791 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1792 1.1 christos 0x00000000, 0x003f0020, 0x00400041, 0x0140005f, 0x0160015f, 1793 1.1 christos 0x017e017f, 0x02410242, 0x025f0240, 0x027f0260, 0x0341027e, 1794 1.1 christos 0x035f0340, 0x037f0360, 0x04400441, 0x0460045f, 0x0541047f, 1795 1.1 christos 0x055f0540, 0x057f0560, 0x06400641, 0x0660065f, 0x067e067f, 1796 1.1 christos 0x07410742, 0x075f0740, 0x077f0760, 0x07800781, 0x07a0079f, 1797 1.1 christos 0x07c107bf, 0x000007c0, 0x00000000, 0x00000000, 0x00000000, 1798 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x003f0020, 0x00400041, 1799 1.1 christos 0x0140005f, 0x0160015f, 0x017e017f, 0x02410242, 0x025f0240, 1800 1.1 christos 0x027f0260, 0x0341027e, 0x035f0340, 0x037f0360, 0x04400441, 1801 1.1 christos 0x0460045f, 0x0541047f, 0x055f0540, 0x057f0560, 0x06400641, 1802 1.1 christos 0x0660065f, 0x067e067f, 0x07410742, 0x075f0740, 0x077f0760, 1803 1.1 christos 0x07800781, 0x07a0079f, 0x07c107bf, 0x000007c0, 0x00000000, 1804 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1805 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1806 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1807 1.1 christos 0x00000000, 0x00000000, 0x00000396, 0x00000396, 0x00000396, 1808 1.1 christos 0x00000196 1809 1.1 christos }; 1810 1.1 christos 1811 1.1 christos static const struct athn_gain ar9380_2_2_rx_gain_wo_xlna = { 1812 1.1 christos __arraycount(ar9380_2_2_rx_gain_regs), 1813 1.1 christos ar9380_2_2_rx_gain_regs, 1814 1.1 christos ar9380_2_2_rx_gain_wo_xlna_vals, 1815 1.1 christos ar9380_2_2_rx_gain_wo_xlna_vals 1816 1.1 christos }; 1817 1.1 christos 1818 1.1 christos /* 1819 1.1 christos * AR9485 1.1 Rx gains. 1820 1.1 christos */ 1821 1.1 christos static const uint16_t ar9485_1_1_rx_gain_regs[] = { 1822 1.1 christos P(0x0a000), P(0x0a004), P(0x0a008), P(0x0a00c), P(0x0a010), 1823 1.1 christos P(0x0a014), P(0x0a018), P(0x0a01c), P(0x0a020), P(0x0a024), 1824 1.1 christos P(0x0a028), P(0x0a02c), P(0x0a030), P(0x0a034), P(0x0a038), 1825 1.1 christos P(0x0a03c), P(0x0a040), P(0x0a044), P(0x0a048), P(0x0a04c), 1826 1.1 christos P(0x0a050), P(0x0a054), P(0x0a058), P(0x0a05c), P(0x0a060), 1827 1.1 christos P(0x0a064), P(0x0a068), P(0x0a06c), P(0x0a070), P(0x0a074), 1828 1.1 christos P(0x0a078), P(0x0a07c), P(0x0a080), P(0x0a084), P(0x0a088), 1829 1.1 christos P(0x0a08c), P(0x0a090), P(0x0a094), P(0x0a098), P(0x0a09c), 1830 1.1 christos P(0x0a0a0), P(0x0a0a4), P(0x0a0a8), P(0x0a0ac), P(0x0a0b0), 1831 1.1 christos P(0x0a0b4), P(0x0a0b8), P(0x0a0bc), P(0x0a0c0), P(0x0a0c4), 1832 1.1 christos P(0x0a0c8), P(0x0a0cc), P(0x0a0d0), P(0x0a0d4), P(0x0a0d8), 1833 1.1 christos P(0x0a0dc), P(0x0a0e0), P(0x0a0e4), P(0x0a0e8), P(0x0a0ec), 1834 1.1 christos P(0x0a0f0), P(0x0a0f4), P(0x0a0f8), P(0x0a0fc), P(0x0a100), 1835 1.1 christos P(0x0a104), P(0x0a108), P(0x0a10c), P(0x0a110), P(0x0a114), 1836 1.1 christos P(0x0a118), P(0x0a11c), P(0x0a120), P(0x0a124), P(0x0a128), 1837 1.1 christos P(0x0a12c), P(0x0a130), P(0x0a134), P(0x0a138), P(0x0a13c), 1838 1.1 christos P(0x0a140), P(0x0a144), P(0x0a148), P(0x0a14c), P(0x0a150), 1839 1.1 christos P(0x0a154), P(0x0a158), P(0x0a15c), P(0x0a160), P(0x0a164), 1840 1.1 christos P(0x0a168), P(0x0a16c), P(0x0a170), P(0x0a174), P(0x0a178), 1841 1.1 christos P(0x0a17c), P(0x0a180), P(0x0a184), P(0x0a188), P(0x0a18c), 1842 1.1 christos P(0x0a190), P(0x0a194), P(0x0a198), P(0x0a19c), P(0x0a1a0), 1843 1.1 christos P(0x0a1a4), P(0x0a1a8), P(0x0a1ac), P(0x0a1b0), P(0x0a1b4), 1844 1.1 christos P(0x0a1b8), P(0x0a1bc), P(0x0a1c0), P(0x0a1c4), P(0x0a1c8), 1845 1.1 christos P(0x0a1cc), P(0x0a1d0), P(0x0a1d4), P(0x0a1d8), P(0x0a1dc), 1846 1.1 christos P(0x0a1e0), P(0x0a1e4), P(0x0a1e8), P(0x0a1ec), P(0x0a1f0), 1847 1.1 christos P(0x0a1f4), P(0x0a1f8), P(0x0a1fc) 1848 1.1 christos }; 1849 1.1 christos 1850 1.1 christos static const uint32_t ar9485_1_1_rx_gain_vals[] = { 1851 1.1 christos 0x00060005, 0x00810080, 0x00830082, 0x00850084, 0x01820181, 1852 1.1 christos 0x01840183, 0x01880185, 0x018a0189, 0x02850284, 0x02890288, 1853 1.1 christos 0x028b028a, 0x03850384, 0x03890388, 0x038b038a, 0x038d038c, 1854 1.1 christos 0x03910390, 0x03930392, 0x03950394, 0x00000396, 0x00000000, 1855 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1856 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1857 1.1 christos 0x00000000, 0x00000000, 0x28282828, 0x28282828, 0x28282828, 1858 1.1 christos 0x28282828, 0x28282828, 0x24242428, 0x171e1e1e, 0x02020b0b, 1859 1.1 christos 0x02020202, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1860 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x22072208, 0x22052206, 1861 1.1 christos 0x22032204, 0x22012202, 0x221f2200, 0x221d221e, 0x33023303, 1862 1.1 christos 0x33003301, 0x331e331f, 0x4402331d, 0x44004401, 0x441e441f, 1863 1.1 christos 0x55025503, 0x55005501, 0x551e551f, 0x6602551d, 0x66006601, 1864 1.1 christos 0x661e661f, 0x7703661d, 0x77017702, 0x00007700, 0x00000000, 1865 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1866 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1867 1.1 christos 0x001f0000, 0x111f1100, 0x111d111e, 0x111b111c, 0x22032204, 1868 1.1 christos 0x22012202, 0x221f2200, 0x221d221e, 0x33013302, 0x331f3300, 1869 1.1 christos 0x4402331e, 0x44004401, 0x441e441f, 0x55015502, 0x551f5500, 1870 1.1 christos 0x6602551e, 0x66006601, 0x661e661f, 0x7703661d, 0x77017702, 1871 1.1 christos 0x00007700, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1872 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1873 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1874 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 1875 1.1 christos 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000396, 1876 1.1 christos 0x00000396, 0x00000396, 0x00000296 1877 1.1 christos }; 1878 1.1 christos 1879 1.1 christos static const struct athn_gain ar9485_1_1_rx_gain = { 1880 1.1 christos __arraycount(ar9485_1_1_rx_gain_regs), 1881 1.1 christos ar9485_1_1_rx_gain_regs, 1882 1.1 christos NULL, /* 2GHz only. */ 1883 1.1 christos ar9485_1_1_rx_gain_vals 1884 1.1 christos }; 1885 1.1 christos 1886 1.1 christos /* 1887 1.1 christos * Serializer/Deserializer programming. 1888 1.1 christos */ 1889 1.1 christos 1890 1.1 christos static const uint32_t ar9380_2_2_serdes_regs[] = { 1891 1.1 christos AR_PCIE_SERDES, 1892 1.1 christos AR_PCIE_SERDES, 1893 1.1 christos AR_PCIE_SERDES2 1894 1.1 christos }; 1895 1.1 christos 1896 1.1 christos static const uint32_t ar9380_2_2_serdes_vals[] = { 1897 1.1 christos 0x08212e5e, 1898 1.1 christos 0x0008003b, 1899 1.1 christos 0x00000000 1900 1.1 christos }; 1901 1.1 christos 1902 1.1 christos static const struct athn_serdes ar9380_2_2_serdes = { 1903 1.1 christos __arraycount(ar9380_2_2_serdes_vals), 1904 1.1 christos ar9380_2_2_serdes_regs, 1905 1.1 christos ar9380_2_2_serdes_vals 1906 1.1 christos }; 1907 1.1 christos 1908 1.1 christos static const uint32_t ar9485_1_1_serdes_regs[] = { 1909 1.1 christos 0x00018c00, 1910 1.1 christos 0x00018c04, 1911 1.1 christos 0x00018c08 1912 1.1 christos }; 1913 1.1 christos 1914 1.1 christos static const uint32_t ar9485_1_1_serdes_vals[] = { 1915 1.1 christos 0x18013e5e, 1916 1.1 christos 0x000801d8, 1917 1.1 christos 0x0000080c 1918 1.1 christos }; 1919 1.1 christos 1920 1.1 christos static const struct athn_serdes ar9485_1_1_serdes = { 1921 1.1 christos __arraycount(ar9485_1_1_serdes_vals), 1922 1.1 christos ar9485_1_1_serdes_regs, 1923 1.1 christos ar9485_1_1_serdes_vals 1924 1.1 christos }; 1925 1.1 christos 1926 1.1 christos #endif /* _ARN9380REG_H_ */ 1927