From 63a293e0005eb86c76657256737a931add8acbdc Mon Sep 17 00:00:00 2001 From: Paul Walmsley Date: Wed, 21 Nov 2012 16:15:16 -0700 Subject: ARM: OMAP2+: PRM: initialize some PRM functions early Some PRM functions will need to be called by the hwmod code early in kernel init. To handle this, split the PRM initialization code into early and late phases. The early init is handled via mach-omap2/io.c, while the late init is handled by subsys_initcall(). Signed-off-by: Paul Walmsley --- arch/arm/mach-omap2/io.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'arch/arm/mach-omap2/io.c') diff --git a/arch/arm/mach-omap2/io.c b/arch/arm/mach-omap2/io.c index 924bf24693cd..007dc4d85d54 100644 --- a/arch/arm/mach-omap2/io.c +++ b/arch/arm/mach-omap2/io.c @@ -51,6 +51,10 @@ #include "prcm_mpu44xx.h" #include "prminst44xx.h" #include "cminst44xx.h" +#include "prm2xxx.h" +#include "prm3xxx.h" +#include "prm44xx.h" + /* * The machine specific code may provide the extra mapping besides the * default mapping provided here. @@ -392,6 +396,7 @@ void __init omap2420_init_early(void) omap2_set_globals_prm(OMAP2_L4_IO_ADDRESS(OMAP2420_PRM_BASE)); omap2_set_globals_cm(OMAP2_L4_IO_ADDRESS(OMAP2420_CM_BASE), NULL); omap2xxx_check_revision(); + omap2xxx_prm_init(); omap2xxx_cm_init(); omap_common_init_early(); omap2xxx_voltagedomains_init(); @@ -422,6 +427,7 @@ void __init omap2430_init_early(void) omap2_set_globals_prm(OMAP2_L4_IO_ADDRESS(OMAP2430_PRM_BASE)); omap2_set_globals_cm(OMAP2_L4_IO_ADDRESS(OMAP2430_CM_BASE), NULL); omap2xxx_check_revision(); + omap2xxx_prm_init(); omap2xxx_cm_init(); omap_common_init_early(); omap2xxx_voltagedomains_init(); @@ -457,6 +463,7 @@ void __init omap3_init_early(void) omap2_set_globals_cm(OMAP2_L4_IO_ADDRESS(OMAP3430_CM_BASE), NULL); omap3xxx_check_revision(); omap3xxx_check_features(); + omap3xxx_prm_init(); omap3xxx_cm_init(); omap_common_init_early(); omap3xxx_voltagedomains_init(); @@ -591,6 +598,7 @@ void __init omap4430_init_early(void) omap_cm_base_init(); omap4xxx_check_revision(); omap4xxx_check_features(); + omap44xx_prm_init(); omap_common_init_early(); omap44xx_voltagedomains_init(); omap44xx_powerdomains_init(); -- cgit v1.2.3