olpc ofw question
Andres Salomon
dilinger at queued.net
Sun Aug 15 10:35:45 EST 2010
On Wed, 11 Aug 2010 15:53:44 -1000
Mitch Bradley <wmb at firmworks.com> wrote:
[...]
>
> The "proc_of.c" code that I wrote in Dec 2006 uses the
> package-to-path method mentioned above, getting the "name at addr"
> representation (package-to-path returns the full path, but you can
> easily extract just the tail component with strrchr(path, '/'))
Thanks for the tip. I changed the code:
- dp->name = pdt_get_one_property(node, "name");
+// dp->name = pdt_get_one_property(node, "name");
+ dp->name = pdt_get_fullname(node);
Where pdt_get_fullname() runs package-to-path and returns
strrchr(buf, '/')+1; /proc/device-tree looks much better.
Here's the diff now between /ofw and /proc/device-tree:
http://dev.queued.net/~dilinger/dt2.diff
Now I'm wondering a few things;
1) I'm setting node->name to the full node name now (including
the "@" suffix). Is there any reason why this might be incorrect
(ie, that I should only be using the @ suffix in node->full_name)?
It looks fine to me, but it's worth asking...
2) At a later point, it's probably worth looking into changing
the sparc code to use this as well. Is there a reason why the
sparc code doesn't shouldn't use this (ie, old firmware bugs)?
3) I get the following during proc population:
[ 0.126687] device-tree: Duplicate name in /, renamed to "dropin-fs#1"
Looking at the diff, I see
-/dropin-fs/.node
-0000000 ` 222 206 377
-0000004
-/dropin-fs/.node
-0000000 ` 222 206 377
Is this a bug in my version of OFW?
More information about the devicetree-discuss
mailing list