[][kernel][mt7988][eth][Fix PORT6 error RX/TX pause counter in Jaguar]

[Description]
Fix PORT6 error RX/TX pause counter in Jaguar, the pause counter of
PORT6 are the opposite of mt7531.

[Release-log]
N/A

Change-Id: I3b387c862a0c30c211a3db59e717762a9d8cfb5f
Reviewed-on: https://gerrit.mediatek.inc/c/openwrt/feeds/mtk_openwrt_feeds/+/6628026
Build: srv_hbgsm110
diff --git a/target/linux/mediatek/files-5.4/drivers/net/ethernet/mediatek/mtk_eth_dbg.c b/target/linux/mediatek/files-5.4/drivers/net/ethernet/mediatek/mtk_eth_dbg.c
index c6f76bf..5ad8645 100755
--- a/target/linux/mediatek/files-5.4/drivers/net/ethernet/mediatek/mtk_eth_dbg.c
+++ b/target/linux/mediatek/files-5.4/drivers/net/ethernet/mediatek/mtk_eth_dbg.c
@@ -656,6 +656,26 @@
 	pr_info("+-----------------------------------------------+\n");
 }
 
+void dump_each_port(struct seq_file *seq, struct mtk_eth *eth, u32 base)
+{
+	u32 pkt_cnt = 0;
+	int i = 0;
+
+	for (i = 0; i < 7; i++) {
+		if (MTK_HAS_CAPS(eth->soc->caps, MTK_NETSYS_V3)) {
+			if ((base == 0x402C) && (i == 6))
+				base = 0x408C;
+			else if ((base == 0x408C) && (i == 6))
+				base = 0x402C;
+			else
+				;
+		}
+		pkt_cnt = mt7530_mdio_r32(eth, (base) + (i * 0x100));
+		seq_printf(seq, "%8u ", pkt_cnt);
+	}
+	seq_puts(seq, "\n");
+}
+
 int esw_cnt_read(struct seq_file *seq, void *v)
 {
 	unsigned int pkt_cnt = 0;
@@ -669,56 +689,47 @@
 
 	mt798x_iomap();
 
-#define DUMP_EACH_PORT(base)					\
-	do { \
-		for (i = 0; i < 7; i++) {				\
-			pkt_cnt = mt7530_mdio_r32(eth, (base) + (i * 0x100));\
-			seq_printf(seq, "%8u ", pkt_cnt);		\
-		}							\
-		seq_puts(seq, "\n"); \
-	} while (0)
-
 	seq_printf(seq, "===================== %8s %8s %8s %8s %8s %8s %8s\n",
 		   "Port0", "Port1", "Port2", "Port3", "Port4", "Port5",
 		   "Port6");
 	seq_puts(seq, "Tx Drop Packet      :");
-	DUMP_EACH_PORT(0x4000);
+	dump_each_port(seq, eth, 0x4000);
 	seq_puts(seq, "Tx CRC Error        :");
-	DUMP_EACH_PORT(0x4004);
+	dump_each_port(seq, eth, 0x4004);
 	seq_puts(seq, "Tx Unicast Packet   :");
-	DUMP_EACH_PORT(0x4008);
+	dump_each_port(seq, eth, 0x4008);
 	seq_puts(seq, "Tx Multicast Packet :");
-	DUMP_EACH_PORT(0x400C);
+	dump_each_port(seq, eth, 0x400C);
 	seq_puts(seq, "Tx Broadcast Packet :");
-	DUMP_EACH_PORT(0x4010);
+	dump_each_port(seq, eth, 0x4010);
 	seq_puts(seq, "Tx Collision Event  :");
-	DUMP_EACH_PORT(0x4014);
+	dump_each_port(seq, eth, 0x4014);
 	seq_puts(seq, "Tx Pause Packet     :");
-	DUMP_EACH_PORT(0x402C);
+	dump_each_port(seq, eth, 0x402C);
 	seq_puts(seq, "Rx Drop Packet      :");
-	DUMP_EACH_PORT(0x4060);
+	dump_each_port(seq, eth, 0x4060);
 	seq_puts(seq, "Rx Filtering Packet :");
-	DUMP_EACH_PORT(0x4064);
+	dump_each_port(seq, eth, 0x4064);
 	seq_puts(seq, "Rx Unicast Packet   :");
-	DUMP_EACH_PORT(0x4068);
+	dump_each_port(seq, eth, 0x4068);
 	seq_puts(seq, "Rx Multicast Packet :");
-	DUMP_EACH_PORT(0x406C);
+	dump_each_port(seq, eth, 0x406C);
 	seq_puts(seq, "Rx Broadcast Packet :");
-	DUMP_EACH_PORT(0x4070);
+	dump_each_port(seq, eth, 0x4070);
 	seq_puts(seq, "Rx Alignment Error  :");
-	DUMP_EACH_PORT(0x4074);
+	dump_each_port(seq, eth, 0x4074);
 	seq_puts(seq, "Rx CRC Error	    :");
-	DUMP_EACH_PORT(0x4078);
+	dump_each_port(seq, eth, 0x4078);
 	seq_puts(seq, "Rx Undersize Error  :");
-	DUMP_EACH_PORT(0x407C);
+	dump_each_port(seq, eth, 0x407C);
 	seq_puts(seq, "Rx Fragment Error   :");
-	DUMP_EACH_PORT(0x4080);
+	dump_each_port(seq, eth, 0x4080);
 	seq_puts(seq, "Rx Oversize Error   :");
-	DUMP_EACH_PORT(0x4084);
+	dump_each_port(seq, eth, 0x4084);
 	seq_puts(seq, "Rx Jabber Error     :");
-	DUMP_EACH_PORT(0x4088);
+	dump_each_port(seq, eth, 0x4088);
 	seq_puts(seq, "Rx Pause Packet     :");
-	DUMP_EACH_PORT(0x408C);
+	dump_each_port(seq, eth, 0x408C);
 	mt7530_mdio_w32(eth, 0x4fe0, 0xf0);
 	mt7530_mdio_w32(eth, 0x4fe0, 0x800000f0);