On Sun, Jan 13, 2008 at 05:12:00PM -0500, Michael Lorenz wrote:
> >> , reset-all and have a look at the depth property.
> >
> > Still says 00 00 00 20, but it still reports 0x8 in NetBSD's debug
> > output.
>
> Ok, the code that copies the data defaults to 8 if something goes
> wrong while reading depth from OF and adding it to the device's
> dictionary. Please have a look at dev/ofw/ofw_subr.c /
> of_to_uint32_prop(), sprinkle a few printf()s so we can see where and
> why it fails.
I added the following statement:
printf("Getting prop at node: %i ofname = %s, size = %lu, returned size = %i\n",
node, ofname, sizeof(prop), OF_getprop(node, ofname, &prop,
sizeof(prop)));
It prints:
Getting prop at node: -267800264 ofname = height, size = 4, returned size = 4
Getting prop at node: -267800264 ofname = linebytes, size = 4, returned size = 4
Getting prop at node: -267800264 ofname = depth, size = 4, returned size = -1
I then added some printfs to openfirm.c:OF_getprop, but now it keeps giving
me 'Memory Address not Aligned' so I guess something got broken while
linking. I'm going to recompile from scratch tomorrow, to see if that makes
it work again.
Thanks for the help so far!
Cheers,
Peter
--
http://sjamaan.ath.cx
--
"The process of preparing programs for a digital computer
is especially attractive, not only because it can be economically
and scientifically rewarding, but also because it can be an aesthetic
experience much like composing poetry or music."
-- Donald Knuth
Attachment:
pgpcqD3djkmbx.pgp
Description: PGP signature