I2C SW Architecture
【driver 驅動層】由普通驅動工程師負責,【i2c 核心層】由 Linux 提供,【i2c 核心層】以下由芯片原廠負責。
I2C 子系統通過 i2c-core 將 i2c 設備驅動和 i2c 總線驅動進行了分離,從而使得 i2c 設備驅動中不用關心 i2c 總線傳輸細節,專注于 i2c 設備邏輯的實現。
抽象如下:
I2C 總線驅動重點是 I2C 適配器(控制器)驅動,這里用到兩個重要的數據結構:i2c_adapter 和 i2c_algorithm。其中,Linux 內核將 SOC 的 I2C 適配器(控制器)抽象成 i2c_adapter,i2c_algorithm 只是一些 i2c 傳輸的實現函數合集。
在 Linux 系統中有如下節點:
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
子系統
+關注
關注
0文章
109瀏覽量
12392 -
I2C
+關注
關注
28文章
1484瀏覽量
123619
發布評論請先 登錄
相關推薦
Linux內核中I2C系統的設計思路
[ 導讀] 本文通過閱讀內核代碼,來梳理一下I2C子系統的整體視圖。在開發I2C設備驅動程序時,往往缺乏對于系統整體的認識,沒有一個清晰的思路。所以從高層級來分析一下
發表于 09-06 09:40
?520次閱讀
linux I2C子系統的相關資料分享
文章目錄linux I2C子系統框架在設備樹中添加從設備信息,mpu5060I2C driver 程序的編寫mpu6050 I2C程序具體實現linux
發表于 02-10 06:06
I2C Guid I2C指南
I2C Guid I2C指南
The I2C bus is used in a wide rangeof applications because it is simpleand
發表于 04-23 13:55
?36次下載
I2C系列的合集,可以系統學習I2C協議
這篇文章給大家帶來了I2C系列的合集,可以系統學習I2C協議。大家趕緊看看吧! 1、I2C總線:何時使用I2C緩沖器 本文討論了使用
linux I2C子系統(及相關程序設計MPU6050)
文章目錄linux I2C子系統框架在設備樹中添加從設備信息,mpu5060I2C driver 程序的編寫mpu6050 I2C程序具體實現linux
發表于 12-06 13:36
?9次下載
嵌入式內核及驅動開發-09IIC子系統框架使用(I2C協議和時序,I2C驅動框架,I2C從設備驅動開發,MPU6050硬件連接
文章目錄I2c協議和時序I2c介紹I2c硬件連接I2c總線的信號I2c總線寫時序I2c總線讀時序
發表于 12-06 14:06
?17次下載
硬件I2C與模擬I2C
硬件I2C對應芯片上的I2C外設,有相應I2C驅動電路,其所使用的I2C管腳也是專用的,因而效率要遠高于軟件模擬的I2C;一般也較為穩定,但
發表于 12-28 19:14
?81次下載
I2C子系統ACK error
在應該收到 ACK 信號的時候沒有收到 ACK 信號,i2c controller 就會產生一個 ACK error 的中斷,告訴 i2cdriver 發生了 ACK error。通常
I2C子系統debug的常見問題
常見問題 1、同一條 i2c bus 上所有的外設的 i2c addr 要不同 1)相同 address 注冊時沖突 [ 2.059184 ][xxx]i2c i2c- 1 :Fail
評論