在目录/sys/bus/i2c/devices下能发现系统中的I2C设备,如下:
这些设备就是系统中存在的设备。
这些设备是怎么来的?
在你对应的machine配置里会执行“i2c_register_board_info”一个函数,它会将一个i2c_board_info的结构体注册进系统,
这个i2c_board_info的结构体里就描述了板载的所有I2C设备信息,如下例:
可以发现,在目录/sys/bus/i2c/devices下的设备就是这个i2c_board_info结构体里所描述的I2C设备,
而/sys/bus/i2c/devices下的设备名字就是根据i2c_board_info结构体中定义的I2C Address来命名的。
所以添加一个I2C设备时,除了需要编写这个I2C设备的驱动之外,还需要在machine里面加入I2C设备的i2c_board_info内容。
                  
                  
                  
                  
                            
本文介绍Linux系统中I2C设备的注册过程及如何通过i2c_board_info结构体描述I2C设备信息。文章详细展示了如何在/sys/bus/i2c/devices下查看I2C设备,并解释了这些设备如何通过i2c_board_info结构体注册。
          
      
          
                
                
                
                
              
                
                
                
                
                
              
                
                
              
            
                  
					717
					
被折叠的  条评论
		 为什么被折叠?
		 
		 
		
    
  
    
  
            


            