Matthew Bloch wrote:
Corey Osgood wrote: [snip]
This is exactly as it says. In src/mainboard/via/epia-m/Config.lb, there should be an XIP_ROM_SIZE and XIP_ROM_BASE, the base must be a multiple of the size. I had a bit of trouble working around this myself at one point, I think I determined that I just couldn't have a VGA rom and only the fallback boot, having both seemed to straighten things out.
So just to be clear we officially have no idea how to make a VGA BIOS as detailed in the HOWTO any more :) Using the Config.vga.filo gives the same error, so I'll give up on VGA as well.
What I meant was I needed normal+fallback+vga, that did the trick for me at the time, but I can't recall why. For some reason having a fallback image size of 256k - vgarom size screwed up the XIP size calculation, perhaps because the vga rom wasn't exactly 64k?
Now the Config.filo.lb template gives me a working linuxbios.rom file - however I had to rebuild filo to get it under about 65K. (General question) Is it just a quirk of the build system that I have to put two copies of the same BIOS image onto the flash? Under what failure condition is the "fallback" used? Surely the most useful fallback would be the vendor BIOS, which of course wouldn't fit ..?
Fallback can be for any variety of things. For example, you could set it up so that there's no or reduced serial output during a normal boot, but a full spew during fallback, or else you could use a different payload for fallback.
Anyhow I'm happy that the ROM ought to work as I've tested the new FILO from my GRUB, so I'm now trying to flash it:
Here's me verifying the vendor BIOS:
mnas:~/LinuxBIOSv2/targets/via/epia-m/epia-m# flashrom -v /root/oldbios Calibrating delay loop... ok No LinuxBIOS table found. Found chipset "VT8235": Enabling flash write... OK. Found board "VIA EPIA M/MII/...": Enabling flash write... OK. SST39SF020A found at physical address: 0xfffc0000 Flash part is SST39SF020A (256 KB) Flash image seems to be a legacy BIOS. Disabling checks. Verifying flash - VERIFIED
Okay so now I'll try to flash the new one:
mnas:~/LinuxBIOSv2/targets/via/epia-m/epia-m# flashrom linuxbios.rom Calibrating delay loop... ok No LinuxBIOS table found. Found chipset "VT8235": Enabling flash write... OK. Found board "VIA EPIA M/MII/...": Enabling flash write... OK. SST39SF020A found at physical address: 0xfffc0000 Flash part is SST39SF020A (256 KB) Note: If the following flash access fails, you might need to specify -m <vendor>:<mainboard>
Hmmm, no signs of success or failure, will try to verify:
mnas:~/LinuxBIOSv2/targets/via/epia-m/epia-m# flashrom -v linuxbios.rom Calibrating delay loop... ok No LinuxBIOS table found. Found chipset "VT8235": Enabling flash write... OK. Found board "VIA EPIA M/MII/...": Enabling flash write... OK. SST39SF020A found at physical address: 0xfffc0000 Flash part is SST39SF020A (256 KB) Note: If the following flash access fails, you might need to specify -m <vendor>:<mainboard> Verifying flash - FAILED
Looks like something bad happened, or nothing, let's see...
mnas:~/LinuxBIOSv2/targets/via/epia-m/epia-m# flashrom -v /root/oldbios Calibrating delay loop... ok No LinuxBIOS table found. Found chipset "VT8235": Enabling flash write... OK. Found board "VIA EPIA M/MII/...": Enabling flash write... OK. SST39SF020A found at physical address: 0xfffc0000 Flash part is SST39SF020A (256 KB) Flash image seems to be a legacy BIOS. Disabling checks. Verifying flash - VERIFIED
Ah, so nothing happened! Any idea why this didn't work?
Thanks
There may be some sort of flash protection in place, check your vendor bios for a "Flash protect" option. I have this on my jetway and it gives the same effect, but via's a whole different beast. Does the vendor bios still verify? Peter Stuge should know more, hopefully he'll jump in soon.
-Corey