Linux内核系统(包括Android)通常会集成i2c-tools工具,通过i2c-tools工具提供的i2cdetect和i2cdump命令即可确认i2c总线上加载设备的信息,再结合厂家芯片手册中寄存器的描述进一步判断芯片类型。
1. 通过i2cdetect命令查询i2c总线上所有设备,例如:i2cdetect -y 5

上图命令为查询i2c 5号总线所有设备连接情况,显示结果包括以下三种:
“UU”代表该地址有正在使用的设备;
“XX”(显示i2c地址)代表该地址有连接设备,但未加载正常设备驱动;
“--”代表无连接设备;
2. 通过i2cdump命令查询i2c地址对应设备的寄存器信息,例如:i2cdump -f -y 5 0x34

上图命令是查询i2c 5号总线,地址为0x34对应设备的寄存器信息。
说明:i2cdump仅显示8bit值,部分命令版本可以支持显示16bit值(例如i2cdump -f -y 5 0x34 w),具体可通过命令i2cdump --help查询。