|
.dts如何设置设备平台数据
发表于 2015-9-2 13:07:48
浏览:8798
|
回复:1
打印
只看该作者
[复制链接]
楼主
请教各位大神,设备的平台数据如何通过.dts文件传递给驱动
比如说以kxud9为例:以前是这样传递的
struct kxud9_platform_data kxud9_data = {
.poll_interval = 10,
.min_interval = 10,
.g_range = KXUD9_G_2G,
.axis_map_x = 0,
.axis_map_y = 1,
.axis_map_z = 2,
.negate_x = 0,
.negate_y = 0,
.negate_z = 1,
.ctrl_regc_init = 0xC3,
.ctrl_regb_init = 0x40,
.power_on = kxud9_power_on,
.power_off = kxud9_power_off,
};
static struct i2c_board_info i2c_devs0[] __initdata = {
{
I2C_BOARD_INFO("kxud9", 0x18),
.platform_data = &kxud9_data,
}, {
I2C_BOARD_INFO("wm8960", 0x1a),
.platform_data = &wm8960_pdata,
}
};
static void __init smdk4x12_machine_init(void)
{
......
i2c_register_board_info(0, i2c_devs0, ARRAY_SIZE(i2c_devs0));
.......
}
通过.dts文件,可以将设备与驱动绑定,如果我就kxud9挂载到 i2c1上
&i2c1 {
status = "okay";
kxud9@18 {
compatible = "firefly,kxud9";
reg = <0x18>;
};
};
但是不知到平台数据 kxud9_data 是如何设置进.dts中的,是在.dts文件中设置还是在其他地方
设置?
大神们给个思路,小弟不胜感激…… |
|