Thread (87 messages) 87 messages, 8 authors, 2007-05-07

Re: [PATCH 9/13] powerpc: Add arch/powerpc mv64x60 I2C platform data setup

From: Mark A. Greer <hidden>
Date: 2007-04-26 00:41:29

On Thu, Apr 26, 2007 at 02:21:19AM +0200, Arnd Bergmann wrote:
On Thursday 26 April 2007, Mark A. Greer wrote:
quoted
+static int __init mv64x60_i2c_platform_device_init(void)
+{
+       struct device_node *np = NULL;
+       int i;
+       struct platform_device *pdev;
+       int err;
+
+       for (i = 0;
+            (np = of_find_compatible_node(np, "i2c", "mv64x60-i2c"));
Same comment as about the ethernet driver: You should register an
of_platform_driver from drivers/i2c/busses/i2c-mv64xxx.c.

Repeat after me: 

I will not call of_find_compatible_node() from device drivers.
I will not call of_find_compatible_node() from device drivers.
I will not call of_find_compatible_node() from device drivers.
Well, your comments are for Dale's patches so I'll leave it to him to
answer your questions in detail but...

of_find_compatible_node() is not being called from a driver, its being
called from platform code.  Its extracting info from the device tree and
setting up the platform_data required by the driver.

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