iomux介绍--基于imx8qm

举例:

 

 

uart0功能实现,pinctrl-0选择的是pinctrl_lpuart0。

 

通过查询datesheet或者i.MX_8QuadMax_Pinmux_v0.71.xlsx得知:

 

UART0_RX和UART0_TX两个引脚分别复用ATL0功能。

拆分如下:

引脚名称 复用功能名称

SC_P_ UART0_RX _ DMA_UART0_RX

 

查询SC_P_UART0_RX_DMA_UART0_RX定义在kernel_imx\include\dt-bindings\pinctrl\pads-imx8qm.h下:

#define SC_P_UART0_RX_DMA_UART0_RX SC_P_UART0_RX 0(复用功能0)

 

pads-imx8qm.h详解:

前294行都是定义pin脚编号

比如:

SC_P_LVDS0_I2C0_SCL 52

表示LVDS0_I2C0_SCL 引脚编号是52,这个在反编译dtb得到的dts的时候会用到,比如:

gpio3_06 {

fsl,pins = <0x34 0x3 0x21>;

linux,phandle = <0x9b>;

phandle = <0x9b>;

};

0x34就是52引脚,0x3指复用功能3(ATL3),0x21指寄存器值,0x9b是pinctrl-0指向的指针,完整dts如下:

tsc@24 {

compatible = "cy,cyttsp6_i2c_adapter";

reg = <0x24>;

pinctrl-names = "default";

pinctrl-0 = <0x9b>;

 

 

而后面都是定义所有引脚的所有复用功能字符串,如上所述。

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值