全志 Fex文件


也是剛接觸全志平台,網上搜到一些內容,然后簡單總結一下

這個網站上有詳細的介紹Fex

 http://linux-sunxi.org/Fex_Guide#FEX_Description

也可以轉到

 http://linux-sunxi.org  

了解全志的sunxi

一些翻譯和概括:
        
fex目錄:
    lichee/tool/pack/chips/sun8iw11p1/config/a40-p1/sys_config.fex
fex是Allwinner的設備樹,用於配置gpio和一些配置,然后fex文件不是像dts一樣用於解析的,而是fex
編譯器編譯的。
 
然后后面英文有備注全志跟其他mtk和高通平台不一樣,不依賴dts和dsti:
    
   注意:主線Linux內核不使用FEX / script.bin,而是依靠設備樹模型(.dtb文件)
 
--------------------
總結起來就是:
 

  驅動 = driver code + fex配置

然后看下代碼,這個硬件資源是怎么聯系driver代碼的呢,我這里看下TP的節點ctp_power_ldo在driver中怎么用的。

Fex文件:

image

全志把ctp, gsensor, compass, lsensor, gsensor這些input設備統一起來,在driver/input寫了一個sw-device.c驅動,
 
fex里面的compatible和driver里面的compatible匹配后,調用probe,然后把設備節點的引用統一放到數組里面。            
 
 
       而input設備節點的解析是在init-input.c里面,解析的方法與別的平台dsti解析一樣,of函數找到節點。解析存放在init-input.h的
 
頭文件中對應的設備結構體device_config_info的實例中。

驅動文件中:

定義結構體,然后直接使用 (有一個驅動模塊中ctp_config_info互相怎么聯系起來的問題)

image

image

driver連接硬件資源大概就這樣,mtk和qcom解析硬件資源直接就在廠商驅動中通過dsti解析節點,全志中間加了一層用於解析,解析的節點來自fex文件。基本是一樣,還是設備節點,還是of api解析。

暫時不知道為啥這樣做,不清楚軟件這樣做的好處是啥。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM