情况1:
我有一个i2c芯片驱动程序作为linux内核的一部分。我可以通过内核引导消息验证i2c芯片驱动程序是否在内核中(我的芯片驱动程序是mma8450)
DMESG公司:

mma8450 0-001c: uevent

我也能在(0x1C是芯片的I2C地址)中看到这个驱动程序
cat /sys/bus/i2c/devices/0-001c/name
mma8450

我在/dev接口中看不到这个驱动程序节点。我的问题是如何在/dev中创建此设备的节点,以便在用户程序中访问此设备?
情况2:
我创建了同一个芯片驱动程序的模块,但没有将其作为内核的一部分。我可以使用insmod mma8450加载这个模块,我如何创建这个设备的一个节点,因为我没有它的主要/次要号码?(在MMA8450源代码中,我看不到分配给此驱动程序的主次号)
如有任何帮助,我们将不胜感激
当做

最佳答案

加载内核模块:
modprobe I2C开发

ls /dev/i2*

/dev/i2c-0
/dev/i2c-10
/dev/i2c-12
/dev/i2c-14
/dev/i2c-3
/dev/i2c-5
/dev/i2c-7
/dev/i2c-9
/dev/i2c-1
/dev/i2c-11
/dev/i2c-13
/dev/i2c-2
/dev/i2c-4
/dev/i2c-6
/dev/i2c-8

关于linux - 如何访问i2c设备驱动程序节点,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6057726/

10-13 06:41