[][Kernel][mt7988][eth][Add clock enable flow for Ethernet/Thermal]

[Description]
Add clock enabling flow for Ethernet and Thermal drivers.
Meanwhile, "always on" clock is removed from clkitg.dtsi

If without this patch, Ethernet/Thermal driver can only
use dummy clock but not actual clock preparation flow.

[Release-log]
N/A


Change-Id: I3769beab4e3087fe83636bf370bea9d33868c5b6
Reviewed-on: https://gerrit.mediatek.inc/c/openwrt/feeds/mtk_openwrt_feeds/+/6801479
diff --git a/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7988-clkitg.dtsi b/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7988-clkitg.dtsi
index 44809d9..c97cb24 100644
--- a/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7988-clkitg.dtsi
+++ b/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7988-clkitg.dtsi
@@ -49,10 +49,10 @@
 			<&topckgen CK_TOP_NET1_D5_D4>,
 			<&topckgen CK_TOP_CB_NET1_D8>,
 			<&topckgen CK_TOP_NET1_D8_D2>,
-			<&topckgen CK_TOP_NET1_D8_D4>,
+			<&system_clk>,
 			<&topckgen CK_TOP_NET1_D8_D8>,
 			<&topckgen CK_TOP_NET1_D8_D16>,
-			<&topckgen CK_TOP_CB_NET2_800M>,
+			<&system_clk>,
 			<&topckgen CK_TOP_CB_NET2_D2>,
 			<&topckgen CK_TOP_CB_NET2_D4>,
 			<&topckgen CK_TOP_NET2_D4_D4>,
@@ -60,7 +60,7 @@
 			<&topckgen CK_TOP_CB_NET2_D6>,
 			<&topckgen CK_TOP_CB_NET2_D8>,
 			<&topckgen CK_TOP_CB_WEDMCU_208M>,
-			<&topckgen CK_TOP_CB_SGM_325M>,
+			<&system_clk>,
 			<&topckgen CK_TOP_CB_NETSYS_850M>,
 			<&topckgen CK_TOP_CB_MSDC_400M>,
 			<&topckgen CK_TOP_CKSQ_40M_D2>,
@@ -96,8 +96,8 @@
 			<&system_clk>,
 			<&topckgen CK_TOP_NETSYS_SEL>,
 			<&topckgen CK_TOP_NETSYS_500M_SEL>,
-			<&topckgen CK_TOP_NETSYS_2X_SEL>,
-			<&topckgen CK_TOP_NETSYS_GSW_SEL>,
+			<&system_clk>,
+			<&system_clk>,
 			<&topckgen CK_TOP_ETH_GMII_SEL>,
 			<&topckgen CK_TOP_NETSYS_MCU_SEL>,
 			<&topckgen CK_TOP_NETSYS_PAO_2X_SEL>,
@@ -129,11 +129,11 @@
 			<&system_clk>,
 			<&topckgen CK_TOP_SSPXTP_SEL>,
 			<&topckgen CK_TOP_USB_PHY_SEL>,
-			<&topckgen CK_TOP_USXGMII_SBUS_0_SEL>,
-			<&topckgen CK_TOP_USXGMII_SBUS_1_SEL>,
-			<&topckgen CK_TOP_SGM_0_SEL>,
+			<&system_clk>,
+			<&system_clk>,
+			<&system_clk>,
 			<&topckgen CK_TOP_SGM_SBUS_0_SEL>,
-			<&topckgen CK_TOP_SGM_1_SEL>,
+			<&system_clk>,
 			<&topckgen CK_TOP_SGM_SBUS_1_SEL>,
 			<&topckgen CK_TOP_XFI_PHY_0_XTAL_SEL>,
 			<&topckgen CK_TOP_XFI_PHY_1_XTAL_SEL>,
@@ -232,7 +232,7 @@
 			<&infracfg_ao CK_INFRA_66M_SEJ_BCK>,
 			<&infracfg_ao CK_INFRA_PRE_CK_SEJ_F13M>,
 			<&infracfg_ao CK_INFRA_66M_TRNG>,
-			<&infracfg_ao CK_INFRA_26M_THERM_SYSTEM>,
+			<&system_clk>,
 			<&infracfg_ao CK_INFRA_I2C_BCK>,
 			<&infracfg_ao CK_INFRA_66M_UART0_PCK>,
 			<&infracfg_ao CK_INFRA_66M_UART1_PCK>,
@@ -312,22 +312,22 @@
 			<&system_clk>,
 			<&system_clk>,
 			<&system_clk>,
+			<&system_clk>,
-			<&ethsys CK_ETHDMA_XGP1_EN>,
-			<&ethsys CK_ETHDMA_XGP2_EN>,
-			<&ethsys CK_ETHDMA_XGP3_EN>,
-			<&ethsys CK_ETHDMA_FE_EN>,
-			<&ethsys CK_ETHDMA_GP2_EN>,
-			<&ethsys CK_ETHDMA_GP1_EN>,
-			<&ethsys CK_ETHDMA_GP3_EN>,
-			<&ethsys CK_ETHDMA_ESW_EN>,
-			<&ethsys CK_ETHDMA_CRYPT0_EN>,
+			<&system_clk>,
+			<&system_clk>,
+			<&system_clk>,
+			<&system_clk>,
+			<&system_clk>,
+			<&system_clk>,
+			<&system_clk>,
+			<&system_clk>,
 			<&ethwarp CK_ETHWARP_WOCPU2_EN>,
 			<&ethwarp CK_ETHWARP_WOCPU1_EN>,
 			<&ethwarp CK_ETHWARP_WOCPU0_EN>,
