[coreboot] only fallback works, and only after cmos clear...

Daniel Lindenaar daniel-coreboot at lindenaar.eu
Wed Sep 17 22:19:22 CEST 2008


Corey Osgood wrote:
> On Wed, Sep 17, 2008 at 4:08 PM, Daniel Lindenaar
> <daniel-coreboot at 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;
}






More information about the coreboot mailing list