aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/io.c
diff options
context:
space:
mode:
authorPaul Walmsley <paul@pwsan.com>2012-10-29 22:56:29 -0400
committerPaul Walmsley <paul@pwsan.com>2012-11-08 14:33:08 -0500
commitc4ceedcb18cf7a06059482a3a1828b9aad9f78cf (patch)
treee9b5e9bb75aa84ea70159fa68e103a69518a1eee /arch/arm/mach-omap2/io.c
parentb6ffa05091978c68e94d2802200f2aaa06a598d9 (diff)
ARM: OMAP2+: CM/clock: convert _omap2_module_wait_ready() to use SoC-independent CM functions
Convert the OMAP clock code's _omap2_module_wait_ready() to use SoC-independent CM functions that are provided by the CM code, rather than using a deprecated function from mach-omap2/prcm.c. This facilitates the future conversion of the CM code to a driver, and also removes a mach-omap2/prcm.c user. mach-omap2/prcm.c will be removed by a subsequent patch. Some modules have IDLEST registers that aren't in the CM module, such as the AM3517 IDLEST bits. So we also need a fallback function for these non-CM odd cases. Create a temporary one in mach-omap2/clock.c, intended to exist until the SCM drivers are ready. Signed-off-by: Paul Walmsley <paul@pwsan.com> Tested-by: Vaibhav Hiremath <hvaibhav@ti.com>
Diffstat (limited to 'arch/arm/mach-omap2/io.c')
-rw-r--r--arch/arm/mach-omap2/io.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/io.c b/arch/arm/mach-omap2/io.c
index a204b7055007..772dc7e05c88 100644
--- a/arch/arm/mach-omap2/io.c
+++ b/arch/arm/mach-omap2/io.c
@@ -45,6 +45,8 @@
45#include "sdrc.h" 45#include "sdrc.h"
46#include "control.h" 46#include "control.h"
47#include "serial.h" 47#include "serial.h"
48#include "cm2xxx.h"
49#include "cm3xxx.h"
48 50
49/* 51/*
50 * The machine specific code may provide the extra mapping besides the 52 * The machine specific code may provide the extra mapping besides the
@@ -388,6 +390,7 @@ void __init omap2420_init_early(void)
388 OMAP2_L4_IO_ADDRESS(OMAP2420_CM_BASE), 390 OMAP2_L4_IO_ADDRESS(OMAP2420_CM_BASE),
389 NULL, NULL); 391 NULL, NULL);
390 omap2xxx_check_revision(); 392 omap2xxx_check_revision();
393 omap2xxx_cm_init();
391 omap_common_init_early(); 394 omap_common_init_early();
392 omap2xxx_voltagedomains_init(); 395 omap2xxx_voltagedomains_init();
393 omap242x_powerdomains_init(); 396 omap242x_powerdomains_init();
@@ -417,6 +420,7 @@ void __init omap2430_init_early(void)
417 OMAP2_L4_IO_ADDRESS(OMAP2430_CM_BASE), 420 OMAP2_L4_IO_ADDRESS(OMAP2430_CM_BASE),
418 NULL, NULL); 421 NULL, NULL);
419 omap2xxx_check_revision(); 422 omap2xxx_check_revision();
423 omap2xxx_cm_init();
420 omap_common_init_early(); 424 omap_common_init_early();
421 omap2xxx_voltagedomains_init(); 425 omap2xxx_voltagedomains_init();
422 omap243x_powerdomains_init(); 426 omap243x_powerdomains_init();
@@ -451,6 +455,7 @@ void __init omap3_init_early(void)
451 NULL, NULL); 455 NULL, NULL);
452 omap3xxx_check_revision(); 456 omap3xxx_check_revision();
453 omap3xxx_check_features(); 457 omap3xxx_check_features();
458 omap3xxx_cm_init();
454 omap_common_init_early(); 459 omap_common_init_early();
455 omap3xxx_voltagedomains_init(); 460 omap3xxx_voltagedomains_init();
456 omap3xxx_powerdomains_init(); 461 omap3xxx_powerdomains_init();