2014-11-25 89 views
1

我有两个驱动程序Dr1和Dr2。我的要求是Dr1探针必须先调用,然后才能调用Dr2探针。 由于Dr1和Dr2的源文件都位于同一个文件夹中,因此我先在Makefile中添加了Dr1条目和Dr2条目(如下所示)。Linux内核中的驱动程序探测顺序

OBJ - $(CONFIG_DR1)+ = dr1.0

OBJ - $(CONFIG_DR2)+ = dr2.0

利用上述变形例中,DR1探针调用第一和Dr2上探针调用下一个。

这种方法是否正确或以其他方式达到相同的要求? 我不确定驱动程序和设备绑定是如何发生的。我的怀疑是,如果Dr2的设备先来了,那么Dr2探头将首先被调用。

请帮我理解设备和驱动程序绑定在Linux内核中将如何实现。我们可以控制这个顺序。

+0

你在使用模块吗? – 2014-11-25 08:02:01

回答

2

根据this SO answer,makefile中的顺序是正确的方法。

另请参阅this other SO answer for a detailed explanation的机制。

+0

感谢您的回答,我会通过提供的链接进一步了解。 – user3693586 2014-11-26 05:38:43

+1

或[this one](http://stackoverflow.com/questions/18605653/linux-module-init-vs-core-initcall-vs-early-initcall/18606561#18606561)。 #自我推销 – eepp 2014-11-27 07:11:33

相关问题