716 Commits
Author SHA1 Message Date
Melissa Elkadi 2c5f0af081 CFRA procedure is working! But gNB still crashes
How? Well, we had to properly allocate the
ul_config_req. We also had to update the
ue_get_rach function. There were several
places where the functionality would check
for a particular mode (ra, sa, phy_test, etc).
In some of these places we had to add NSA mode.
In the VNF, they start the scheduler after 3 sec,
this is sort of a hack, might want to revisit.
This commit also includes removal of printfs.
2021-08-18 16:09:37 -07:00
Melissa Elkadi 2a979f4e2f Merge branch 'eurecom-nfapi-nr-arch-mod' into episys/merge_nsa_w_develop 2021-08-13 10:27:30 -07:00
francescomani e083bd4330 Merge remote-tracking branch 'origin/develop' into NR_UE_SA 2021-08-13 15:09:52 +02:00
Melissa Elkadi 9b16c1d860 Merge branch 'eurecom-develop' into episys/merge_nsa_w_develop
At this point we are successfully able to build.
Additionally, we can run the scenario,
however, it does not pass. It seems that the gNB
is not connecting to the proxy correctly. Just
wanted to push the progress so far. FYI, the items
that had to be changed to correct the linking issues
were the following:

 - mac_rrc_data_ind_ue vs. nr_mac_rrc_data_ind_ue
 - rrc_data_req vs. nr_rrc_data_req
 - mac_rrc_data_req_ue vs. nr_mac_rrc_data_req_ue
 - rrc_data_req_ue vs. rrc_data_req_nr_ue
 - rrc_data_req vs. nr_rrc_data_req

The listed functions should be declard in the LTE/NR
UE directory depending on the functionality. Several
were mixed. i.e.: LTE functions being called in NR UE.

Also, removing siWindowLength, siWindowLength_int,
SIBType, SIBPeriod, and siPeriod_int from the NR UE RRC.
These variable were not used in the NR UE and are defined
for LTE only.

Lastly, in the NR_IF_Module.c of the NR UE, the global
variable def_dci_pdu_rel15 is not accessible. Need to
revisit this. For not it is commented out.
2021-08-11 10:23:42 -07:00
David Kim 85fb91dff7 Merge branch 'episys/nsa_epc_gnb_updates' into episys/david/multiUE_with_crnti_checking 2021-08-09 09:06:15 -07:00
David Kim a8517323e7 Code cleanup for debug logs. 2021-08-06 10:37:02 -07:00
David Kim dd73b2df87 Updated AssertFatal conditions and LOG level from I to D
Regarding dl_hard, some AssertFatal commented out.
Regarding to memory allocation error, AssertFatal was used.
2021-07-30 08:35:57 -07:00
Melissa Elkadi b5e8954476 Changed logic in MAC layer to allow RLC data read
Also changed logic in the NR UE schedule to read
IP traffic. Also, configured the RLC layer in the
NR UE softmodem and the DRBs with the cRNTI once
the RACH procedure is complete in the NR UE.
2021-07-29 15:55:59 -07:00
David Kim c80193731d Commented some AssertFatal condition in dlsch ack/nack scheduling. 2021-07-29 10:38:56 -07:00
David Kim 829bf4f8a2 Restored to the original OAI ue and nr-ue config file
Restored original LOG level.
Code cleanup to remove emptry space and added some logs.
2021-07-28 00:24:35 -07:00
David Kim 38e5415f34 Fixing "Unexpected ULSCH HARQ PID" issue.
1. If VNF is slower than PNF, next scheduling will be done after resync.
2. If VNF is unstable in slot progress, next scheduling will be done in next stable status.
3. SFN/SLOT indications are queued in nrUE.
4. get_queue is used instead of unquque for FIFO operation.
2021-07-27 21:02:01 -07:00
David Kim 4f23fa2f61 added queues between VNF and MAC to handle indications. 2021-07-19 18:55:02 -07:00
francescomani 2fe8dd7657 Merge remote-tracking branch 'origin/develop-NR_SA_F1AP_5GRECORDS-abs' into NR_UE_SA 2021-07-14 10:35:09 +02:00
francescomani 58063acf54 rx_gain = 0 in rfsimulator 2021-07-12 16:30:29 +02:00
Melissa Elkadi 6ddb49d09c Sending uci_ind based on rx'd ul_tti's sfn/slot
Also, updated the filing of the DCI payload
based on the actual number of recevied bits
and not based on the max number of rx'd bits.
2021-07-02 13:51:39 -07:00
francescomani a49ebe249b Merge remote-tracking branch 'origin/develop' into NR_UE_reworking_UCI_procedures 2021-07-01 16:38:41 +02:00
Melissa Elkadi 90d5641770 Filling, queuing and sending UCI ind to gNB
Currently, the pull8 in nFAPI of the VNF
is failing.
2021-06-30 17:21:41 -07:00
Melissa Elkadi 30fe619000 Dont send DCIs repeatedly for a given sfn/slot
Although the timing isnt perfect, if the VNF adjusts
in the middle of scheduling a DCI the gNB would try to
send two DCIs for a certain sfn/slot; this commit will
stop that from happening. The timing issue still persits.
2021-06-29 13:24:07 -07:00
Melissa Elkadi 5ee9bc2cc9 Updating matacher function for de-queuing 2021-06-28 16:58:01 -07:00
Melissa Elkadi 9b96dd2a5f Unqueue based on sfn_slot
Also, added functionality to fill tx_req in NR UE
when a DCI is received after the slot indication.
2021-06-28 12:39:28 -07:00
Melissa Elkadi 46488432e6 This commit includes the iisc pnf_p7 slot tick fix
It also includes the queuing development. The idea
is that the 5G Userplane messages will be filled
and configured the same as previous commit, but
the uplink messages will be queued and then sent to
the gNB during the correct slot. Still WIP.
2021-06-25 14:49:02 -07:00
Melissa Elkadi c7875ce24c Properly filling the dci_format
This commit properly is filing the dci_format but the
rx_ind and dl_ind has not been updated in the NR UE
prior to sending to gNB. The chnages in this commit
to properly fill the dci_format include:
- filling the dci canidates every slot indiction
- checking for a dl_tti/ul_tti containing a dci
- when dci payload is received we use the filled
  dci canidates to update the dci_format

