这是在驱动中的一个宏,这个宏的主要作用是就是提示这个驱动外设支持热插拔
使用方法:
static struct of_device_id lcm_platform_of_match = {
{
.compatible = "panel,ti941",
.data = 0,
}, {
/* sentinel */
}
};
MODULE_DEVICE_TABLE(of, platform_of_match);
这个mcth函数就是对应驱动中的match匹配函数,一般来说,这个match函数中只有一个compatible的属性,用于和设备树进行匹配,但是这里多了一个data,这个data就是用于表示对应的驱动是第几个,热拔插后会通过这个data进行匹配,就不需要其余i的东西了。
原函数
#define MODULE_DEVICE_TABLE(type, name)
extern const struct type##_device_id __mod_##type##__##name##_device_table \
__attribute__ ((unused, alias(__stringify(name))))
这里面又两个参数一个设备类型, 一个就是设备符号表,通过这个符号表进行匹配。