Tony Heller <[EMAIL PROTECTED]> writes: > Hi Ronald, > > Thanks for your earlier responses. We have decided to build our > simulation platform (for our CPU under development) around a > supported Linuxbios platform- matsonic/ms7308e, as that is the > platform we will bring up our new CPU on (using Linuxbios.)
> Unfortunately, I'm running in to a problem. I'm finding that > the BIOS generated uses Pentium instructions rdmsr and wrmsr, > even though it is a 486 motherboard. How do I fix this? If you are really building a new cpu add support for rdmsr/wrmsr and cpuid (the last run of 486s had it I belive). If your cpu isn't exactly identical to a 486 you will want to be able to handle the differences, and that is a good architecture for handling them. Do I understand this correctly that your new cpu is bus compatible with a i686, but is otherwise a 486? You probably also need to add a subdirectory in src/cpu/ for your new cpu. The abstractions we have there aren't as flexible as I'd like but we do a passable job. All of the code doing rdmsr & wrmsr is cpu dependant so that should help. Also look at: src/mainboard/matsonci/ms7308e/Config that sets the cpu type and other things. You almost certainly want to generate a different motherboard config file. > This is my config file: > > target matsonic > mainboard matsonic/ms7308e > linux /usr/src/redhat/SOURCES/linux-2.4.7/linux > commandline root=/dev/hda1 > > > Thanks, > Tony > > BTW: I grew up in Los Alamos, and my father has been working at > the Lab since 1956 ;^) > > > --- Ronald G Minnich <[EMAIL PROTECTED]> wrote: > > What I would recommend is we configure a BOCHS vendor for > > linuxbios, and > > then configure the north and south bridges etc. for it. That > > will be much > > much easier than trying to fake out e.g. sis 630 behavior. And if you really don't like the behavior needed for the sis 630, this is my recommendation as well. The hard things that linuxBIOS does: turn on ram etc, initialize the northbridge, probably do not apply at all in your simulation environment. So while it would take a few code changes it is probably much simpler to go that route. About half of linuxBIOS is totally environment dependent and the other half is only there because we haven't figured out how to get the kernel to do the work for us yet... Eric
