怎么写I2c和SMBus设备驱动

 我来答
llzzcc66
2017-09-23 · 知道合伙人数码行家
llzzcc66
知道合伙人数码行家
采纳数:81385 获赞数:171500
公司运维员工

向TA提问 私信TA
展开全部
设备/驱动 绑定

系统基本结构,典型的板子特定初始化代码或者启动固件,报告了存在了那些i2c设备。例如,这里可能会有一个表,在内核或从bootloader中,识别i2c设备和连接他们到板级特定配置信息关于IRQs和其他布线工件的,芯片类型等等。那个可以用来对于每一个i2c设备创建i2c_client对象。

I2c设备驱动使用这个绑定模型工作就像其他类型的linux驱动,他们提供一个probe方法来绑定这些设备,然后一个remove方法来解开。

static int foo_probe(struct i2c_client *client,
const struct i2c_device_id *id);
static int foo_remove(struct i2c_client *client);

记住I2c_driver不会创建这些client handles。这些handle可能会在foo_probe()中使用。如果foo_probe()报告成功(0不是否定状态代码)它可能会保存handle 然后一直使用它知道foo_remove返回。 那个绑定模型被许多linux驱动使用。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式