diff options
author | Ionela Voinescu <ionela.voinescu@imgtec.com> | 2015-03-09 15:31:38 +0000 |
---|---|---|
committer | Patrick Georgi <pgeorgi@google.com> | 2015-04-22 08:50:10 +0200 |
commit | 2fdc61af6eea14450054cb0135bb6ad3f6a14831 (patch) | |
tree | 9dbc282650196fff5230d2bc89b931fed5cbf3a1 /src/arch | |
parent | 97ab4250e778d195eba8874f3e9bcbdc830f4dbc (diff) |
google/urara: use board ID information to set up hardware
The hardware initialization is now split in basic
initialization (MIPS and system PLL, system clock,
SPIM, UART), and initialization of other hardware
blocks (USB, I2C, ETH). The second part uses board ID
information to select setup that is board specific
(currently only I2C interface is selected through
board ID).
BRANCH=none
BUG=chrome-os-partner:37593
TEST=tested on bring up board for both Urara and Concerto;
to simulate the use of Concerto (I2C3) DIP SW17 was
set to 0.
it works with default settings on Urara
Change-Id: Ic5bbf28ab42545a4fb2aa6fd30592a02ecc15cb5
Signed-off-by: Patrick Georgi <pgeorgi@chromium.org>
Original-Commit-Id: f2b3db2e7f9fa898214f974ca34ea427196d2e4e
Original-Change-Id: Iac9a082ad84444af1d9d9785a2d0cc3205140d15
Original-Signed-off-by: Ionela Voinescu <ionela.voinescu@imgtec.com>
Original-Reviewed-on: https://chromium-review.googlesource.com/257401
Original-Reviewed-by: Vadim Bendebury <vbendeb@chromium.org>
Original-Commit-Queue: Vadim Bendebury <vbendeb@chromium.org>
Reviewed-on: http://review.coreboot.org/9888
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Diffstat (limited to 'src/arch')
-rw-r--r-- | src/arch/mips/bootblock_simple.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/arch/mips/bootblock_simple.c b/src/arch/mips/bootblock_simple.c index 64bbae23a4..85f9336e34 100644 --- a/src/arch/mips/bootblock_simple.c +++ b/src/arch/mips/bootblock_simple.c @@ -21,11 +21,14 @@ #include <bootblock_common.h> #include <console/console.h> +#include <halt.h> #include <program_loading.h> void main(void) { bootblock_cpu_init(); + + /* Mainboard basic init */ bootblock_mainboard_init(); #if CONFIG_BOOTBLOCK_CONSOLE @@ -34,5 +37,10 @@ void main(void) bootblock_mmu_init(); - run_romstage(); + if (init_extra_hardware()) { + printk(BIOS_ERR, "bootblock_simple: failed to init HW.\n"); + } else { + run_romstage(); + } + halt(); } |