aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/clk
diff options
context:
space:
mode:
authorAndrzej Hajda <a.hajda@samsung.com>2013-04-04 00:33:22 -0400
committerKukjin Kim <kgene.kim@samsung.com>2013-04-04 02:51:15 -0400
commit1554701528479c81240076b0c9251f4544be6319 (patch)
treee28218d4f29e1907cf936153ccad677deb757fa9 /drivers/clk
parent8e1ce8393eb7c27a8aa38da3d245187ec808ba88 (diff)
clk: exynos4: Add missing CMU_TOP and ISP clocks
The patch adds missing clocks to TOP and ISP clock domains. It also adds clock gates for ISP sub-blocks. Signed-off-by: Andrzej Hajda <a.hajda@samsung.com> Signed-off-by: Tomasz Figa <t.figa@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Reviewed-by: Thomas Abraham <thomas.abraham@linaro.org> Acked-by: Mike Turquette <mturquette@linaro.org> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
Diffstat (limited to 'drivers/clk')
-rw-r--r--drivers/clk/samsung/clk-exynos4.c110
1 files changed, 107 insertions, 3 deletions
diff --git a/drivers/clk/samsung/clk-exynos4.c b/drivers/clk/samsung/clk-exynos4.c
index ddd654bc9865..7e875a462d89 100644
--- a/drivers/clk/samsung/clk-exynos4.c
+++ b/drivers/clk/samsung/clk-exynos4.c
@@ -34,6 +34,7 @@
34#define E4210_SRC_IMAGE 0xc230 34#define E4210_SRC_IMAGE 0xc230
35#define SRC_LCD0 0xc234 35#define SRC_LCD0 0xc234
36#define SRC_LCD1 0xc238 36#define SRC_LCD1 0xc238
37#define E4X12_SRC_ISP 0xc238
37#define SRC_MAUDIO 0xc23c 38#define SRC_MAUDIO 0xc23c
38#define SRC_FSYS 0xc240 39#define SRC_FSYS 0xc240
39#define SRC_PERIL0 0xc250 40#define SRC_PERIL0 0xc250
@@ -43,6 +44,7 @@
43#define SRC_MASK_TV 0xc324 44#define SRC_MASK_TV 0xc324
44#define SRC_MASK_LCD0 0xc334 45#define SRC_MASK_LCD0 0xc334
45#define SRC_MASK_LCD1 0xc338 46#define SRC_MASK_LCD1 0xc338
47#define E4X12_SRC_MASK_ISP 0xc338
46#define SRC_MASK_MAUDIO 0xc33c 48#define SRC_MASK_MAUDIO 0xc33c
47#define SRC_MASK_FSYS 0xc340 49#define SRC_MASK_FSYS 0xc340
48#define SRC_MASK_PERIL0 0xc350 50#define SRC_MASK_PERIL0 0xc350
@@ -76,6 +78,7 @@
76#define E4210_GATE_IP_IMAGE 0xc930 78#define E4210_GATE_IP_IMAGE 0xc930
77#define GATE_IP_LCD0 0xc934 79#define GATE_IP_LCD0 0xc934
78#define GATE_IP_LCD1 0xc938 80#define GATE_IP_LCD1 0xc938
81#define E4X12_GATE_IP_ISP 0xc938
79#define E4X12_GATE_IP_MAUDIO 0xc93c 82#define E4X12_GATE_IP_MAUDIO 0xc93c
80#define GATE_IP_FSYS 0xc940 83#define GATE_IP_FSYS 0xc940
81#define GATE_IP_GPS 0xc94c 84#define GATE_IP_GPS 0xc94c
@@ -87,7 +90,10 @@
87#define E4210_MPLL_CON0 0x14108 90#define E4210_MPLL_CON0 0x14108
88#define SRC_CPU 0x14200 91#define SRC_CPU 0x14200
89#define DIV_CPU0 0x14500 92#define DIV_CPU0 0x14500
93#define E4X12_DIV_ISP0 0x18300
94#define E4X12_DIV_ISP1 0x18304
90#define E4X12_GATE_ISP0 0x18800 95#define E4X12_GATE_ISP0 0x18800
96#define E4X12_GATE_ISP1 0x18804
91 97
92/* the exynos4 soc type */ 98/* the exynos4 soc type */
93enum exynos4_soc { 99enum exynos4_soc {
@@ -124,7 +130,8 @@ enum exynos4_clks {
124 sclk_sata, sclk_uart0, sclk_uart1, sclk_uart2, sclk_uart3, sclk_uart4, 130 sclk_sata, sclk_uart0, sclk_uart1, sclk_uart2, sclk_uart3, sclk_uart4,
125 sclk_audio1, sclk_audio2, sclk_spdif, sclk_spi0, sclk_spi1, sclk_spi2, 131 sclk_audio1, sclk_audio2, sclk_spdif, sclk_spi0, sclk_spi1, sclk_spi2,
126 sclk_slimbus, sclk_fimd1, sclk_mipi1, sclk_pcm1, sclk_pcm2, sclk_i2s1, 132 sclk_slimbus, sclk_fimd1, sclk_mipi1, sclk_pcm1, sclk_pcm2, sclk_i2s1,
127 sclk_i2s2, sclk_mipihsi, sclk_mfc, sclk_pcm0, sclk_g3d, 133 sclk_i2s2, sclk_mipihsi, sclk_mfc, sclk_pcm0, sclk_g3d, sclk_pwm_isp,
134 sclk_spi0_isp, sclk_spi1_isp, sclk_uart_isp,
128 135
129 /* gate clocks */ 136 /* gate clocks */
130 fimc0 = 256, fimc1, fimc2, fimc3, csis0, csis1, jpeg, smmu_fimc0, 137 fimc0 = 256, fimc1, fimc2, fimc3, csis0, csis1, jpeg, smmu_fimc0,
@@ -138,7 +145,11 @@ enum exynos4_clks {
138 spi0, spi1, spi2, i2s1, i2s2, pcm0, i2s0, pcm1, pcm2, pwm, slimbus, 145 spi0, spi1, spi2, i2s1, i2s2, pcm0, i2s0, pcm1, pcm2, pwm, slimbus,
139 spdif, ac97, modemif, chipid, sysreg, hdmi_cec, mct, wdt, rtc, keyif, 146 spdif, ac97, modemif, chipid, sysreg, hdmi_cec, mct, wdt, rtc, keyif,
140 audss, mipi_hsi, mdma2, pixelasyncm0, pixelasyncm1, fimc_lite0, 147 audss, mipi_hsi, mdma2, pixelasyncm0, pixelasyncm1, fimc_lite0,
141 fimc_lite1, ppmuispx, ppmuispmx, 148 fimc_lite1, ppmuispx, ppmuispmx, fimc_isp, fimc_drc, fimc_fd, mcuisp,
149 gicisp, smmu_isp, smmu_drc, smmu_fd, smmu_lite0, smmu_lite1, mcuctl_isp,
150 mpwm_isp, i2c0_isp, i2c1_isp, mtcadc_isp, pwm_isp, wdt_isp, uart_isp,
151 asyncaxim, smmu_ispcx, spi0_isp, spi1_isp, pwm_isp_sclk, spi0_isp_sclk,
152 spi1_isp_sclk, uart_isp_sclk,
142 153
143 /* mux clocks */ 154 /* mux clocks */
144 mout_fimc0 = 384, mout_fimc1, mout_fimc2, mout_fimc3, mout_cam0, 155 mout_fimc0 = 384, mout_fimc1, mout_fimc2, mout_fimc3, mout_cam0,
@@ -234,6 +245,8 @@ PNAME(mout_hdmi_p) = { "sclk_pixel", "sclk_hdmiphy", };
234PNAME(mout_jpeg_p) = { "mout_jpeg0", "mout_jpeg1", }; 245PNAME(mout_jpeg_p) = { "mout_jpeg0", "mout_jpeg1", };
235PNAME(mout_spdif_p) = { "sclk_audio0", "sclk_audio1", "sclk_audio2", 246PNAME(mout_spdif_p) = { "sclk_audio0", "sclk_audio1", "sclk_audio2",
236 "spdif_extclk", }; 247 "spdif_extclk", };
248PNAME(mout_onenand_p) = {"aclk133", "aclk160", };
249PNAME(mout_onenand1_p) = {"mout_onenand", "sclk_vpll", };
237 250
238/* Exynos 4210-specific parent groups */ 251/* Exynos 4210-specific parent groups */
239PNAME(sclk_vpll_p4210) = { "mout_vpllsrc", "fout_vpll", }; 252PNAME(sclk_vpll_p4210) = { "mout_vpllsrc", "fout_vpll", };
@@ -271,6 +284,9 @@ PNAME(mout_audio2_p4x12) = { "cdclk2", "none", "sclk_hdmi24m",
271 "sclk_usbphy0", "xxti", "xusbxti", 284 "sclk_usbphy0", "xxti", "xusbxti",
272 "mout_mpll_user_t", "sclk_epll", "sclk_vpll", }; 285 "mout_mpll_user_t", "sclk_epll", "sclk_vpll", };
273PNAME(aclk_p4412) = { "mout_mpll_user_t", "sclk_apll", }; 286PNAME(aclk_p4412) = { "mout_mpll_user_t", "sclk_apll", };
287PNAME(mout_user_aclk400_mcuisp_p4x12) = {"fin_pll", "div_aclk400_mcuisp", };
288PNAME(mout_user_aclk200_p4x12) = {"fin_pll", "div_aclk200", };
289PNAME(mout_user_aclk266_gps_p4x12) = {"fin_pll", "div_aclk266_gps", };
274 290
275/* fixed rate clocks generated outside the soc */ 291/* fixed rate clocks generated outside the soc */
276struct samsung_fixed_rate_clock exynos4_fixed_rate_ext_clks[] __initdata = { 292struct samsung_fixed_rate_clock exynos4_fixed_rate_ext_clks[] __initdata = {
@@ -301,7 +317,9 @@ struct samsung_mux_clock exynos4_mux_clks[] __initdata = {
301 MUX_F(mout_g3d, "mout_g3d", mout_g3d_p, SRC_G3D, 8, 1, 317 MUX_F(mout_g3d, "mout_g3d", mout_g3d_p, SRC_G3D, 8, 1,
302 CLK_SET_RATE_PARENT, 0), 318 CLK_SET_RATE_PARENT, 0),
303 MUX(none, "mout_spdif", mout_spdif_p, SRC_PERIL1, 8, 2), 319 MUX(none, "mout_spdif", mout_spdif_p, SRC_PERIL1, 8, 2),
320 MUX(none, "mout_onenand1", mout_onenand1_p, SRC_TOP0, 0, 1),
304 MUX_A(sclk_epll, "sclk_epll", mout_epll_p, SRC_TOP0, 4, 1, "sclk_epll"), 321 MUX_A(sclk_epll, "sclk_epll", mout_epll_p, SRC_TOP0, 4, 1, "sclk_epll"),
322 MUX(none, "mout_onenand", mout_onenand_p, SRC_TOP0, 28, 1),
305}; 323};
306 324
307/* list of mux clocks supported in exynos4210 soc */ 325/* list of mux clocks supported in exynos4210 soc */
@@ -358,8 +376,15 @@ struct samsung_mux_clock exynos4210_mux_clks[] __initdata = {
358struct samsung_mux_clock exynos4x12_mux_clks[] __initdata = { 376struct samsung_mux_clock exynos4x12_mux_clks[] __initdata = {
359 MUX(mout_mpll_user_c, "mout_mpll_user_c", mout_mpll_user_p4x12, 377 MUX(mout_mpll_user_c, "mout_mpll_user_c", mout_mpll_user_p4x12,
360 SRC_CPU, 24, 1), 378 SRC_CPU, 24, 1),
379 MUX(none, "mout_aclk266_gps", aclk_p4412, SRC_TOP1, 4, 1),
380 MUX(none, "mout_aclk400_mcuisp", aclk_p4412, SRC_TOP1, 8, 1),
361 MUX(mout_mpll_user_t, "mout_mpll_user_t", mout_mpll_user_p4x12, 381 MUX(mout_mpll_user_t, "mout_mpll_user_t", mout_mpll_user_p4x12,
362 SRC_TOP1, 12, 1), 382 SRC_TOP1, 12, 1),
383 MUX(none, "mout_user_aclk266_gps", mout_user_aclk266_gps_p4x12,
384 SRC_TOP1, 16, 1),
385 MUX(aclk200, "aclk200", mout_user_aclk200_p4x12, SRC_TOP1, 20, 1),
386 MUX(none, "aclk400_mcuisp", mout_user_aclk400_mcuisp_p4x12,
387 SRC_TOP1, 24, 1),
363 MUX(none, "mout_aclk200", aclk_p4412, SRC_TOP0, 12, 1), 388 MUX(none, "mout_aclk200", aclk_p4412, SRC_TOP0, 12, 1),
364 MUX(none, "mout_aclk100", aclk_p4412, SRC_TOP0, 16, 1), 389 MUX(none, "mout_aclk100", aclk_p4412, SRC_TOP0, 16, 1),
365 MUX(none, "mout_aclk160", aclk_p4412, SRC_TOP0, 20, 1), 390 MUX(none, "mout_aclk160", aclk_p4412, SRC_TOP0, 20, 1),
@@ -405,6 +430,10 @@ struct samsung_mux_clock exynos4x12_mux_clks[] __initdata = {
405 MUX(none, "mout_spi0", group1_p4x12, SRC_PERIL1, 16, 4), 430 MUX(none, "mout_spi0", group1_p4x12, SRC_PERIL1, 16, 4),
406 MUX(none, "mout_spi1", group1_p4x12, SRC_PERIL1, 20, 4), 431 MUX(none, "mout_spi1", group1_p4x12, SRC_PERIL1, 20, 4),
407 MUX(none, "mout_spi2", group1_p4x12, SRC_PERIL1, 24, 4), 432 MUX(none, "mout_spi2", group1_p4x12, SRC_PERIL1, 24, 4),
433 MUX(none, "mout_pwm_isp", group1_p4x12, E4X12_SRC_ISP, 0, 4),
434 MUX(none, "mout_spi0_isp", group1_p4x12, E4X12_SRC_ISP, 4, 4),
435 MUX(none, "mout_spi1_isp", group1_p4x12, E4X12_SRC_ISP, 8, 4),
436 MUX(none, "mout_uart_isp", group1_p4x12, E4X12_SRC_ISP, 12, 4),
408}; 437};
409 438
410/* list of divider clocks supported in all exynos4 soc's */ 439/* list of divider clocks supported in all exynos4 soc's */
@@ -431,10 +460,10 @@ struct samsung_div_clock exynos4_div_clks[] __initdata = {
431 DIV(none, "div_mmc2", "mout_mmc2", DIV_FSYS2, 0, 4), 460 DIV(none, "div_mmc2", "mout_mmc2", DIV_FSYS2, 0, 4),
432 DIV(none, "div_mmc3", "mout_mmc3", DIV_FSYS2, 16, 4), 461 DIV(none, "div_mmc3", "mout_mmc3", DIV_FSYS2, 16, 4),
433 DIV(sclk_pixel, "sclk_pixel", "sclk_vpll", DIV_TV, 0, 4), 462 DIV(sclk_pixel, "sclk_pixel", "sclk_vpll", DIV_TV, 0, 4),
434 DIV(aclk200, "aclk200", "mout_aclk200", DIV_TOP, 0, 3),
435 DIV(aclk100, "aclk100", "mout_aclk100", DIV_TOP, 4, 4), 463 DIV(aclk100, "aclk100", "mout_aclk100", DIV_TOP, 4, 4),
436 DIV(aclk160, "aclk160", "mout_aclk160", DIV_TOP, 8, 3), 464 DIV(aclk160, "aclk160", "mout_aclk160", DIV_TOP, 8, 3),
437 DIV(aclk133, "aclk133", "mout_aclk133", DIV_TOP, 12, 3), 465 DIV(aclk133, "aclk133", "mout_aclk133", DIV_TOP, 12, 3),
466 DIV(none, "div_onenand", "mout_onenand1", DIV_TOP, 16, 3),
438 DIV(sclk_slimbus, "sclk_slimbus", "sclk_epll", DIV_PERIL3, 4, 4), 467 DIV(sclk_slimbus, "sclk_slimbus", "sclk_epll", DIV_PERIL3, 4, 4),
439 DIV(sclk_pcm1, "sclk_pcm1", "sclk_audio1", DIV_PERIL4, 4, 8), 468 DIV(sclk_pcm1, "sclk_pcm1", "sclk_audio1", DIV_PERIL4, 4, 8),
440 DIV(sclk_pcm2, "sclk_pcm2", "sclk_audio2", DIV_PERIL4, 20, 8), 469 DIV(sclk_pcm2, "sclk_pcm2", "sclk_audio2", DIV_PERIL4, 20, 8),
@@ -472,6 +501,7 @@ struct samsung_div_clock exynos4_div_clks[] __initdata = {
472 501
473/* list of divider clocks supported in exynos4210 soc */ 502/* list of divider clocks supported in exynos4210 soc */
474struct samsung_div_clock exynos4210_div_clks[] __initdata = { 503struct samsung_div_clock exynos4210_div_clks[] __initdata = {
504 DIV(aclk200, "aclk200", "mout_aclk200", DIV_TOP, 0, 3),
475 DIV(none, "div_g2d", "mout_g2d", DIV_IMAGE, 0, 4), 505 DIV(none, "div_g2d", "mout_g2d", DIV_IMAGE, 0, 4),
476 DIV(none, "div_fimd1", "mout_fimd1", E4210_DIV_LCD1, 0, 4), 506 DIV(none, "div_fimd1", "mout_fimd1", E4210_DIV_LCD1, 0, 4),
477 DIV(none, "div_mipi1", "mout_mipi1", E4210_DIV_LCD1, 16, 4), 507 DIV(none, "div_mipi1", "mout_mipi1", E4210_DIV_LCD1, 16, 4),
@@ -487,6 +517,20 @@ struct samsung_div_clock exynos4x12_div_clks[] __initdata = {
487 DIV(none, "div_mdnie_pwm_pre0", "div_mdnie_pwm0", DIV_LCD0, 12, 4), 517 DIV(none, "div_mdnie_pwm_pre0", "div_mdnie_pwm0", DIV_LCD0, 12, 4),
488 DIV(none, "div_mipihsi", "mout_mipihsi", DIV_FSYS0, 20, 4), 518 DIV(none, "div_mipihsi", "mout_mipihsi", DIV_FSYS0, 20, 4),
489 DIV(none, "div_jpeg", "mout_jpeg", E4X12_DIV_CAM1, 0, 4), 519 DIV(none, "div_jpeg", "mout_jpeg", E4X12_DIV_CAM1, 0, 4),
520 DIV(none, "div_aclk200", "mout_aclk200", DIV_TOP, 0, 3),
521 DIV(none, "div_aclk266_gps", "mout_aclk266_gps", DIV_TOP, 20, 3),
522 DIV(none, "div_aclk400_mcuisp", "mout_aclk400_mcuisp", DIV_TOP, 24, 3),
523 DIV(none, "div_pwm_isp", "mout_pwm_isp", E4X12_DIV_ISP, 0, 4),
524 DIV(none, "div_spi0_isp", "mout_spi0_isp", E4X12_DIV_ISP, 4, 4),
525 DIV(none, "div_spi0_isp_pre", "div_spi0_isp", E4X12_DIV_ISP, 8, 8),
526 DIV(none, "div_spi1_isp", "mout_spi1_isp", E4X12_DIV_ISP, 16, 4),
527 DIV(none, "div_spi1_isp_pre", "div_spi1_isp", E4X12_DIV_ISP, 20, 8),
528 DIV(none, "div_uart_isp", "mout_uart_isp", E4X12_DIV_ISP, 28, 4),
529 DIV(none, "div_isp0", "aclk200", E4X12_DIV_ISP0, 0, 3),
530 DIV(none, "div_isp1", "aclk200", E4X12_DIV_ISP0, 4, 3),
531 DIV(none, "div_mpwm", "div_isp1", E4X12_DIV_ISP1, 0, 3),
532 DIV(none, "div_mcuisp0", "aclk400_mcuisp", E4X12_DIV_ISP1, 4, 3),
533 DIV(none, "div_mcuisp1", "div_mcuisp0", E4X12_DIV_ISP1, 8, 3),
490}; 534};
491 535
492/* list of gate clocks supported in all exynos4 soc's */ 536/* list of gate clocks supported in all exynos4 soc's */
@@ -730,20 +774,80 @@ struct samsung_gate_clock exynos4x12_gate_clks[] __initdata = {
730 GATE_A(rtc, "rtc", "aclk100", E4X12_GATE_IP_PERIR, 15, 0, 0, "rtc"), 774 GATE_A(rtc, "rtc", "aclk100", E4X12_GATE_IP_PERIR, 15, 0, 0, "rtc"),
731 GATE_A(keyif, "keyif", "aclk100", 775 GATE_A(keyif, "keyif", "aclk100",
732 E4X12_GATE_IP_PERIR, 16, 0, 0, "keypad"), 776 E4X12_GATE_IP_PERIR, 16, 0, 0, "keypad"),
777 GATE(sclk_pwm_isp, "sclk_pwm_isp", "div_pwm_isp",
778 E4X12_SRC_MASK_ISP, 0, CLK_SET_RATE_PARENT, 0),
779 GATE(sclk_spi0_isp, "sclk_spi0_isp", "div_spi0_isp_pre",
780 E4X12_SRC_MASK_ISP, 4, CLK_SET_RATE_PARENT, 0),
781 GATE(sclk_spi1_isp, "sclk_spi1_isp", "div_spi1_isp_pre",
782 E4X12_SRC_MASK_ISP, 8, CLK_SET_RATE_PARENT, 0),
783 GATE(sclk_uart_isp, "sclk_uart_isp", "div_uart_isp",
784 E4X12_SRC_MASK_ISP, 12, CLK_SET_RATE_PARENT, 0),
785 GATE(pwm_isp_sclk, "pwm_isp_sclk", "sclk_pwm_isp",
786 E4X12_GATE_IP_ISP, 0, 0, 0),
787 GATE(spi0_isp_sclk, "spi0_isp_sclk", "sclk_spi0_isp",
788 E4X12_GATE_IP_ISP, 1, 0, 0),
789 GATE(spi1_isp_sclk, "spi1_isp_sclk", "sclk_spi1_isp",
790 E4X12_GATE_IP_ISP, 2, 0, 0),
791 GATE(uart_isp_sclk, "uart_isp_sclk", "sclk_uart_isp",
792 E4X12_GATE_IP_ISP, 3, 0, 0),
733 GATE_A(wdt, "watchdog", "aclk100", 793 GATE_A(wdt, "watchdog", "aclk100",
734 E4X12_GATE_IP_PERIR, 14, 0, 0, "watchdog"), 794 E4X12_GATE_IP_PERIR, 14, 0, 0, "watchdog"),
735 GATE_DA(pcm0, "samsung-pcm.0", "pcm0", "aclk100", 795 GATE_DA(pcm0, "samsung-pcm.0", "pcm0", "aclk100",
736 E4X12_GATE_IP_MAUDIO, 2, 0, 0, "pcm"), 796 E4X12_GATE_IP_MAUDIO, 2, 0, 0, "pcm"),
737 GATE_DA(i2s0, "samsung-i2s.0", "i2s0", "aclk100", 797 GATE_DA(i2s0, "samsung-i2s.0", "i2s0", "aclk100",
738 E4X12_GATE_IP_MAUDIO, 3, 0, 0, "iis"), 798 E4X12_GATE_IP_MAUDIO, 3, 0, 0, "iis"),
799 GATE(fimc_isp, "isp", "aclk200", E4X12_GATE_ISP0, 0,
800 CLK_IGNORE_UNUSED, 0),
801 GATE(fimc_drc, "drc", "aclk200", E4X12_GATE_ISP0, 1,
802 CLK_IGNORE_UNUSED, 0),
803 GATE(fimc_fd, "fd", "aclk200", E4X12_GATE_ISP0, 2,
804 CLK_IGNORE_UNUSED, 0),
739 GATE(fimc_lite0, "lite0", "aclk200", E4X12_GATE_ISP0, 3, 805 GATE(fimc_lite0, "lite0", "aclk200", E4X12_GATE_ISP0, 3,
740 CLK_IGNORE_UNUSED, 0), 806 CLK_IGNORE_UNUSED, 0),
741 GATE(fimc_lite1, "lite1", "aclk200", E4X12_GATE_ISP0, 4, 807 GATE(fimc_lite1, "lite1", "aclk200", E4X12_GATE_ISP0, 4,
742 CLK_IGNORE_UNUSED, 0), 808 CLK_IGNORE_UNUSED, 0),
809 GATE(mcuisp, "mcuisp", "aclk200", E4X12_GATE_ISP0, 5,
810 CLK_IGNORE_UNUSED, 0),
811 GATE(gicisp, "gicisp", "aclk200", E4X12_GATE_ISP0, 7,
812 CLK_IGNORE_UNUSED, 0),
813 GATE(smmu_isp, "smmu_isp", "aclk200", E4X12_GATE_ISP0, 8,
814 CLK_IGNORE_UNUSED, 0),
815 GATE(smmu_drc, "smmu_drc", "aclk200", E4X12_GATE_ISP0, 9,
816 CLK_IGNORE_UNUSED, 0),
817 GATE(smmu_fd, "smmu_fd", "aclk200", E4X12_GATE_ISP0, 10,
818 CLK_IGNORE_UNUSED, 0),
819 GATE(smmu_lite0, "smmu_lite0", "aclk200", E4X12_GATE_ISP0, 11,
820 CLK_IGNORE_UNUSED, 0),
821 GATE(smmu_lite1, "smmu_lite1", "aclk200", E4X12_GATE_ISP0, 12,
822 CLK_IGNORE_UNUSED, 0),
743 GATE(ppmuispmx, "ppmuispmx", "aclk200", E4X12_GATE_ISP0, 20, 823 GATE(ppmuispmx, "ppmuispmx", "aclk200", E4X12_GATE_ISP0, 20,
744 CLK_IGNORE_UNUSED, 0), 824 CLK_IGNORE_UNUSED, 0),
745 GATE(ppmuispx, "ppmuispx", "aclk200", E4X12_GATE_ISP0, 21, 825 GATE(ppmuispx, "ppmuispx", "aclk200", E4X12_GATE_ISP0, 21,
746 CLK_IGNORE_UNUSED, 0), 826 CLK_IGNORE_UNUSED, 0),
827 GATE(mcuctl_isp, "mcuctl_isp", "aclk200", E4X12_GATE_ISP0, 23,
828 CLK_IGNORE_UNUSED, 0),
829 GATE(mpwm_isp, "mpwm_isp", "aclk200", E4X12_GATE_ISP0, 24,
830 CLK_IGNORE_UNUSED, 0),
831 GATE(i2c0_isp, "i2c0_isp", "aclk200", E4X12_GATE_ISP0, 25,
832 CLK_IGNORE_UNUSED, 0),
833 GATE(i2c1_isp, "i2c1_isp", "aclk200", E4X12_GATE_ISP0, 26,
834 CLK_IGNORE_UNUSED, 0),
835 GATE(mtcadc_isp, "mtcadc_isp", "aclk200", E4X12_GATE_ISP0, 27,
836 CLK_IGNORE_UNUSED, 0),
837 GATE(pwm_isp, "pwm_isp", "aclk200", E4X12_GATE_ISP0, 28,
838 CLK_IGNORE_UNUSED, 0),
839 GATE(wdt_isp, "wdt_isp", "aclk200", E4X12_GATE_ISP0, 30,
840 CLK_IGNORE_UNUSED, 0),
841 GATE(uart_isp, "uart_isp", "aclk200", E4X12_GATE_ISP0, 31,
842 CLK_IGNORE_UNUSED, 0),
843 GATE(asyncaxim, "asyncaxim", "aclk200", E4X12_GATE_ISP1, 0,
844 CLK_IGNORE_UNUSED, 0),
845 GATE(smmu_ispcx, "smmu_ispcx", "aclk200", E4X12_GATE_ISP1, 4,
846 CLK_IGNORE_UNUSED, 0),
847 GATE(spi0_isp, "spi0_isp", "aclk200", E4X12_GATE_ISP1, 12,
848 CLK_IGNORE_UNUSED, 0),
849 GATE(spi1_isp, "spi1_isp", "aclk200", E4X12_GATE_ISP1, 13,
850 CLK_IGNORE_UNUSED, 0),
747}; 851};
748 852
749#ifdef CONFIG_OF 853#ifdef CONFIG_OF