diff options
| author | Tony Lindgren <tony@atomide.com> | 2014-04-18 19:46:53 -0400 |
|---|---|---|
| committer | Tony Lindgren <tony@atomide.com> | 2014-04-18 19:46:53 -0400 |
| commit | be2fa17a568e0b3b6dc5c46d30d5eafdad3a1f77 (patch) | |
| tree | 5d6310f2ee8e7ba70d95350a0a8f2d620c4bf429 | |
| parent | cdd705dddc57960f74c67e5a5935e326527f94c6 (diff) | |
| parent | 3d36ad7e7a9be0d130c862727a052ed279046437 (diff) | |
Merge tag 'for-v3.15-rc/omap-fixes-a' of git://git.kernel.org/pub/scm/linux/kernel/git/pjw/omap-pending into omap-for-v3.15/fixes
OMAP hwmod and clock fixes for v3.15-rc
A few OMAP hwmod and clock fixes for v3.15-rc. Probably the most useful
fix is the AM43xx DPLL patch.
Basic build, boot, and PM test results are here:
http://www.pwsan.com/omap/testlogs/prcm-fixes-a-v3.15-rc/20140411130021/
| -rw-r--r-- | arch/arm/mach-omap2/clkt_dpll.c | 4 | ||||
| -rw-r--r-- | arch/arm/mach-omap2/omap_hwmod.c | 3 | ||||
| -rw-r--r-- | arch/arm/mach-omap2/omap_hwmod_3xxx_data.c | 4 |
3 files changed, 6 insertions, 5 deletions
diff --git a/arch/arm/mach-omap2/clkt_dpll.c b/arch/arm/mach-omap2/clkt_dpll.c index 2649ce445845..332af927f4d3 100644 --- a/arch/arm/mach-omap2/clkt_dpll.c +++ b/arch/arm/mach-omap2/clkt_dpll.c | |||
| @@ -209,7 +209,7 @@ u8 omap2_init_dpll_parent(struct clk_hw *hw) | |||
| 209 | if (v == OMAP3XXX_EN_DPLL_LPBYPASS || | 209 | if (v == OMAP3XXX_EN_DPLL_LPBYPASS || |
| 210 | v == OMAP3XXX_EN_DPLL_FRBYPASS) | 210 | v == OMAP3XXX_EN_DPLL_FRBYPASS) |
| 211 | return 1; | 211 | return 1; |
| 212 | } else if (soc_is_am33xx() || cpu_is_omap44xx()) { | 212 | } else if (soc_is_am33xx() || cpu_is_omap44xx() || soc_is_am43xx()) { |
| 213 | if (v == OMAP4XXX_EN_DPLL_LPBYPASS || | 213 | if (v == OMAP4XXX_EN_DPLL_LPBYPASS || |
| 214 | v == OMAP4XXX_EN_DPLL_FRBYPASS || | 214 | v == OMAP4XXX_EN_DPLL_FRBYPASS || |
| 215 | v == OMAP4XXX_EN_DPLL_MNBYPASS) | 215 | v == OMAP4XXX_EN_DPLL_MNBYPASS) |
| @@ -255,7 +255,7 @@ unsigned long omap2_get_dpll_rate(struct clk_hw_omap *clk) | |||
| 255 | if (v == OMAP3XXX_EN_DPLL_LPBYPASS || | 255 | if (v == OMAP3XXX_EN_DPLL_LPBYPASS || |
| 256 | v == OMAP3XXX_EN_DPLL_FRBYPASS) | 256 | v == OMAP3XXX_EN_DPLL_FRBYPASS) |
| 257 | return __clk_get_rate(dd->clk_bypass); | 257 | return __clk_get_rate(dd->clk_bypass); |
| 258 | } else if (soc_is_am33xx() || cpu_is_omap44xx()) { | 258 | } else if (soc_is_am33xx() || cpu_is_omap44xx() || soc_is_am43xx()) { |
| 259 | if (v == OMAP4XXX_EN_DPLL_LPBYPASS || | 259 | if (v == OMAP4XXX_EN_DPLL_LPBYPASS || |
| 260 | v == OMAP4XXX_EN_DPLL_FRBYPASS || | 260 | v == OMAP4XXX_EN_DPLL_FRBYPASS || |
| 261 | v == OMAP4XXX_EN_DPLL_MNBYPASS) | 261 | v == OMAP4XXX_EN_DPLL_MNBYPASS) |
diff --git a/arch/arm/mach-omap2/omap_hwmod.c b/arch/arm/mach-omap2/omap_hwmod.c index 1f33f5db10d5..66c60fe1104c 100644 --- a/arch/arm/mach-omap2/omap_hwmod.c +++ b/arch/arm/mach-omap2/omap_hwmod.c | |||
| @@ -2546,11 +2546,12 @@ static int __init _init(struct omap_hwmod *oh, void *data) | |||
| 2546 | return -EINVAL; | 2546 | return -EINVAL; |
| 2547 | } | 2547 | } |
| 2548 | 2548 | ||
| 2549 | if (np) | 2549 | if (np) { |
| 2550 | if (of_find_property(np, "ti,no-reset-on-init", NULL)) | 2550 | if (of_find_property(np, "ti,no-reset-on-init", NULL)) |
| 2551 | oh->flags |= HWMOD_INIT_NO_RESET; | 2551 | oh->flags |= HWMOD_INIT_NO_RESET; |
| 2552 | if (of_find_property(np, "ti,no-idle-on-init", NULL)) | 2552 | if (of_find_property(np, "ti,no-idle-on-init", NULL)) |
| 2553 | oh->flags |= HWMOD_INIT_NO_IDLE; | 2553 | oh->flags |= HWMOD_INIT_NO_IDLE; |
| 2554 | } | ||
| 2554 | 2555 | ||
| 2555 | oh->_state = _HWMOD_STATE_INITIALIZED; | 2556 | oh->_state = _HWMOD_STATE_INITIALIZED; |
| 2556 | 2557 | ||
diff --git a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c index a123ff0070bd..71ac7d5f3385 100644 --- a/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_3xxx_data.c | |||
| @@ -1964,7 +1964,7 @@ static struct omap_hwmod_irq_info omap3xxx_usb_host_hs_irqs[] = { | |||
| 1964 | static struct omap_hwmod omap3xxx_usb_host_hs_hwmod = { | 1964 | static struct omap_hwmod omap3xxx_usb_host_hs_hwmod = { |
| 1965 | .name = "usb_host_hs", | 1965 | .name = "usb_host_hs", |
| 1966 | .class = &omap3xxx_usb_host_hs_hwmod_class, | 1966 | .class = &omap3xxx_usb_host_hs_hwmod_class, |
| 1967 | .clkdm_name = "l3_init_clkdm", | 1967 | .clkdm_name = "usbhost_clkdm", |
| 1968 | .mpu_irqs = omap3xxx_usb_host_hs_irqs, | 1968 | .mpu_irqs = omap3xxx_usb_host_hs_irqs, |
| 1969 | .main_clk = "usbhost_48m_fck", | 1969 | .main_clk = "usbhost_48m_fck", |
| 1970 | .prcm = { | 1970 | .prcm = { |
| @@ -2047,7 +2047,7 @@ static struct omap_hwmod_irq_info omap3xxx_usb_tll_hs_irqs[] = { | |||
| 2047 | static struct omap_hwmod omap3xxx_usb_tll_hs_hwmod = { | 2047 | static struct omap_hwmod omap3xxx_usb_tll_hs_hwmod = { |
| 2048 | .name = "usb_tll_hs", | 2048 | .name = "usb_tll_hs", |
| 2049 | .class = &omap3xxx_usb_tll_hs_hwmod_class, | 2049 | .class = &omap3xxx_usb_tll_hs_hwmod_class, |
| 2050 | .clkdm_name = "l3_init_clkdm", | 2050 | .clkdm_name = "core_l4_clkdm", |
| 2051 | .mpu_irqs = omap3xxx_usb_tll_hs_irqs, | 2051 | .mpu_irqs = omap3xxx_usb_tll_hs_irqs, |
| 2052 | .main_clk = "usbtll_fck", | 2052 | .main_clk = "usbtll_fck", |
| 2053 | .prcm = { | 2053 | .prcm = { |
