[OpenBIOS] Sun OBP bugs in 1.0RC1

Blue Swirl blueswir1 at hotmail.com
Fri Mar 16 20:36:56 CET 2007


>This deviation is the documented fix for one of the SunOS crashes.
>Sun4m requires there to be 4 CPU-specific interrupts and counters
>(regardless of the number of CPUs) before the system-wide interrupt
>and counter.  The OBP registers you point out were broken in this
>regard:  it only mapped a single CPU specific interrupt and counter.
>This allowed OBP to boot, say, linux, but not SunOS.

But the register dump with only single interrrupt/counter comes from a real 
SparcStation 5 machine with real OpenBootProm (OBP) made by Sun, it was not 
made with OpenBIOS. It can't be broken or in violation of Sun4m spec, I 
would be surprised if my machine had not run SunOS originally. My guess is 
that the version of SunOS you are trying to run predates even SS-5 if it 
requires things to be like SS-10. Or it could be targeted for a SMP system 
with 4 CPUs. Or maybe those days SunOS was specific to each machine type, I 
can't remember anymore.

So to help you make these changes, I'd like to add a new machine for SS-10. 
That way these changes can be tied to the machine model, if necessary. I 
want to keep the Qemu's model for SS-5 as close to real SS-5 as possible and 
this register change is a true deviation from that.

About the terminology: Sun4m was a machine class, or a super architecture. 
There were several implementations, including SparcStation 5 (which Qemu 
currently emulates), older model SparcStation 10 and many others. OBP 
(OpenBootProm) was Sun's predecessor to or early implementation of Open 
Firmware. Every machine had a different version of OBP, also some versions 
were older, some newer. OpenBIOS is a free re-implementation, emulating the 
interface version 3.

_________________________________________________________________
Express yourself instantly with MSN Messenger! Download today it's FREE! 
http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/




More information about the OpenBIOS mailing list