Q: define i2c nodes in device tree?
Timur Tabi
timur at freescale.com
Fri Mar 27 07:02:42 EST 2009
2009/3/26 Albrecht Dreß <albrecht.dress at arcor.de>:
> and some other like "gpio-controller" instead of "gpio" but (surprise) it
> doesn't work - dmesg says that the driver is registered, but nothing else
> shows up. Unfortunately, I couldn't find documentation about the naming
> conventions of the i2c child nodes.
You need to have a "gpio I2C" device driver that registers the same
name as what's in the DTS, like this:
cs4270:codec at 4f {
compatible = "cirrus,cs4270";
reg = <0x4f>;
/* MCLK source is a stand-alone oscillator */
clock-frequency = <12288000>;
};
...
static struct i2c_device_id cs4270_id[] = {
{"cs4270", 0},
{}
};
MODULE_DEVICE_TABLE(i2c, cs4270_id);
> As I actually want to use the chips as parallel io (not separate gpio's) and
> thus would need to write my own driver I wonder if I really have to declare
> it in the device tree? Would the simple way -just load the kernel module as
> with arm/intel- also work? Would it be possible to use additional resources
> like an interrupt pin on the '5200 without the device tree?
No, the only acceptable way to do this is on PowerPC is with a device
tree entry and a driver that registers itself properly.
--
Timur Tabi
Linux kernel developer at Freescale
More information about the Linuxppc-dev
mailing list