1 /* 2 * Copyright (c) 2010 Broadcom Corporation 3 * 4 * Permission to use, copy, modify, and/or distribute this software for any 5 * purpose with or without fee is hereby granted, provided that the above 6 * copyright notice and this permission notice appear in all copies. 7 * 8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 9 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 10 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY 11 * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 12 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION 13 * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 14 * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 15 */ 16 17 #ifndef _wlc_phy_lcn_h_ 18 #define _wlc_phy_lcn_h_ 19 20 struct phy_info_lcnphy { 21 int lcnphy_txrf_sp_9_override; 22 u8 lcnphy_full_cal_channel; 23 u8 lcnphy_cal_counter; 24 u16 lcnphy_cal_temper; 25 bool lcnphy_recal; 26 27 u8 lcnphy_rc_cap; 28 u32 lcnphy_mcs20_po; 29 30 u8 lcnphy_tr_isolation_mid; 31 u8 lcnphy_tr_isolation_low; 32 u8 lcnphy_tr_isolation_hi; 33 34 u8 lcnphy_bx_arch; 35 u8 lcnphy_rx_power_offset; 36 u8 lcnphy_rssi_vf; 37 u8 lcnphy_rssi_vc; 38 u8 lcnphy_rssi_gs; 39 u8 lcnphy_tssi_val; 40 u8 lcnphy_rssi_vf_lowtemp; 41 u8 lcnphy_rssi_vc_lowtemp; 42 u8 lcnphy_rssi_gs_lowtemp; 43 44 u8 lcnphy_rssi_vf_hightemp; 45 u8 lcnphy_rssi_vc_hightemp; 46 u8 lcnphy_rssi_gs_hightemp; 47 48 s16 lcnphy_pa0b0; 49 s16 lcnphy_pa0b1; 50 s16 lcnphy_pa0b2; 51 52 u16 lcnphy_rawtempsense; 53 u8 lcnphy_measPower; 54 u8 lcnphy_tempsense_slope; 55 u8 lcnphy_freqoffset_corr; 56 u8 lcnphy_tempsense_option; 57 u8 lcnphy_tempcorrx; 58 bool lcnphy_iqcal_swp_dis; 59 bool lcnphy_hw_iqcal_en; 60 uint lcnphy_bandedge_corr; 61 bool lcnphy_spurmod; 62 u16 lcnphy_tssi_tx_cnt; 63 u16 lcnphy_tssi_idx; 64 u16 lcnphy_tssi_npt; 65 66 u16 lcnphy_target_tx_freq; 67 s8 lcnphy_tx_power_idx_override; 68 u16 lcnphy_noise_samples; 69 70 u32 lcnphy_papdRxGnIdx; 71 u32 lcnphy_papd_rxGnCtrl_init; 72 73 u32 lcnphy_gain_idx_14_lowword; 74 u32 lcnphy_gain_idx_14_hiword; 75 u32 lcnphy_gain_idx_27_lowword; 76 u32 lcnphy_gain_idx_27_hiword; 77 s16 lcnphy_ofdmgainidxtableoffset; 78 s16 lcnphy_dsssgainidxtableoffset; 79 u32 lcnphy_tr_R_gain_val; 80 u32 lcnphy_tr_T_gain_val; 81 s8 lcnphy_input_pwr_offset_db; 82 u16 lcnphy_Med_Low_Gain_db; 83 u16 lcnphy_Very_Low_Gain_db; 84 s8 lcnphy_lastsensed_temperature; 85 s8 lcnphy_pkteng_rssi_slope; 86 u8 lcnphy_saved_tx_user_target[TXP_NUM_RATES]; 87 u8 lcnphy_volt_winner; 88 u8 lcnphy_volt_low; 89 u8 lcnphy_54_48_36_24mbps_backoff; 90 u8 lcnphy_11n_backoff; 91 u8 lcnphy_lowerofdm; 92 u8 lcnphy_cck; 93 u8 lcnphy_psat_2pt3_detected; 94 s32 lcnphy_lowest_Re_div_Im; 95 s8 lcnphy_final_papd_cal_idx; 96 u16 lcnphy_extstxctrl4; 97 u16 lcnphy_extstxctrl0; 98 u16 lcnphy_extstxctrl1; 99 s16 lcnphy_cck_dig_filt_type; 100 s16 lcnphy_ofdm_dig_filt_type; 101 lcnphy_cal_results_t lcnphy_cal_results; 102 103 u8 lcnphy_psat_pwr; 104 u8 lcnphy_psat_indx; 105 s32 lcnphy_min_phase; 106 u8 lcnphy_final_idx; 107 u8 lcnphy_start_idx; 108 u8 lcnphy_current_index; 109 u16 lcnphy_logen_buf_1; 110 u16 lcnphy_local_ovr_2; 111 u16 lcnphy_local_oval_6; 112 u16 lcnphy_local_oval_5; 113 u16 lcnphy_logen_mixer_1; 114 115 u8 lcnphy_aci_stat; 116 uint lcnphy_aci_start_time; 117 s8 lcnphy_tx_power_offset[TXP_NUM_RATES]; 118 }; 119 #endif /* _wlc_phy_lcn_h_ */ 120