開發教程 | 全志T507去掉IO擴充套件晶片後,如何保留擴充套件引腳功能

ningmengzier發表於2022-07-11

此文章來源於融創芯城()—— 半導體電子領域共享平臺

飛凌嵌入式推出的OKT507-C作為一款廣受歡迎的開發板擁有豐富的介面資源,而實際上OKT507-C的CPU引腳資源是比較緊缺的,那麼它是如何實現這麼豐富的介面資源呢?



答案就是飛凌使用了一個IO擴充套件晶片——TCA6424A。這是一個24 位 I2C 和系統管理匯流排 (SMBus), 輸入輸出(I/O) 擴充套件器有中斷輸出、復位和配置暫存器。



受當前國際形勢的影響,晶片行業形勢非常嚴峻,為了滿足更多客戶需求,在降低成本的同時儘可能保留更多功能,飛凌為大家帶來OKT507-C去掉IO擴充套件晶片後保留擴充套件引腳功能的實現的方法。




擴充套件晶片上的IO口被WiFi、藍芽、MIPI攝像頭TP2854、DVP攝像頭和line-out口電源使能引腳引用,若想保留這些功能,就要使用核心板其他可複用為這些功能的引腳。



本文將選用開發板的LCD功能引腳來重新複用為這些功能,使用者可根據自己的實際功能需求情況選擇。方法參考如下:



1. 選用引腳


對應功能引腳如下表所示:





2. 關掉gpio_ext及複用引腳原來功能


修改裝置樹,將LCD功能關閉後,該組引腳即可用作普通的GPIO。修改路徑如下:

vi OKT507-linux-sdk/kernel/linux4.9/arch/arm64/boot/dts/sunxi/OKT507-C Common.dtsi


2.1 關掉IO擴充套件晶片功能


因為擴充套件晶片已經拆除,所以要關掉擴充套件晶片節點。





2.2 關閉需要複用引腳功能


關閉LCD功能,本文以選用LCD上的引腳用作功能複用,使用者需根據實際情況關閉所用引腳功能。



將lcd_used 改為 0




lcd0節點新增 status = “disabled”;





3. 更改裝置節點中引用的GPIO


3.1 MIPI-5640引腳配置


路徑如下:


vi OKT507-linux-sdk/kernel/linux-4.9/arch/arm64/boot/dts/sunxi/OKT507-C-Common.dtsi





3.2 TP2854引腳配置


路徑如下:


vi OKT507-linux-sdk/kernel/linux-4.9/arch/arm64/boot/dts/sunxi/OKT507-C-Common-TP2854M.dtsi




需要注意的是,MIPI5640和TP2854共用一個MIPI介面,兩個功能都用到了MIPI_PWRDN引腳,實際使用時只能選擇一種功能,因此本文在兩個功能測試時選的同一個引腳。



3.3 DVP-5640引腳配置


路徑如下:


vi OKT507-linux-sdk/kernel/linux-4.9/arch/arm64/boot/dts/sunxi/OKT507-C-Common.dtsi




 

3.4 WiFi引腳配置


路徑如下:


vi OKT507-linux-sdk/kernel/linux-4.9/arch/arm64/boot/dts/sunxi/OKT507-C-Common.dtsi





3.5 藍芽引腳配置


路徑如下:


vi OKT507-linux-sdk/kernel/linux-4.9/arch/arm64/boot/dts/sunxi/OKT507-C-Common.dtsi





3.6 音訊引腳


路徑如下:


vi OKT507-linux-sdk/kernel/linux-4.9/arch/arm64/boot/dts/sunxi/OKT507-C-Common.dtsi






以上就是OKT507-C開發板去掉IO擴充套件晶片後保留擴充套件引腳功能的實現的方法,具體的測試方式請參考

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69989353/viewspace-2905178/,如需轉載,請註明出處,否則將追究法律責任。

相關文章