i2c-pxa2xx: pass of_node from platform driver to adapter and publish
the of_node will auto-publish devices which are added to the device
tree.
Commit 925bb9c6
aka ("of/i2c: Fix module load order issue caused by
of_i2c.c) moved the of_i2c_register_devices() function from the i2c core
back to the drivers. This patch does the same thing for the pxa driver.
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Dirk Brandewie <dirk.brandewie@gmail.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
This commit is contained in:
parent
93c92cfdec
commit
baa8cab012
|
@ -29,6 +29,7 @@
|
||||||
#include <linux/errno.h>
|
#include <linux/errno.h>
|
||||||
#include <linux/interrupt.h>
|
#include <linux/interrupt.h>
|
||||||
#include <linux/i2c-pxa.h>
|
#include <linux/i2c-pxa.h>
|
||||||
|
#include <linux/of_i2c.h>
|
||||||
#include <linux/platform_device.h>
|
#include <linux/platform_device.h>
|
||||||
#include <linux/err.h>
|
#include <linux/err.h>
|
||||||
#include <linux/clk.h>
|
#include <linux/clk.h>
|
||||||
|
@ -1138,6 +1139,9 @@ static int i2c_pxa_probe(struct platform_device *dev)
|
||||||
|
|
||||||
i2c->adap.algo_data = i2c;
|
i2c->adap.algo_data = i2c;
|
||||||
i2c->adap.dev.parent = &dev->dev;
|
i2c->adap.dev.parent = &dev->dev;
|
||||||
|
#ifdef CONFIG_OF
|
||||||
|
i2c->adap.dev.of_node = dev->dev.of_node;
|
||||||
|
#endif
|
||||||
|
|
||||||
if (i2c_type == REGS_CE4100)
|
if (i2c_type == REGS_CE4100)
|
||||||
ret = i2c_add_adapter(&i2c->adap);
|
ret = i2c_add_adapter(&i2c->adap);
|
||||||
|
@ -1147,6 +1151,7 @@ static int i2c_pxa_probe(struct platform_device *dev)
|
||||||
printk(KERN_INFO "I2C: Failed to add bus\n");
|
printk(KERN_INFO "I2C: Failed to add bus\n");
|
||||||
goto eadapt;
|
goto eadapt;
|
||||||
}
|
}
|
||||||
|
of_i2c_register_devices(&i2c->adap);
|
||||||
|
|
||||||
platform_set_drvdata(dev, i2c);
|
platform_set_drvdata(dev, i2c);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue