From 138ed2fbb429efc465ed9136a80cf3a79780ce5c Mon Sep 17 00:00:00 2001
From: fnabet <fabrice.nabet@alcatelonetouch.com>
Date: Mon, 10 Oct 2016 17:16:01 +0200
Subject: [PATCH]   [OAI-UE] fixes:            1- frame/subframe update        
    2- ccch discard regression

---
 openair2/LAYER2/MAC/ue_procedures.c | 8 --------
 targets/RT/USER/lte-ue.c            | 9 +++++++--
 2 files changed, 7 insertions(+), 10 deletions(-)

diff --git a/openair2/LAYER2/MAC/ue_procedures.c b/openair2/LAYER2/MAC/ue_procedures.c
index 4bc613ffbe7..448d2ed541b 100644
--- a/openair2/LAYER2/MAC/ue_procedures.c
+++ b/openair2/LAYER2/MAC/ue_procedures.c
@@ -165,14 +165,6 @@ unsigned char *parse_header(unsigned char *mac_header,
     lcid = ((SCH_SUBHEADER_FIXED *)mac_header_ptr)->LCID;
 
     if (lcid < UE_CONT_RES) {
-    	//FNA: Contention Resolution check according to Annex B of 36.321
-    	// if this is for CCCH then a Contention Resolution must have been parsed before
-    	if ((lcid == 0) && (num_cont_res == 0)) {
-    		LOG_W(MAC,"[UE] Msg4 Wrong received format: CCCH received without Contention Resolution before\n");
-    		// exit parsing
-    		return NULL;
-    	}
-
       //printf("[MAC][UE] header %x.%x.%x\n",mac_header_ptr[0],mac_header_ptr[1],mac_header_ptr[2]);
       if (not_done==0) {// last MAC SDU, length is implicit
         mac_header_ptr++;
diff --git a/targets/RT/USER/lte-ue.c b/targets/RT/USER/lte-ue.c
index 1c338c3df08..81d60a3d080 100644
--- a/targets/RT/USER/lte-ue.c
+++ b/targets/RT/USER/lte-ue.c
@@ -1035,8 +1035,8 @@ void *UE_thread(void *arg) {
 
       }// start_rx_stream==0
       else {
-	UE->proc.proc_rxtx[0].frame_rx++;
-	UE->proc.proc_rxtx[1].frame_rx++;
+	//UE->proc.proc_rxtx[0].frame_rx++;
+	//UE->proc.proc_rxtx[1].frame_rx++;
 	
 	for (int sf=0;sf<10;sf++) {
 	  for (i=0; i<UE->frame_parms.nb_antennas_rx; i++) 
@@ -1122,6 +1122,11 @@ void *UE_thread(void *arg) {
 	  }
 	  // increment instance count and change proc subframe/frame variables
 	  int instance_cnt_rxtx = ++proc->instance_cnt_rxtx;
+	  if(sf == 0)
+	  {
+	     UE->proc.proc_rxtx[0].frame_rx++;
+	     UE->proc.proc_rxtx[1].frame_rx++;
+	  }
 	  proc->subframe_rx=sf;
 	  proc->subframe_tx=(sf+4)%10;
 	  proc->frame_tx = proc->frame_rx + ((proc->subframe_rx>5)?1:0);
-- 
GitLab