@@ -426,11 +426,14 @@ CLK_OF_DECLARE(exynos850_cmu_top, "samsung,exynos850-cmu-top",
426
426
#define CLK_CON_DIV_DIV_CLK_APM_I3C 0x1808
427
427
#define CLK_CON_GAT_CLKCMU_CMGP_BUS 0x2000
428
428
#define CLK_CON_GAT_GATE_CLKCMU_CHUB_BUS 0x2014
429
+ #define CLK_CON_GAT_GOUT_APM_APBIF_GPIO_ALIVE_PCLK 0x2018
430
+ #define CLK_CON_GAT_GOUT_APM_APBIF_PMU_ALIVE_PCLK 0x2020
429
431
#define CLK_CON_GAT_GOUT_APM_APBIF_RTC_PCLK 0x2024
430
432
#define CLK_CON_GAT_GOUT_APM_APBIF_TOP_RTC_PCLK 0x2028
431
433
#define CLK_CON_GAT_GOUT_APM_I3C_APM_PMIC_I_PCLK 0x2034
432
434
#define CLK_CON_GAT_GOUT_APM_I3C_APM_PMIC_I_SCLK 0x2038
433
435
#define CLK_CON_GAT_GOUT_APM_SPEEDY_APM_PCLK 0x20bc
436
+ #define CLK_CON_GAT_GOUT_APM_SYSREG_APM_PCLK 0x20c0
434
437
435
438
static const unsigned long apm_clk_regs [] __initconst = {
436
439
PLL_CON0_MUX_CLKCMU_APM_BUS_USER ,
@@ -445,11 +448,14 @@ static const unsigned long apm_clk_regs[] __initconst = {
445
448
CLK_CON_DIV_DIV_CLK_APM_I3C ,
446
449
CLK_CON_GAT_CLKCMU_CMGP_BUS ,
447
450
CLK_CON_GAT_GATE_CLKCMU_CHUB_BUS ,
451
+ CLK_CON_GAT_GOUT_APM_APBIF_GPIO_ALIVE_PCLK ,
452
+ CLK_CON_GAT_GOUT_APM_APBIF_PMU_ALIVE_PCLK ,
448
453
CLK_CON_GAT_GOUT_APM_APBIF_RTC_PCLK ,
449
454
CLK_CON_GAT_GOUT_APM_APBIF_TOP_RTC_PCLK ,
450
455
CLK_CON_GAT_GOUT_APM_I3C_APM_PMIC_I_PCLK ,
451
456
CLK_CON_GAT_GOUT_APM_I3C_APM_PMIC_I_SCLK ,
452
457
CLK_CON_GAT_GOUT_APM_SPEEDY_APM_PCLK ,
458
+ CLK_CON_GAT_GOUT_APM_SYSREG_APM_PCLK ,
453
459
};
454
460
455
461
/* List of parent clocks for Muxes in CMU_APM */
@@ -512,6 +518,14 @@ static const struct samsung_gate_clock apm_gate_clks[] __initconst = {
512
518
CLK_CON_GAT_GOUT_APM_I3C_APM_PMIC_I_SCLK , 21 , 0 , 0 ),
513
519
GATE (CLK_GOUT_SPEEDY_PCLK , "gout_speedy_pclk" , "dout_apm_bus" ,
514
520
CLK_CON_GAT_GOUT_APM_SPEEDY_APM_PCLK , 21 , 0 , 0 ),
521
+ /* TODO: Should be enabled in GPIO driver (or made CLK_IS_CRITICAL) */
522
+ GATE (CLK_GOUT_GPIO_ALIVE_PCLK , "gout_gpio_alive_pclk" , "dout_apm_bus" ,
523
+ CLK_CON_GAT_GOUT_APM_APBIF_GPIO_ALIVE_PCLK , 21 , CLK_IGNORE_UNUSED ,
524
+ 0 ),
525
+ GATE (CLK_GOUT_PMU_ALIVE_PCLK , "gout_pmu_alive_pclk" , "dout_apm_bus" ,
526
+ CLK_CON_GAT_GOUT_APM_APBIF_PMU_ALIVE_PCLK , 21 , 0 , 0 ),
527
+ GATE (CLK_GOUT_SYSREG_APM_PCLK , "gout_sysreg_apm_pclk" , "dout_apm_bus" ,
528
+ CLK_CON_GAT_GOUT_APM_SYSREG_APM_PCLK , 21 , 0 , 0 ),
515
529
};
516
530
517
531
static const struct samsung_cmu_info apm_cmu_info __initconst = {
@@ -541,6 +555,7 @@ static const struct samsung_cmu_info apm_cmu_info __initconst = {
541
555
#define CLK_CON_GAT_GOUT_CMGP_ADC_PCLK_S0 0x200c
542
556
#define CLK_CON_GAT_GOUT_CMGP_ADC_PCLK_S1 0x2010
543
557
#define CLK_CON_GAT_GOUT_CMGP_GPIO_PCLK 0x2018
558
+ #define CLK_CON_GAT_GOUT_CMGP_SYSREG_CMGP_PCLK 0x2040
544
559
#define CLK_CON_GAT_GOUT_CMGP_USI_CMGP0_IPCLK 0x2044
545
560
#define CLK_CON_GAT_GOUT_CMGP_USI_CMGP0_PCLK 0x2048
546
561
#define CLK_CON_GAT_GOUT_CMGP_USI_CMGP1_IPCLK 0x204c
@@ -556,6 +571,7 @@ static const unsigned long cmgp_clk_regs[] __initconst = {
556
571
CLK_CON_GAT_GOUT_CMGP_ADC_PCLK_S0 ,
557
572
CLK_CON_GAT_GOUT_CMGP_ADC_PCLK_S1 ,
558
573
CLK_CON_GAT_GOUT_CMGP_GPIO_PCLK ,
574
+ CLK_CON_GAT_GOUT_CMGP_SYSREG_CMGP_PCLK ,
559
575
CLK_CON_GAT_GOUT_CMGP_USI_CMGP0_IPCLK ,
560
576
CLK_CON_GAT_GOUT_CMGP_USI_CMGP0_PCLK ,
561
577
CLK_CON_GAT_GOUT_CMGP_USI_CMGP1_IPCLK ,
@@ -610,6 +626,9 @@ static const struct samsung_gate_clock cmgp_gate_clks[] __initconst = {
610
626
GATE (CLK_GOUT_CMGP_USI1_PCLK , "gout_cmgp_usi1_pclk" ,
611
627
"gout_clkcmu_cmgp_bus" ,
612
628
CLK_CON_GAT_GOUT_CMGP_USI_CMGP1_PCLK , 21 , 0 , 0 ),
629
+ GATE (CLK_GOUT_SYSREG_CMGP_PCLK , "gout_sysreg_cmgp_pclk" ,
630
+ "gout_clkcmu_cmgp_bus" ,
631
+ CLK_CON_GAT_GOUT_CMGP_SYSREG_CMGP_PCLK , 21 , 0 , 0 ),
613
632
};
614
633
615
634
static const struct samsung_cmu_info cmgp_cmu_info __initconst = {
@@ -910,10 +929,12 @@ CLK_OF_DECLARE(exynos850_cmu_peri, "samsung,exynos850-cmu-peri",
910
929
#define CLK_CON_DIV_DIV_CLK_CORE_BUSP 0x1800
911
930
#define CLK_CON_GAT_GOUT_CORE_CCI_550_ACLK 0x2038
912
931
#define CLK_CON_GAT_GOUT_CORE_GIC_CLK 0x2040
932
+ #define CLK_CON_GAT_GOUT_CORE_GPIO_CORE_PCLK 0x2044
913
933
#define CLK_CON_GAT_GOUT_CORE_MMC_EMBD_I_ACLK 0x20e8
914
934
#define CLK_CON_GAT_GOUT_CORE_MMC_EMBD_SDCLKIN 0x20ec
915
935
#define CLK_CON_GAT_GOUT_CORE_SSS_I_ACLK 0x2128
916
936
#define CLK_CON_GAT_GOUT_CORE_SSS_I_PCLK 0x212c
937
+ #define CLK_CON_GAT_GOUT_CORE_SYSREG_CORE_PCLK 0x2130
917
938
918
939
static const unsigned long core_clk_regs [] __initconst = {
919
940
PLL_CON0_MUX_CLKCMU_CORE_BUS_USER ,
@@ -924,10 +945,12 @@ static const unsigned long core_clk_regs[] __initconst = {
924
945
CLK_CON_DIV_DIV_CLK_CORE_BUSP ,
925
946
CLK_CON_GAT_GOUT_CORE_CCI_550_ACLK ,
926
947
CLK_CON_GAT_GOUT_CORE_GIC_CLK ,
948
+ CLK_CON_GAT_GOUT_CORE_GPIO_CORE_PCLK ,
927
949
CLK_CON_GAT_GOUT_CORE_MMC_EMBD_I_ACLK ,
928
950
CLK_CON_GAT_GOUT_CORE_MMC_EMBD_SDCLKIN ,
929
951
CLK_CON_GAT_GOUT_CORE_SSS_I_ACLK ,
930
952
CLK_CON_GAT_GOUT_CORE_SSS_I_PCLK ,
953
+ CLK_CON_GAT_GOUT_CORE_SYSREG_CORE_PCLK ,
931
954
};
932
955
933
956
/* List of parent clocks for Muxes in CMU_CORE */
@@ -972,6 +995,12 @@ static const struct samsung_gate_clock core_gate_clks[] __initconst = {
972
995
CLK_CON_GAT_GOUT_CORE_SSS_I_ACLK , 21 , 0 , 0 ),
973
996
GATE (CLK_GOUT_SSS_PCLK , "gout_sss_pclk" , "dout_core_busp" ,
974
997
CLK_CON_GAT_GOUT_CORE_SSS_I_PCLK , 21 , 0 , 0 ),
998
+ /* TODO: Should be enabled in GPIO driver (or made CLK_IS_CRITICAL) */
999
+ GATE (CLK_GOUT_GPIO_CORE_PCLK , "gout_gpio_core_pclk" , "dout_core_busp" ,
1000
+ CLK_CON_GAT_GOUT_CORE_GPIO_CORE_PCLK , 21 , CLK_IGNORE_UNUSED , 0 ),
1001
+ GATE (CLK_GOUT_SYSREG_CORE_PCLK , "gout_sysreg_core_pclk" ,
1002
+ "dout_core_busp" ,
1003
+ CLK_CON_GAT_GOUT_CORE_SYSREG_CORE_PCLK , 21 , 0 , 0 ),
975
1004
};
976
1005
977
1006
static const struct samsung_cmu_info core_cmu_info __initconst = {
0 commit comments