Also, a bug in LTE UE is found where we are indexing
passed the end of ue_sdu array. We added a check for this.
Furthermore, in the nr_ue_scheduler we were utilizing
tx_req but the memory wasnt properly initialized.
2021-06-18 13:33:20 -07:00
Deokseong "David" Kim 591e0e1f36 Adjusted UDP port ids for multiple UE connection with proxy 2021-06-16 16:06:38 -07:00
Melissa Elkadi 777bcc6c37 Saving DCI format to mac instance to fill in stub 2021-06-16 14:52:47 -07:00
Melissa Elkadi 17222c91e0 Added assert fatals for ul_config and TLVs
Also started handling ul_dci that is received in NR UE.
We now receive dci format 01, 10, and 11 at the NR UE.
The dl_info being filled in NRUE was not memset to 0, that
has been added. Additionally, we will need to get the dci_format
based on the length in the dl_config structs and map it.
For the moment the dci_format values are hard coded.
2021-06-15 15:55:59 -07:00
Melissa Elkadi e8cfcbe607 CFRA Procedure success commit pt. 1
This commit contains the changes to the OAI code in
the NR UE and in nFAPI.
- Filling crc_ind for msg3
- Updating pack/unpack of CRC_ind
- Creating phy abstraction CRC_ind handling in VNF
- Removal of old comments
- Only sending on RACH in phy_stub
- Calling nr_msg3_transmitted in scheduler for NSA mode
2021-06-11 12:35:40 -07:00
Melissa Elkadi b91251d1e0 Changed nsa_send_standalone_msg() and sending RX
The send_standlone_msg will now be able to send
any type of uplink message and we fill the RX
indication in the stub_schedule_response and
are trying to send to gNB. Need to update the NR nfapi.
2021-06-10 12:44:34 -07:00
Melissa Elkadi 0752dd20d1 Filling rx_ind with tx_req information 2021-06-10 10:24:21 -07:00
Melissa Elkadi d5a7a1a352 Filling RACH ind with prach_pdu
Also added logs for handling Msg3 and
initialized ul_config->num_pdus at every
received slot ind instead of every time
we call get_ul_config()
2021-06-09 14:57:43 -07:00
Melissa Elkadi 88c614eefc RAR successful here. This commit includes:
- Hardcoding the freq_index when filling RACH
- Not handling DCI unless dci_rel_15 global is allocated
- Verifies ra_rnti matches in prach pdu and RACH
- Updates handling of DCI and RX from dl and tx reqs
2021-06-08 12:31:52 -07:00
Melissa Elkadi d434439596 Using ul_config->prach_pdu in get_rach()
Also, changed freq_index hardcode to 0.
Logging ra_rnti in gNB and NR UE
2021-06-07 14:15:40 -07:00
Melissa Elkadi 5ba3d16fbc gNB scheduler was not updating Msg3 future frame
The fix added in this commit may not be correct and
should be reviewed by Eurecom. For now we set the
future frame based on the PRACH recevied frame + 1.
Also fixed the copying of RACH ind into UL_INFO global.
RAR is being passed to NR UE.
2021-06-03 12:24:13 -07:00
Melissa Elkadi 6299d4515e Creating UL_ind RACH handle function in VNF
Also fixed a few bugs in nr-nFAPI:
- Push16->push8 fix in packing of RACH
- Allocating memory for pdu_list and preamble_list in unpack
- Properly indexing through both lists during unpack
- Created new nr_rach handling function
2021-06-02 16:33:12 -07:00
Melissa Elkadi f768b90f59 Fixing how we set slot_tx in the NR UE.
Also fixed unpacking ul_tti_inds.
2021-06-02 10:02:03 -07:00
Melissa Elkadi 7a7b668e16 The pRACH is now only generated for slot 19.
Several other changes in this commit include:
- Setting the number of PDUS in the ul_config
  to be zero when we will it (inside of the
  get_ul_config() function.)
