Corey Osgood wrote:
On Wed, Sep 17, 2008 at 4:08 PM, Daniel Lindenaar daniel-coreboot@lindenaar.eu wrote:
Hi Guys, I've almost got coreboot v2 working on my setup. The only big problem I'm still facing is that it only works after I clear the cmos using a jumper on the motherboard. If I then boot, it works, but after rebooting it doesn't work anymore. It seems as though jumping to the 'normal' image doesn't work correctly.
Sounds familiar? Any suggestions?
Can you check and/or post your failover.c? Do you get no serial output whatsoever, or does it stop somewhere?
Thanks, Corey
No serial output whatsoever. I've copied most of my code from the mainboard/via/epia directory, including this failover.c file; see below.
regards, Daniel
failover.c: #define ASSEMBLY 1 #include <stdint.h> #include <device/pci_def.h> #include <device/pci_ids.h> #include <arch/io.h> #include "arch/romcc_io.h" #include "pc80/mc146818rtc_early.c"
static unsigned long main(unsigned long bist) { /* This is the primary cpu how should I boot? */ if (do_normal_boot()) { goto normal_image; } else { goto fallback_image; } normal_image: asm volatile ("jmp __normal_image" : /* outputs */ : "a" (bist) /* inputs */ : /* clobbers */ ); cpu_reset: asm volatile ("jmp __cpu_reset" : /* outputs */ : "a"(bist) /* inputs */ : /* clobbers */ ); fallback_image: return bist; }