@@ -90,6 +90,11 @@ static const char * const pi_pll0_sels[] = {
90
90
"clk_dummy" ,
91
91
};
92
92
93
+ static inline bool clk_on_imx8dxl (struct device_node * node )
94
+ {
95
+ return of_device_is_compatible (node , "fsl,imx8dxl-clk" );
96
+ }
97
+
93
98
static int imx8qxp_clk_probe (struct platform_device * pdev )
94
99
{
95
100
struct device_node * ccm_node = pdev -> dev .of_node ;
@@ -169,13 +174,15 @@ static int imx8qxp_clk_probe(struct platform_device *pdev)
169
174
imx_clk_mux_gpr_scu ("enet0_rgmii_txc_sel" , enet0_rgmii_txc_sels , ARRAY_SIZE (enet0_rgmii_txc_sels ), IMX_SC_R_ENET_0 , IMX_SC_C_TXCLK );
170
175
imx_clk_scu ("enet0_bypass_clk" , IMX_SC_R_ENET_0 , IMX_SC_PM_CLK_BYPASS );
171
176
imx_clk_gate_gpr_scu ("enet0_ref_50_clk" , "clk_dummy" , IMX_SC_R_ENET_0 , IMX_SC_C_DISABLE_50 , true);
172
- imx_clk_scu ("enet0_rgmii_rx_clk" , IMX_SC_R_ENET_0 , IMX_SC_PM_CLK_MISC0 );
177
+ if (!clk_on_imx8dxl (ccm_node )) {
178
+ imx_clk_scu ("enet0_rgmii_rx_clk" , IMX_SC_R_ENET_0 , IMX_SC_PM_CLK_MISC0 );
179
+ imx_clk_scu ("enet1_rgmii_rx_clk" , IMX_SC_R_ENET_1 , IMX_SC_PM_CLK_MISC0 );
180
+ }
173
181
imx_clk_scu ("enet1_root_clk" , IMX_SC_R_ENET_1 , IMX_SC_PM_CLK_PER );
174
182
imx_clk_divider_gpr_scu ("enet1_ref_div" , "enet1_root_clk" , IMX_SC_R_ENET_1 , IMX_SC_C_CLKDIV );
175
183
imx_clk_mux_gpr_scu ("enet1_rgmii_txc_sel" , enet1_rgmii_txc_sels , ARRAY_SIZE (enet1_rgmii_txc_sels ), IMX_SC_R_ENET_1 , IMX_SC_C_TXCLK );
176
184
imx_clk_scu ("enet1_bypass_clk" , IMX_SC_R_ENET_1 , IMX_SC_PM_CLK_BYPASS );
177
185
imx_clk_gate_gpr_scu ("enet1_ref_50_clk" , "clk_dummy" , IMX_SC_R_ENET_1 , IMX_SC_C_DISABLE_50 , true);
178
- imx_clk_scu ("enet1_rgmii_rx_clk" , IMX_SC_R_ENET_1 , IMX_SC_PM_CLK_MISC0 );
179
186
imx_clk_scu ("gpmi_io_clk" , IMX_SC_R_NAND , IMX_SC_PM_CLK_MST_BUS );
180
187
imx_clk_scu ("gpmi_bch_clk" , IMX_SC_R_NAND , IMX_SC_PM_CLK_PER );
181
188
imx_clk_scu ("usb3_aclk_div" , IMX_SC_R_USB_2 , IMX_SC_PM_CLK_PER );
0 commit comments