[Bugfix][API-1415] merge MTK hwnat patch

Only Configure: No
Affected branch: GSW3.0-No-Connman
Affected module: ethernet
Is it affected on both ZXIC and MTK: only MTK
Self-test: No
Doc Update: No

Change-Id: Ifda159aed9c922e459442d341dd6ccfe41cbafbf
diff --git a/src/kernel/linux/v4.19/include/net/ra_nat.h b/src/kernel/linux/v4.19/include/net/ra_nat.h
index 189e119..5b715e8 100644
--- a/src/kernel/linux/v4.19/include/net/ra_nat.h
+++ b/src/kernel/linux/v4.19/include/net/ra_nat.h
@@ -224,7 +224,9 @@
 #define FOE_MAGIC_EDMARX	    0x85
 #define FOE_MAGIC_RNDIS		    0x86
 #define FOE_MAGIC_SNPS		    0x87
-#define TAG_PROTECT                 0x6789
+#define FOE_MAGIC_VALID(num)	    ((num >= FOE_MAGIC_PCI) && (num <= FOE_MAGIC_SNPS))
+
+#define TAG_PROTECT                 0xDEAD
 #define USE_HEAD_ROOM               0
 #define USE_TAIL_ROOM               1
 #define USE_CB                      2
@@ -427,23 +429,7 @@
 	(FOE_MAGIC_TAG_CB(skb) == FOE_MAGIC_RNDIS))
 
 /* macros */
-#define magic_tag_set_zero(skb) \
-{ \
-	if ((FOE_MAGIC_TAG_HEAD(skb) == FOE_MAGIC_PCI) || \
-	    (FOE_MAGIC_TAG_HEAD(skb) == FOE_MAGIC_WLAN) || \
-	    (FOE_MAGIC_TAG_HEAD(skb) == FOE_MAGIC_RNDIS) || \
-	    (FOE_MAGIC_TAG_HEAD(skb) == FOE_MAGIC_GE)) { \
-		if (IS_SPACE_AVAILABLE_HEAD(skb)) \
-			FOE_MAGIC_TAG_HEAD(skb) = 0; \
-	} \
-	if ((FOE_MAGIC_TAG_TAIL(skb) == FOE_MAGIC_PCI) || \
-	    (FOE_MAGIC_TAG_TAIL(skb) == FOE_MAGIC_WLAN) || \
-	    (FOE_MAGIC_TAG_TAIL(skb) == FOE_MAGIC_RNDIS) || \
-	    (FOE_MAGIC_TAG_TAIL(skb) == FOE_MAGIC_GE)) { \
-		if (IS_SPACE_AVAILABLE_TAIL(skb)) \
-			FOE_MAGIC_TAG_TAIL(skb) = 0; \
-	} \
-}
+#define magic_tag_set_zero(skb) hwnat_magic_tag_set_zero(skb)
 
 static inline void hwnat_set_l2tp_unhit(struct iphdr *iph, struct sk_buff *skb)
 {