diff options
author | Rajendra Nayak <rnayak@ti.com> | 2009-12-08 20:47:17 -0500 |
---|---|---|
committer | paul <paul@twilight.(none)> | 2009-12-11 19:00:47 -0500 |
commit | 911bd7395c4aa4e74b13aab790ca1500c59fae02 (patch) | |
tree | 6fdca6b205015558663dcfa523f87d6c6ffa7afa /arch/arm/mach-omap2/clock44xx_data.c | |
parent | 16975a79c8e6ee424331f52649f2351d33c7b972 (diff) |
ARM: OMAP4: PM: Add init api for DPLL nodes
An api at init for all dpll nodes seem to be
needed to reparent the dpll clk node to its
bypass clk in case the dpll is in bypass.
If not done this causes sequencing issues at init
during propogate_rate.
Signed-off-by: Rajendra Nayak <rnayak@ti.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
Cc: Benoit Cousson <b-cousson@ti.com>
Diffstat (limited to 'arch/arm/mach-omap2/clock44xx_data.c')
-rw-r--r-- | arch/arm/mach-omap2/clock44xx_data.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/clock44xx_data.c b/arch/arm/mach-omap2/clock44xx_data.c index 9ae526ee0daf..2210e227d78a 100644 --- a/arch/arm/mach-omap2/clock44xx_data.c +++ b/arch/arm/mach-omap2/clock44xx_data.c | |||
@@ -278,6 +278,7 @@ static struct clk dpll_abe_ck = { | |||
278 | .name = "dpll_abe_ck", | 278 | .name = "dpll_abe_ck", |
279 | .parent = &abe_dpll_refclk_mux_ck, | 279 | .parent = &abe_dpll_refclk_mux_ck, |
280 | .dpll_data = &dpll_abe_dd, | 280 | .dpll_data = &dpll_abe_dd, |
281 | .init = &omap2_init_dpll_parent, | ||
281 | .ops = &clkops_noncore_dpll_ops, | 282 | .ops = &clkops_noncore_dpll_ops, |
282 | .recalc = &omap3_dpll_recalc, | 283 | .recalc = &omap3_dpll_recalc, |
283 | .round_rate = &omap2_dpll_round_rate, | 284 | .round_rate = &omap2_dpll_round_rate, |
@@ -439,6 +440,7 @@ static struct clk dpll_core_ck = { | |||
439 | .name = "dpll_core_ck", | 440 | .name = "dpll_core_ck", |
440 | .parent = &dpll_sys_ref_clk, | 441 | .parent = &dpll_sys_ref_clk, |
441 | .dpll_data = &dpll_core_dd, | 442 | .dpll_data = &dpll_core_dd, |
443 | .init = &omap2_init_dpll_parent, | ||
442 | .ops = &clkops_null, | 444 | .ops = &clkops_null, |
443 | .recalc = &omap3_dpll_recalc, | 445 | .recalc = &omap3_dpll_recalc, |
444 | .flags = CLOCK_IN_OMAP4430, | 446 | .flags = CLOCK_IN_OMAP4430, |
@@ -665,6 +667,7 @@ static struct clk dpll_iva_ck = { | |||
665 | .name = "dpll_iva_ck", | 667 | .name = "dpll_iva_ck", |
666 | .parent = &dpll_sys_ref_clk, | 668 | .parent = &dpll_sys_ref_clk, |
667 | .dpll_data = &dpll_iva_dd, | 669 | .dpll_data = &dpll_iva_dd, |
670 | .init = &omap2_init_dpll_parent, | ||
668 | .ops = &clkops_noncore_dpll_ops, | 671 | .ops = &clkops_noncore_dpll_ops, |
669 | .recalc = &omap3_dpll_recalc, | 672 | .recalc = &omap3_dpll_recalc, |
670 | .round_rate = &omap2_dpll_round_rate, | 673 | .round_rate = &omap2_dpll_round_rate, |
@@ -727,6 +730,7 @@ static struct clk dpll_mpu_ck = { | |||
727 | .name = "dpll_mpu_ck", | 730 | .name = "dpll_mpu_ck", |
728 | .parent = &dpll_sys_ref_clk, | 731 | .parent = &dpll_sys_ref_clk, |
729 | .dpll_data = &dpll_mpu_dd, | 732 | .dpll_data = &dpll_mpu_dd, |
733 | .init = &omap2_init_dpll_parent, | ||
730 | .ops = &clkops_noncore_dpll_ops, | 734 | .ops = &clkops_noncore_dpll_ops, |
731 | .recalc = &omap3_dpll_recalc, | 735 | .recalc = &omap3_dpll_recalc, |
732 | .round_rate = &omap2_dpll_round_rate, | 736 | .round_rate = &omap2_dpll_round_rate, |
@@ -802,6 +806,7 @@ static struct clk dpll_per_ck = { | |||
802 | .name = "dpll_per_ck", | 806 | .name = "dpll_per_ck", |
803 | .parent = &dpll_sys_ref_clk, | 807 | .parent = &dpll_sys_ref_clk, |
804 | .dpll_data = &dpll_per_dd, | 808 | .dpll_data = &dpll_per_dd, |
809 | .init = &omap2_init_dpll_parent, | ||
805 | .ops = &clkops_noncore_dpll_ops, | 810 | .ops = &clkops_noncore_dpll_ops, |
806 | .recalc = &omap3_dpll_recalc, | 811 | .recalc = &omap3_dpll_recalc, |
807 | .round_rate = &omap2_dpll_round_rate, | 812 | .round_rate = &omap2_dpll_round_rate, |
@@ -924,6 +929,7 @@ static struct clk dpll_unipro_ck = { | |||
924 | .name = "dpll_unipro_ck", | 929 | .name = "dpll_unipro_ck", |
925 | .parent = &dpll_sys_ref_clk, | 930 | .parent = &dpll_sys_ref_clk, |
926 | .dpll_data = &dpll_unipro_dd, | 931 | .dpll_data = &dpll_unipro_dd, |
932 | .init = &omap2_init_dpll_parent, | ||
927 | .ops = &clkops_noncore_dpll_ops, | 933 | .ops = &clkops_noncore_dpll_ops, |
928 | .recalc = &omap3_dpll_recalc, | 934 | .recalc = &omap3_dpll_recalc, |
929 | .round_rate = &omap2_dpll_round_rate, | 935 | .round_rate = &omap2_dpll_round_rate, |
@@ -981,6 +987,7 @@ static struct clk dpll_usb_ck = { | |||
981 | .name = "dpll_usb_ck", | 987 | .name = "dpll_usb_ck", |
982 | .parent = &dpll_sys_ref_clk, | 988 | .parent = &dpll_sys_ref_clk, |
983 | .dpll_data = &dpll_usb_dd, | 989 | .dpll_data = &dpll_usb_dd, |
990 | .init = &omap2_init_dpll_parent, | ||
984 | .ops = &clkops_noncore_dpll_ops, | 991 | .ops = &clkops_noncore_dpll_ops, |
985 | .recalc = &omap3_dpll_recalc, | 992 | .recalc = &omap3_dpll_recalc, |
986 | .round_rate = &omap2_dpll_round_rate, | 993 | .round_rate = &omap2_dpll_round_rate, |