i2c_add_driver函数用法
来源:互联网 发布:软件安装手册模板 编辑:程序博客网 时间:2024/06/07 00:45
I2C的设备驱动是通过i2c_add_driver(&my_driver)向i2c-core注册的,my_driver中的核心是detach和attach函数,在attach中通过probe探测到总线上的设备并把设备和
驱动建立连接以完成设备的初始化。如何探测总线上的设备、Linux中i2c设备地址如何标识并引用?
I2C中, 典型的attach如下所示:
static int my_attach(struct i2c_adapter *adapter)
{
}
static int my_probe(struct i2c_adapter *adapter, int address, intkind)
{
}
addr_data是在 include/linux/i2c.h中定义的或自己在自己驱动程序中定义的一个i2c_client_address_data结构:
static struct i2c_client_address_data addr_data ={