当前位置: 技术问答>linux和unix
I2C总线上字符设备驱动加载不成功,probe函数没有执行。
来源: 互联网 发布时间:2016-11-02
本文导语: module_init(kxtf9_init); i2c_add_driver(&i2c_kxtf9_driver) static int __init kxtf9_init(void) { int ret = 0; if ((ret = i2c_add_driver(&i2c_kxtf9_driver))) { printk(KERN_WARNING "KXTF9: Driver registration failed," " module not inserted.n"); re...
module_init(kxtf9_init);
i2c_add_driver(&i2c_kxtf9_driver)
static int __init kxtf9_init(void)
{
int ret = 0;
if ((ret = i2c_add_driver(&i2c_kxtf9_driver))) {
printk(KERN_WARNING "KXTF9: Driver registration failed,"
" module not inserted.n");
return ret;
}
return ret;
}
检查i2c_add_driver的返回值是0,没有异常。
i2c_kxtf9_driver结构如下
struct i2c_driver i2c_kxtf9_driver = {
.driver = {
.name = "kxtf9",
.owner = THIS_MODULE,
},
.probe = kxtf9_probe,
.remove = kxtf9_remove,
.id_table = kxtf9_id,
};
kxtf9_probe也作了定义,但没有执行。
i2c_add_driver(&i2c_kxtf9_driver)
static int __init kxtf9_init(void)
{
int ret = 0;
if ((ret = i2c_add_driver(&i2c_kxtf9_driver))) {
printk(KERN_WARNING "KXTF9: Driver registration failed,"
" module not inserted.n");
return ret;
}
return ret;
}
检查i2c_add_driver的返回值是0,没有异常。
i2c_kxtf9_driver结构如下
struct i2c_driver i2c_kxtf9_driver = {
.driver = {
.name = "kxtf9",
.owner = THIS_MODULE,
},
.probe = kxtf9_probe,
.remove = kxtf9_remove,
.id_table = kxtf9_id,
};
kxtf9_probe也作了定义,但没有执行。
|
default 选项原来是 n的话,意味着你不用menuconfig选择的话是不会编译进内核的,你改为y则相反。