[coreboot] Problems with VIA EPIA-ME6000

Uwe Hermann uwe at hermann-uwe.de
Tue Mar 4 17:28:12 CET 2008


On Tue, Mar 04, 2008 at 05:10:40PM +0100, Klaus Stammermann wrote:
> Here the diff:
> -----------------------------------------------------------------------------------------------------------------------------------
> Index: src/mainboard/via/epia-m/Options.lb
> ===================================================================
> --- src/mainboard/via/epia-m/Options.lb	(Revision 3086)
> +++ src/mainboard/via/epia-m/Options.lb	(Arbeitskopie)
> @@ -51,8 +51,8 @@
>  ###
>  ### Build options
>  ###
> -default CONFIG_PCI_ROM_RUN=0
> -default CONFIG_CONSOLE_VGA=0
> +default CONFIG_PCI_ROM_RUN=1
> +default CONFIG_CONSOLE_VGA=1

Looks ok.

  
>  ##
>  ## Build code for the fallback boot
> Index: targets/via/epia-m/Config.lb
> ===================================================================
> --- targets/via/epia-m/Config.lb	(Revision 3086)
> +++ targets/via/epia-m/Config.lb	(Arbeitskopie)
> @@ -7,21 +7,21 @@
>  option  DEFAULT_CONSOLE_LOGLEVEL=8
>  option  CONFIG_CONSOLE_SERIAL8250=1
>  
> -option ROM_SIZE=256*1024
> +option ROM_SIZE=(256*1024)-(64*1024)

OK, assuming you have a 256KB ROM chip and your VGA BIOS is 64KB.

  
>  option HAVE_OPTION_TABLE=1
>  option CONFIG_ROM_PAYLOAD=1
>  option HAVE_FALLBACK_BOOT=1
>  #option CONFIG_COMPRESSED_PAYLOAD_NRV2B=1
> -option CONFIG_COMPRESSED_PAYLOAD_NRV2B=0
> +#option CONFIG_COMPRESSED_PAYLOAD_NRV2B=0

Why?


>  ### Compute the location and size of where this firmware image
>  ### (coreboot plus bootloader) will live in the boot rom chip.
>  ###
> -option FALLBACK_SIZE=131072
> +option FALLBACK_SIZE=(96*1024)

Not sure about this. I'd rather not change it unless really necessary
(it isn't in this case, I think).


>  ## Coreboot C code runs at this location in RAM
>  option _RAMBASE=0x00004000
> @@ -31,18 +31,22 @@
>  #
>  romimage "normal"
>  	option USE_FALLBACK_IMAGE=0
> -#option ROM_IMAGE_SIZE=128*1024
> -	option ROM_IMAGE_SIZE=64*1024
> +#	option ROM_IMAGE_SIZE=(128*1024)-27312
> +	option ROM_IMAGE_SIZE=(96*1024)-27312

This is wrong.

ROM_IMAGE_SIZE is the maximum size the coreboot code can use (without
payload, without VGA ROM, etc).

Something like 64*1024 is usually ok.


> +#	option ROM_IMAGE_SIZE=0xc000
> +#	option ROM_SECTION_OFFSET=0x10000
> +#	option ROM_SECTION_SIZE=0x18000
>  	option COREBOOT_EXTRA_VERSION=".0-Normal"
> -	payload $(HOME)/svn/payload.elf
> +	payload $(HOME)/Entwicklung/LinuxBIOS/VIA-BIOS/filo.small.elf

Never used $(HOME) here, but I assume it works? If not, try
/tmp/filo.elf and copy your payload there.


>  end
>  
>  romimage "fallback" 
>  	option USE_FALLBACK_IMAGE=1
> -	#option ROM_IMAGE_SIZE=128*1024
> -	option ROM_IMAGE_SIZE=60*1024
> +#	option ROM_IMAGE_SIZE=(128*1024)-27312
> +	option ROM_IMAGE_SIZE=(96*1024)-27312

Also wrong, see above.


> +#	option ROM_IMAGE_SIZE=0xc000
>  	option COREBOOT_EXTRA_VERSION=".0-Fallback"
> -	payload $(HOME)/svn/payload.elf
> +	payload $(HOME)/Entwicklung/LinuxBIOS/VIA-BIOS/filo.small.elf
>  end
>  
>  buildrom ./coreboot.rom ROM_SIZE "normal" "fallback"
> -----------------------------------------------------------------------------------------------------------------------------------


> In an earlier version I changed Config.lb in src dir to get VGA BIOS. But now 
> it isn't included. If it is important, I could post it later.

Plese post it.

But the above patch comes from an 'svn diff' at the top-level directory,
correct? I.e. all your current changes are in there?


> > Also, where did you get your VGA ROM from? Using which tools (awardeco,
> > amideco, phnxdeco, other)? How big is it exactly?
> >
> On http://www.coreboot.org/VGA_support at bottom there is a perl script. Using 
> this I got my VGABIOS. This is 60416 bytes big 

OK. Which vendor BIOS does the board have? Can you use
awardeco/amideco/phnxdeco to get the VGA BIOS and compare it with the
one from the script? Just to be sure that worked fine...


> (optionsrom is 57344 bytes which I used at last).

Huh, what's that? Where from?


> filo.small.elf is 27312 bytes big. So don't wonder what number this is.

Are you sure this is ok? The smallest usable FILO I've used so far is
ca. 57 KB. Your 27 KB FILO looks _very_ small.

Also, please use the latest version from

 % svn co svn://coreboot.org/filo/trunk/filo-0.5

Type 'make' (that will generate a Config file), then edit Config, then
type make again.


Uwe.
-- 
http://www.hermann-uwe.de  | http://www.holsham-traders.de
http://www.crazy-hacks.org | http://www.unmaintained-free-software.org




More information about the coreboot mailing list