On Fri, Aug 23, 2019 at 1:55 AM BALATON Zoltan
Currently this gets to an OFW prompt but
detecting pci devices does not
work yet. With the default (for pegasos2) cirrus vga a /pci/vga device
node is created but I think it stops during that and does not detect any
more pci devices. With -vga std (that's the normal QEMU Bochs compatible
VGA) it freezes during init-ing the card
You can use the serial to debug the vga.
To initialize the vga card you can use
if the above hangs, you can turn on debugging of the specific words:
debug init ( or open or whatever word you want to debug and after that)
I think the simplest /vga driver is Bochs VGA (bga.fth), since it
knows that device is virtual,
it doesn't set up clock generator etc.
and with my experimental -vga
none -device ati-vga (that's also upstream in QEMU now) an unnamed node is
created so something is wrong with PCI probing at the moment. Could it be
because not properly doing memory scrub&release?
For some reason (copyright I guess) the ATI drives were never
released. You may try extracting the drop-in from the physical ROM if
it was built as a drop-in.
Otherwise creating an unnamed node is a good sign: your PCI
enumerating code is somewhat working
Thanks for the suggestion I'll try to get more debugging output to find
where it hangs when I'll have time (not now). The bochs driver should also
work with the QEMU ati-vga emulation because it also supports Bochs VBE
(that's how it works with OpenBIOS) but I'm not sure what driver OFW tries
to use for it. Should also work as generic VGA so no specific ati driver
shuold be needed to get some picture. (OSes I may want to boot have their
own drivers so from OFW only basic support is enough,)
I thought the problem may not be related to VGA though but maybe because
not correctly initialising memory. The memory detect code for other
machines runs scrub&release and the slof fdt also has call to release
which I've currently disabled because I don't know how it should work.
Therefore memory may not be correctly initialised and this may be needed
for pci detection to work?