On Wed, Aug 15, 2012 at 01:12:20PM +0200, Markus Armbruster wrote: > pc_cmos_init() always claims 640KiB base memory, and ram_size - 1MiB > extended memory. The latter can underflow to "lots of extended > memory". Fix both, and clean up some. > > Note: SeaBIOS currently requires 1MiB of RAM, and doesn't check > whether it got enough.
SeaBIOS (and Bochs BIOS before it) never checked cmos 0x15-0x18 for memory sizes. Thus, it has only ever supported passing memory in 1MiB chunks. If we really want to communicate fine grained memory sizes, I suggest passing an e820 like map via fw_cfg to SeaBIOS. I don't think it makes sense for SeaBIOS to read new magic cmos settings just to check if it should crash in a slightly different way. -Kevin