Cleanup: do not construct/modify CellGroupConfig in RRC
38.473 says in multiple places:
The CellGroupConfig IE shall transparently be signaled to the UE as specified in TS 38.331 [8].
For instance, in rrc_gNB_process_RRCReestablishmentComplete(), we construct a new CellGroupConfig from the one received from the DU, and might therefore miss information that should be transmitted.
What happens currently
In places such as handling of the F1AP UE context setup response/UE context modification response and F1AP Initial UL RRC message, we decode the CellGroupConfig. Later, when doing a reconfiguration, we re-encode the CellGroupConfig before embedding it into an RRC Reconfiguration messages
What should happen instead
We should transparently forward the CellGroupConfig received, meaning that between receiveng the CellGroupConfig and embedding it into an RRC Reconfiguration, there should not be any re-encoding of the CellGroupConfig (decoding is likely ok, but encoding for forwarding is not).
To this end, make sure that
- for the specific case of reestablishment, in
rrc_gNB_process_RRCReestablishmentComplete(), equally remove construction of the cellGroupConfig. Notably, this addsreestablishRLCin RLC bearer configuration (set totrue), which should be done instead at the DU (i.e., the DU needs to be modified as well) when generating a CellGroupConfig in the case of reconfiguration after reestablishment. - we never encode a CellGroupConfig for sending an RRC Reconfiguration