On Wed, Jan 22, 2020 at 07:37:44AM +0900, rgc wrote:
> ppc@
> 
> i have been interested in running kernel builds on
> qemu ... but then hit a roadblock.
> 
> the OpenBSD macppc installXX.iso images would not boot
> on the qemu included in ports (qemu-4.0.1).

correction 6.6/6.6-current ports has qemu-4.1.0

with the modifications further down (where boot -c is issued)
i can get:

- i386 host, macppc guest RAMDISK boots, installer finish
- amd64 host, macppc guest RAMDISK boots, installer finish
- macppc host, macppc guest RAMDISK boots, installer reboots
due to disk timeouts

> 
> a search revealed the sad state of affairs:
> https://marc.info/?l=openbsd-tech&m=153450839802519
> 
> sharing here some information about 6.6-current. as it
> is not all bad news :-)
> 
> 
> 6.6 and 6.6-current can run on qemu. i have been able
> to make an installation to a RAW disk image on an amd64
> host.
> 
> 
> 1) the commandline
> 
> $ qemu-system-ppc -M mac99 -cpu g4 -net none -usb \
> -device usb-kbd -boot d -cdrom install66.iso
> 
> qemu documentation mentions
> https://wiki.qemu.org/Documentation/Platforms/PowerPC
> 
> -M mac99,via=pmu
> -M mac99,via=pmu-adb
> -M mac99,via=cuda (default)
> 
> i could never get "via=pmu" to work
> 
> "via=pmu-adb" does not like to work unless "-nographic"
> is used ... but this mixes the console with the tons
> of error log from qemu (about the INTR). needs the
> same coaxing of the kernel to work. in this case we
> "disable 61" or ohci as there seems to be a conflict.
> 
> "via=cuda" (== -M mac99, with to extra strings) work
> with the GUI but requires mapping USB devices. and some
> extra work via "boot -c" 
> 
> the extra work requires us to disable "adb" ... so
> 
> boot -c
> find adb
> disable 103
> quit
> 
> there are errors showing up for "gem" so "-net none"
> i'm still reading up on the tun/tap/bridge interface
> if it is usable.

this gem0 issue is weird. i got it to work on amd64 with
a tun/tap interface ... then next morning (after a host
-current upgrade) it wouldn't work anymore. the kernel
issues a panic inside the qemu.

> 
> 
> 2) RAMDISK vs GENERIC
> RAMDISK image can fully boot ... but GENERIC reports a
> stack smash! quite early during device probing. keyboard
> not usable in the kernel debugger.
> 
> the clang kernels i made ... doesn't even show the
> OpenBSD version string. goes to ddb. keyboard seems to be
> usable.
> 
> 
> 3) booting and blessing
> the firmware used by qemu does not seem to know MSDOS
> partitions ... so it can not find ofwboot ... even the
> normal OpenBSD/macppc install (1MB MSDOS part + OpenBSD
> part) will not boot!

used mkhybrid to write to that 1MB MSDOS partition in the
raw disk image with a modified bsd.tbxi file ... qemu boots
from the hd image  but the FW can not see the other
partition where /bsd (OpenBSD partition) resides.

> 
> the installXX.iso is blessed with an HFS partition
> courtesy of mkhybrid ... so the ISOs boot up properly.
> 
> to run my kernel builds ... i had to steal some code
> from distrib/macppc/iso/Makefile and create my own ISO,
> and modify bsd.tbxi to allow my bsd.gdb (that is now
> on the ISO image) to run. if i need a rootdisk i issue
> a "boot -c -a". 
> 
> 
> may you find these info useful.
> 
> 
> 
> yorosiku ~
> 

Reply via email to