The Starting time contains a "frame number, FN modulo 42432", aka RFN.
The translation to absolute FN was missing.
Depends: libosmocore.git Change-Id Ib71e8da976f6cc84c3a4ab17b0a8c2101492e243
Change-Id: I00741289333853a8db472950ee2ac38dc2c74fd3
This patch only introduces the gprs_rlcmac_dl_tbf subclass and
allocates/frees it based on PCH ImmAss, and adds initial paths for
received blocks. It also provides a unit test to showcase the scenario.
Change-Id: I7f98e3456ef35d80becdad3481afeb771457b0ef
This primitive API allows the application to drive the RLCMAC layer
based on a lower L1CTL interface.
* RACH req are requested to the lower layers by the RLCMAC through the
RACH.req primitive.
* Received ImmAss, SI are fed to the RLC/MAC layer through CCCH_DATA.ind
* The RLCMAC registers DL and UL TBFs in the lower part (firwmare,
L1CTL):
** The lower part will trigger PDCH_RTS.ind in every TS in the
"(dl_slotmask|ul_slotmask)" superset, with the received USF. This
allows UL uplink to transmit blocks when requested by USF, or UL/DL TBF
to answer polls from PCU at a specific N+X FN (RRBP). This also allows
the RLCMAC layer to update its GSM clock and trigger internall
timeouts.
** The lower part will trigger PDCH_DATA.ind in every TS in the
dl_slotmask if either a CTRL block is received or a data block
matching the configured dl_tfi is received.
** Upon receival of PDCH_DATA.ind, the RLCMAC layer updates its FN clock
and submits PDCH_DATA.req based on USF.
This commit only adds the primitive set and API to submit/receive them,
but doesn't really implement them yet internally.
Related: OS#5500
Change-Id: I3d97425ec75059ceae983de869419230e8c4df01
Done for files containing mostly (99%) of CSN1 related structrs and
encdec functions.
File ts_44_064.c is kept as is since it's not CSN1 related.
File csn1_ts_44_060.c still contains some enums and value_string which will
be split into ts_44_060.c in a follow up commit.
Change-Id: I93ad9f90e7496b81ccfe679a614589373f244166