diff options
author | Chanwoo Choi <cw00.choi@samsung.com> | 2015-02-02 19:13:51 -0500 |
---|---|---|
committer | Sylwester Nawrocki <s.nawrocki@samsung.com> | 2015-02-05 13:30:57 -0500 |
commit | b274bbfd8b4a94cb5bd6fe21801264a27dd8ec75 (patch) | |
tree | 7e19aa9e3e7e77605c6ef692c1f6ce1f475f1db4 | |
parent | 6c5d76d15ab6da9b30af020a44e071eb5145e1a0 (diff) |
clk: samsung: exynos5433: Add clocks for CMU_MSCL domain
This patch adds the mux/divider/gate clocks for CMU_MSCL domain which
generates the clocks for M2M (Memory to Memory) scaler, JPEG IPs.
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Acked-by: Inki Dae <inki.dae@samsung.com>
Reviewed-by: Pankaj Dubey <pankaj.dubey@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
-rw-r--r-- | Documentation/devicetree/bindings/clock/exynos5433-clock.txt | 20 | ||||
-rw-r--r-- | drivers/clk/samsung/clk-exynos5433.c | 185 | ||||
-rw-r--r-- | include/dt-bindings/clock/exynos5433.h | 41 |
3 files changed, 245 insertions, 1 deletions
diff --git a/Documentation/devicetree/bindings/clock/exynos5433-clock.txt b/Documentation/devicetree/bindings/clock/exynos5433-clock.txt index 7c1dccc4d72e..ecb9534c2ea6 100644 --- a/Documentation/devicetree/bindings/clock/exynos5433-clock.txt +++ b/Documentation/devicetree/bindings/clock/exynos5433-clock.txt | |||
@@ -37,6 +37,8 @@ Required Properties: | |||
37 | - "samsung,exynos5433-cmu-atlas" - clock controller compatible for CMU_ATLAS | 37 | - "samsung,exynos5433-cmu-atlas" - clock controller compatible for CMU_ATLAS |
38 | which generates clocks for Cortex-A57 Quad-core processor, CoreSight and | 38 | which generates clocks for Cortex-A57 Quad-core processor, CoreSight and |
39 | L2 cache controller. | 39 | L2 cache controller. |
40 | - "samsung,exynos5433-cmu-mscl" - clock controller compatible for CMU_MSCL | ||
41 | which generates clocks for M2M (Memory to Memory) scaler and JPEG IPs. | ||
40 | 42 | ||
41 | - reg: physical base address of the controller and length of memory mapped | 43 | - reg: physical base address of the controller and length of memory mapped |
42 | region. | 44 | region. |
@@ -118,6 +120,11 @@ Required Properties: | |||
118 | - oscclk | 120 | - oscclk |
119 | - sclk_bus_pll_atlas | 121 | - sclk_bus_pll_atlas |
120 | 122 | ||
123 | Input clocks for mscl clock controller: | ||
124 | - oscclk | ||
125 | - sclk_jpeg_mscl | ||
126 | - aclk_mscl_400 | ||
127 | |||
121 | Each clock is assigned an identifier and client nodes can use this identifier | 128 | Each clock is assigned an identifier and client nodes can use this identifier |
122 | to specify the clock which they consume. | 129 | to specify the clock which they consume. |
123 | 130 | ||
@@ -320,6 +327,19 @@ Example 2: Examples of clock controller nodes are listed below. | |||
320 | clocks = <&xxti>, <&cmu_mif CLK_SCLK_BUS_PLL_ATLAS>; | 327 | clocks = <&xxti>, <&cmu_mif CLK_SCLK_BUS_PLL_ATLAS>; |
321 | }; | 328 | }; |
322 | 329 | ||
330 | cmu_mscl: clock-controller@105d0000 { | ||
331 | compatible = "samsung,exynos5433-cmu-mscl"; | ||
332 | reg = <0x105d0000 0x0b10>; | ||
333 | #clock-cells = <1>; | ||
334 | |||
335 | clock-names = "oscclk", | ||
336 | "sclk_jpeg_mscl", | ||
337 | "aclk_mscl_400"; | ||
338 | clocks = <&xxti>, | ||
339 | <&cmu_top CLK_SCLK_JPEG_MSCL>, | ||
340 | <&cmu_top CLK_ACLK_MSCL_400>; | ||
341 | }; | ||
342 | |||
323 | Example 3: UART controller node that consumes the clock generated by the clock | 343 | Example 3: UART controller node that consumes the clock generated by the clock |
324 | controller. | 344 | controller. |
325 | 345 | ||
diff --git a/drivers/clk/samsung/clk-exynos5433.c b/drivers/clk/samsung/clk-exynos5433.c index c44062d2904e..d272e42eb48c 100644 --- a/drivers/clk/samsung/clk-exynos5433.c +++ b/drivers/clk/samsung/clk-exynos5433.c | |||
@@ -419,6 +419,8 @@ static struct samsung_div_clock top_div_clks[] __initdata = { | |||
419 | DIV_TOP1, 0, 3), | 419 | DIV_TOP1, 0, 3), |
420 | 420 | ||
421 | /* DIV_TOP2 */ | 421 | /* DIV_TOP2 */ |
422 | DIV(CLK_DIV_ACLK_MSCL_400, "div_aclk_mscl_400", "mout_aclk_mscl_400_b", | ||
423 | DIV_TOP2, 4, 3), | ||
422 | DIV(CLK_DIV_ACLK_FSYS_200, "div_aclk_fsys_200", "mout_bus_pll_user", | 424 | DIV(CLK_DIV_ACLK_FSYS_200, "div_aclk_fsys_200", "mout_bus_pll_user", |
423 | DIV_TOP2, 0, 3), | 425 | DIV_TOP2, 0, 3), |
424 | 426 | ||
@@ -446,6 +448,10 @@ static struct samsung_div_clock top_div_clks[] __initdata = { | |||
446 | DIV(CLK_DIV_ACLK_BUS1_400, "div_aclk_bus1_400", "mout_bus_pll_user", | 448 | DIV(CLK_DIV_ACLK_BUS1_400, "div_aclk_bus1_400", "mout_bus_pll_user", |
447 | DIV_TOP4, 0, 3), | 449 | DIV_TOP4, 0, 3), |
448 | 450 | ||
451 | /* DIV_TOP_MSCL */ | ||
452 | DIV(CLK_DIV_SCLK_JPEG, "div_sclk_jpeg", "mout_sclk_jpeg_c", | ||
453 | DIV_TOP_MSCL, 0, 4), | ||
454 | |||
449 | /* DIV_TOP_FSYS0 */ | 455 | /* DIV_TOP_FSYS0 */ |
450 | DIV(CLK_DIV_SCLK_MMC1_B, "div_sclk_mmc1_b", "div_sclk_mmc1_a", | 456 | DIV(CLK_DIV_SCLK_MMC1_B, "div_sclk_mmc1_b", "div_sclk_mmc1_a", |
451 | DIV_TOP_FSYS0, 16, 8), | 457 | DIV_TOP_FSYS0, 16, 8), |
@@ -542,6 +548,9 @@ static struct samsung_gate_clock top_gate_clks[] __initdata = { | |||
542 | GATE(CLK_ACLK_PERIS_66, "aclk_peris_66", "div_aclk_peris_66_b", | 548 | GATE(CLK_ACLK_PERIS_66, "aclk_peris_66", "div_aclk_peris_66_b", |
543 | ENABLE_ACLK_TOP, 21, | 549 | ENABLE_ACLK_TOP, 21, |
544 | CLK_SET_RATE_PARENT | CLK_IGNORE_UNUSED, 0), | 550 | CLK_SET_RATE_PARENT | CLK_IGNORE_UNUSED, 0), |
551 | GATE(CLK_ACLK_MSCL_400, "aclk_mscl_400", "div_aclk_mscl_400", | ||
552 | ENABLE_ACLK_TOP, 19, | ||
553 | CLK_SET_RATE_PARENT | CLK_IGNORE_UNUSED, 0), | ||
545 | GATE(CLK_ACLK_FSYS_200, "aclk_fsys_200", "div_aclk_fsys_200", | 554 | GATE(CLK_ACLK_FSYS_200, "aclk_fsys_200", "div_aclk_fsys_200", |
546 | ENABLE_ACLK_TOP, 18, | 555 | ENABLE_ACLK_TOP, 18, |
547 | CLK_SET_RATE_PARENT | CLK_IGNORE_UNUSED, 0), | 556 | CLK_SET_RATE_PARENT | CLK_IGNORE_UNUSED, 0), |
@@ -558,6 +567,10 @@ static struct samsung_gate_clock top_gate_clks[] __initdata = { | |||
558 | ENABLE_ACLK_TOP, 0, | 567 | ENABLE_ACLK_TOP, 0, |
559 | CLK_SET_RATE_PARENT | CLK_IGNORE_UNUSED, 0), | 568 | CLK_SET_RATE_PARENT | CLK_IGNORE_UNUSED, 0), |
560 | 569 | ||
570 | /* ENABLE_SCLK_TOP_MSCL */ | ||
571 | GATE(CLK_SCLK_JPEG_MSCL, "sclk_jpeg_mscl", "div_sclk_jpeg", | ||
572 | ENABLE_SCLK_TOP_MSCL, 0, 0, 0), | ||
573 | |||
561 | /* ENABLE_SCLK_TOP_FSYS */ | 574 | /* ENABLE_SCLK_TOP_FSYS */ |
562 | GATE(CLK_SCLK_PCIE_100_FSYS, "sclk_pcie_100_fsys", "div_sclk_pcie_100", | 575 | GATE(CLK_SCLK_PCIE_100_FSYS, "sclk_pcie_100_fsys", "div_sclk_pcie_100", |
563 | ENABLE_SCLK_TOP_FSYS, 7, 0, 0), | 576 | ENABLE_SCLK_TOP_FSYS, 7, 0, 0), |
@@ -3805,3 +3818,175 @@ static void __init exynos5433_cmu_atlas_init(struct device_node *np) | |||
3805 | } | 3818 | } |
3806 | CLK_OF_DECLARE(exynos5433_cmu_atlas, "samsung,exynos5433-cmu-atlas", | 3819 | CLK_OF_DECLARE(exynos5433_cmu_atlas, "samsung,exynos5433-cmu-atlas", |
3807 | exynos5433_cmu_atlas_init); | 3820 | exynos5433_cmu_atlas_init); |
3821 | |||
3822 | /* | ||
3823 | * Register offset definitions for CMU_MSCL | ||
3824 | */ | ||
3825 | #define MUX_SEL_MSCL0 0x0200 | ||
3826 | #define MUX_SEL_MSCL1 0x0204 | ||
3827 | #define MUX_ENABLE_MSCL0 0x0300 | ||
3828 | #define MUX_ENABLE_MSCL1 0x0304 | ||
3829 | #define MUX_STAT_MSCL0 0x0400 | ||
3830 | #define MUX_STAT_MSCL1 0x0404 | ||
3831 | #define DIV_MSCL 0x0600 | ||
3832 | #define DIV_STAT_MSCL 0x0700 | ||
3833 | #define ENABLE_ACLK_MSCL 0x0800 | ||
3834 | #define ENABLE_ACLK_MSCL_SECURE_SMMU_M2MSCALER0 0x0804 | ||
3835 | #define ENABLE_ACLK_MSCL_SECURE_SMMU_M2MSCALER1 0x0808 | ||
3836 | #define ENABLE_ACLK_MSCL_SECURE_SMMU_JPEG 0x080c | ||
3837 | #define ENABLE_PCLK_MSCL 0x0900 | ||
3838 | #define ENABLE_PCLK_MSCL_SECURE_SMMU_M2MSCALER0 0x0904 | ||
3839 | #define ENABLE_PCLK_MSCL_SECURE_SMMU_M2MSCALER1 0x0908 | ||
3840 | #define ENABLE_PCLK_MSCL_SECURE_SMMU_JPEG 0x000c | ||
3841 | #define ENABLE_SCLK_MSCL 0x0a00 | ||
3842 | #define ENABLE_IP_MSCL0 0x0b00 | ||
3843 | #define ENABLE_IP_MSCL1 0x0b04 | ||
3844 | #define ENABLE_IP_MSCL_SECURE_SMMU_M2MSCALER0 0x0b08 | ||
3845 | #define ENABLE_IP_MSCL_SECURE_SMMU_M2MSCALER1 0x0b0c | ||
3846 | #define ENABLE_IP_MSCL_SECURE_SMMU_JPEG 0x0b10 | ||
3847 | |||
3848 | static unsigned long mscl_clk_regs[] __initdata = { | ||
3849 | MUX_SEL_MSCL0, | ||
3850 | MUX_SEL_MSCL1, | ||
3851 | MUX_ENABLE_MSCL0, | ||
3852 | MUX_ENABLE_MSCL1, | ||
3853 | MUX_STAT_MSCL0, | ||
3854 | MUX_STAT_MSCL1, | ||
3855 | DIV_MSCL, | ||
3856 | DIV_STAT_MSCL, | ||
3857 | ENABLE_ACLK_MSCL, | ||
3858 | ENABLE_ACLK_MSCL_SECURE_SMMU_M2MSCALER0, | ||
3859 | ENABLE_ACLK_MSCL_SECURE_SMMU_M2MSCALER1, | ||
3860 | ENABLE_ACLK_MSCL_SECURE_SMMU_JPEG, | ||
3861 | ENABLE_PCLK_MSCL, | ||
3862 | ENABLE_PCLK_MSCL_SECURE_SMMU_M2MSCALER0, | ||
3863 | ENABLE_PCLK_MSCL_SECURE_SMMU_M2MSCALER1, | ||
3864 | ENABLE_PCLK_MSCL_SECURE_SMMU_JPEG, | ||
3865 | ENABLE_SCLK_MSCL, | ||
3866 | ENABLE_IP_MSCL0, | ||
3867 | ENABLE_IP_MSCL1, | ||
3868 | ENABLE_IP_MSCL_SECURE_SMMU_M2MSCALER0, | ||
3869 | ENABLE_IP_MSCL_SECURE_SMMU_M2MSCALER1, | ||
3870 | ENABLE_IP_MSCL_SECURE_SMMU_JPEG, | ||
3871 | }; | ||
3872 | |||
3873 | /* list of all parent clock list */ | ||
3874 | PNAME(mout_sclk_jpeg_user_p) = { "oscclk", "sclk_jpeg_mscl", }; | ||
3875 | PNAME(mout_aclk_mscl_400_user_p) = { "oscclk", "aclk_mscl_400", }; | ||
3876 | PNAME(mout_sclk_jpeg_p) = { "mout_sclk_jpeg_user", | ||
3877 | "mout_aclk_mscl_400_user", }; | ||
3878 | |||
3879 | static struct samsung_mux_clock mscl_mux_clks[] __initdata = { | ||
3880 | /* MUX_SEL_MSCL0 */ | ||
3881 | MUX(CLK_MOUT_SCLK_JPEG_USER, "mout_sclk_jpeg_user", | ||
3882 | mout_sclk_jpeg_user_p, MUX_SEL_MSCL0, 4, 1), | ||
3883 | MUX(CLK_MOUT_ACLK_MSCL_400_USER, "mout_aclk_mscl_400_user", | ||
3884 | mout_aclk_mscl_400_user_p, MUX_SEL_MSCL0, 0, 1), | ||
3885 | |||
3886 | /* MUX_SEL_MSCL1 */ | ||
3887 | MUX(CLK_MOUT_SCLK_JPEG, "mout_sclk_jpeg", mout_sclk_jpeg_p, | ||
3888 | MUX_SEL_MSCL1, 0, 1), | ||
3889 | }; | ||
3890 | |||
3891 | static struct samsung_div_clock mscl_div_clks[] __initdata = { | ||
3892 | /* DIV_MSCL */ | ||
3893 | DIV(CLK_DIV_PCLK_MSCL, "div_pclk_mscl", "mout_aclk_mscl_400_user", | ||
3894 | DIV_MSCL, 0, 3), | ||
3895 | }; | ||
3896 | |||
3897 | static struct samsung_gate_clock mscl_gate_clks[] __initdata = { | ||
3898 | /* ENABLE_ACLK_MSCL */ | ||
3899 | GATE(CLK_ACLK_BTS_JPEG, "aclk_bts_jpeg", "mout_aclk_mscl_400_user", | ||
3900 | ENABLE_ACLK_MSCL, 9, 0, 0), | ||
3901 | GATE(CLK_ACLK_BTS_M2MSCALER1, "aclk_bts_m2mscaler1", | ||
3902 | "mout_aclk_mscl_400_user", ENABLE_ACLK_MSCL, 8, 0, 0), | ||
3903 | GATE(CLK_ACLK_BTS_M2MSCALER0, "aclk_bts_m2mscaler0", | ||
3904 | "mout_aclk_mscl_400_user", ENABLE_ACLK_MSCL, 7, 0, 0), | ||
3905 | GATE(CLK_ACLK_AHB2APB_MSCL0P, "aclk_abh2apb_mscl0p", "div_pclk_mscl", | ||
3906 | ENABLE_ACLK_MSCL, 6, CLK_IGNORE_UNUSED, 0), | ||
3907 | GATE(CLK_ACLK_XIU_MSCLX, "aclk_xiu_msclx", "mout_aclk_mscl_400_user", | ||
3908 | ENABLE_ACLK_MSCL, 5, CLK_IGNORE_UNUSED, 0), | ||
3909 | GATE(CLK_ACLK_MSCLNP_100, "aclk_msclnp_100", "div_pclk_mscl", | ||
3910 | ENABLE_ACLK_MSCL, 4, CLK_IGNORE_UNUSED, 0), | ||
3911 | GATE(CLK_ACLK_MSCLND_400, "aclk_msclnd_400", "mout_aclk_mscl_400_user", | ||
3912 | ENABLE_ACLK_MSCL, 3, CLK_IGNORE_UNUSED, 0), | ||
3913 | GATE(CLK_ACLK_JPEG, "aclk_jpeg", "mout_aclk_mscl_400_user", | ||
3914 | ENABLE_ACLK_MSCL, 2, 0, 0), | ||
3915 | GATE(CLK_ACLK_M2MSCALER1, "aclk_m2mscaler1", "mout_aclk_mscl_400_user", | ||
3916 | ENABLE_ACLK_MSCL, 1, 0, 0), | ||
3917 | GATE(CLK_ACLK_M2MSCALER0, "aclk_m2mscaler0", "mout_aclk_mscl_400_user", | ||
3918 | ENABLE_ACLK_MSCL, 0, 0, 0), | ||
3919 | |||
3920 | /* ENABLE_ACLK_MSCL_SECURE_SMMU_M2MSCALER0 */ | ||
3921 | GATE(CLK_ACLK_SMMU_M2MSCALER0, "aclk_smmu_m2mscaler0", | ||
3922 | "mout_aclk_mscl_400_user", | ||
3923 | ENABLE_ACLK_MSCL_SECURE_SMMU_M2MSCALER0, | ||
3924 | 0, CLK_IGNORE_UNUSED, 0), | ||
3925 | |||
3926 | /* ENABLE_ACLK_MSCL_SECURE_SMMU_M2MSCALER1 */ | ||
3927 | GATE(CLK_ACLK_SMMU_M2MSCALER1, "aclk_smmu_m2mscaler1", | ||
3928 | "mout_aclk_mscl_400_user", | ||
3929 | ENABLE_ACLK_MSCL_SECURE_SMMU_M2MSCALER1, | ||
3930 | 0, CLK_IGNORE_UNUSED, 0), | ||
3931 | |||
3932 | /* ENABLE_ACLK_MSCL_SECURE_SMMU_JPEG */ | ||
3933 | GATE(CLK_ACLK_SMMU_JPEG, "aclk_smmu_jpeg", "mout_aclk_mscl_400_user", | ||
3934 | ENABLE_ACLK_MSCL_SECURE_SMMU_JPEG, | ||
3935 | 0, CLK_IGNORE_UNUSED, 0), | ||
3936 | |||
3937 | /* ENABLE_PCLK_MSCL */ | ||
3938 | GATE(CLK_PCLK_BTS_JPEG, "pclk_bts_jpeg", "div_pclk_mscl", | ||
3939 | ENABLE_PCLK_MSCL, 7, 0, 0), | ||
3940 | GATE(CLK_PCLK_BTS_M2MSCALER1, "pclk_bts_m2mscaler1", "div_pclk_mscl", | ||
3941 | ENABLE_PCLK_MSCL, 6, 0, 0), | ||
3942 | GATE(CLK_PCLK_BTS_M2MSCALER0, "pclk_bts_m2mscaler0", "div_pclk_mscl", | ||
3943 | ENABLE_PCLK_MSCL, 5, 0, 0), | ||
3944 | GATE(CLK_PCLK_PMU_MSCL, "pclk_pmu_mscl", "div_pclk_mscl", | ||
3945 | ENABLE_PCLK_MSCL, 4, CLK_IGNORE_UNUSED, 0), | ||
3946 | GATE(CLK_PCLK_SYSREG_MSCL, "pclk_sysreg_mscl", "div_pclk_mscl", | ||
3947 | ENABLE_PCLK_MSCL, 3, CLK_IGNORE_UNUSED, 0), | ||
3948 | GATE(CLK_PCLK_JPEG, "pclk_jpeg", "div_pclk_mscl", | ||
3949 | ENABLE_PCLK_MSCL, 2, 0, 0), | ||
3950 | GATE(CLK_PCLK_M2MSCALER1, "pclk_m2mscaler1", "div_pclk_mscl", | ||
3951 | ENABLE_PCLK_MSCL, 1, 0, 0), | ||
3952 | GATE(CLK_PCLK_M2MSCALER0, "pclk_m2mscaler0", "div_pclk_mscl", | ||
3953 | ENABLE_PCLK_MSCL, 0, 0, 0), | ||
3954 | |||
3955 | /* ENABLE_PCLK_MSCL_SECURE_SMMU_M2MSCALER0 */ | ||
3956 | GATE(CLK_PCLK_SMMU_M2MSCALER0, "pclk_smmu_m2mscaler0", "div_pclk_mscl", | ||
3957 | ENABLE_PCLK_MSCL_SECURE_SMMU_M2MSCALER0, | ||
3958 | 0, CLK_IGNORE_UNUSED, 0), | ||
3959 | |||
3960 | /* ENABLE_PCLK_MSCL_SECURE_SMMU_M2MSCALER1 */ | ||
3961 | GATE(CLK_PCLK_SMMU_M2MSCALER1, "pclk_smmu_m2mscaler1", "div_pclk_mscl", | ||
3962 | ENABLE_PCLK_MSCL_SECURE_SMMU_M2MSCALER1, | ||
3963 | 0, CLK_IGNORE_UNUSED, 0), | ||
3964 | |||
3965 | /* ENABLE_PCLK_MSCL_SECURE_SMMU_JPEG */ | ||
3966 | GATE(CLK_PCLK_SMMU_JPEG, "pclk_smmu_jpeg", "div_pclk_mscl", | ||
3967 | ENABLE_PCLK_MSCL_SECURE_SMMU_JPEG, | ||
3968 | 0, CLK_IGNORE_UNUSED, 0), | ||
3969 | |||
3970 | /* ENABLE_SCLK_MSCL */ | ||
3971 | GATE(CLK_SCLK_JPEG, "sclk_jpeg", "mout_sclk_jpeg", ENABLE_SCLK_MSCL, 0, | ||
3972 | CLK_IGNORE_UNUSED | CLK_SET_RATE_PARENT, 0), | ||
3973 | }; | ||
3974 | |||
3975 | static struct samsung_cmu_info mscl_cmu_info __initdata = { | ||
3976 | .mux_clks = mscl_mux_clks, | ||
3977 | .nr_mux_clks = ARRAY_SIZE(mscl_mux_clks), | ||
3978 | .div_clks = mscl_div_clks, | ||
3979 | .nr_div_clks = ARRAY_SIZE(mscl_div_clks), | ||
3980 | .gate_clks = mscl_gate_clks, | ||
3981 | .nr_gate_clks = ARRAY_SIZE(mscl_gate_clks), | ||
3982 | .nr_clk_ids = MSCL_NR_CLK, | ||
3983 | .clk_regs = mscl_clk_regs, | ||
3984 | .nr_clk_regs = ARRAY_SIZE(mscl_clk_regs), | ||
3985 | }; | ||
3986 | |||
3987 | static void __init exynos5433_cmu_mscl_init(struct device_node *np) | ||
3988 | { | ||
3989 | samsung_cmu_register_one(np, &mscl_cmu_info); | ||
3990 | } | ||
3991 | CLK_OF_DECLARE(exynos5433_cmu_mscl, "samsung,exynos5433-cmu-mscl", | ||
3992 | exynos5433_cmu_mscl_init); | ||
diff --git a/include/dt-bindings/clock/exynos5433.h b/include/dt-bindings/clock/exynos5433.h index cdc91f7e6ec8..9898390710e6 100644 --- a/include/dt-bindings/clock/exynos5433.h +++ b/include/dt-bindings/clock/exynos5433.h | |||
@@ -114,6 +114,8 @@ | |||
114 | #define CLK_DIV_SCLK_USBHOST30 141 | 114 | #define CLK_DIV_SCLK_USBHOST30 141 |
115 | #define CLK_DIV_SCLK_UFSUNIPRO 142 | 115 | #define CLK_DIV_SCLK_UFSUNIPRO 142 |
116 | #define CLK_DIV_SCLK_USBDRD30 143 | 116 | #define CLK_DIV_SCLK_USBDRD30 143 |
117 | #define CLK_DIV_SCLK_JPEG 144 | ||
118 | #define CLK_DIV_ACLK_MSCL_400 145 | ||
117 | 119 | ||
118 | #define CLK_ACLK_PERIC_66 200 | 120 | #define CLK_ACLK_PERIC_66 200 |
119 | #define CLK_ACLK_PERIS_66 201 | 121 | #define CLK_ACLK_PERIS_66 201 |
@@ -149,8 +151,10 @@ | |||
149 | #define CLK_SCLK_USBDRD30_FSYS 231 | 151 | #define CLK_SCLK_USBDRD30_FSYS 231 |
150 | #define CLK_ACLK_GSCL_111 232 | 152 | #define CLK_ACLK_GSCL_111 232 |
151 | #define CLK_ACLK_GSCL_333 233 | 153 | #define CLK_ACLK_GSCL_333 233 |
154 | #define CLK_SCLK_JPEG_MSCL 234 | ||
155 | #define CLK_ACLK_MSCL_400 235 | ||
152 | 156 | ||
153 | #define TOP_NR_CLK 234 | 157 | #define TOP_NR_CLK 236 |
154 | 158 | ||
155 | /* CMU_CPIF */ | 159 | /* CMU_CPIF */ |
156 | #define CLK_FOUT_MPHY_PLL 1 | 160 | #define CLK_FOUT_MPHY_PLL 1 |
@@ -937,4 +941,39 @@ | |||
937 | 941 | ||
938 | #define ATLAS_NR_CLK 40 | 942 | #define ATLAS_NR_CLK 40 |
939 | 943 | ||
944 | /* CMU_MSCL */ | ||
945 | #define CLK_MOUT_SCLK_JPEG_USER 1 | ||
946 | #define CLK_MOUT_ACLK_MSCL_400_USER 2 | ||
947 | #define CLK_MOUT_SCLK_JPEG 3 | ||
948 | |||
949 | #define CLK_DIV_PCLK_MSCL 4 | ||
950 | |||
951 | #define CLK_ACLK_BTS_JPEG 5 | ||
952 | #define CLK_ACLK_BTS_M2MSCALER1 6 | ||
953 | #define CLK_ACLK_BTS_M2MSCALER0 7 | ||
954 | #define CLK_ACLK_AHB2APB_MSCL0P 8 | ||
955 | #define CLK_ACLK_XIU_MSCLX 9 | ||
956 | #define CLK_ACLK_MSCLNP_100 10 | ||
957 | #define CLK_ACLK_MSCLND_400 11 | ||
958 | #define CLK_ACLK_JPEG 12 | ||
959 | #define CLK_ACLK_M2MSCALER1 13 | ||
960 | #define CLK_ACLK_M2MSCALER0 14 | ||
961 | #define CLK_ACLK_SMMU_M2MSCALER0 15 | ||
962 | #define CLK_ACLK_SMMU_M2MSCALER1 16 | ||
963 | #define CLK_ACLK_SMMU_JPEG 17 | ||
964 | #define CLK_PCLK_BTS_JPEG 18 | ||
965 | #define CLK_PCLK_BTS_M2MSCALER1 19 | ||
966 | #define CLK_PCLK_BTS_M2MSCALER0 20 | ||
967 | #define CLK_PCLK_PMU_MSCL 21 | ||
968 | #define CLK_PCLK_SYSREG_MSCL 22 | ||
969 | #define CLK_PCLK_JPEG 23 | ||
970 | #define CLK_PCLK_M2MSCALER1 24 | ||
971 | #define CLK_PCLK_M2MSCALER0 25 | ||
972 | #define CLK_PCLK_SMMU_M2MSCALER0 26 | ||
973 | #define CLK_PCLK_SMMU_M2MSCALER1 27 | ||
974 | #define CLK_PCLK_SMMU_JPEG 28 | ||
975 | #define CLK_SCLK_JPEG 29 | ||
976 | |||
977 | #define MSCL_NR_CLK 30 | ||
978 | |||
940 | #endif /* _DT_BINDINGS_CLOCK_EXYNOS5433_H */ | 979 | #endif /* _DT_BINDINGS_CLOCK_EXYNOS5433_H */ |