[OpenBIOS] OpenSolaris starts to live on SPARC64

Blue Swirl blauwirbel at gmail.com
Sat Apr 3 12:49:17 CEST 2010


On 4/3/10, Mark Cave-Ayland <mark.cave-ayland at siriusit.co.uk> wrote:
> Blue Swirl wrote:
>
>
> > Unfortunately some Linux images break, for example like this:
> > OpenBIOS for Sparc64
> > Configuration device id QEMU version 1 machine id 0
> > kernel addr 404000 size 404d61
> > kernel cmdline root=/dev/ram -p console=prom init=/sbin/init
> > of_debug=3 ofpci_debug=1
> > CPUs: 1 x SUNW,UltraSPARC-II
> > UUID: 00000000-0000-0000-0000-000000000000
> > Welcome to OpenBIOS v1.0 built on Apr 2 2010 14:10
> >  Type 'help' for detailed information
> >
> > [sparc64] Kernel already loaded
> > Unhandled Exception 0x0000000000000010
> > PC = 0x0000000000404380 NPC = 0x0000000000404384
> > Stopping execution
> >
>
>  Hmmmm that's strange. Perhaps since the CIF argument array is passed in by
> the client then we do need to respect pb->nrets since the client has
> allocated the appropriate memory? What happens if you simply add the missing
> "0" from r732 in forth/system/ciface.fs to r731 and leave
> libopenbios/client.c as it was?

I took the other approach and this seems to work:

diff --git a/forth/system/ciface.fs b/forth/system/ciface.fs
index aada422..b2035bc 100644
--- a/forth/system/ciface.fs
+++ b/forth/system/ciface.fs
@@ -341,5 +341,4 @@ device-end
 : client-call-iface ( [args] name len -- [args] -1 | [rets] 0 )
   ciface-ph find-method 0= if -1 exit then
   execute
-  0
 ;



More information about the OpenBIOS mailing list