#define BY_PASS_MIN_LEVEL (ETHTOOL_MIN_LEVEL + MLX5_BY_PASS_NUM_PRIOS +\
                           LEFTOVERS_NUM_PRIOS)
 
+#define KERNEL_RX_MACSEC_NUM_PRIOS  1
+#define KERNEL_RX_MACSEC_NUM_LEVELS 2
+#define KERNEL_RX_MACSEC_MIN_LEVEL (BY_PASS_MIN_LEVEL + KERNEL_RX_MACSEC_NUM_PRIOS)
+
 #define ETHTOOL_PRIO_NUM_LEVELS 1
 #define ETHTOOL_NUM_PRIOS 11
 #define ETHTOOL_MIN_LEVEL (KERNEL_MIN_LEVEL + ETHTOOL_NUM_PRIOS)
 
 #define LAG_PRIO_NUM_LEVELS 1
 #define LAG_NUM_PRIOS 1
-#define LAG_MIN_LEVEL (OFFLOADS_MIN_LEVEL + 1)
+#define LAG_MIN_LEVEL (OFFLOADS_MIN_LEVEL + KERNEL_RX_MACSEC_MIN_LEVEL + 1)
 
 #define KERNEL_TX_IPSEC_NUM_PRIOS  1
 #define KERNEL_TX_IPSEC_NUM_LEVELS 1
        enum mlx5_flow_table_miss_action def_miss_action;
 } root_fs = {
        .type = FS_TYPE_NAMESPACE,
-       .ar_size = 7,
+       .ar_size = 8,
          .children = (struct init_tree_node[]){
                  ADD_PRIO(0, BY_PASS_MIN_LEVEL, 0, FS_CHAINING_CAPS,
                           ADD_NS(MLX5_FLOW_TABLE_MISS_ACTION_DEF,
                                  ADD_MULTIPLE_PRIO(MLX5_BY_PASS_NUM_PRIOS,
                                                    BY_PASS_PRIO_NUM_LEVELS))),
+                 ADD_PRIO(0, KERNEL_RX_MACSEC_MIN_LEVEL, 0, FS_CHAINING_CAPS,
+                          ADD_NS(MLX5_FLOW_TABLE_MISS_ACTION_DEF,
+                                 ADD_MULTIPLE_PRIO(KERNEL_RX_MACSEC_NUM_PRIOS,
+                                                   KERNEL_RX_MACSEC_NUM_LEVELS))),
                  ADD_PRIO(0, LAG_MIN_LEVEL, 0, FS_CHAINING_CAPS,
                           ADD_NS(MLX5_FLOW_TABLE_MISS_ACTION_DEF,
                                  ADD_MULTIPLE_PRIO(LAG_NUM_PRIOS,
 {
        switch (type) {
        case MLX5_FLOW_NAMESPACE_BYPASS:
+       case MLX5_FLOW_NAMESPACE_KERNEL_RX_MACSEC:
        case MLX5_FLOW_NAMESPACE_LAG:
        case MLX5_FLOW_NAMESPACE_OFFLOADS:
        case MLX5_FLOW_NAMESPACE_ETHTOOL: