diff options
| -rw-r--r-- | arch/arm/mach-omap2/io.c | 28 |
1 files changed, 19 insertions, 9 deletions
diff --git a/arch/arm/mach-omap2/io.c b/arch/arm/mach-omap2/io.c index a1bd6affb508..25ea1b176e33 100644 --- a/arch/arm/mach-omap2/io.c +++ b/arch/arm/mach-omap2/io.c | |||
| @@ -461,7 +461,17 @@ void __init omap3_init_early(void) | |||
| 461 | omap3xxx_clockdomains_init(); | 461 | omap3xxx_clockdomains_init(); |
| 462 | omap3xxx_hwmod_init(); | 462 | omap3xxx_hwmod_init(); |
| 463 | omap_hwmod_init_postsetup(); | 463 | omap_hwmod_init_postsetup(); |
| 464 | omap_clk_soc_init = omap3xxx_clk_init; | 464 | if (!of_have_populated_dt()) { |
| 465 | omap3_prcm_legacy_iomaps_init(); | ||
| 466 | if (soc_is_am35xx()) | ||
| 467 | omap_clk_soc_init = am35xx_clk_legacy_init; | ||
| 468 | else if (cpu_is_omap3630()) | ||
| 469 | omap_clk_soc_init = omap36xx_clk_legacy_init; | ||
| 470 | else if (omap_rev() == OMAP3430_REV_ES1_0) | ||
| 471 | omap_clk_soc_init = omap3430es1_clk_legacy_init; | ||
| 472 | else | ||
| 473 | omap_clk_soc_init = omap3430_clk_legacy_init; | ||
| 474 | } | ||
| 465 | } | 475 | } |
| 466 | 476 | ||
| 467 | void __init omap3430_init_early(void) | 477 | void __init omap3430_init_early(void) |
| @@ -509,8 +519,6 @@ void __init ti81xx_init_early(void) | |||
| 509 | omap_hwmod_init_postsetup(); | 519 | omap_hwmod_init_postsetup(); |
| 510 | if (of_have_populated_dt()) | 520 | if (of_have_populated_dt()) |
| 511 | omap_clk_soc_init = ti81xx_dt_clk_init; | 521 | omap_clk_soc_init = ti81xx_dt_clk_init; |
| 512 | else | ||
| 513 | omap_clk_soc_init = omap3xxx_clk_init; | ||
| 514 | } | 522 | } |
| 515 | 523 | ||
| 516 | void __init omap3_init_late(void) | 524 | void __init omap3_init_late(void) |
| @@ -731,15 +739,17 @@ int __init omap_clk_init(void) | |||
| 731 | 739 | ||
| 732 | ti_clk_init_features(); | 740 | ti_clk_init_features(); |
| 733 | 741 | ||
| 734 | ret = of_prcm_init(); | 742 | if (of_have_populated_dt()) { |
| 735 | if (ret) | 743 | ret = of_prcm_init(); |
| 736 | return ret; | 744 | if (ret) |
| 745 | return ret; | ||
| 737 | 746 | ||
| 738 | of_clk_init(NULL); | 747 | of_clk_init(NULL); |
| 739 | 748 | ||
| 740 | ti_dt_clk_init_retry_clks(); | 749 | ti_dt_clk_init_retry_clks(); |
| 741 | 750 | ||
| 742 | ti_dt_clockdomains_setup(); | 751 | ti_dt_clockdomains_setup(); |
| 752 | } | ||
| 743 | 753 | ||
| 744 | ret = omap_clk_soc_init(); | 754 | ret = omap_clk_soc_init(); |
| 745 | 755 | ||
