/******************************************************************************
|
*
|
* Copyright(c) 2007 - 2020 Realtek Corporation.
|
*
|
* This program is free software; you can redistribute it and/or modify it
|
* under the terms of version 2 of the GNU General Public License as
|
* published by the Free Software Foundation.
|
*
|
* This program is distributed in the hope that it will be useful, but WITHOUT
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
* more details.
|
*
|
* The full GNU General Public License is included in this distribution in the
|
* file called LICENSE.
|
*
|
* Contact Information:
|
* wlanfae <wlanfae@realtek.com>
|
* Realtek Corporation, No. 2, Innovation Road II, Hsinchu Science Park,
|
* Hsinchu 300, Taiwan.
|
*
|
* Larry Finger <Larry.Finger@lwfinger.net>
|
*
|
*****************************************************************************/
|
|
#ifndef _HALBB_PLCP_TX_H_
|
#define _HALBB_PLCP_TX_H_
|
|
/* ============================================================
|
structure
|
============================================================
|
*/
|
struct bb_plcp_cr_info {
|
u32 b_header_0;
|
u32 b_header_0_m;
|
u32 b_header_1;
|
u32 b_header_1_m;
|
u32 b_header_2;
|
u32 b_header_2_m;
|
u32 b_header_3;
|
u32 b_header_3_m;
|
u32 b_header_4;
|
u32 b_header_4_m;
|
u32 b_header_5;
|
u32 b_header_5_m;
|
u32 b_psdu_byte;
|
u32 b_psdu_byte_m;
|
u32 b_carrier_suppress_tx;
|
u32 b_carrier_suppress_tx_m;
|
u32 b_ppdu_type;
|
u32 b_ppdu_type_m;
|
u32 b_psdu_rate;
|
u32 b_psdu_rate_m;
|
u32 b_service_bit2;
|
u32 b_service_bit2_m;
|
u32 he_sigb_ch1_0;
|
u32 he_sigb_ch1_0_m;
|
u32 he_sigb_ch1_1;
|
u32 he_sigb_ch1_1_m;
|
u32 he_sigb_ch1_10;
|
u32 he_sigb_ch1_10_m;
|
u32 he_sigb_ch1_11;
|
u32 he_sigb_ch1_11_m;
|
u32 he_sigb_ch1_12;
|
u32 he_sigb_ch1_12_m;
|
u32 he_sigb_ch1_13;
|
u32 he_sigb_ch1_13_m;
|
u32 he_sigb_ch1_14;
|
u32 he_sigb_ch1_14_m;
|
u32 he_sigb_ch1_15;
|
u32 he_sigb_ch1_15_m;
|
u32 he_sigb_ch1_2;
|
u32 he_sigb_ch1_2_m;
|
u32 he_sigb_ch1_3;
|
u32 he_sigb_ch1_3_m;
|
u32 he_sigb_ch1_4;
|
u32 he_sigb_ch1_4_m;
|
u32 he_sigb_ch1_5;
|
u32 he_sigb_ch1_5_m;
|
u32 he_sigb_ch1_6;
|
u32 he_sigb_ch1_6_m;
|
u32 he_sigb_ch1_7;
|
u32 he_sigb_ch1_7_m;
|
u32 he_sigb_ch1_8;
|
u32 he_sigb_ch1_8_m;
|
u32 he_sigb_ch1_9;
|
u32 he_sigb_ch1_9_m;
|
u32 he_sigb_ch2_0;
|
u32 he_sigb_ch2_0_m;
|
u32 he_sigb_ch2_1;
|
u32 he_sigb_ch2_1_m;
|
u32 he_sigb_ch2_10;
|
u32 he_sigb_ch2_10_m;
|
u32 he_sigb_ch2_11;
|
u32 he_sigb_ch2_11_m;
|
u32 he_sigb_ch2_12;
|
u32 he_sigb_ch2_12_m;
|
u32 he_sigb_ch2_13;
|
u32 he_sigb_ch2_13_m;
|
u32 he_sigb_ch2_14;
|
u32 he_sigb_ch2_14_m;
|
u32 he_sigb_ch2_15;
|
u32 he_sigb_ch2_15_m;
|
u32 he_sigb_ch2_2;
|
u32 he_sigb_ch2_2_m;
|
u32 he_sigb_ch2_3;
|
u32 he_sigb_ch2_3_m;
|
u32 he_sigb_ch2_4;
|
u32 he_sigb_ch2_4_m;
|
u32 he_sigb_ch2_5;
|
u32 he_sigb_ch2_5_m;
|
u32 he_sigb_ch2_6;
|
u32 he_sigb_ch2_6_m;
|
u32 he_sigb_ch2_7;
|
u32 he_sigb_ch2_7_m;
|
u32 he_sigb_ch2_8;
|
u32 he_sigb_ch2_8_m;
|
u32 he_sigb_ch2_9;
|
u32 he_sigb_ch2_9_m;
|
u32 usr0_delmter;
|
u32 usr0_delmter_m;
|
u32 usr0_eof_padding_len;
|
u32 usr0_eof_padding_len_m;
|
u32 usr0_init_seed;
|
u32 usr0_init_seed_m;
|
u32 usr1_delmter;
|
u32 usr1_delmter_m;
|
u32 usr1_eof_padding_len;
|
u32 usr1_eof_padding_len_m;
|
u32 usr1_init_seed;
|
u32 usr1_init_seed_m;
|
u32 usr2_delmter;
|
u32 usr2_delmter_m;
|
u32 usr2_eof_padding_len;
|
u32 usr2_eof_padding_len_m;
|
u32 usr2_init_seed;
|
u32 usr2_init_seed_m;
|
u32 usr3_delmter;
|
u32 usr3_delmter_m;
|
u32 usr3_eof_padding_len;
|
u32 usr3_eof_padding_len_m;
|
u32 usr3_init_seed;
|
u32 usr3_init_seed_m;
|
u32 vht_sigb0;
|
u32 vht_sigb0_m;
|
u32 vht_sigb1;
|
u32 vht_sigb1_m;
|
u32 vht_sigb2;
|
u32 vht_sigb2_m;
|
u32 he_sigb_mcs;
|
u32 he_sigb_mcs_m;
|
u32 vht_sigb3;
|
u32 vht_sigb3_m;
|
u32 n_ltf;
|
u32 n_ltf_m;
|
u32 siga1;
|
u32 siga1_m;
|
u32 siga2;
|
u32 siga2_m;
|
u32 lsig;
|
u32 lsig_m;
|
u32 cca_pw_th;
|
u32 cca_pw_th_m;
|
u32 n_sym;
|
u32 n_sym_m;
|
u32 usr0_service;
|
u32 usr0_service_m;
|
u32 usr1_service;
|
u32 usr1_service_m;
|
u32 usr2_service;
|
u32 usr2_service_m;
|
u32 usr3_service;
|
u32 usr3_service_m;
|
u32 usr0_mdpu_len_byte;
|
u32 usr0_mdpu_len_byte_m;
|
u32 usr1_mdpu_len_byte;
|
u32 usr1_mdpu_len_byte_m;
|
u32 obw_cts2self_dup_type;
|
u32 obw_cts2self_dup_type_m;
|
u32 usr2_mdpu_len_byte;
|
u32 usr2_mdpu_len_byte_m;
|
u32 usr3_mdpu_len_byte;
|
u32 usr3_mdpu_len_byte_m;
|
u32 usr0_csi_buf_id;
|
u32 usr0_csi_buf_id_m;
|
u32 usr1_csi_buf_id;
|
u32 usr1_csi_buf_id_m;
|
u32 rf_gain_idx;
|
u32 rf_gain_idx_m;
|
u32 usr2_csi_buf_id;
|
u32 usr2_csi_buf_id_m;
|
u32 usr3_csi_buf_id;
|
u32 usr3_csi_buf_id_m;
|
u32 usr0_n_mpdu;
|
u32 usr0_n_mpdu_m;
|
u32 usr1_n_mpdu;
|
u32 usr1_n_mpdu_m;
|
u32 usr2_n_mpdu;
|
u32 usr2_n_mpdu_m;
|
u32 usr0_pw_boost_fctr_db;
|
u32 usr0_pw_boost_fctr_db_m;
|
u32 usr3_n_mpdu;
|
u32 usr3_n_mpdu_m;
|
u32 ch20_with_data;
|
u32 ch20_with_data_m;
|
u32 n_usr;
|
u32 n_usr_m;
|
u32 txcmd_txtp;
|
u32 txcmd_txtp_m;
|
u32 usr0_ru_alloc;
|
u32 usr0_ru_alloc_m;
|
u32 usr0_u_id;
|
u32 usr0_u_id_m;
|
u32 usr1_ru_alloc;
|
u32 usr1_ru_alloc_m;
|
u32 usr1_u_id;
|
u32 usr1_u_id_m;
|
u32 usr2_ru_alloc;
|
u32 usr2_ru_alloc_m;
|
u32 usr2_u_id;
|
u32 usr2_u_id_m;
|
u32 usr3_ru_alloc;
|
u32 usr3_ru_alloc_m;
|
u32 usr3_u_id;
|
u32 usr3_u_id_m;
|
u32 n_sym_hesigb;
|
u32 n_sym_hesigb_m;
|
u32 usr0_mcs;
|
u32 usr0_mcs_m;
|
u32 usr1_mcs;
|
u32 usr1_mcs_m;
|
u32 usr2_mcs;
|
u32 usr2_mcs_m;
|
u32 usr3_mcs;
|
u32 usr3_mcs_m;
|
u32 usr1_pw_boost_fctr_db;
|
u32 usr1_pw_boost_fctr_db_m;
|
u32 usr2_pw_boost_fctr_db;
|
u32 usr2_pw_boost_fctr_db_m;
|
u32 usr3_pw_boost_fctr_db;
|
u32 usr3_pw_boost_fctr_db_m;
|
u32 ppdu_type;
|
u32 ppdu_type_m;
|
u32 txsc;
|
u32 txsc_m;
|
u32 cfo_comp;
|
u32 cfo_comp_m;
|
u32 pkt_ext_idx;
|
u32 pkt_ext_idx_m;
|
u32 usr0_n_sts;
|
u32 usr0_n_sts_m;
|
u32 usr0_n_sts_ru_tot;
|
u32 usr0_n_sts_ru_tot_m;
|
u32 usr0_strt_sts;
|
u32 usr0_strt_sts_m;
|
u32 usr1_n_sts;
|
u32 usr1_n_sts_m;
|
u32 usr1_n_sts_ru_tot;
|
u32 usr1_n_sts_ru_tot_m;
|
u32 usr1_strt_sts;
|
u32 usr1_strt_sts_m;
|
u32 usr2_n_sts;
|
u32 usr2_n_sts_m;
|
u32 usr2_n_sts_ru_tot;
|
u32 usr2_n_sts_ru_tot_m;
|
u32 usr2_strt_sts;
|
u32 usr2_strt_sts_m;
|
u32 usr3_n_sts;
|
u32 usr3_n_sts_m;
|
u32 usr3_n_sts_ru_tot;
|
u32 usr3_n_sts_ru_tot_m;
|
u32 usr3_strt_sts;
|
u32 usr3_strt_sts_m;
|
u32 source_gen_mode_idx;
|
u32 source_gen_mode_idx_m;
|
u32 gi_type;
|
u32 gi_type_m;
|
u32 ltf_type;
|
u32 ltf_type_m;
|
u32 dbw_idx;
|
u32 dbw_idx_m;
|
u32 pre_fec_fctr;
|
u32 pre_fec_fctr_m;
|
u32 beam_change_en;
|
u32 beam_change_en_m;
|
u32 doppler_en;
|
u32 doppler_en_m;
|
u32 fb_mumimo_en;
|
u32 fb_mumimo_en_m;
|
u32 feedback_status;
|
u32 feedback_status_m;
|
u32 he_sigb_dcm_en;
|
u32 he_sigb_dcm_en_m;
|
u32 midamble_mode;
|
u32 midamble_mode_m;
|
u32 mumimo_ltf_mode_en;
|
u32 mumimo_ltf_mode_en_m;
|
u32 ndp;
|
u32 ndp_m;
|
u32 stbc_en;
|
u32 stbc_en_m;
|
u32 ant_sel_a;
|
u32 ant_sel_a_m;
|
u32 ant_sel_b;
|
u32 ant_sel_b_m;
|
u32 ant_sel_c;
|
u32 ant_sel_c_m;
|
u32 ant_sel_d;
|
u32 ant_sel_d_m;
|
u32 cca_pw_th_en;
|
u32 cca_pw_th_en_m;
|
u32 rf_fixed_gain_en;
|
u32 rf_fixed_gain_en_m;
|
u32 ul_cqi_rpt_tri;
|
u32 ul_cqi_rpt_tri_m;
|
u32 ldpc_extr;
|
u32 ldpc_extr_m;
|
u32 usr0_dcm_en;
|
u32 usr0_dcm_en_m;
|
u32 usr0_fec_type;
|
u32 usr0_fec_type_m;
|
u32 usr0_txbf_en;
|
u32 usr0_txbf_en_m;
|
u32 usr1_dcm_en;
|
u32 usr1_dcm_en_m;
|
u32 usr1_fec_type;
|
u32 usr1_fec_type_m;
|
u32 usr1_txbf_en;
|
u32 usr1_txbf_en_m;
|
u32 usr2_dcm_en;
|
u32 usr2_dcm_en_m;
|
u32 usr2_fec_type;
|
u32 usr2_fec_type_m;
|
u32 usr2_txbf_en;
|
u32 usr2_txbf_en_m;
|
u32 usr3_dcm_en;
|
u32 usr3_dcm_en_m;
|
u32 usr3_fec_type;
|
u32 usr3_fec_type_m;
|
u32 usr3_txbf_en;
|
u32 usr3_txbf_en_m;
|
u32 usr0_precoding_mode_idx;
|
u32 usr0_precoding_mode_idx_m;
|
u32 usr1_precoding_mode_idx;
|
u32 usr1_precoding_mode_idx_m;
|
u32 usr2_precoding_mode_idx;
|
u32 usr2_precoding_mode_idx_m;
|
u32 usr3_precoding_mode_idx;
|
u32 usr3_precoding_mode_idx_m;
|
u32 b_rate_idx;
|
u32 b_rate_idx_m;
|
u32 b_locked_clk_en;
|
u32 b_locked_clk_en_m;
|
};
|
|
struct bb_plcp_info {
|
struct bb_plcp_cr_info bb_plcp_cr_i;
|
};
|
|
|
/* ============================================================
|
Function Prototype
|
============================================================
|
*/
|
|
struct bb_info;
|
|
void halbb_cr_cfg_plcp_init(struct bb_info *bb);
|
|
#endif
|