arm開發板上找不到/dev/i2c-*設備


最近在調試arm與外設iic通訊是,想來個投機取巧,先不寫單獨的驅動,直接通過iic bus設備是否可以連接到外設,然后發現在板子上找不到“/dev/i2c-n”的設備,標准的系統應該都是有的。

回去看內核驅動

代碼位於

lichee/linux-3.10/drivers/i2c/

 

 

#
# Makefile for the i2c core.
#

obj-$(CONFIG_I2C_BOARDINFO)     += i2c-boardinfo.o
obj-$(CONFIG_I2C)               += i2c-core.o
obj-$(CONFIG_I2C_SMBUS)         += i2c-smbus.o
obj-$(CONFIG_I2C_CHARDEV)       += i2c-dev.o
obj-$(CONFIG_I2C_MUX)           += i2c-mux.o
obj-y                           += algos/ busses/ muxes/
obj-$(CONFIG_I2C_STUB)          += i2c-stub.o

ccflags-$(CONFIG_I2C_DEBUG_CORE) := -DDEBUG
CFLAGS_i2c-core.o := -Wno-deprecated-declarations

查看其中的Makefile中有相關驅動的編譯腳本,但是卻沒有i2c-dev.o文件,說明該驅動沒有參與編譯。

需要去make menuconfig里面配置成m(編譯成ko以模塊的方式插入)或者y(直接和內核編譯在一起),在這里選擇以模塊的方式編譯。

依次執行make menuconfig

然后選擇Device Drivers——>I2C support——>I2C device interface設置成M 保存退出,重新編譯即可。

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM