Track TDMA clock with DATA.ind instead of TIME.ind
Since recently (see Depends below), BTS side submits DATA.ind with len=0 to announce nothing was received on that UL block FN. This will allow osmo-pcu track time more accurately, and use this information to quickly find out if a UL block was expected as requested by RRBP or USF poll and increment counters such as N3101 (finally being able to properly implement timers such as T3619). Depends: osmo-bts.git Change-Id I343c7a721dab72411edbca816c8864926bc329fb Related: OS#5020 Change-Id: Ibc495173119465e74f726ddc36e312334e6dc0fd
This commit is contained in:
parent
5447f3acf6
commit
30617115ba
|
@ -806,7 +806,8 @@ static int pcu_rx_time_ind(struct gprs_rlcmac_bts *bts, struct gsm_pcu_if_time_i
|
|||
|
||||
LOGP(DL1IF, LOGL_DEBUG, "Time indication received: %d\n", time_ind->fn % 52);
|
||||
|
||||
bts_set_current_frame_number(bts, time_ind->fn);
|
||||
/* Ignore TIME.ind completely, we nowadays relay on DATA.ind always
|
||||
* providing all block FNs. */
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -794,6 +794,9 @@ free_ret:
|
|||
int gprs_rlcmac_pdch::rcv_block(uint8_t *data, uint8_t len, uint32_t fn,
|
||||
struct pcu_l1_meas *meas)
|
||||
{
|
||||
/* First of all, update TDMA clock: */
|
||||
bts_set_current_frame_number(trx->bts, fn);
|
||||
|
||||
/* No successfully decoded UL block was received during this FN: */
|
||||
if (len == 0) {
|
||||
/* TODO: Here, in the future, it can be checked whether a UL block was expected for:
|
||||
|
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue