diff --git a/doc/NR_NFAPI_archi.md b/doc/NR_NFAPI_archi.md
index 2c92f9497dae1e70f4ebc6b7808c5a7f1d71afbe..59c511fb52c92a9887fd8b83ce77d4c539c21dbd 100644
--- a/doc/NR_NFAPI_archi.md
+++ b/doc/NR_NFAPI_archi.md
@@ -112,7 +112,7 @@ While receiving the DL P7 message, we check whether the message was received wit
 
 graph TB
     pselect[PNF socket pselect] -- timed out : end of slot --> slot_inc[Increment sfn/slot];
-    pselect[PNF socket pselect] -- DL p7 xyz msg recvd --> msg_recvd[Read message pnf_nr_nfapi_p7_read_dispatch_message] --> header_unpack[Unpack Header] -- switch cases on header --> unpack_msg[Unpack Message pnf_handle_nr_xyz] --> fill_pnf_p7[Fill pnf_p7 global structure pnf_handle_nr_xyz] --Data from pnf_p7 struct copied to fapi structures using pnf_phy_***_req. Called every slot from oai_slot_ind-->pselect;
+    pselect[PNF socket pselect] -- DL p7 xyz msg recvd --> msg_recvd[Read message pnf_nr_nfapi_p7_read_dispatch_message] --> header_unpack[Unpack Header] -- switch cases on header --> unpack_msg[Unpack Message pnf_handle_nr_xyz] --> fill_pnf_p7[Fill pnf_p7 global structure pnf_handle_nr_xyz] --Data from pnf_p7 struct copied to fapi structures using pnf_phy_***_req. Called every slot from handle_nr_slot_ind-->pselect;
 
     slot_inc -- next slot --> pselect
 ```
diff --git a/nfapi/oai_integration/nfapi_pnf.c b/nfapi/oai_integration/nfapi_pnf.c
index df32c05b60d18f9e49f7a4b10aa9fd1e27df588f..2cbec1a050db8398b6679160666bebddf5ec4cbf 100644
--- a/nfapi/oai_integration/nfapi_pnf.c
+++ b/nfapi/oai_integration/nfapi_pnf.c
@@ -92,6 +92,9 @@ extern void handle_nr_nfapi_pdsch_pdu(PHY_VARS_gNB *gNB,int frame,int slot,
                             uint8_t *sdu);
 extern void handle_nr_nfapi_ssb_pdu(PHY_VARS_gNB *gNB,int frame,int slot,
                              nfapi_nr_dl_tti_request_pdu_t *dl_tti_pdu);
+extern void handle_nfapi_nr_csirs_pdu(PHY_VARS_gNB *gNB,
+			       int frame, int slot,
+			       nfapi_nr_dl_tti_csi_rs_pdu *csirs_pdu);
 extern void nr_fill_ulsch(PHY_VARS_gNB *gNB,
                    int frame,
                    int slot,
diff --git a/nfapi/open-nFAPI/nfapi/src/nfapi_p7.c b/nfapi/open-nFAPI/nfapi/src/nfapi_p7.c
index 878666dbcf6cf56fe036a52a35014af5c5a35fdd..bc569c3d1be3f831931ea12728b2a1729b3ea385 100755
--- a/nfapi/open-nFAPI/nfapi/src/nfapi_p7.c
+++ b/nfapi/open-nFAPI/nfapi/src/nfapi_p7.c
@@ -708,7 +708,7 @@ static uint8_t pack_dl_tti_request_body_value(void* tlv, uint8_t **ppWritePacked
 {
 	nfapi_nr_dl_tti_request_pdu_t* value = (nfapi_nr_dl_tti_request_pdu_t*)tlv;
 
-	if(!(push16(value->PDUSize, ppWritePackedMsg, end) &&
+	if(!(push32(value->PDUSize, ppWritePackedMsg, end) &&
 	 	 push16(value->PDUType, ppWritePackedMsg, end) ))
 		  return 0;
 
@@ -4607,7 +4607,7 @@ static uint8_t unpack_dl_tti_request_body_value(uint8_t **ppReadPackedMsg, uint8
 {
 	nfapi_nr_dl_tti_request_pdu_t* value = (nfapi_nr_dl_tti_request_pdu_t*)msg;
 
-	if(!(pull16(ppReadPackedMsg, &value->PDUSize, end) &&
+	if(!(pull32(ppReadPackedMsg, &value->PDUSize, end) &&
 	 	 pull16(ppReadPackedMsg, &value->PDUType, end) ))
 		  return 0;
 
diff --git a/openair1/SCHED/nfapi_lte_dummy.c b/openair1/SCHED/nfapi_lte_dummy.c
index 9562e2de30ca6b7e7266888e31fabed83b6c664a..7d1e7e76843e02f791238f474d8373167e4eca86 100644
--- a/openair1/SCHED/nfapi_lte_dummy.c
+++ b/openair1/SCHED/nfapi_lte_dummy.c
@@ -17,6 +17,10 @@ void handle_nr_nfapi_pdsch_pdu(PHY_VARS_gNB *gNB,int frame,int slot,
                             nfapi_nr_dl_tti_pdsch_pdu *pdsch_pdu,
                             uint8_t *sdu){
                             }
+void handle_nfapi_nr_csirs_pdu(PHY_VARS_gNB *gNB,
+			       int frame, int slot,
+			       nfapi_nr_dl_tti_csi_rs_pdu *csirs_pdu){
+                    }                           
 int l1_north_init_gNB(void){return 0;}
 
 uint8_t slot_ahead=6;
diff --git a/openair1/SCHED/nfapi_nr_dummy.c b/openair1/SCHED/nfapi_nr_dummy.c
index db20017fb81e828e50c9ae8754f941301b2c2bc5..1286a4e48a270c15e13a4c3b6153732bd3fe8b08 100644
--- a/openair1/SCHED/nfapi_nr_dummy.c
+++ b/openair1/SCHED/nfapi_nr_dummy.c
@@ -17,6 +17,10 @@ void handle_nr_nfapi_pdsch_pdu(PHY_VARS_gNB *gNB,int frame,int slot,
                             nfapi_nr_dl_tti_pdsch_pdu *pdsch_pdu,
                             uint8_t *sdu){
                             }
+void handle_nfapi_nr_csirs_pdu(PHY_VARS_gNB *gNB,
+			       int frame, int slot,
+			       nfapi_nr_dl_tti_csi_rs_pdu *csirs_pdu){
+                    }
 int l1_north_init_gNB(void){return 0;}
 
 uint8_t slot_ahead=6;
diff --git a/openair1/SCHED_NR/fapi_nr_l1.c b/openair1/SCHED_NR/fapi_nr_l1.c
index 4c1dd7ebddb8a37da34a83a3849516629187e4ed..fa762fa5b802343d651b419f4e1ea4f4ff27ef06 100644
--- a/openair1/SCHED_NR/fapi_nr_l1.c
+++ b/openair1/SCHED_NR/fapi_nr_l1.c
@@ -229,7 +229,6 @@ void nr_schedule_response(NR_Sched_Rsp_t *Sched_INFO){
           AssertFatal(TX_req->pdu_list[pduIndex].num_TLV == 1, "TX_req->pdu_list[%d].num_TLV %d != 1\n",
           pduIndex,TX_req->pdu_list[pduIndex].num_TLV);
           uint8_t *sdu = (uint8_t *)TX_req->pdu_list[pduIndex].TLVs[0].value.direct;
-          if(NFAPI_MODE != NFAPI_MODE_VNF)
           handle_nr_nfapi_pdsch_pdu(gNB,frame,slot,&dl_tti_pdu->pdsch_pdu, sdu);
           break;
       }
diff --git a/openair2/NR_PHY_INTERFACE/NR_IF_Module.c b/openair2/NR_PHY_INTERFACE/NR_IF_Module.c
index 16bffb14f4ed28ce31bbff350eac0f50baf5e1f0..dcd469f363a0a95e5b6a22c8304c5a97ea825c83 100644
--- a/openair2/NR_PHY_INTERFACE/NR_IF_Module.c
+++ b/openair2/NR_PHY_INTERFACE/NR_IF_Module.c
@@ -48,12 +48,12 @@ extern int oai_nfapi_crc_indication(nfapi_crc_indication_t *crc_ind);
 extern int oai_nfapi_cqi_indication(nfapi_cqi_indication_t *cqi_ind);
 extern int oai_nfapi_sr_indication(nfapi_sr_indication_t *ind);
 extern int oai_nfapi_rx_ind(nfapi_rx_indication_t *ind);
-int oai_nfapi_nr_slot_indication(nfapi_nr_slot_indication_scf_t *ind);
-int oai_nfapi_nr_rx_data_indication(nfapi_nr_rx_data_indication_t *ind);
-int oai_nfapi_nr_crc_indication(nfapi_nr_crc_indication_t *ind);
-int oai_nfapi_nr_srs_indication(nfapi_nr_srs_indication_t *ind);
-int oai_nfapi_nr_uci_indication(nfapi_nr_uci_indication_t *ind);
-int oai_nfapi_nr_rach_indication(nfapi_nr_rach_indication_t *ind);
+extern int oai_nfapi_nr_slot_indication(nfapi_nr_slot_indication_scf_t *ind);
+extern int oai_nfapi_nr_rx_data_indication(nfapi_nr_rx_data_indication_t *ind);
+extern int oai_nfapi_nr_crc_indication(nfapi_nr_crc_indication_t *ind);
+extern int oai_nfapi_nr_srs_indication(nfapi_nr_srs_indication_t *ind);
+extern int oai_nfapi_nr_uci_indication(nfapi_nr_uci_indication_t *ind);
+extern int oai_nfapi_nr_rach_indication(nfapi_nr_rach_indication_t *ind);
 extern uint8_t nfapi_mode;
 extern uint16_t sf_ahead;
 extern uint16_t sl_ahead;