Thread (1 message) 1 message, 1 author, 2015-06-08

Re: Duplicated device tree and Dynamic symbols

From: Grant Likely <hidden>
Date: 2015-06-08 16:27:38

On Tue, Apr 28, 2015 at 9:16 AM, Ricardo Ribalda Delgado
[off-list ref] wrote:
Hello

I have an X86 platform with device tree support. It has multiple pci
slots with a custom board that is described with a device tree.

When the pci device is probed, the driver fetches a device tree from
the firmware infrastructure, patches the range property based on the
bar address and adds the device to the main device tree.

This works perfectly fine with only one card, but when the second card
is connected: Here be dragons :)

The main issue is that of_find_node_by_phandle always resolves to the
first connected card. I fixed this by creating a new function.
of_find_node_by_phandle_family() that chooses the closest phandle on
the tree, not just the first one.

By reading the "Dynamic Symbols support and fixup support"
here:
http://events.linuxfoundation.org/sites/events/files/slides/dynamic-dt-elce14.pdf
and here
https://lwn.net/Articles/616859/

It seemed that the patch would fix my issue and it would be already
merged, but I cannot find the patch here
https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git
or here
https://git.kernel.org/cgit/linux/kernel/git/jdl/dtc.git

So I am wondering some stuff:

Would a patch adding my of_find_node_by_phandle_family() would be accepted.?
No, phandles must be unique. That's what phandles are; unique identifiers. :-)

g.
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help