[coreboot] FreeBSD Coreboot support

Vladimir 'φ-coder/phcoder' Serbinenko phcoder at gmail.com
Sun May 2 15:39:55 CEST 2010


Hello, I was playing with loading FreeBSD using grub2 as bootloader and
have met following problems:
1) FreeBSD-i386 makes BIOS calls. On coreboot they cause a crash.
I propose to restructure machdep.c to call int12 only if no smap is
supplied. Patch attached.
Abandon keyboard rate retrieving from BIOS in sys/dev/atkbdc/atkbd.c. Or
move this code to bootloader and pass the rate in environment. I'll do
the patch when we decide on approach to use.
sys/i386/cpufreq/smist.c is unusable and would cause panic.
sys/i386/isa/vesa.c usability depends on VGA BIOS.
For the last 2 cases and the future I propose to have a flag like
hw.no_bios=1 and hw.no_video_bios=1 which would make vm86_intcall and
vm86_datacall return an error on intnum!=0x10 / intnum=0x10.
Alternatively it's possible to catch the exception in vm8086 mode and
return an error  instead  of panic.
2)  The range 0-0x1000  isn't usable on coreboot since it contains
coreboot tables which according to an IRC chat I had with devs shouldn't
be overwritten. It causes an early hang on i386 or a following panic on
amd64:
        if (basemem == 0)
                panic("BIOS smap did not include a basemem segment!");
Can FreeBSD avoid using these memory chunks if they are not available?
3) On amd64 if no ACPI tables are present and using serial console
userspace is able to write only 16 bytes to console. Kernel messages
have no such problem. I'm confused

-- 
Regards
Vladimir 'φ-coder/phcoder' Serbinenko

-------------- next part --------------
A non-text attachment was scrubbed...
Name: machdep.diff
Type: text/x-diff
Size: 5912 bytes
Desc: not available
URL: <http://www.coreboot.org/pipermail/coreboot/attachments/20100502/cffc14e5/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 293 bytes
Desc: OpenPGP digital signature
URL: <http://www.coreboot.org/pipermail/coreboot/attachments/20100502/cffc14e5/attachment.sig>


More information about the coreboot mailing list