[][openwrt][mt7988][tops][support v1.1.0]

[Description]
Add support to TOPS v1.1.0 with latest driver and firmware
1. Support TOPS mini network stack
   Refactor codes to improve the reusability of tunnel parameter fetching
   process.
2. Change flow table's tunnel arrangement to align with TOPS mini network
   stack
3. TOPS firmware support reorder Tx/Rx process
   Add some flexibilities to support more applications.
4. Update debug commands
   4.1 Add command to show registered tunnel parameters
   4.2 Update command to register debug tunnel parameters
5. Fix minor bugs
   5.1 coding defects
   5.2 tunnel binding mechanism bugs
6. Support tunnel protocol
   6.1 L2oGRE

[Release-log]
N/A

Change-Id: Idd6b6e0fb0495d21062ededd8b010dc14af317ff
Reviewed-on: https://gerrit.mediatek.inc/c/openwrt/feeds/mtk_openwrt_feeds/+/8319846
diff --git a/package-21.02/kernel/tops/src/init.c b/package-21.02/kernel/tops/src/init.c
index 62c7806..478a45a 100644
--- a/package-21.02/kernel/tops/src/init.c
+++ b/package-21.02/kernel/tops/src/init.c
@@ -15,21 +15,22 @@
 #include <linux/of_platform.h>
 #include <linux/platform_device.h>
 
-#include "ctrl.h"
-#include "firmware.h"
-#include "hpdma.h"
-#include "hwspinlock.h"
-#include "internal.h"
-#include "mbox.h"
-#include "mcu.h"
-#include "netsys.h"
-#include "net-event.h"
-#include "ser.h"
-#include "tdma.h"
-#include "trm-mcu.h"
-#include "trm.h"
-#include "tunnel.h"
-#include "wdt.h"
+#include "tops/ctrl.h"
+#include "tops/debugfs.h"
+#include "tops/firmware.h"
+#include "tops/hpdma.h"
+#include "tops/hwspinlock.h"
+#include "tops/internal.h"
+#include "tops/mbox.h"
+#include "tops/mcu.h"
+#include "tops/netsys.h"
+#include "tops/net-event.h"
+#include "tops/ser.h"
+#include "tops/tdma.h"
+#include "tops/trm-mcu.h"
+#include "tops/trm.h"
+#include "tops/tunnel.h"
+#include "tops/wdt.h"
 
 #define EFUSE_TOPS_POWER_OFF		(0xD08)
 
@@ -79,8 +80,17 @@
 		goto err_ser_deinit;
 	}
 
+	ret = mtk_tops_debugfs_init(pdev);
+	if (ret) {
+		TOPS_ERR("debugfs init failed: %d\n", ret);
+		goto err_wdt_deinit;
+	}
+
 	return ret;
 
+err_wdt_deinit:
+	mtk_tops_wdt_deinit(pdev);
+
 err_ser_deinit:
 	mtk_tops_ser_deinit(pdev);
 
@@ -165,6 +175,8 @@
 
 static int mtk_tops_remove(struct platform_device *pdev)
 {
+	mtk_tops_debugfs_init(pdev);
+
 	mtk_tops_wdt_deinit(pdev);
 
 	mtk_tops_ser_deinit(pdev);