diff --git a/nfapi/open-nFAPI/nfapi/public_inc/nfapi_nr_interface_scf.h b/nfapi/open-nFAPI/nfapi/public_inc/nfapi_nr_interface_scf.h
index cec382b95f14ca69adc6f63e090c6704148b4a88..a2348a56465bbd03df8dce0673936ed425f013cf 100644
--- a/nfapi/open-nFAPI/nfapi/public_inc/nfapi_nr_interface_scf.h
+++ b/nfapi/open-nFAPI/nfapi/public_inc/nfapi_nr_interface_scf.h
@@ -60,12 +60,24 @@ typedef enum {
 
 //3.3.1 PARAM
 
+typedef struct {
+	nfapi_tl_t tl;
+	uint16_t value;
+
+} nfapi_nr_param_tlv_t;
+
 //same with nfapi_param_request_t
 typedef struct {
 	nfapi_p4_p5_message_header_t header;
 	nfapi_vendor_extension_tlv_t vendor_extension;
 } nfapi_nr_param_request_t;
 
+typedef enum {
+  NFAPI_NR_PARAM_MSG_OK = 0,
+	NFAPI_NR_PARAM_MSG_INVALID_STATE
+
+} nfapi_nr_param_errors_e;
+
 typedef struct {
   nfapi_nr_param_errors_e error_code;
   //Number of TLVs contained in the message body.
@@ -73,18 +85,9 @@ typedef struct {
   nfapi_nr_param_tlv_t TLV;
 } nfapi_nr_param_response_t;
 
-typedef enum {
-  NFAPI_NR_PARAM_MSG_OK = 0,
-	NFAPI_NR_PARAM_MSG_INVALID_STATE
-
-} nfapi_nr_param_errors_e;
 
 //PARAM and CONFIG TLVs are used in the PARAM and CONFIG message exchanges, respectively
-typedef struct {
-	nfapi_tl_t tl;
-	uint16_t value;
 
-} nfapi_nr_param_tlv_t;
 
 //nfapi_nr_param_tlv_format_t cell param ~ measurement_param:
 
@@ -145,6 +148,11 @@ typedef struct {
 #define  NFAPI_NR_PARAM_TLV_MAX_PRACH_FD_OCCASIONS_IN_A_SLOT_TAG 0x0035
 #define  NFAPI_NR_PARAM_TLV_RSSI_MEASUREMENT_SUPPORT_TAG 0x0036
 
+typedef struct{
+  uint16_t num_config_tlvs_to_report;
+  nfapi_nr_param_tlv_t tlv;
+} nfapi_nr_num_config_tlvs_to_report;
+
 typedef struct 
 {
   uint16_t release_capability;//TAG 0x0001
@@ -154,11 +162,6 @@ typedef struct
   nfapi_nr_num_config_tlvs_to_report* num_config_tlvs_to_report_list;
 } nfapi_nr_cell_param_t;
 
-typedef struct{
-  uint16_t num_config_tlvs_to_report;
-  nfapi_nr_param_tlv_t tlv;
-} nfapi_nr_num_config_tlvs_to_report;
-
 //table 3-10 Carrier parameters
 typedef struct 
 {
@@ -252,16 +255,20 @@ typedef struct
 
 //-------------------------------------------//
 //3.3.2 CONFIG
+typedef struct {
+	nfapi_tl_t tl;
+	uint16_t value;
+} nfapi_nr_config_tlv_t;
 
 typedef struct {
 	uint8_t number_of_tlvs;
 	nfapi_nr_config_tlv_t tlv;
 } nfapi_nr_config_request_t;
 
-typedef struct {
-	nfapi_tl_t tl;
-	uint16_t value;
-} nfapi_nr_config_tlv_t;
+typedef enum {
+  NFAPI_NR_CONFIG_MSG_OK = 0,
+	NFAPI_NR_CONFIG_MSG_INVALID_CONFIG  //The configuration provided has missing mandatory TLVs, or TLVs that are invalid or unsupported in this state.
+} nfapi_nr_config_errors_e;
 
 typedef struct {
 	nfapi_nr_config_errors_e error_code;
@@ -275,11 +282,6 @@ typedef struct {
 
 } nfapi_nr_config_response_t;
 
-typedef enum {
-  NFAPI_NR_CONFIG_MSG_OK = 0,
-	NFAPI_NR_CONFIG_MSG_INVALID_CONFIG  //The configuration provided has missing mandatory TLVs, or TLVs that are invalid or unsupported in this state.
-} nfapi_nr_config_errors_e;
-
 //nfapi_nr_config_tlv_format_t carrier config ~ precoding config:
 
 #define NFAPI_NR_CONFIG_DL_BANDWIDTH_TAG 0x1001
@@ -363,17 +365,12 @@ typedef struct
 } nfapi_nr_ssb_config_t;
 
 //table 3-24
+
 typedef struct 
 {
-  uint8_t prach_sequence_length;//RACH sequence length. Long or Short sequence length. Only short sequence length is supported for FR2. [38.211, sec 6.3.3.1] Value: 0 = Long sequence 1 = Short sequence
-  uint8_t prach_sub_c_spacing;//Subcarrier spacing of PRACH. [38.211 sec 4.2] Value:0->4
-  uint8_t restricted_set_config;//PRACH restricted set config Value: 0: unrestricted 1: restricted set type A 2: restricted set type B
-  uint8_t num_prach_fd_occasions;//Number of RACH frequency domain occasions. Corresponds to the parameter 𝑀 in [38.211, sec 6.3.3.2] which equals the higher layer parameter msg1FDM Value: 1,2,4,8
-  nfapi_nr_num_prach_fd_occasions_t* num_prach_fd_occasions_list;
-  uint8_t ssb_per_rach;//SSB-per-RACH-occasion Value: 0: 1/8 1:1/4, 2:1/2 3:1 4:2 5:4, 6:8 7:16
-  uint8_t prach_multiple_carriers_in_a_band;//0 = disabled 1 = enabled
+  uint8_t unused_root_sequences;//Unused root sequence or sequences per FD occasion. Required for noise estimation.
 
-} nfapi_nr_prach_config_t;
+} nfapi_nr_num_unused_root_sequences_t;
 
 typedef struct 
 {
@@ -389,11 +386,29 @@ typedef struct
 
 typedef struct 
 {
-  uint8_t unused_root_sequences;//Unused root sequence or sequences per FD occasion. Required for noise estimation.
+  uint8_t prach_sequence_length;//RACH sequence length. Long or Short sequence length. Only short sequence length is supported for FR2. [38.211, sec 6.3.3.1] Value: 0 = Long sequence 1 = Short sequence
+  uint8_t prach_sub_c_spacing;//Subcarrier spacing of PRACH. [38.211 sec 4.2] Value:0->4
+  uint8_t restricted_set_config;//PRACH restricted set config Value: 0: unrestricted 1: restricted set type A 2: restricted set type B
+  uint8_t num_prach_fd_occasions;//Number of RACH frequency domain occasions. Corresponds to the parameter 𝑀 in [38.211, sec 6.3.3.2] which equals the higher layer parameter msg1FDM Value: 1,2,4,8
+  nfapi_nr_num_prach_fd_occasions_t* num_prach_fd_occasions_list;
+  uint8_t ssb_per_rach;//SSB-per-RACH-occasion Value: 0: 1/8 1:1/4, 2:1/2 3:1 4:2 5:4, 6:8 7:16
+  uint8_t prach_multiple_carriers_in_a_band;//0 = disabled 1 = enabled
 
-} nfapi_nr_num_unused_root_sequences_t;
+} nfapi_nr_prach_config_t;
 
 //table 3-25
+typedef struct 
+{
+  uint32_t ssb_mask;//Bitmap for actually transmitted SSB. MSB->LSB of first 32 bit number corresponds to SSB 0 to SSB 31 MSB->LSB of second 32 bit number corresponds to SSB 32 to SSB 63 Value for each bit: 0: not transmitted 1: transmitted
+
+} nfapi_nr_ssb_mask_size_2_t;
+
+typedef struct 
+{
+  uint8_t beam_id[64];//BeamID for each SSB in SsbMask. For example, if SSB mask bit 26 is set to 1, then BeamId[26] will be used to indicate beam ID of SSB 26. Value: from 0 to 63
+
+} nfapi_nr_ssb_mask_size_64_t;
+
 typedef struct 
 {
   uint16_t ssb_offset_point_a;//Offset of lowest subcarrier of lowest resource block used for SS/PBCH block. Given in PRB [38.211, section 4.4.4.2] Value: 0->2199
@@ -408,27 +423,14 @@ typedef struct
 
 } nfapi_nr_ssb_table_t;
 
-typedef struct 
-{
-  uint32_t ssb_mask;//Bitmap for actually transmitted SSB. MSB->LSB of first 32 bit number corresponds to SSB 0 to SSB 31 MSB->LSB of second 32 bit number corresponds to SSB 32 to SSB 63 Value for each bit: 0: not transmitted 1: transmitted
-
-} nfapi_nr_ssb_mask_size_2_t;
-
-typedef struct 
-{
-  uint8_t beam_id[64];//BeamID for each SSB in SsbMask. For example, if SSB mask bit 26 is set to 1, then BeamId[26] will be used to indicate beam ID of SSB 26. Value: from 0 to 63
-
-} nfapi_nr_ssb_mask_size_64_t;
-
 //table 3-26
 
 //? 
 typedef struct 
 {
-  uint8_t tdd_period;//DL UL Transmission Periodicity. Value:0: ms0p5 1: ms0p625 2: ms1 3: ms1p25 4: ms2 5: ms2p5 6: ms5 7: ms10 
-  nfapi_nr_max_tdd_periodicity_t* max_tdd_periodicity_list;
+  uint8_t slot_config;//For each symbol in each slot a uint8_t value is provided indicating: 0: DL slot 1: UL slot 2: Guard slot
 
-} nfapi_nr_tdd_table_t;
+} nfapi_nr_max_num_of_symbol_per_slot_t;
 
 typedef struct 
 {
@@ -438,9 +440,10 @@ typedef struct
 
 typedef struct 
 {
-  uint8_t slot_config;//For each symbol in each slot a uint8_t value is provided indicating: 0: DL slot 1: UL slot 2: Guard slot
+  uint8_t tdd_period;//DL UL Transmission Periodicity. Value:0: ms0p5 1: ms0p625 2: ms1 3: ms1p25 4: ms2 5: ms2p5 6: ms5 7: ms10 
+  nfapi_nr_max_tdd_periodicity_t* max_tdd_periodicity_list;
 
-} nfapi_nr_max_num_of_symbol_per_slot_t;
+} nfapi_nr_tdd_table_t;
 
 //table 3-27
 typedef struct 
@@ -478,6 +481,17 @@ typedef enum {
 } nfapi_nr_stop_errors_e;
 
 //3.3.5 PHY Notifications
+typedef enum {
+  NFAPI_NR_PHY_API_MSG_OK              =0x0,
+	NFAPI_NR_PHY_API_MSG_INVALID_STATE   =0x1,
+  NFAPI_NR_PHY_API_MSG_INVALID_CONFIG  =0x2,
+  NFAPI_NR_PHY_API_SFN_OUT_OF_SYNC     =0X3,
+  NFAPI_NR_PHY_API_MSG_SLOR_ERR        =0X4,
+  NFAPI_NR_PHY_API_MSG_BCH_MISSING     =0X5,
+  NFAPI_NR_PHY_API_MSG_INVALID_SFN     =0X6,
+  NFAPI_NR_PHY_API_MSG_UL_DCI_ERR      =0X7,
+  NFAPI_NR_PHY_API_MSG_TX_ERR          =0X8
+} nfapi_nr_phy_notifications_errors_e;
 
 typedef struct {
 	uint16_t sfn; //0~1023
@@ -486,31 +500,11 @@ typedef struct {
   nfapi_nr_phy_notifications_errors_e error_code;
 } nfapi_nr_phy_notifications_error_indicate_t;
 
-typedef enum {
-  NFAPI_NR_PHY_API_MSG_OK =0x0,
-	NFAPI_NR_PHY_API_MSG_INVALID_STATE  =0x1,
-  NFAPI_NR_PHY_API_MSG_INVALID_CONFIG  =0x2,
-  NFAPI_NR_PHY_API_SFN_OUT_OF_SYNC  =0X03,
-  NFAPI_NR_PHY_API_MSG_SLOR_ERR     =0X04,
-  NFAPI_NR_PHY_API_MSG_BCH_MISSING  =0X05,
-  NFAPI_NR_PHY_API_MSG_INVALID_SFN  =0X06,
-  NFAPI_NR_PHY_API_MSG_UL_DCI_ERR   =0X07,
-  NFAPI_NR_PHY_API_MSG_TX_ERR       =0X08
-} nfapi_nr_phy_notifications_errors_e;
-
-
 //-----------------------//
 //3.3.6 Storing Precoding and Beamforming Tables
 
 //table 3-32
 //? 
-typedef struct {
-	uint16_t num_dig_beams; //0~65535
-  uint16_t num_txrus;    //0~65535
-  nfapi_nr_dig_beam_t* dig_beam_list;
-  nfapi_nr_txru_t*  txru_list;
-} nfapi_nr_dbt_pdu_t;
-
 typedef struct {
 	uint16_t beam_idx;     //0~65535
 } nfapi_nr_dig_beam_t;
@@ -520,25 +514,33 @@ typedef struct {
   uint16_t dig_beam_weight_Im;
 } nfapi_nr_txru_t;
 
-//? table 3-33
 typedef struct {
-	uint16_t pm_idx;       //0~65535
-  nfapi_nr_num_layers_t* num_layers_list;   //0~65535
-  nfapi_nr_num_ant_ports_t* num_ant_ports_list;
-} nfapi_nr_pm_pdu_t;
+	uint16_t num_dig_beams; //0~65535
+  uint16_t num_txrus;    //0~65535
+  nfapi_nr_dig_beam_t* dig_beam_list;
+  nfapi_nr_txru_t*  txru_list;
+} nfapi_nr_dbt_pdu_t;
 
-typedef struct {
-  uint16_t numLayers;   //0~65535
-	nfapi_nr_num_ant_ports_t* num_ant_ports_list;
-} nfapi_nr_num_layers_t;
 
+//table 3-33
+//?
 typedef struct {
   uint16_t num_ant_ports;
 	int16_t precoder_weight_Re;
   int16_t precoder_weight_Im;
 } nfapi_nr_num_ant_ports_t;
 
-// Section 3.4
+typedef struct {
+  uint16_t numLayers;   //0~65535
+	nfapi_nr_num_ant_ports_t* num_ant_ports_list;
+} nfapi_nr_num_layers_t;
+
+typedef struct {
+	uint16_t pm_idx;       //0~65535
+  nfapi_nr_num_layers_t* num_layers_list;   //0~65535
+  //nfapi_nr_num_ant_ports_t* num_ant_ports_list;
+} nfapi_nr_pm_pdu_t;
 
+// Section 3.4
 
 #endif