我在使用linux中的i2c设备时遇到了麻烦。器件连接到SMBus,SMBus通常显示为/ dev / i2c-0。我的驱动程序的init函数被调用,驱动程序通过i2c_add_driver注册,但驱动程序永远不会被探测。
在我的硬件板的初始化函数中,我正在调用i2c_register_board_info(n,i2c_board_info,array_size)。这里n应为0,以便在SMBus上注册器件,但是无论我设置什么,都会导致SMBus变为/ dev / i2c-(n + 1)。
有什么想法吗?