162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause 262306a36Sopenharmony_ci/* Copyright(c) 2023 Realtek Corporation 362306a36Sopenharmony_ci */ 462306a36Sopenharmony_ci 562306a36Sopenharmony_ci#include "phy.h" 662306a36Sopenharmony_ci#include "reg.h" 762306a36Sopenharmony_ci 862306a36Sopenharmony_cistatic const struct rtw89_ccx_regs rtw89_ccx_regs_be = { 962306a36Sopenharmony_ci .setting_addr = R_CCX, 1062306a36Sopenharmony_ci .edcca_opt_mask = B_CCX_EDCCA_OPT_MSK_V1, 1162306a36Sopenharmony_ci .measurement_trig_mask = B_MEASUREMENT_TRIG_MSK, 1262306a36Sopenharmony_ci .trig_opt_mask = B_CCX_TRIG_OPT_MSK, 1362306a36Sopenharmony_ci .en_mask = B_CCX_EN_MSK, 1462306a36Sopenharmony_ci .ifs_cnt_addr = R_IFS_COUNTER, 1562306a36Sopenharmony_ci .ifs_clm_period_mask = B_IFS_CLM_PERIOD_MSK, 1662306a36Sopenharmony_ci .ifs_clm_cnt_unit_mask = B_IFS_CLM_COUNTER_UNIT_MSK, 1762306a36Sopenharmony_ci .ifs_clm_cnt_clear_mask = B_IFS_COUNTER_CLR_MSK, 1862306a36Sopenharmony_ci .ifs_collect_en_mask = B_IFS_COLLECT_EN, 1962306a36Sopenharmony_ci .ifs_t1_addr = R_IFS_T1, 2062306a36Sopenharmony_ci .ifs_t1_th_h_mask = B_IFS_T1_TH_HIGH_MSK, 2162306a36Sopenharmony_ci .ifs_t1_en_mask = B_IFS_T1_EN_MSK, 2262306a36Sopenharmony_ci .ifs_t1_th_l_mask = B_IFS_T1_TH_LOW_MSK, 2362306a36Sopenharmony_ci .ifs_t2_addr = R_IFS_T2, 2462306a36Sopenharmony_ci .ifs_t2_th_h_mask = B_IFS_T2_TH_HIGH_MSK, 2562306a36Sopenharmony_ci .ifs_t2_en_mask = B_IFS_T2_EN_MSK, 2662306a36Sopenharmony_ci .ifs_t2_th_l_mask = B_IFS_T2_TH_LOW_MSK, 2762306a36Sopenharmony_ci .ifs_t3_addr = R_IFS_T3, 2862306a36Sopenharmony_ci .ifs_t3_th_h_mask = B_IFS_T3_TH_HIGH_MSK, 2962306a36Sopenharmony_ci .ifs_t3_en_mask = B_IFS_T3_EN_MSK, 3062306a36Sopenharmony_ci .ifs_t3_th_l_mask = B_IFS_T3_TH_LOW_MSK, 3162306a36Sopenharmony_ci .ifs_t4_addr = R_IFS_T4, 3262306a36Sopenharmony_ci .ifs_t4_th_h_mask = B_IFS_T4_TH_HIGH_MSK, 3362306a36Sopenharmony_ci .ifs_t4_en_mask = B_IFS_T4_EN_MSK, 3462306a36Sopenharmony_ci .ifs_t4_th_l_mask = B_IFS_T4_TH_LOW_MSK, 3562306a36Sopenharmony_ci .ifs_clm_tx_cnt_addr = R_IFS_CLM_TX_CNT_V1, 3662306a36Sopenharmony_ci .ifs_clm_edcca_excl_cca_fa_mask = B_IFS_CLM_EDCCA_EXCLUDE_CCA_FA_MSK, 3762306a36Sopenharmony_ci .ifs_clm_tx_cnt_msk = B_IFS_CLM_TX_CNT_MSK, 3862306a36Sopenharmony_ci .ifs_clm_cca_addr = R_IFS_CLM_CCA_V1, 3962306a36Sopenharmony_ci .ifs_clm_ofdmcca_excl_fa_mask = B_IFS_CLM_OFDMCCA_EXCLUDE_FA_MSK, 4062306a36Sopenharmony_ci .ifs_clm_cckcca_excl_fa_mask = B_IFS_CLM_CCKCCA_EXCLUDE_FA_MSK, 4162306a36Sopenharmony_ci .ifs_clm_fa_addr = R_IFS_CLM_FA_V1, 4262306a36Sopenharmony_ci .ifs_clm_ofdm_fa_mask = B_IFS_CLM_OFDM_FA_MSK, 4362306a36Sopenharmony_ci .ifs_clm_cck_fa_mask = B_IFS_CLM_CCK_FA_MSK, 4462306a36Sopenharmony_ci .ifs_his_addr = R_IFS_HIS_V1, 4562306a36Sopenharmony_ci .ifs_t4_his_mask = B_IFS_T4_HIS_MSK, 4662306a36Sopenharmony_ci .ifs_t3_his_mask = B_IFS_T3_HIS_MSK, 4762306a36Sopenharmony_ci .ifs_t2_his_mask = B_IFS_T2_HIS_MSK, 4862306a36Sopenharmony_ci .ifs_t1_his_mask = B_IFS_T1_HIS_MSK, 4962306a36Sopenharmony_ci .ifs_avg_l_addr = R_IFS_AVG_L_V1, 5062306a36Sopenharmony_ci .ifs_t2_avg_mask = B_IFS_T2_AVG_MSK, 5162306a36Sopenharmony_ci .ifs_t1_avg_mask = B_IFS_T1_AVG_MSK, 5262306a36Sopenharmony_ci .ifs_avg_h_addr = R_IFS_AVG_H_V1, 5362306a36Sopenharmony_ci .ifs_t4_avg_mask = B_IFS_T4_AVG_MSK, 5462306a36Sopenharmony_ci .ifs_t3_avg_mask = B_IFS_T3_AVG_MSK, 5562306a36Sopenharmony_ci .ifs_cca_l_addr = R_IFS_CCA_L_V1, 5662306a36Sopenharmony_ci .ifs_t2_cca_mask = B_IFS_T2_CCA_MSK, 5762306a36Sopenharmony_ci .ifs_t1_cca_mask = B_IFS_T1_CCA_MSK, 5862306a36Sopenharmony_ci .ifs_cca_h_addr = R_IFS_CCA_H_V1, 5962306a36Sopenharmony_ci .ifs_t4_cca_mask = B_IFS_T4_CCA_MSK, 6062306a36Sopenharmony_ci .ifs_t3_cca_mask = B_IFS_T3_CCA_MSK, 6162306a36Sopenharmony_ci .ifs_total_addr = R_IFSCNT_V1, 6262306a36Sopenharmony_ci .ifs_cnt_done_mask = B_IFSCNT_DONE_MSK, 6362306a36Sopenharmony_ci .ifs_total_mask = B_IFSCNT_TOTAL_CNT_MSK, 6462306a36Sopenharmony_ci}; 6562306a36Sopenharmony_ci 6662306a36Sopenharmony_cistatic const struct rtw89_physts_regs rtw89_physts_regs_be = { 6762306a36Sopenharmony_ci .setting_addr = R_PLCP_HISTOGRAM, 6862306a36Sopenharmony_ci .dis_trigger_fail_mask = B_STS_DIS_TRIG_BY_FAIL, 6962306a36Sopenharmony_ci .dis_trigger_brk_mask = B_STS_DIS_TRIG_BY_BRK, 7062306a36Sopenharmony_ci}; 7162306a36Sopenharmony_ci 7262306a36Sopenharmony_ciconst struct rtw89_phy_gen_def rtw89_phy_gen_be = { 7362306a36Sopenharmony_ci .cr_base = 0x20000, 7462306a36Sopenharmony_ci .ccx = &rtw89_ccx_regs_be, 7562306a36Sopenharmony_ci .physts = &rtw89_physts_regs_be, 7662306a36Sopenharmony_ci}; 7762306a36Sopenharmony_ciEXPORT_SYMBOL(rtw89_phy_gen_be); 78