+
+#define XRAN_EF_F_LAST 0
+#define XRAN_EF_F_ANOTHER_ONE 1
+
+/** Control Plane section extension commands, defined in 5.4.6 Table 5.13 */
+enum xran_cp_sectionextcmd {
+ XRAN_CP_SECTIONEXTCMD_0 = 0, /**< Reserved, for future use */
+ XRAN_CP_SECTIONEXTCMD_1 = 1, /**< Beamforming weights */
+ XRAN_CP_SECTIONEXTCMD_2 = 2, /**< Beamforming attributes */
+ XRAN_CP_SECTIONEXTCMD_3 = 3, /**< DL Precoding configuration parameters and indications, not supported */
+ XRAN_CP_SECTIONEXTCMD_4 = 4, /**< Modulation compression parameter */
+ XRAN_CP_SECTIONEXTCMD_5 = 5, /**< Modulation compression additional scaling parameters */
+ XRAN_CP_SECTIONEXTCMD_6 = 6, /**< Non-contiguous PRB allocation */
+ XRAN_CP_SECTIONEXTCMD_7 = 7, /**< Multiple-eAxC designation */
+ XRAN_CP_SECTIONEXTCMD_8 = 8, /**< MMSE parameters */
+ XRAN_CP_SECTIONEXTCMD_9 = 9, /**< Dynamic Spectrum Sharing parameters */
+ XRAN_CP_SECTIONEXTCMD_10 = 10, /**< Multiple ports grouping */
+ XRAN_CP_SECTIONEXTCMD_11 = 11, /**< Flexible BF weights */
+ XRAN_CP_SECTIONEXTCMD_MAX /* 12~127 reserved for future use */
+ };
+
+/** Macro to convert bfwIqWidth defined in 5.4.7.1.1, Table 5-15 */
+#define XRAN_CONVERT_BFWIQWIDTH(x) ((x) > 15 ? 0 : (x))
+
+/** Beamforming Weights Compression Method 5.4.7.1.1, Table 5-16 */
+enum xran_cp_bfw_compression_method {
+ XRAN_BFWCOMPMETHOD_NONE = 0, /**< Uncopressed I/Q value */
+ XRAN_BFWCOMPMETHOD_BLKFLOAT = 1, /**< I/Q mantissa value */
+ XRAN_BFWCOMPMETHOD_BLKSCALE = 2, /**< I/Q scaled value */
+ XRAN_BFWCOMPMETHOD_ULAW = 3, /**< compressed I/Q value */
+ XRAN_BFWCOMPMETHOD_BEAMSPACE = 4, /**< beamspace I/Q coefficient */
+ XRAN_BFWCOMPMETHOD_MAX /* reserved for future methods */
+ };
+
+/** Beamforming Attributes Bitwidth 5.4.7.2.1 */
+enum xran_cp_bfa_bitwidth {
+ XRAN_BFABITWIDTH_NO = 0, /**< the filed is no applicable or the default value shall be used */
+ XRAN_BFABITWIDTH_2BIT = 1, /**< the filed is 2-bit bitwidth */
+ XRAN_BFABITWIDTH_3BIT = 2, /**< the filed is 3-bit bitwidth */
+ XRAN_BFABITWIDTH_4BIT = 3, /**< the filed is 4-bit bitwidth */
+ XRAN_BFABITWIDTH_5BIT = 4, /**< the filed is 5-bit bitwidth */
+ XRAN_BFABITWIDTH_6BIT = 5, /**< the filed is 6-bit bitwidth */
+ XRAN_BFABITWIDTH_7BIT = 6, /**< the filed is 7-bit bitwidth */
+ XRAN_BFABITWIDTH_8BIT = 7, /**< the filed is 8-bit bitwidth */
+ };
+
+/** Layer ID for DL transmission in TM1-TM4 5.4.7.3.2 */
+#define XRAN_LAYERID_0 0 /**< Layer 0 */
+#define XRAN_LAYERID_1 1 /**< Layer 1 */
+#define XRAN_LAYERID_2 2 /**< Layer 2 */
+#define XRAN_LAYERID_3 3 /**< Layer 3 */
+#define XRAN_LAYERID_TXD 0xf /**< TxD */
+
+/** LTE Transmission Scheme for section extension type 3 5.4.7.3.3 */
+#define XRAN_TXS_SMUXCDD 0 /**< Spatial Multiplexing (CDD) */
+#define XRAN_TXS_SMUXNOCDD 1 /**< Spatial Multiplexing (no CDD) */
+#define XRAN_TXS_TXDIV 2 /**< Transmit diversity */
+
+/** Resource Block Group Size 5.4.7.6.1 */
+enum xran_cp_rbgsize {
+ XRAN_RBGSIZE_1RB = 1, /**< 1 RB */
+ XRAN_RBGSIZE_2RB = 2, /**< 2 RBs */
+ XRAN_RBGSIZE_3RB = 3, /**< 3 RBs */
+ XRAN_RBGSIZE_4RB = 4, /**< 4 RBs */
+ XRAN_RBGSIZE_6RB = 5, /**< 6 RBs */
+ XRAN_RBGSIZE_8RB = 6, /**< 8 RBs */
+ XRAN_RBGSIZE_16RB = 7, /**< 16 RBs */
+};
+
+/** Technology for Dynamic Spectrum Sharing operation 5,4,7.9.1 */
+#define XRAN_DSSTECH_LTE 0 /**< LTE support */
+#define XRAN_DSSTECH_NR 1 /**< NR support */
+
+/** The type of beam grouping 5.4.7.10.1 */
+#define XRAN_BEAMGT_COMMON 0 /** common beam */
+#define XRAN_BEAMGT_MATRIXIND 1 /** beam matrix indication */
+#define XRAN_BEAMGT_VECTORLIST 2 /** beam vector listing */
+
+#define XRAN_MAX_NUMPORTC_EXT10 64 /* defined in 5.4.7.10.2 */
+