arm开发板上找不到/dev/i2c-*设备
Posted mcdull^0^
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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 保存退出,重新编译即可。
以上是关于arm开发板上找不到/dev/i2c-*设备的主要内容,如果未能解决你的问题,请参考以下文章
在 android 设备上找不到使用 QStandardPath 创建的文件