Attention is currently required from: neels, pespin, dexter.
fixeria has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/31145 )
Change subject: bts: add IMMEDIATE ASSIGNMENT via PCH transmission ......................................................................
Patch Set 19:
(3 comments)
File include/osmocom/pcu/pcuif_proto.h:
https://gerrit.osmocom.org/c/osmo-pcu/+/31145/comment/3f5ea786_31b7394e PS19, Line 279: uint8_t pgroup;
And AFAIR, yes, it can be bigger than 255.
Here I meant the `IMSI % 1000`, not the actual paging group.
File include/osmocom/pcu/pcuif_proto.h:
https://gerrit.osmocom.org/c/osmo-pcu/+/31145/comment/eb3a5f50_14b833c6 PS18, Line 43: PCU_IF_SAPI_PCH_DT
Yes, its a bit ugly, but we need to stay backwards compatible at least until we updated OsmoBTS as w […]
The patch for `osmo-bts.git` is already in Gerrit (currently WIP to avoid merging before this one). So I see no real need to stay backwards compatible anymore. Where we really need to stay backwards compatible is in `osmo-ttcn3-hacks.git`.
File include/osmocom/pcu/pcuif_proto.h:
https://gerrit.osmocom.org/c/osmo-pcu/+/31145/comment/3b015c98_f1c85263 PS17, Line 280: uint8_t pgroup[3];
Its indeed much simpler. Actually the paging group is only one byte in reality. […]
As per 3GPP TS 45.002 section 6.5.2 it's defined as follows:
``` CCCH_GROUP (0 .. BS_CC_CHANS-1) = ((IMSI mod 1000) mod (BS_CC_CHANS x N)) div N PAGING_GROUP (0 .. N-1) = ((IMSI mod 1000) mod (BS_CC_CHANS x N)) mod N ```
so it can be in range `0 .. N-1`, where `N` is defined as:
``` N = number of paging blocks "available" on one CCCH = (number of paging blocks "available" in a 51-multiframe on one CCCH) x BS_PA_MFRMS. ```
We have defines for this, so `N(max) = MAX_PAGING_BLOCKS_CCCH * MAX_BS_PA_MFRMS = 81`, therefore the paging group can be in range `0..80`.
But again, what we have in osmo-pcu **is not really a paging group**.