@@ -779,6 +779,13 @@ static struct ccu_div dpu1_clk = {
779
779
},
780
780
};
781
781
782
+ static CLK_FIXED_FACTOR_HW (emmc_sdio_ref_clk , "emmc-sdio-ref" ,
783
+ & video_pll_clk .common .hw , 4 , 1 , 0 );
784
+
785
+ static const struct clk_parent_data emmc_sdio_ref_clk_pd [] = {
786
+ { .hw = & emmc_sdio_ref_clk .hw },
787
+ };
788
+
782
789
static CCU_GATE (CLK_BROM , brom_clk , "brom ", ahb2_cpusys_hclk_pd , 0x100 , BIT (4 ), 0 );
783
790
static CCU_GATE (CLK_BMU , bmu_clk , "bmu ", axi4_cpusys2_aclk_pd , 0x100 , BIT (5 ), 0 );
784
791
static CCU_GATE (CLK_AON2CPU_A2X , aon2cpu_a2x_clk , "aon2cpu-a2x" , axi4_cpusys2_aclk_pd ,
@@ -798,7 +805,7 @@ static CCU_GATE(CLK_PERISYS_APB4_HCLK, perisys_apb4_hclk, "perisys-apb4-hclk", p
798
805
0x150 , BIT (12 ), 0 );
799
806
static CCU_GATE (CLK_NPU_AXI , npu_axi_clk , "npu - axi ", axi_aclk_pd , 0x1c8 , BIT (5 ), 0 );
800
807
static CCU_GATE (CLK_CPU2VP , cpu2vp_clk , "cpu2vp ", axi_aclk_pd , 0x1e0 , BIT (13 ), 0 );
801
- static CCU_GATE (CLK_EMMC_SDIO , emmc_sdio_clk , "emmc-sdio" , video_pll_clk_pd , 0x204 , BIT (30 ), 0 );
808
+ static CCU_GATE (CLK_EMMC_SDIO , emmc_sdio_clk , "emmc-sdio" , emmc_sdio_ref_clk_pd , 0x204 , BIT (30 ), 0 );
802
809
static CCU_GATE (CLK_GMAC1 , gmac1_clk , "gmac1 ", gmac_pll_clk_pd , 0x204 , BIT (26 ), 0 );
803
810
static CCU_GATE (CLK_PADCTRL1 , padctrl1_clk , "padctrl1 ", perisys_apb_pclk_pd , 0x204 , BIT (24 ), 0 );
804
811
static CCU_GATE (CLK_DSMART , dsmart_clk , "dsmart" , perisys_apb_pclk_pd , 0x204 , BIT (23 ), 0 );
@@ -1059,6 +1066,10 @@ static int th1520_clk_probe(struct platform_device *pdev)
1059
1066
return ret ;
1060
1067
priv -> hws [CLK_PLL_GMAC_100M ] = & gmac_pll_clk_100m .hw ;
1061
1068
1069
+ ret = devm_clk_hw_register (dev , & emmc_sdio_ref_clk .hw );
1070
+ if (ret )
1071
+ return ret ;
1072
+
1062
1073
ret = devm_of_clk_add_hw_provider (dev , of_clk_hw_onecell_get , priv );
1063
1074
if (ret )
1064
1075
return ret ;
0 commit comments