在两种情况下设备与驱动会发生匹配:(基于linux内核3.0)
- 当设备插入系统时,设备挂接到总线上,与总线上的所有驱动进行匹配(bus_type.match进行匹配), 如果匹配成功,则调用bus_type.probe或者driver.probe初始化该设备,挂接到总线上,如果匹配失败,则只是将该设备挂接到总线上。
- 当驱动注册到系统时,驱动挂接到总线上,与总线上的所有设备进行匹配(用bus_type.match进行匹配),如果匹配成功,则调用bus_type.probe或者driver.probe初始化该设备;挂接到总线上,
如果匹配失败,则只是将该驱动挂接到总线上。
下图为两种情况下驱动与设备的匹配过程
时间: 2024-10-12 04:20:46