ARM: AMx3xx: Centralize early clock initialization

This is similar to Commit 93e6253d11 ("ARM: OMAP4/5: Centralize
early clock initialization") that was done for OMAP4+, reflecting the same
for AM33xx and AM43xx SoCs to centralize clock initialization.

Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
[trini: Add setup_early_clocks that calls setup_clocks_for_console for
        ti81xx]
Signed-off-by: Tom Rini <trini@konsulko.com>
This commit is contained in:
Lokesh Vutla 2016-10-14 10:35:24 +05:30 committed by Tom Rini
parent c704a99dff
commit b64a7cb92d
5 changed files with 21 additions and 4 deletions

View File

@ -286,7 +286,7 @@ void early_system_init(void)
#endif #endif
watchdog_disable(); watchdog_disable();
set_uart_mux_conf(); set_uart_mux_conf();
setup_clocks_for_console(); setup_early_clocks();
uart_soft_reset(); uart_soft_reset();
#if defined(CONFIG_SPL_AM33XX_ENABLE_RTC32K_OSC) #if defined(CONFIG_SPL_AM33XX_ENABLE_RTC32K_OSC)
/* Enable RTC32K clock */ /* Enable RTC32K clock */

View File

@ -232,10 +232,15 @@ __weak void scale_vcores(void)
{ {
} }
void prcm_init() void setup_early_clocks(void)
{ {
setup_clocks_for_console();
enable_basic_clocks(); enable_basic_clocks();
scale_vcores();
setup_dplls();
timer_init(); timer_init();
} }
void prcm_init(void)
{
scale_vcores();
setup_dplls();
}

View File

@ -386,6 +386,12 @@ void setup_clocks_for_console(void)
while (readl(&cmalwon->uart0clkctrl) != PRCM_MOD_EN) while (readl(&cmalwon->uart0clkctrl) != PRCM_MOD_EN)
; ;
} }
void setup_early_clocks(void)
{
setup_clocks_for_console();
}
/* /*
* Configure the PLL/PRCM for necessary peripherals * Configure the PLL/PRCM for necessary peripherals
*/ */

View File

@ -429,6 +429,11 @@ void setup_clocks_for_console(void)
; ;
} }
void setup_early_clocks(void)
{
setup_clocks_for_console();
}
void prcm_init(void) void prcm_init(void)
{ {
/* Enable the control */ /* Enable the control */

View File

@ -19,6 +19,7 @@ u32 get_sysboot_value(void);
extern struct ctrl_stat *cstat; extern struct ctrl_stat *cstat;
u32 get_device_type(void); u32 get_device_type(void);
void save_omap_boot_params(void); void save_omap_boot_params(void);
void setup_early_clocks(void);
void setup_clocks_for_console(void); void setup_clocks_for_console(void);
void mpu_pll_config_val(int mpull_m); void mpu_pll_config_val(int mpull_m);
void ddr_pll_config(unsigned int ddrpll_M); void ddr_pll_config(unsigned int ddrpll_M);