EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 飞凌嵌入式 于 2022-7-8 10:47 编辑 " V( G" l7 Q: ]& B/ Q4 ~6 v
- E8 X) J3 w' ?3 s4 L ]
飞凌嵌入式推出的OKT507-C作为一款广受欢迎的开发板拥有丰富的接口资源,而实际上OKT507-C的CPU引脚资源是比较紧缺的,那么它是如何实现这么丰富的接口资源呢? # X5 n4 T5 Y7 L$ ^8 k3 e" S: K
答案就是飞凌使用了一个IO扩展芯片——TCA6424A。这是一个24 位 I2C 和系统管理总线 (SMBus), 输入输出(I/O) 扩展器有中断输出、复位和配置寄存器。
( Z* ]9 Q3 Z' ^, ?
受当前国际形势的影响,芯片行业形势非常严峻,为了满足更多客户需求,在降低成本的同时尽可能保留更多功能,飞凌为大家带来OKT507-C去掉IO扩展芯片后保留扩展引脚功能的实现的方法。 - k' g E, t0 e) H4 b3 e/ {
' o2 A6 ?& M( T7 J0 Z4 O7 C* [
扩展芯片上的IO口被WiFi、蓝牙、MIPI摄像头TP2854、DVP摄像头和line-out口电源使能引脚引用,若想保留这些功能,就要使用核心板其他可复用为这些功能的引脚。 4 o0 v9 C Y+ o9 ?4 f w$ v
本文将选用开发板的LCD功能引脚来重新复用为这些功能,用户可根据自己的实际功能需求情况选择。方法参考如下: : W. i+ t& z: j
1. 选用引脚 0 A! G/ P$ Z8 R. n
对应功能引脚如下表所示: 2 \5 U# Q/ X5 C- A$ j
2. 关掉gpio_ext及复用引脚原来功能 修改设备树,将LCD功能关闭后,该组引脚即可用作普通的GPIO。修改路径如下: vi OKT507-linux-sdk/kernel/linux4.9/arch/ARM64/boot/dts/sunxi/OKT507-C Common.dtsi
2.1 关掉IO扩展芯片功能
8 T* s1 V& j I& q, P0 L' {, V4 v
因为扩展芯片已经拆除,所以要关掉扩展芯片节点。 * H6 D, a( o5 @% O) ?& O7 C
2.2 关闭需要复用引脚功能 ) ]8 k) V7 Q, U% }/ X
关闭LCD功能,本文以选用LCD上的引脚用作功能复用,用户需根据实际情况关闭所用引脚功能。
9 E, x) I# G+ i$ X9 R( Z
lcd0节点添加 status = “disabled”;
8 d0 X: ^6 J2 f5 [2 q8 h- p, ]
3. 更改设备节点中引用的GPIO 3.1 MIPI-5640引脚配置 路径如下: vi OKT507-linux-sdk/kernel/linux-4.9/arch/arm64/boot/dts/sunxi/OKT507-C-Common.dtsi 9 P/ J G9 z* o. E2 m
3.2 TP2854引脚配置 路径如下: vi OKT507-linux-sdk/kernel/linux-4.9/arch/arm64/boot/dts/sunxi/OKT507-C-Common-TP2854M.dtsi & d5 N, b+ i; w/ w4 r: K
需要注意的是,MIPI5640和TP2854共用一个MIPI接口,两个功能都用到了MIPI_PWRDN引脚,实际使用时只能选择一种功能,因此本文在两个功能测试时选的同一个引脚。
% l% }4 x! Y( y: I, ]) X( Z1 p
3.3 DVP-5640引脚配置 路径如下: vi OKT507-linux-sdk/kernel/linux-4.9/arch/arm64/boot/dts/sunxi/OKT507-C-Common.dtsi
7 c& }: l$ s' w) L( j; |
3.4 WiFi引脚配置
4 Q4 x9 A6 g, z/ [. \8 p
路径如下: vi OKT507-linux-sdk/kernel/linux-4.9/arch/arm64/boot/dts/sunxi/OKT507-C-Common.dtsi
5 l( C# b. x: p
3.5 蓝牙引脚配置 % N1 P0 u) }: ~. L
路径如下: vi OKT507-linux-sdk/kernel/linux-4.9/arch/arm64/boot/dts/sunxi/OKT507-C-Common.dtsi
7 q2 s$ P* K i7 p% R; U/ z, h
3.6 音频引脚 ' k7 t, B" R7 T. t7 S* K `1 C
路径如下: vi OKT507-linux-sdk/kernel/linux-4.9/arch/arm64/boot/dts/sunxi/OKT507-C-Common.dtsi
- [( P1 v C# ^/ p# s
以上就是OKT507-C开发板去掉IO扩展芯片后保留扩展引脚功能的实现方法。
- V% P' r; v) D3 Q4 b( J h |