Thread (6 messages) 6 messages, 2 authors, 2010-12-30

Re: [PATCH 3/3 v2] of/device: Register children with a compatible value in of_platform_bus_probe()

From: Grant Likely <hidden>
Date: 2010-12-30 19:37:29

On Thu, Dec 30, 2010 at 04:04:10PM +0800, Lan Chunhe wrote:
On Thu, 30 Dec 2010 15:31:57 +0800, Grant Likely
[off-list ref] wrote:
quoted
On Thu, Dec 30, 2010 at 03:23:11PM +0800, Lan Chunhe wrote:
quoted
On Thu, 30 Dec 2010 14:50:45 +0800, Grant Likely
[off-list ref] wrote:
quoted
On Fri, Dec 10, 2010 at 06:52:20PM +0800, Lan Chunhe wrote:
quoted
Currently, of_platform_bus_probe() completely skips nodes which do not
explicitly match the 'matches' table passed in.  Or, if the root node
matches, then it registers all the children unconditionally.  However,
there are situations, such as registering devices from the root node,
when it is desirable to register child nodes, but only if they
actually
quoted
quoted
represent devices.  For example, the root node may contain
both a local
quoted
quoted
bus and a PCI device, but it also contains the chosen, aliases
and cpus
quoted
quoted
nodes which don't represent real devices.

This patch changes of_platform_bus_probe() to register all
nodes at the
quoted
quoted
top level if they either match the matches table (the current
behaviour),
or if they have a 'compatible' value (indicating it represents a
device).

Signed-off-by: Lan Chunhe <redacted>
I believe this is my patch I wrote and pushed out to my tree back in
October.  Was this cherry-picked out of the test-devicetree branch?
  Yes, I will add the signed off with you.

    Signed-off-by: Grant Likely [off-list ref]
quoted
quoted
Signed-off-by: Lan Chunhe <redacted>
  At present I think that it is cherry-picked, and I have
tested it which
  is OK.
  Do you have better method?
You need to be very careful about stuff like this.  Posting a patch
without attribution of the original author and has the original
signed-off-by lines stripped off is an absolute no-no.  In literary
circles this would be called plagiarism.

I don't think you did it intentionally, but proper attribution is a
must, particularly because there are copyright issues involved.
   Sorry, thank you that you remind me.
quoted
As for this particular patch, I'm not particularly happy with it and I
was planning to rewrite it.  It is an inelegant solution and I think
the registration of devices from the device tree can be made simpler
instead of more complex like in this patch.
   Now this patch registers devices from the device tree.
   Then which function of which file do you will modify?
I'm thinking about deprecating the whole recursive device registration
entirely and instead making child device registration always the
responsibility of a device driver.  That would mean each bus node
would bind to a simple device driver that registers the child platform
devices in the .probe() hook.

g.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help