diff --git a/nfapi/open-nFAPI/nfapi/public_inc/nfapi_nr_interface.h b/nfapi/open-nFAPI/nfapi/public_inc/nfapi_nr_interface.h
index 269605bbb9fdf97b2cb0f089e870545040526800..21e0fab8ca2992d475acd06f7d584534c66aefd0 100644
--- a/nfapi/open-nFAPI/nfapi/public_inc/nfapi_nr_interface.h
+++ b/nfapi/open-nFAPI/nfapi/public_inc/nfapi_nr_interface.h
@@ -173,14 +173,10 @@ typedef struct {
   nfapi_uint16_tlv_t  TimeDomainResourceAllocation_mappingType;                       ///// L1 parameter 'Mapping-type'
 } nfapi_nr_pdsch_config_t;
 
-typedef struct {
-  nfapi_uint16_tlv_t  searchSpaceSIB1;                                                ///// L1 parameter 'rmsi-SearchSpace'
-  nfapi_uint16_tlv_t  searchSpaceOtherSystemInformation;                              ///// L1 parameter 'osi-SearchSpace'
-  nfapi_uint16_tlv_t  pagingSearchSpace;                                              ///// L1 parameter 'paging-SearchSpace'
-  nfapi_uint16_tlv_t  ra_SearchSpace;                                                 ///// L1 parameter 'ra-SearchSpace'
-  nfapi_uint16_tlv_t  rach_ra_ControlResourceSet;                                     ///// L1 parameter 'rach-coreset-configuration'
-  nfapi_uint16_tlv_t  common_controlResourceSetId;                                    ///// L1 parameter 'CORESET-ID
-  nfapi_uint16_tlv_t  common_ControlResourceSet_duration;                             ///// L1 parameter 'CORESET-time-duration'
+typedef struct{
+  nfapi_uint16_tlv_t  controlResourceSetId;                                           ///// L1 parameter 'CORESET-ID'
+  nfapi_uint16_tlv_t  frequencyDomainResources                                        ///// L1 parameter 'CORESET-freq-dom'
+  nfapi_uint16_tlv_t  duration;                                                       ///// L1 parameter 'CORESET-time-duration'
   nfapi_uint16_tlv_t  cce_REG_MappingType;                                            ///// L1 parameter 'CORESET-CCE-REG-mapping-type'
   nfapi_uint16_tlv_t  reg_BundleSize;                                                 ///// L1 parameter 'CORESET-REG-bundle-size'
   nfapi_uint16_tlv_t  interleaverSize;                                                ///// L1 parameter 'CORESET-interleaver-size'
@@ -188,9 +184,14 @@ typedef struct {
   nfapi_uint16_tlv_t  precoderGranularity;                                            ///// L1 parameter 'CORESET-precoder-granuality'
   nfapi_uint16_tlv_t  TCI_StateId;                                                    ///// L1 parameter 'TCI-StatesPDCCH'
   nfapi_uint16_tlv_t  tci_PresentInDCI;                                               ///// L1 parameter 'TCI-PresentInDCI'
+  nfapi_uint16_tlv_t  pdcch_DMRS_ScramblingID;                                        ///// L1 parameter 'PDCCH-DMRS-Scrambling-ID'
+} nfapi_nr_pdcch_commonControlResourcesSets_t;
+
+typedef struct{
   nfapi_uint16_tlv_t  SearchSpaceId;
   nfapi_uint16_tlv_t  commonSearchSpaces_controlResourceSetId;
   nfapi_uint16_tlv_t  SearchSpace_monitoringSlotPeriodicityAndOffset;                 ///// L1 parameters 'Montoring-periodicity-PDCCH-slot'
+  nfapi_uint16_tlv_t  monitoringSymbolsWithinSlot                                     ///// L1 parameter 'Montoring-symbols-PDCCH-within-slot'
   nfapi_uint16_tlv_t  SearchSpace_nrofCandidates_aggregationLevel1;                   ///// L1 parameter 'Aggregation-level-1'
   nfapi_uint16_tlv_t  SearchSpace_nrofCandidates_aggregationLevel2;                   ///// L1 parameter 'Aggregation-level-2'
   nfapi_uint16_tlv_t  SearchSpace_nrofCandidates_aggregationLevel4;                   ///// L1 parameter 'Aggregation-level-4'
@@ -200,7 +201,18 @@ typedef struct {
   nfapi_uint16_tlv_t  Common_dci_Format2_3_monitoringPeriodicity;                     ///// L1 parameter 'SRS-monitoring-periodicity'
   nfapi_uint16_tlv_t  Common_dci_Format2_3_nrofPDCCH_Candidates;                      ///// L1 parameter 'SRS-Num-PDCCH-cand'
   nfapi_uint16_tlv_t  ue_Specific__dci_Formats;
-} nfapi_nr_pdcch_config_t;
+} nfapi_nr_pdcch_commonSearchSpaces_t;
+
+typedef struct {
+  nfapi_nr_pdcch_commonControlResourcesSets_t commonControlResourcesSets;
+  nfapi_nr_pfcch_commonSearchSpaces_t         commonSearchSpaces; 
+  nfapi_uint16_tlv_t                          searchSpaceSIB1;                        ///// L1 parameter 'rmsi-SearchSpace'
+  nfapi_uint16_tlv_t                          searchSpaceOtherSystemInformation;      ///// L1 parameter 'osi-SearchSpace'
+  nfapi_uint16_tlv_t                          pagingSearchSpace;                      ///// L1 parameter 'paging-SearchSpace'
+  nfapi_uint16_tlv_t                          ra_SearchSpace;                         ///// L1 parameter 'ra-SearchSpace'
+  nfapi_uint16_tlv_t                          rach_ra_ControlResourceSet;             ///// L1 parameter 'rach-coreset-configuration'
+
+} nfapi_nr_pdcch_common_config_t;
 
 typedef struct {
   nfapi_uint16_tlv_t  ssb_PositionsInBurst_PR;                                        ///// L1 parameter 'SSB-Transmitted
@@ -270,7 +282,6 @@ typedef struct {
   nfapi_vendor_extension_tlv_t              vendor_extension;
 } nfapi_nr_config_request_t;
 
-
 typedef enum {
 	NFAPI_NR_DL_DCI_FORMAT_1_0 = 0,
 	NFAPI_NR_DL_DCI_FORMAT_1_1,
@@ -303,3 +314,4 @@ typedef struct {
 } nfapi_nr_dl_config_dci_dl_pdu;
 
 #endif
+
diff --git a/openair1/PHY/NR_TRANSPORT/nr_dci.c b/openair1/PHY/NR_TRANSPORT/nr_dci.c
index 5ebfd5a05c241dc0ab8e332acff71176944548de..02005e5fc94af63ac2b03cc052945890b3ca15d7 100644
--- a/openair1/PHY/NR_TRANSPORT/nr_dci.c
+++ b/openair1/PHY/NR_TRANSPORT/nr_dci.c
@@ -33,9 +33,9 @@
 #include "nr_dci.h"
 
 uint8_t nr_get_dci_size(nr_dci_format_e format,
-                     nr_rnti_type_e rnti,
-                     NR_BWP_PARMS* bwp,
-                     nfapi_nr_config_request_t* config)
+                        nr_rnti_type_e rnti,
+                        NR_BWP_PARMS* bwp,
+                        nfapi_nr_config_request_t* config)
 {
   uint8_t size = 0;
   uint16_t N_RB = bwp->N_RB;
@@ -126,7 +126,11 @@ uint8_t nr_get_dci_size(nr_dci_format_e format,
 }
 
 
-uint8_t nr_generate_dci_top()
+uint8_t nr_generate_dci_top(NR_DCI_ALLOC_t dci_alloc,
+                            int32_t** txdataF,
+                            int16_t amp,
+                            NR_DL_FRAME_PARMS* frame_parms,
+                            nfapi_config_request_t* config)
 {
   return 0;
 }
diff --git a/openair1/PHY/NR_TRANSPORT/nr_dci.h b/openair1/PHY/NR_TRANSPORT/nr_dci.h
index a1a58e6598577c371ab9e9714908f286c1821a9b..03a044ad5ec19d19e7c7284916da1799b56be2f2 100644
--- a/openair1/PHY/NR_TRANSPORT/nr_dci.h
+++ b/openair1/PHY/NR_TRANSPORT/nr_dci.h
@@ -27,12 +27,12 @@
 typedef enum {
   nr_dci_format_0_0=0,
   nr_dci_format_0_1,
-  nr_dci_format_1_0,
-  nr_dci_format_1_1,
   nr_dci_format_2_0,
   nr_dci_format_2_1,
   nr_dci_format_2_2,
-  nr_dci_format_2_3
+  nr_dci_format_2_3,
+  nr_dci_format_1_0,
+  nr_dci_format_1_1,
 } nr_dci_format_e;
 
 typedef enum {
@@ -45,7 +45,6 @@ typedef enum {
 } nr_rnti_type_e;
 
 
-
 typedef struct {
   /// Length of DCI in bits
   uint8_t size;
@@ -65,10 +64,14 @@ typedef struct {
 
 
 uint8_t nr_get_dci_size(nr_dci_format_e format,
-                     nr_rnti_type_e rnti,
-                     NR_BWP_PARMS bwp,
-                     nfapi_nr_config_request_t* config);
+                        nr_rnti_type_e rnti,
+                        NR_BWP_PARMS bwp,
+                        nfapi_nr_config_request_t* config);
 
-uint8_t nr_generate_dci_top();
+uint8_t nr_generate_dci_top(NR_DCI_ALLOC_t dci_alloc,
+                            int32_t** txdataF,
+                            int16_t amp,
+                            NR_DL_FRAME_PARMS* frame_parms,
+                            nfapi_config_request_t* config)
 
 #endif //__PHY_NR_TRANSPORT_DCI__H
diff --git a/openair1/PHY/NR_TRANSPORT/nr_pbch.c b/openair1/PHY/NR_TRANSPORT/nr_pbch.c
index 842f35ae524baaf39c299ae9055591072be7a1bc..42d651d1405282b40ce572225f48cce06f41e1b1 100644
--- a/openair1/PHY/NR_TRANSPORT/nr_pbch.c
+++ b/openair1/PHY/NR_TRANSPORT/nr_pbch.c
@@ -207,7 +207,7 @@ int nr_generate_pbch(NR_gNB_PBCH *pbch,
     mod_pbch_e[(i<<1)+1] = nr_mod_table[((NR_MOD_TABLE_QPSK_OFFSET + idx)<<1)+1];
 
 #ifdef DEBUG_PBCH
-  printf("i %d  mod_pbch %d %d\n", i, mod_pbch_e[2*i], mod_pbch_e[2*i+1]);
+  printf("i %d idx %d  mod_pbch %d %d\n", i, idx, mod_pbch_e[2*i], mod_pbch_e[2*i+1]);
 #endif
   }
 
diff --git a/openair1/PHY/defs_nr_common.h b/openair1/PHY/defs_nr_common.h
index c1c03570337b21a14e8bb520d2ff833ba16e5a8a..57b3159310c6392cc4ae63e8e408398ae1f28b3b 100644
--- a/openair1/PHY/defs_nr_common.h
+++ b/openair1/PHY/defs_nr_common.h
@@ -34,7 +34,7 @@
 #define __PHY_DEFS_NR_COMMON__H__
 
 #include "defs_common.h"
-#include "nfapi_nr_interface.h"
+#include "nfapi_interface.h"
 #include "impl_defs_nr.h"
 #include "PHY/CODING/nrPolar_tools/nr_polar_defs.h"