1、在add_device中所谓的产生一个事件int kobject_uevent(struct kobject *kobj, enum kobject_action action),就是在内核通过call_usermodehelper调用用户态的hotplug程序。
2、关于驱动或总线上probe函数的调用
当调用了device_register时,首先调用总线上的match函数,如果没有match函数或匹配不成功,则调用总线上的probe函数(如果有的话或者调用驱动的probe函数)如果不成功则返回。
当调用了driver_register时,如果总线上的driver_autoprobe被置位,则遍历每个设备。优先级和注册设备时是一样的。
无论是注册设备还是驱动,如果需要遍历另一方来匹配最终都要调用driver_probe_device。
3、
阅读(634) | 评论(0) | 转发(0) |