[OpenBIOS] [Qemu-devel] svn 6658 broke powerpc.

Blue Swirl blauwirbel at gmail.com
Sun Mar 22 16:14:15 CET 2009

On 3/21/09, Rob Landley <rob at landley.net> wrote:
> On Saturday 21 March 2009 04:32:30 Blue Swirl wrote:
>  > I accidentally (by using a wrong variable in a more complex patch)
>  > found out a workaround for the bug, now -nographic boot works. But
>  > still the other nodes have the same problem as before and the
>  > workaround removes the "reg" node which is present on real tree.
>  >
>  > Now the escc node doesn't have the address appended:
>  > 1bfac /pci at 80000000/mac-io at 4/nvram at 0 (nvram)
>  > 1c1c0 /pci at 80000000/mac-io at 4/escc (escc)
>  > 1c2ac /pci at 80000000/mac-io at 4/escc/ch-a at 13020 (serial)
>  > 1c52c /pci at 80000000/mac-io at 4/escc/ch-b at 13000 (serial)
>  >
>  > Maybe nodes under /pci/mac-io should use custom
>  > encode-unit/decode-unit methods instead of PCI ones?
> My workaround at this end is to just revert openbios-ppc to the earlier
>  version.
>  I still think that bisecting to find the specific commit that broke it would
>  be informative, but your repository's move to /trunk at commit 470 essentially
>  wiped all repository history before that.  Your development page doesn't say
>  how to download the old versions, just the ones under "trunk":

Good point, I'll add some notes.

>   http://www.openfirmware.info/OpenBIOS
>  Nor does your repository viewer view anything before 470 from the little pull-
>  down menu:
>  http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel?rev=470
>  http://tracker.coreboot.org/trac/openbios/browser/trunk/openbios-devel?rev=469
>  I guessed how to get the repository viewer to show me the earlier versions:
>   http://tracker.coreboot.org/trac/openbios/browser/openbios-devel?rev=469
>  But this doesn't work:
>   $ svn co -r 469 svn://openbios.org/openbios/openbios-devel
>   svn: File not found: revision 480, path '/openbios-devel'

'svn switch' may help:

I'll add something about this too.

>  Then again, I can always bisect by downloading tarballs from your repository
>  viewer...  Eh, why not.
>  For easy cut and pasting, my build reproduction sequence is:
>   chmod +x config/scripts/switch-arch
>   config/scripts/switch-arch cross-ppc
>   PATH=~/firmware/firmware/build/cross-compiler-powerpc/bin:$PATH \
>     make TARGET=powerpc-
>   sudo cp obj-ppc/openbios-qemu.elf /usr/local/share/qemu/openbios-ppc
>  469 exhibits the bug, so it's before that.  I believe 450 is the "known good"
>  version, so let's try 460...  Bug.  455... Bug. 452... Bug.  451... Works.
>  So the bug was introduced (or at least triggered) by revision 452:
>   http://tracker.coreboot.org/trac/openbios/changeset/452/openbios-devel
>  Anything in there look broken to you?

No. This basically enabled automatic switch of OpenBIOS input and
output to serial console when using the -nographic flag which was
already supported the same way by Sparc32 and Sparc64.

The bug is somewhere in the device path processing, probably in the
PPC specific higher level device like mac-io, that's why the same ESCC
serial console works on Sparc32.

>  Rob
>  P.S.  Please at least put up a link to this on your development page:
>   http://tracker.coreboot.org/trac/openbios/browser/openbios-devel?rev=469
>  Right now earlier versions of your repository are completely inaccessible to
>  newbies like me...

More information about the OpenBIOS mailing list