diff options
Diffstat (limited to 'src/mainboard/google/snow')
-rw-r--r-- | src/mainboard/google/snow/Makefile.inc | 4 | ||||
-rw-r--r-- | src/mainboard/google/snow/bootblock.c | 11 | ||||
-rw-r--r-- | src/mainboard/google/snow/romstage.c | 9 |
3 files changed, 15 insertions, 9 deletions
diff --git a/src/mainboard/google/snow/Makefile.inc b/src/mainboard/google/snow/Makefile.inc index b56a1a42cf..04bf543d40 100644 --- a/src/mainboard/google/snow/Makefile.inc +++ b/src/mainboard/google/snow/Makefile.inc @@ -17,6 +17,10 @@ ## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA ## +# needed for system_clock_init() +bootblock-y += mainboard.c +bootblock-y += memory.c + romstage-y += mainboard.c romstage-y += memory.c romstage-y += romstage.c diff --git a/src/mainboard/google/snow/bootblock.c b/src/mainboard/google/snow/bootblock.c index 18306cc51c..bcfe440379 100644 --- a/src/mainboard/google/snow/bootblock.c +++ b/src/mainboard/google/snow/bootblock.c @@ -23,14 +23,23 @@ #include <cbfs.h> #include <uart.h> #include <console/console.h> +#include <cpu/samsung/exynos5250/clk.h> +#include <cpu/samsung/exynos5250/dmc.h> #include <cpu/samsung/exynos5250/periph.h> -#include <cpu/samsung/exynos5250/pinmux.h> +#include <cpu/samsung/exynos5250/clock_init.h> #endif void bootblock_mainboard_init(void); void bootblock_mainboard_init(void) { + struct mem_timings *mem; + struct arm_clk_ratios *arm_ratios; + + mem = get_mem_timings(); + arm_ratios = get_arm_clk_ratios(); + system_clock_init(mem, arm_ratios); + #if CONFIG_EARLY_SERIAL_CONSOLE exynos_pinmux_config(PERIPH_ID_UART3, PINMUX_FLAG_NONE); uart_init(); diff --git a/src/mainboard/google/snow/romstage.c b/src/mainboard/google/snow/romstage.c index c0bb6f4be0..b8e5116b22 100644 --- a/src/mainboard/google/snow/romstage.c +++ b/src/mainboard/google/snow/romstage.c @@ -26,7 +26,6 @@ #include <cpu/samsung/exynos5250/dmc.h> #include <cpu/samsung/exynos5250/setup.h> -#include <cpu/samsung/exynos5250/clock_init.h> #include <console/console.h> #include <arch/stages.h> @@ -49,19 +48,13 @@ static int board_wakeup_permitted(void) void main(void) { struct mem_timings *mem; - struct arm_clk_ratios *arm_ratios; int ret; void *entry; - /* Clock must be initialized before console_init, otherwise you may need - * to re-initialize serial console drivers again. */ - mem = get_mem_timings(); - arm_ratios = get_arm_clk_ratios(); - system_clock_init(mem, arm_ratios); - console_init(); printk(BIOS_INFO, "hello from romstage\n"); + mem = get_mem_timings(); if (!mem) { printk(BIOS_CRIT, "Unable to auto-detect memory timings\n"); while(1); |