面试被问到IIC,总结。

本文总结了面试中关于IIC的问题,聚焦于Linux3.5内核中的IIC实现。介绍了如何使用IIC器件的读写函数接口,以及在系统中注册IIC硬件信息的步骤,包括调用`i2c_register_board_info`注册硬件信息和`platform_add_devices`添加设备。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

 

 

Linux3.5内核中,IIC。

 1 i2c_add_driver
 2     i2c_register_driver
 3         a. at24cxx_driver放入i2c_bus_type的drv链表
 4            并且从dev链表里取出能匹配的i2c_client并调用probe
 5         driver_register
 6             
 7         
 8         b. 对于每一个适配器,调用__process_new_driver
 9            对于每一个适配器,调用它的函数确定address_list里的设备是否存在
10            如果存在,再调用detect进一步确定、设置,然后i2c_new_device
11         /* Walk the adapters that are already present */
12         i2c_for_each_dev(driver, __process_new_driver);
13             __process_new_driver
14                 i2c_do_add_adapter
15                     /* Detect supported devices on that bus, and instantiate them */
16                     i2c_detect(adap, driver);
17                         for (i = 0; address_list[i] != I2C_CLIENT_END; i += 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值