Hi 各位資深先進
有誰知道driver code中
這行沒被執行的原因? module_i2c_driver( A_device_driver )
我已經做了如下檢查
1,已經設定Kconfig and makefile,確定此driver code有產生出ko, o
2,查看此module_i2c_driver( A_device_driver )中的log, 因為此會先進行module_init(A_device_driver)
做bus register但沒有相關A_device_driver的log
3,在sys/bus/....也沒有A_device_driver的節點產生
所以,想請問各位在執行module_i2c_driver( A_device_driver )之前是否還有哪些程式code要設定 ?
謝謝
請問有誰知道這module_i2c_driver( device_driver )沒被執行的原因?
-
- 帖子: 4
- 注册时间: 2017-10-10 21:02
- 系统: window
- astolia
- 论坛版主
- 帖子: 6542
- 注册时间: 2008-09-18 13:11
Re: 請問有誰知道這module_i2c_driver( device_driver )沒被執行的原因?
你确认driver已经被加载了?这行只是在设置driver初始化和退出时要执行的函数,本身并不涉及到driver的加载。module_init也是同样的。
如果你没有在driver里实现detect相关的代码,那么你需要用modprobe或insmod来手动加载driver
如果你没有在driver里实现detect相关的代码,那么你需要用modprobe或insmod来手动加载driver
-
- 帖子: 4
- 注册时间: 2017-10-10 21:02
- 系统: window
Re: 請問有誰知道這module_i2c_driver( device_driver )沒被執行的原因?
Hi Astolia
我有cat proc/modules 確定modules 有在list中
這應該算有被掛載吧?
我也有再做一次modprobe module name
還是一樣,driver code 沒任何log (使用prints (KERN ERR⋯⋯log
也有做
印出i2c_detect ()這 function log 中沒有我想要掛載的module name
現不知從何處debug?
謝謝
我有cat proc/modules 確定modules 有在list中
這應該算有被掛載吧?
我也有再做一次modprobe module name
還是一樣,driver code 沒任何log (使用prints (KERN ERR⋯⋯log
也有做
印出i2c_detect ()這 function log 中沒有我想要掛載的module name
現不知從何處debug?
謝謝
-
- 帖子: 4
- 注册时间: 2017-10-10 21:02
- 系统: window
Re: 請問有誰知道這module_i2c_driver( device_driver )沒被執行的原因?
補充:
使用modprobe 才有被掛載,log 也有被印出,
是我重新開機又自動被卸載掉
請問,要將module 包進image中
當載入kernel image時會自動掛載module
要如何做?
是不是要將module name寫入到某config或table
才會由kernel image一起被掛載?
謝謝
使用modprobe 才有被掛載,log 也有被印出,
是我重新開機又自動被卸載掉
請問,要將module 包進image中
當載入kernel image時會自動掛載module
要如何做?
是不是要將module name寫入到某config或table
才會由kernel image一起被掛載?
謝謝
- astolia
- 论坛版主
- 帖子: 6542
- 注册时间: 2008-09-18 13:11
Re: 請問有誰知道這module_i2c_driver( device_driver )沒被執行的原因?
ubuntu下一般把名称写到/etc/modules或者/etc/modules-load.d/下面,如果需要指定参数,往/etc/modprobe.d/下面放配置文件
-
- 帖子: 4
- 注册时间: 2017-10-10 21:02
- 系统: window
Re: 請問有誰知道這module_i2c_driver( device_driver )沒被執行的原因?
應該不能這樣做,因為kernel source code沒有etc folder,,我目前是要把support module driver全build入image,然後dpkg到device,device開機後,就會掛載所需要module driver,是不能事後再掛載的