diff options
author | Aravind Sirsikar <arvind.sirsikar@radisys.com> | 2016-03-23 18:29:45 +0530 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2016-03-30 22:02:47 +0200 |
commit | 7a05b039c835868eff34308d861edfeb28d1763b (patch) | |
tree | b0934c147826d4a9cbc5afe4034a58dd7190b7a2 /src/rlc.h | |
parent | e44383baa4a883beb49a4b0ec370ba3256389b94 (diff) |
Add data structure for CPS calculation in DL
Define new data structure with respect to TS 44.060
10.4.8a.3.1, 10.4.8a.2.1, 10.4.8a.1.1 for puncturing scheme values
and initialize the variable introduced
Diffstat (limited to 'src/rlc.h')
-rw-r--r-- | src/rlc.h | 24 |
1 files changed, 24 insertions, 0 deletions
@@ -56,6 +56,27 @@ enum gprs_rlc_dl_bsn_state { GPRS_RLC_DL_BSN_MAX, }; +/* + * Valid puncturing scheme values + * TS 44.060 10.4.8a.3.1, 10.4.8a.2.1, 10.4.8a.1.1 + */ +enum egprs_puncturing_values { + EGPRS_PS_1, + EGPRS_PS_2, + EGPRS_PS_3, + EGPRS_PS_INVALID, +}; + +/* + * EGPRS_MAX_PS_NUM_2 is valid for MCS 1,2,5,6. + * And EGPRS_MAX_PS_NUM_3 is valid for MCS 3,4,7,8,9 + * TS 44.060 10.4.8a.3.1, 10.4.8a.2.1, 10.4.8a.1.1 + */ +enum egprs_puncturing_types { + EGPRS_MAX_PS_NUM_2 = 2, + EGPRS_MAX_PS_NUM_3, + EGPRS_MAX_PS_NUM_INVALID, +}; static inline uint16_t mod_sns_half() { @@ -100,6 +121,9 @@ struct gprs_rlc_data { struct gprs_rlc_data_block_info block_info; GprsCodingScheme cs; + + /* puncturing scheme value to be used for next transmission*/ + enum egprs_puncturing_values next_ps; }; void gprs_rlc_data_info_init_dl(struct gprs_rlc_data_info *rlc, |