summaryrefslogtreecommitdiff
path: root/cesar/hal/phy/src/phy.c
diff options
context:
space:
mode:
Diffstat (limited to 'cesar/hal/phy/src/phy.c')
-rw-r--r--cesar/hal/phy/src/phy.c17
1 files changed, 15 insertions, 2 deletions
diff --git a/cesar/hal/phy/src/phy.c b/cesar/hal/phy/src/phy.c
index 9c81a9f002..1b4634b71f 100644
--- a/cesar/hal/phy/src/phy.c
+++ b/cesar/hal/phy/src/phy.c
@@ -127,6 +127,10 @@ struct phy_tunable_t
phy_mafadese_filter_t mafadese_filter;
/** SPOC initial setting. */
s32 spoc_rho_initial_q30;
+ /** SPOC TX coefficients mask. */
+ u64 spoc_tx_matrix_mask;
+ /** SPOC RX coefficients mask. */
+ u64 spoc_rx_matrix_mask;
/** Internal delta accumulation coefficient. */
uint delta_res_coef_internal;
/** External delta accumulation coefficient. */
@@ -166,7 +170,7 @@ static phy_tunable_t phy_tunable =
PHY_PARAM_MAFADESE_COEF_FILTER_BAND0,
PHY_PARAM_MAFADESE_COEF_FILTER_BAND1,
},
- 0,
+ 0, 0, 0,
PHY_PARAM_CHANNEL_ESTIM_COEF__COEF_RES_DELTA_INTERNAL,
PHY_PARAM_CHANNEL_ESTIM_COEF__COEF_RES_DELTA_EXTERNAL,
0,
@@ -561,6 +565,14 @@ phy_init_tunable_param (phy_t *ctx)
&phy_tunable.spoc_rho_initial_q30,
LIB_STATS_ACCESS_WRITE_ONLY,
LIB_STATS_DEBUG);
+ lib_stats_set_stat_value_notype ("SPOC_TX_MATRIX_MASK",
+ &phy_tunable.spoc_tx_matrix_mask,
+ LIB_STATS_ACCESS_WRITE_ONLY,
+ LIB_STATS_DEBUG);
+ lib_stats_set_stat_value_notype ("SPOC_RX_MATRIX_MASK",
+ &phy_tunable.spoc_rx_matrix_mask,
+ LIB_STATS_ACCESS_WRITE_ONLY,
+ LIB_STATS_DEBUG);
lib_stats_set_stat_value_notype ("DELTA_RES_COEF_INTERNAL",
&phy_tunable.delta_res_coef_internal,
LIB_STATS_ACCESS_WRITE_ONLY,
@@ -882,7 +894,8 @@ phy_set_tunable_param (phy_t *ctx, const u32 *tonemask, uint carrier_nb)
PHY_DSPSS_MAFADESE_COEF_FILTER_BAND_1_n[i] =
phy_tunable.mafadese_filter.coef_filter_band1[i];
phy_spoc_init (ctx, phy_tunable.spoc_rho_initial_q30, tonemask,
- carrier_nb);
+ carrier_nb, phy_tunable.spoc_tx_matrix_mask,
+ phy_tunable.spoc_rx_matrix_mask);
PHY_DSPSS_CHANNEL_ESTIM_COEF =
PHY_PARAMS (PHY_DSPSS, CHANNEL_ESTIM_COEF, COEF_PREAMBLE)
| BF_FILL (