return 0;
 }
 
+/**
+ * This function is used to parse rss queue index, total queue number and
+ * hash functions, If the purpose of this configuration is for queue region
+ * configuration, it will set queue_region_conf flag to TRUE, else to FALSE.
+ * In queue region configuration, it also need to parse hardware flowtype
+ * and user_priority from configuration, it will also cheeck the validity
+ * of these parameters. For example, The queue region sizes should
+ * be any of the following values: 1, 2, 4, 8, 16, 32, 64, the
+ * hw_flowtype or PCTYPE max index should be 63, the user priority
+ * max index should be 7, and so on. And also, queue index should be
+ * continuous sequence and queue region index should be part of rss
+ * queue index for this port.
+ */
 static int
 i40e_flow_parse_rss_action(struct rte_eth_dev *dev,
                            const struct rte_flow_action *actions,
                }
        }
 
+       /**
+        * Do some queue region related parameters check
+        * in order to keep queue index for queue region to be
+        * continuous sequence and also to be part of RSS
+        * queue index for this port.
+        */
        if (conf_info->queue_region_number) {
                for (i = 0; i < rss->num; i++) {
                        for (j = 0; j < rss_info->num; j++) {
                }
        }
 
+       /* Parse queue region related parameters from configuration */
        for (n = 0; n < conf_info->queue_region_number; n++) {
                if (conf_info->region[n].user_priority_num ||
                                conf_info->region[n].flowtype_num) {
                                return -rte_errno;
                        }
 
-                       if (rss_info->num < rss->num ||
-                               rss->queue[0] < rss_info->queue[0] ||
-                               (rss->queue[0] + rss->num >
-                                       rss_info->num + rss_info->queue[0])) {
-                               rte_flow_error_set(error, EINVAL,
-                                       RTE_FLOW_ERROR_TYPE_ACTION,
-                                       act,
-                                       "no valid queues");
-                               return -rte_errno;
-                       }
-
                        for (i = 0; i < info->queue_region_number; i++) {
                                if (info->region[i].queue_num == rss->num &&
                                        info->region[i].queue_start_index ==
                rss_config->queue_region_conf = TRUE;
        }
 
+       /**
+        * Return function if this flow is used for queue region configuration
+        */
        if (rss_config->queue_region_conf)
                return 0;
 
                        return -rte_errno;
                }
        }
+
+       /* Parse RSS related parameters from configuration */
        if (rss->rss_conf)
                rss_config->rss_conf = *rss->rss_conf;
        else