[][kernel][common][app][Add mtk_ppe support to mtkhnat]

[Description]
Add mtk_ppe support to mtkhnat.

If without this patch, mtkhnat can't configure QDMA HQoS setting for Flowblock HNAT driver.

[Release-log]
N/A

Change-Id: I2035b0f216b33e5c4ccb953282b553c37c5db26b
Reviewed-on: https://gerrit.mediatek.inc/c/openwrt/feeds/mtk_openwrt_feeds/+/6547746
Build: srv_hbgsm110
diff --git a/feed/mtkhnat_util/files/mtkhnat b/feed/mtkhnat_util/files/mtkhnat
index 1b2fbfd..c6ab79e 100755
--- a/feed/mtkhnat_util/files/mtkhnat
+++ b/feed/mtkhnat_util/files/mtkhnat
@@ -18,14 +18,20 @@
 echo 0 > /proc/sys/net/bridge/bridge-nf-filter-vlan-tagged
 echo 0 > /proc/sys/net/bridge/bridge-nf-pass-vlan-input-dev
 
+#if hnat is not exist, switch module to mtk_ppe
+module=hnat
+[ -d /sys/kernel/debug/${module} ] || {
+	module=mtk_ppe
+}
+
 #if enable=0, disable qdma_sch & qdma_txq
 [ "${enable}" -eq 1 ] || {
-	echo 0 ${scheduling} ${sch0_bw} > /sys/kernel/debug/hnat/qdma_sch0
-	echo 0 ${scheduling} ${sch1_bw} > /sys/kernel/debug/hnat/qdma_sch1
-	echo 0 0 0 0 0 0 4 > /sys/kernel/debug/hnat/qdma_txq0
+	echo 0 ${scheduling} ${sch0_bw} > /sys/kernel/debug/${module}/qdma_sch0
+	echo 0 ${scheduling} ${sch1_bw} > /sys/kernel/debug/${module}/qdma_sch1
+	echo 0 0 0 0 0 0 4 > /sys/kernel/debug/${module}/qdma_txq0
 	for i in $(seq 1 $((txq_num - 1)))
 	do
-		echo 0 0 0 0 0 0 0 > /sys/kernel/debug/hnat/qdma_txq$i
+		echo 0 0 0 0 0 0 0 > /sys/kernel/debug/${module}/qdma_txq$i
 	done
 
 	rmmod mtkhnat
@@ -36,15 +42,15 @@
 
 #if hqos=0, disable qdma_sch & qdma_txq
 [ "${hqos}" -eq 1 ] || {
-	echo 0 ${scheduling} ${sch0_bw} > /sys/kernel/debug/hnat/qdma_sch0
-	echo 0 ${scheduling} ${sch1_bw} > /sys/kernel/debug/hnat/qdma_sch1
+	echo 0 ${scheduling} ${sch0_bw} > /sys/kernel/debug/${module}/qdma_sch0
+	echo 0 ${scheduling} ${sch1_bw} > /sys/kernel/debug/${module}/qdma_sch1
 
 	for i in $(seq 0 $((txq_num - 1)))
 	do
 		if [ "${i}" -le $(((txq_num / 2) - 1)) ]; then
-			echo 0 0 0 0 0 0 4 > /sys/kernel/debug/hnat/qdma_txq$i
+			echo 0 0 0 0 0 0 4 > /sys/kernel/debug/${module}/qdma_txq$i
 		else
-			echo 1 0 0 0 0 0 4 > /sys/kernel/debug/hnat/qdma_txq$i
+			echo 1 0 0 0 0 0 4 > /sys/kernel/debug/${module}/qdma_txq$i
 		fi
 	done
 
@@ -52,8 +58,8 @@
 }
 
 # enable qdma_sch0 and qdma_sch1
-echo 1 ${scheduling} ${sch0_bw} > /sys/kernel/debug/hnat/qdma_sch0
-echo 1 ${scheduling} ${sch1_bw} > /sys/kernel/debug/hnat/qdma_sch1
+echo 1 ${scheduling} ${sch0_bw} > /sys/kernel/debug/${module}/qdma_sch0
+echo 1 ${scheduling} ${sch1_bw} > /sys/kernel/debug/${module}/qdma_sch1
 
 # enable bridge netfilter module to allow skb being marked
 echo 1 > /proc/sys/net/bridge/bridge-nf-call-iptables
@@ -93,7 +99,7 @@
 	# set the queue of sch0 group(the lower half of total queues)
 	[ "${queue_id}" -le $(((txq_num / 2) - 1)) ] && \
 	echo 0 ${queue_minebl} ${minrate} ${queue_maxebl} ${maxrate} ${queue_weight} \
-		${queue_resv} > /sys/kernel/debug/hnat/qdma_txq${queue_id}
+		${queue_resv} > /sys/kernel/debug/${module}/qdma_txq${queue_id}
 
 	# calculate min rate according to sch1_bw
 	minrate=$((sch1_bw * $queue_minrate))
@@ -106,7 +112,7 @@
 	# set the queue of sch1 group(the upper half of total queues)
 	[ "${queue_id}" -gt $(((txq_num / 2) - 1)) ] && \
 	echo 1 ${queue_minebl} ${minrate} ${queue_maxebl} ${maxrate} ${queue_weight} \
-		${queue_resv} > /sys/kernel/debug/hnat/qdma_txq${queue_id}
+		${queue_resv} > /sys/kernel/debug/${module}/qdma_txq${queue_id}
 }
 
 config_foreach setup_queue queue