[qca-nss-ecm] Set the missing QoS valid flag for create rule message.

This commit also sets the TCP valid flag at the correct place.

Change-Id: Ia0998a26ecbc7cf17c6c625061f2b07929513d15
Signed-off-by: Murat Sezgin <msezgin@codeaurora.org>
diff --git a/ecm_front_end_ipv4.c b/ecm_front_end_ipv4.c
index c03470a..abefbc0 100644
--- a/ecm_front_end_ipv4.c
+++ b/ecm_front_end_ipv4.c
@@ -1075,6 +1075,7 @@
 	 */
 	nircm->qos_rule.flow_qos_tag = (uint32_t)pr->flow_qos_tag;
 	nircm->qos_rule.return_qos_tag = (uint32_t)pr->return_qos_tag;
+	nircm->valid_flags |= NSS_IPV4_RULE_CREATE_QOS_VALID;
 
 	/*
 	 * DSCP information?
@@ -1177,9 +1178,10 @@
 			nircm->rule_flags |= NSS_IPV4_RULE_CREATE_FLAG_NO_SEQ_CHECK;
 		}
 		spin_unlock_bh(&ct->lock);
-		nircm->valid_flags |= NSS_IPV4_RULE_CREATE_TCP_VALID;
 	}
 
+	nircm->valid_flags |= NSS_IPV4_RULE_CREATE_TCP_VALID;
+
 	/*
 	 * Sync our creation command from the assigned classifiers to get specific additional creation rules.
 	 * NOTE: These are called in ascending order of priority and so the last classifier (highest) shall
@@ -2302,6 +2304,7 @@
 	 */
 	nircm->qos_rule.flow_qos_tag = (uint32_t)pr->flow_qos_tag;
 	nircm->qos_rule.return_qos_tag = (uint32_t)pr->return_qos_tag;
+	nircm->valid_flags |= NSS_IPV4_RULE_CREATE_QOS_VALID;
 
 	/*
 	 * DSCP information?
@@ -3498,6 +3501,7 @@
 	 */
 	nircm->qos_rule.flow_qos_tag = (uint32_t)pr->flow_qos_tag;
 	nircm->qos_rule.return_qos_tag = (uint32_t)pr->return_qos_tag;
+	nircm->valid_flags |= NSS_IPV4_RULE_CREATE_QOS_VALID;
 
 	/*
 	 * DSCP information?
diff --git a/ecm_front_end_ipv6.c b/ecm_front_end_ipv6.c
index fab71f8..7e4325d 100644
--- a/ecm_front_end_ipv6.c
+++ b/ecm_front_end_ipv6.c
@@ -1642,6 +1642,7 @@
 	 */
 	nircm->qos_rule.flow_qos_tag = (uint32_t)pr->flow_qos_tag;
 	nircm->qos_rule.return_qos_tag = (uint32_t)pr->return_qos_tag;
+	nircm->valid_flags |= NSS_IPV6_RULE_CREATE_QOS_VALID;
 
 	/*
 	 * DSCP information?
@@ -1724,9 +1725,10 @@
 			nircm->rule_flags |= NSS_IPV6_RULE_CREATE_FLAG_NO_SEQ_CHECK;
 		}
 		spin_unlock_bh(&ct->lock);
-		nircm->valid_flags |= NSS_IPV6_RULE_CREATE_TCP_VALID;
 	}
 
+	nircm->valid_flags |= NSS_IPV6_RULE_CREATE_TCP_VALID;
+
 	/*
 	 * Sync our creation command from the assigned classifiers to get specific additional creation rules.
 	 * NOTE: These are called in ascending order of priority and so the last classifier (highest) shall
@@ -2857,6 +2859,7 @@
 	 */
 	nircm->qos_rule.flow_qos_tag = (uint32_t)pr->flow_qos_tag;
 	nircm->qos_rule.return_qos_tag = (uint32_t)pr->return_qos_tag;
+	nircm->valid_flags |= NSS_IPV6_RULE_CREATE_QOS_VALID;
 
 	/*
 	 * DSCP information?
@@ -4052,6 +4055,7 @@
 	 */
 	nircm->qos_rule.flow_qos_tag = (uint32_t)pr->flow_qos_tag;
 	nircm->qos_rule.return_qos_tag = (uint32_t)pr->return_qos_tag;
+	nircm->valid_flags |= NSS_IPV6_RULE_CREATE_QOS_VALID;
 
 	/*
 	 * DSCP information?