-			<&sgmiisys0 CK_SGM0_TX_EN>,
-			<&sgmiisys0 CK_SGM0_RX_EN>,
-			<&sgmiisys1 CK_SGM1_TX_EN>,
-			<&sgmiisys1 CK_SGM1_RX_EN>,
+			<&system_clk>,
+			<&system_clk>,
+			<&system_clk>,
+			<&system_clk>,
 			<&system_clk>,
 			<&system_clk>;
 
diff --git a/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7988.dtsi b/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7988.dtsi
index e097cda..28e702e 100644
--- a/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7988.dtsi
+++ b/target/linux/mediatek/files-5.4/arch/arm64/boot/dts/mediatek/mt7988.dtsi
@@ -488,7 +488,7 @@
 		compatible = "mediatek,mt7988-lvts";
 		#thermal-sensor-cells = <1>;
 		reg = <0 0x1100a000 0 0x1000>;
-		clocks = <&system_clk>;
+		clocks = <&infracfg_ao CK_INFRA_26M_THERM_SYSTEM>;
 		clock-names = "lvts_clk";
 		nvmem-cells = <&lvts_calibration>;
 		nvmem-cell-names = "e_data1";
@@ -742,24 +742,40 @@
 			     <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>,
 			     <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>,
 			     <GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>;
-		clocks = <&system_clk>,
-			 <&system_clk>,
-			 <&system_clk>,
-			 <&system_clk>,
-			 <&system_clk>,
-			 <&system_clk>,
-			 <&system_clk>,
-			 <&system_clk>,
-			 <&system_clk>,
-			 <&system_clk>,
-			 <&system_clk>,
-			 <&system_clk>,
-			 <&system_clk>;
-		clock-names = "fe", "gp2", "gp1", "wocpu1", "wocpu0",
-			      "sgmii_tx250m", "sgmii_rx250m",
-			      "sgmii_cdr_ref", "sgmii_cdr_fb",
-			      "sgmii2_tx250m", "sgmii2_rx250m",
-			      "sgmii2_cdr_ref", "sgmii2_cdr_fb";
+		clocks = <&ethsys CK_ETHDMA_XGP1_EN>,
+			 <&ethsys CK_ETHDMA_XGP2_EN>,
+			 <&ethsys CK_ETHDMA_XGP3_EN>,
+			 <&ethsys CK_ETHDMA_FE_EN>,
+			 <&ethsys CK_ETHDMA_GP2_EN>,
+			 <&ethsys CK_ETHDMA_GP1_EN>,
+			 <&ethsys CK_ETHDMA_GP3_EN>,
+			 <&ethsys CK_ETHDMA_ESW_EN>,
+			 <&ethsys CK_ETHDMA_CRYPT0_EN>,
+			 <&sgmiisys0 CK_SGM0_TX_EN>,
+			 <&sgmiisys0 CK_SGM0_RX_EN>,
+			 <&sgmiisys1 CK_SGM1_TX_EN>,
+			 <&sgmiisys1 CK_SGM1_RX_EN>,
+			 <&topckgen CK_TOP_USXGMII_SBUS_0_SEL>,
+			 <&topckgen CK_TOP_USXGMII_SBUS_1_SEL>,
+			 <&topckgen CK_TOP_SGM_0_SEL>,
+			 <&topckgen CK_TOP_SGM_1_SEL>;
+		clock-names = "xgp1", "xgp2", "xgp3", "fe", "gp2", "gp1",
+			      "gp3", "esw", "crypto", "sgmii_tx250m",
+			      "sgmii_rx250m", "sgmii2_tx250m", "sgmii2_rx250m",
+			      "usxgmii0_sel", "usxgmii1_sel",
+			      "sgm0_sel", "sgm1_sel";
+		assigned-clocks = <&topckgen CK_TOP_NETSYS_2X_SEL>,
+				  <&topckgen CK_TOP_NETSYS_GSW_SEL>,
+				  <&topckgen CK_TOP_USXGMII_SBUS_0_SEL>,
+				  <&topckgen CK_TOP_USXGMII_SBUS_1_SEL>,
+				  <&topckgen CK_TOP_SGM_0_SEL>,
+				  <&topckgen CK_TOP_SGM_1_SEL>;
+		assigned-clock-parents = <&topckgen CK_TOP_CB_NET2_800M>,
+					 <&topckgen CK_TOP_CB_NET1_D4>,
+					 <&topckgen CK_TOP_NET1_D8_D4>,
+					 <&topckgen CK_TOP_NET1_D8_D4>,
+					 <&topckgen CK_TOP_CB_SGM_325M>,
+					 <&topckgen CK_TOP_CB_SGM_325M>;
 		mediatek,ethsys = <&ethsys>;
 		mediatek,sgmiisys = <&sgmiisys0>, <&sgmiisys1>;
 		mediatek,usxgmiisys = <&usxgmiisys0>, <&usxgmiisys1>;