**
Linux I2C device driver
**
主要工作:结构体的填充,与函数的实现
attach_adapter、detach_adapter、detach_client、device driver文件操作接口(read、write)
i2c-driver的初始化:
static struct i2c_driver hello_driver = {
.driver = {
.name = "hello",
},
.attach_adapter = hello_attach_adapter,
.detach_client = hello_detach_client,
.command = hello_command,
};
I2C 设备驱动的模块加载函数通用的方法是在 I2C 设备驱动的模块加载函数中完成两件事
(1)将 I2C 设备注册为一个字符设备
(2)通过 I2C 核心的 i2c_add_driver()函数添加 i2c_driver
在模块卸载函数中需要做相反的两件事
(1)通过 I2C 核心的 i2c_del_driver()函数删除 i2c_driver
(2)注销字符设备