- We reset the nprach flag to 0 for each slot.
- We return out of the prach scheduler if
  mac->ul_config == NULL
- Added error checking for array indexing
- Created a dummy scheduler response function.
- Allocated ul_config_req initially
2021-06-01 12:09:15 -07:00
Melissa Elkadi 7db52420bf Created new fill_rach function in the NR UE
Also calling the new L1_nsa_prach_procedures()
function after using the nr_ue_scheduler. Added
some error checking in the nr_ue_scheduler. Added
some error checking in the process_nsa_msg in both
the NR and LTE UE
2021-05-28 15:30:56 -07:00
Melissa Elkadi 4fb87f9d08 Filling rach_ind and sending to proxy
Seems to be working at the moment but
may need to add more info in the rach_ind.
Also, need to verify gNB is getting the
rach_ind and starting RA procedure.
2021-05-27 15:46:00 -07:00
Melissa Elkadi 96be5588b4 Ready to fill rach indication.
Had to hack the code to schedule the prach.
Need to verify this is ok because ul_config = NULL.
Also had to change logic for calling fill_schedule_response.
2021-05-27 12:53:27 -07:00
Melissa Elkadi b32e3f735f This commit breaks in RACH procedure
However, we are not properly calling the
nr_ue_get_rach() function. The RA is being
properly initialized. In the nr_ue_get_rach()
the pRACH is not scheduled. Tried to add in
the scheduling of this, but it crashes here.
The other changes include revering the
nr_ue_get_rach() changes from previous commit.
Also, changed a few log levels and reverted
a previous change in the NR UE RRC layer that
was incorrect.
2021-05-26 14:36:29 -07:00
Sakthivel Velumani 5ec7f39adf fixed PUSCH tx issue 2021-05-26 10:12:58 +02:00
Melissa Elkadi eecd5935ee Not working pRACH but starting it 2021-05-25 15:56:08 -07:00
Melissa Elkadi b2b8d297a0 Memory bug fixes
Several places where memory ownership was changed
and the original owner was not set to NULL. Also,
the transaction_identifier is now based on the
received dl_dcch_msg in the LTE UE. Still need to
fix the t_id for the NR UE. Also added comments for
RACH procedure in NR UE.
2021-05-24 18:55:42 -07:00
Sakthivel Velumani 30c2746b9b call ul_indication again for PUCCH 2021-05-24 20:07:43 +02:00
Laurent THOMAS 449bab30c7 fix nr UE bug: random freeze (mutex not init) 2021-05-20 14:20:00 +02:00
francescomani cd9a8f963f moving pucch functions for harq at MAC (version still to be tested) 2021-05-18 11:04:10 +02:00
rmagueta 0ef6ef2b28 Code format improvements in differences for develop 2021-05-12 19:29:10 +01:00
rmagueta 102a76fd56 Merge remote-tracking branch 'origin/develop' into develop-NR_SA_F1AP_5GRECORDS
# Conflicts:
#	openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
#	openair2/GNB_APP/MACRLC_nr_paramdef.h
#	openair2/LAYER2/NR_MAC_gNB/config.c
#	openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_uci.c
#	openair2/NR_PHY_INTERFACE/NR_IF_Module.c
2021-05-04 11:23:21 +01:00
Melissa Elkadi 7e339b4610 Currently receiving measurement data from NR UE
This commit has several other changes. The changes
include the following:
1. Changed the port numbers for the NRUE<->Proxy
2. Fixed the send to function in the NR UE
   (Previously only sending buffer not buffer+msg_type)
3. Updated pack/unpack of the SSB PDU (new RSRB field added)
4. Fixed several NR logs
5. Opening socket with NRUE<->Proxy AFTER receving RRC
   measurement request from the LTE UE
2021-05-03 15:31:32 -07:00
rmagueta 948df0e034 Merge remote-tracking branch 'origin/develop' into develop-NR_SA_F1AP_5GRECORDS
# Conflicts:
#	executables/softmodem-common.h
#	openair1/PHY/NR_UE_TRANSPORT/dci_nr.c
#	openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
#	openair1/SIMULATION/NR_PHY/dlsim.c
#	openair1/SIMULATION/NR_PHY/prachsim.c
#	openair2/LAYER2/NR_MAC_UE/nr_ue_scheduler.c
2021-05-03 19:50:30 +01:00
hardy c2acb9e9e5 Merge remote-tracking branch 'origin/NR_FR2_initsync_fixes' into integration_2021_wk18_a 2021-05-03 15:45:39 +02:00