[][Refine FE ISR to detect NETSYS error events]

[Description]
Change Panther/Cheetah FE ISR judgement to detect the
FE Error events that might lead to NETSYS Tx/Rx hang.
	- EVENT_FQ_EMPTY
	- EVENT_TSO_FAIL
	- EVENT_TSO_ILLEGAL
	- EVENT_TSO_ALIGN
	- EVENT_RFIFO_OV
	- EVENT_RFIFO_UF

[Release-log]
N/A

Change-Id: I440b23ffe84714be974a480d17cf454c6a3d0c6c
Reviewed-on: https://gerrit.mediatek.inc/c/openwrt/feeds/mtk_openwrt_feeds/+/5884797
diff --git a/target/linux/mediatek/files-5.4/drivers/net/ethernet/mediatek/mtk_eth_reset.c b/target/linux/mediatek/files-5.4/drivers/net/ethernet/mediatek/mtk_eth_reset.c
index 13dbef4..1cd12bf 100644
--- a/target/linux/mediatek/files-5.4/drivers/net/ethernet/mediatek/mtk_eth_reset.c
+++ b/target/linux/mediatek/files-5.4/drivers/net/ethernet/mediatek/mtk_eth_reset.c
@@ -93,7 +93,7 @@
 	}
 
 	pr_info("[%s] reset record val1=0x%x, val2=0x%x, val3=0x%x !\n",
-		__func__, val1, val2, val3);	
+		__func__, val1, val2, val3);
 
 	if (!done)
 		mtk_eth_cold_reset(eth);
@@ -143,9 +143,17 @@
 	while (status) {
 		val = ffs((unsigned int)status) - 1;
 		status &= ~(1 << val);
-		pr_info("[%s] Detect reset event: %s !\n", __func__,
-			mtk_reset_event_name[val]);
+
+		if ((val == MTK_EVENT_FQ_EMPTY) ||
+		    (val == MTK_EVENT_TSO_FAIL) ||
+		    (val == MTK_EVENT_TSO_ILLEGAL) ||
+		    (val == MTK_EVENT_TSO_ALIGN) ||
+		    (val == MTK_EVENT_RFIFO_OV) ||
+		    (val == MTK_EVENT_RFIFO_UF))
+			pr_info("[%s] Detect reset event: %s !\n", __func__,
+				mtk_reset_event_name[val]);
 	}
+	mtk_w32(eth, 0xFFFFFFFF, MTK_FE_INT_STATUS);
 
 	return IRQ_HANDLED;
 }