Linux I2C驱动:i2c_device_id

Linux I2C设备驱动的匹配依赖于i2c_device_id,用于指定设备名如'twl4030'。i2c_device_id的结构定义了设备识别,并在驱动的probe函数中通过driver_data来区分服务于哪个设备。
摘要由CSDN通过智能技术生成

Linux I2C设备驱动中,是通过i2c device id名字进行i2c device和i2c driver匹配的。

例如以下在板级代码定义"twl4030"作为device名字信息。

static struct i2c_board_info __initdata omap3evm_i2c_boardinfo[] = {

	{
		I2C_BOARD_INFO("twl4030", 0x48),
		.flags = I2C_CLIENT_WAKE,
		.irq = INT_34XX_SYS_NIRQ,
		.platform_data = &omap3evm_twldata,
	},
};
在i2c driver驱动中通过以下代码将device和driver进行匹配
static const struct i2c_device_id twl_ids[] = {
	{ "twl4030", TWL4030_VAUX2 },	/* "Triton 2" */
	{ "twl5030", 0 },		/* T2 updated */
	{ "twl5031", TWL5031 },		/* TWL5030 updated */
	{ "tps65950", 0 },		/* catalog version of twl5030 */
	{ "tps65930", TPS_SUBSET },	/* fewer LDOs and DACs; no charger */
	{ "tps65920", TPS_SUBSET },	/* fewer LDOs; no codec or charger */
	{ "twl6030", TWL6030_CLASS },	/* "Phoenix power chip
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值