|  | @@ -485,3 +485,156 @@ void __init omap3630_init_early(void)
 | 
	
		
			
				|  |  |  {
 | 
	
		
			
				|  |  |  	omap3_init_early();
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +void __init am35xx_init_early(void)
 | 
	
		
			
				|  |  | +{
 | 
	
		
			
				|  |  | +	omap3_init_early();
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +void __init ti81xx_init_early(void)
 | 
	
		
			
				|  |  | +{
 | 
	
		
			
				|  |  | +	omap2_set_globals_tap(OMAP343X_CLASS,
 | 
	
		
			
				|  |  | +			      OMAP2_L4_IO_ADDRESS(TI81XX_TAP_BASE));
 | 
	
		
			
				|  |  | +	omap2_set_globals_control(OMAP2_L4_IO_ADDRESS(TI81XX_CTRL_BASE),
 | 
	
		
			
				|  |  | +				  NULL);
 | 
	
		
			
				|  |  | +	omap2_set_globals_prm(OMAP2_L4_IO_ADDRESS(TI81XX_PRCM_BASE));
 | 
	
		
			
				|  |  | +	omap2_set_globals_cm(OMAP2_L4_IO_ADDRESS(TI81XX_PRCM_BASE), NULL);
 | 
	
		
			
				|  |  | +	omap3xxx_check_revision();
 | 
	
		
			
				|  |  | +	ti81xx_check_features();
 | 
	
		
			
				|  |  | +	omap3xxx_voltagedomains_init();
 | 
	
		
			
				|  |  | +	omap3xxx_powerdomains_init();
 | 
	
		
			
				|  |  | +	omap3xxx_clockdomains_init();
 | 
	
		
			
				|  |  | +	omap3xxx_hwmod_init();
 | 
	
		
			
				|  |  | +	omap_hwmod_init_postsetup();
 | 
	
		
			
				|  |  | +	omap_clk_init = omap3xxx_clk_init;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +void __init omap3_init_late(void)
 | 
	
		
			
				|  |  | +{
 | 
	
		
			
				|  |  | +	omap_mux_late_init();
 | 
	
		
			
				|  |  | +	omap2_common_pm_late_init();
 | 
	
		
			
				|  |  | +	omap3_pm_init();
 | 
	
		
			
				|  |  | +	omap2_clk_enable_autoidle_all();
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +void __init omap3430_init_late(void)
 | 
	
		
			
				|  |  | +{
 | 
	
		
			
				|  |  | +	omap_mux_late_init();
 | 
	
		
			
				|  |  | +	omap2_common_pm_late_init();
 | 
	
		
			
				|  |  | +	omap3_pm_init();
 | 
	
		
			
				|  |  | +	omap2_clk_enable_autoidle_all();
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +void __init omap35xx_init_late(void)
 | 
	
		
			
				|  |  | +{
 | 
	
		
			
				|  |  | +	omap_mux_late_init();
 | 
	
		
			
				|  |  | +	omap2_common_pm_late_init();
 | 
	
		
			
				|  |  | +	omap3_pm_init();
 | 
	
		
			
				|  |  | +	omap2_clk_enable_autoidle_all();
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +void __init omap3630_init_late(void)
 | 
	
		
			
				|  |  | +{
 | 
	
		
			
				|  |  | +	omap_mux_late_init();
 | 
	
		
			
				|  |  | +	omap2_common_pm_late_init();
 | 
	
		
			
				|  |  | +	omap3_pm_init();
 | 
	
		
			
				|  |  | +	omap2_clk_enable_autoidle_all();
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +void __init am35xx_init_late(void)
 | 
	
		
			
				|  |  | +{
 | 
	
		
			
				|  |  | +	omap_mux_late_init();
 | 
	
		
			
				|  |  | +	omap2_common_pm_late_init();
 | 
	
		
			
				|  |  | +	omap3_pm_init();
 | 
	
		
			
				|  |  | +	omap2_clk_enable_autoidle_all();
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +void __init ti81xx_init_late(void)
 | 
	
		
			
				|  |  | +{
 | 
	
		
			
				|  |  | +	omap_mux_late_init();
 | 
	
		
			
				|  |  | +	omap2_common_pm_late_init();
 | 
	
		
			
				|  |  | +	omap3_pm_init();
 | 
	
		
			
				|  |  | +	omap2_clk_enable_autoidle_all();
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +#endif
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +#ifdef CONFIG_SOC_AM33XX
 | 
	
		
			
				|  |  | +void __init am33xx_init_early(void)
 | 
	
		
			
				|  |  | +{
 | 
	
		
			
				|  |  | +	omap2_set_globals_tap(AM335X_CLASS,
 | 
	
		
			
				|  |  | +			      AM33XX_L4_WK_IO_ADDRESS(AM33XX_TAP_BASE));
 | 
	
		
			
				|  |  | +	omap2_set_globals_control(AM33XX_L4_WK_IO_ADDRESS(AM33XX_CTRL_BASE),
 | 
	
		
			
				|  |  | +				  NULL);
 | 
	
		
			
				|  |  | +	omap2_set_globals_prm(AM33XX_L4_WK_IO_ADDRESS(AM33XX_PRCM_BASE));
 | 
	
		
			
				|  |  | +	omap2_set_globals_cm(AM33XX_L4_WK_IO_ADDRESS(AM33XX_PRCM_BASE), NULL);
 | 
	
		
			
				|  |  | +	omap3xxx_check_revision();
 | 
	
		
			
				|  |  | +	ti81xx_check_features();
 | 
	
		
			
				|  |  | +	am33xx_voltagedomains_init();
 | 
	
		
			
				|  |  | +	am33xx_powerdomains_init();
 | 
	
		
			
				|  |  | +	am33xx_clockdomains_init();
 | 
	
		
			
				|  |  | +	am33xx_hwmod_init();
 | 
	
		
			
				|  |  | +	omap_hwmod_init_postsetup();
 | 
	
		
			
				|  |  | +	omap_clk_init = am33xx_clk_init;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +#endif
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +#ifdef CONFIG_ARCH_OMAP4
 | 
	
		
			
				|  |  | +void __init omap4430_init_early(void)
 | 
	
		
			
				|  |  | +{
 | 
	
		
			
				|  |  | +	omap2_set_globals_tap(OMAP443X_CLASS,
 | 
	
		
			
				|  |  | +			      OMAP2_L4_IO_ADDRESS(OMAP443X_SCM_BASE));
 | 
	
		
			
				|  |  | +	omap2_set_globals_control(OMAP2_L4_IO_ADDRESS(OMAP443X_SCM_BASE),
 | 
	
		
			
				|  |  | +				  OMAP2_L4_IO_ADDRESS(OMAP443X_CTRL_BASE));
 | 
	
		
			
				|  |  | +	omap2_set_globals_prm(OMAP2_L4_IO_ADDRESS(OMAP4430_PRM_BASE));
 | 
	
		
			
				|  |  | +	omap2_set_globals_cm(OMAP2_L4_IO_ADDRESS(OMAP4430_CM_BASE),
 | 
	
		
			
				|  |  | +			     OMAP2_L4_IO_ADDRESS(OMAP4430_CM2_BASE));
 | 
	
		
			
				|  |  | +	omap2_set_globals_prcm_mpu(OMAP2_L4_IO_ADDRESS(OMAP4430_PRCM_MPU_BASE));
 | 
	
		
			
				|  |  | +	omap_prm_base_init();
 | 
	
		
			
				|  |  | +	omap_cm_base_init();
 | 
	
		
			
				|  |  | +	omap4xxx_check_revision();
 | 
	
		
			
				|  |  | +	omap4xxx_check_features();
 | 
	
		
			
				|  |  | +	omap44xx_prm_init();
 | 
	
		
			
				|  |  | +	omap44xx_voltagedomains_init();
 | 
	
		
			
				|  |  | +	omap44xx_powerdomains_init();
 | 
	
		
			
				|  |  | +	omap44xx_clockdomains_init();
 | 
	
		
			
				|  |  | +	omap44xx_hwmod_init();
 | 
	
		
			
				|  |  | +	omap_hwmod_init_postsetup();
 | 
	
		
			
				|  |  | +	omap_clk_init = omap4xxx_clk_init;
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +void __init omap4430_init_late(void)
 | 
	
		
			
				|  |  | +{
 | 
	
		
			
				|  |  | +	omap_mux_late_init();
 | 
	
		
			
				|  |  | +	omap2_common_pm_late_init();
 | 
	
		
			
				|  |  | +	omap4_pm_init();
 | 
	
		
			
				|  |  | +	omap2_clk_enable_autoidle_all();
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +#endif
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +#ifdef CONFIG_SOC_OMAP5
 | 
	
		
			
				|  |  | +void __init omap5_init_early(void)
 | 
	
		
			
				|  |  | +{
 | 
	
		
			
				|  |  | +	omap2_set_globals_tap(OMAP54XX_CLASS,
 | 
	
		
			
				|  |  | +			      OMAP2_L4_IO_ADDRESS(OMAP54XX_SCM_BASE));
 | 
	
		
			
				|  |  | +	omap2_set_globals_control(OMAP2_L4_IO_ADDRESS(OMAP54XX_SCM_BASE),
 | 
	
		
			
				|  |  | +				  OMAP2_L4_IO_ADDRESS(OMAP54XX_CTRL_BASE));
 | 
	
		
			
				|  |  | +	omap2_set_globals_prm(OMAP2_L4_IO_ADDRESS(OMAP54XX_PRM_BASE));
 | 
	
		
			
				|  |  | +	omap2_set_globals_cm(OMAP2_L4_IO_ADDRESS(OMAP54XX_CM_CORE_AON_BASE),
 | 
	
		
			
				|  |  | +			     OMAP2_L4_IO_ADDRESS(OMAP54XX_CM_CORE_BASE));
 | 
	
		
			
				|  |  | +	omap2_set_globals_prcm_mpu(OMAP2_L4_IO_ADDRESS(OMAP54XX_PRCM_MPU_BASE));
 | 
	
		
			
				|  |  | +	omap_prm_base_init();
 | 
	
		
			
				|  |  | +	omap_cm_base_init();
 | 
	
		
			
				|  |  | +	omap5xxx_check_revision();
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  | +#endif
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +void __init omap_sdrc_init(struct omap_sdrc_params *sdrc_cs0,
 | 
	
		
			
				|  |  | +				      struct omap_sdrc_params *sdrc_cs1)
 | 
	
		
			
				|  |  | +{
 | 
	
		
			
				|  |  | +	omap_sram_init();
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +	if (cpu_is_omap24xx() || omap3_has_sdrc()) {
 | 
	
		
			
				|  |  | +		omap2_sdrc_init(sdrc_cs0, sdrc_cs1);
 | 
	
		
			
				|  |  | +		_omap2_init_reprogram_sdrc();
 | 
	
		
			
				|  |  | +	}
 | 
	
		
			
				|  |  | +}
 |