[OpenBIOS] Solaris anyone? Q2

Nathan Kunkee nkunkee42 at hotmail.com
Thu Apr 28 14:52:35 CEST 2011


  On 04/28/11 04:00 AM, Mark Cave-Ayland wrote:
> On 27/04/11 23:01, Nathan Kunkee wrote:
>
>> I built that on opensolaris (so sparc64) with gcc 4.5.2. No
>> cross-compiler needed, although the config script thinks I'm using one.
>
> Ah that will probably be the problem - config/script/switch-arch 
> contains the logic which detects how 
> NATIVE_BITWIDTH_EQUALS_HOST_BITWIDTH and SWAP_ENDIANNESS should be set 
> and adds them to CFLAGS in Makefile.target as appropriate.
>
OK. I'll start looking to see how to change that for by build environment.
>> Thank you for posting the link. That image does load, which is better
>> than I managed, but somehow isn't seeing my solaris 9 cd or iso. BTW,
>> QEMU crashes nicely when you boot from an empty cd device.
>
> Strange. Can you show us the command line you are using? From your 
> previous email:
>
> nathan at redwall:/usr/local/build/qemu$ sparc-softmmu/qemu-system-sparc 
> -nographic -bios openbios-builtin.elf
>
> You are definitely missing the "-boot d" option to force boot from 
> cdrom, although this is just a guess as you have shown us any error 
> messages :(
>
Oops; it seemed obvious when I wrote it. The trick is that the cd device 
is empty, or is full of 0. Running your sparc32 image:

nathan at fangorn:/usr/local/build/qemu$ sparc-softmmu/qemu-system-sparc 
-nographic -bios  openbios-sparc32-mark
Configuration device id QEMU version 1 machine id 32
CPUs: 1 x FMI,MB86904
UUID: 00000000-0000-0000-0000-000000000000
Welcome to OpenBIOS v1.0 built on Apr 27 2011 19:13
   Type 'help' for detailed information
Trying disk...
No valid state has been set by load or init-program

0 > boot cdrom: Unhandled Exception 0x0000002a
PC = 0xffd1101c NPC = 0xffd11020
Stopping execution
QEMU 0.14.50 monitor - type 'help' for more information
(qemu) info block
scsi0-cd2: type=cdrom removable=1 locked=0 [not inserted]
floppy0: type=floppy removable=1 locked=0 [not inserted]
sd0: type=floppy removable=1 locked=0 [not inserted]
(qemu) quit

Looking at it again, OpenBIOS is bombing out rather than QEMU. I found 
this by accident trying to get the right path to my host cdrom drive. 
So, '-boot d -cdrom /dev/null' on the command line produces the same 
error at the same place. I'm not sure why a zero device would cause this 
when a missing hard disk does not.

Hard drive full of 0:
nathan at fangorn:/usr/local/build/qemu$ sparc-softmmu/qemu-system-sparc 
-nographic -bios  openbios-sparc32-mark  -hda /dev/null

Configuration device id QEMU version 1 machine id 32
CPUs: 1 x FMI,MB86904
UUID: 00000000-0000-0000-0000-000000000000
Welcome to OpenBIOS v1.0 built on Apr 27 2011 19:13
   Type 'help' for detailed information
Trying disk...
Unhandled Exception 0x0000002a
PC = 0xffd1101c NPC = 0xffd11020
Stopping execution
QEMU 0.14.50 monitor - type 'help' for more information
(qemu) info block
scsi0-hd0: type=hd removable=0 file=/dev/null ro=0 drv=raw encrypted=0
scsi0-cd2: type=cdrom removable=1 locked=0 [not inserted]
floppy0: type=floppy removable=1 locked=0 [not inserted]
sd0: type=floppy removable=1 locked=0 [not inserted]
(qemu) quit


And the happy path I usually see, just a missing hard drive:
nathan at fangorn:/usr/local/build/qemu$ sparc-softmmu/qemu-system-sparc 
-nographic -bios  openbios-sparc32-mark

Configuration device id QEMU version 1 machine id 32
CPUs: 1 x FMI,MB86904
UUID: 00000000-0000-0000-0000-000000000000
Welcome to OpenBIOS v1.0 built on Apr 27 2011 19:13
   Type 'help' for detailed information
Trying disk...
No valid state has been set by load or init-program

0 > boot Trying disk...
No valid state has been set by load or init-program
  ok
0 >

Let me know if you need more information on this.

Thanks,
Nathan





More information about the OpenBIOS mailing list