DeviceTree - Freescale的i.MX芯片的pinctrl设置

1,文档位置:

Documentation\devicetree\bindings\pinctrl\fsl,imx-pinctrl.txt

Freescale IOMUX Controller (IOMUXC) for i.MX

IOMUX 控制器(IOMUXC)与 IOMUX 配合使用,可使集成电路与多个功能块共享一个 PAD。共享是通过多路复用 PAD 输入/输出信号来实现的。每个 PAD 最多有 8 种复用选项(称为 ALT 模式)。由于不同的模块需要不同的 PAD 设置(如上拉、保持等),因此 IOMUXC 还可以控制 PAD 设置参数。

The IOMUX Controller (IOMUXC), together with the IOMUX, enables the IC to share one PAD to several functional blocks. The sharing is done by multiplexing the PAD input/output signals. For each PAD there are up to 8 muxing options (called ALT modes). Since different modules require different PAD settings (like pull up, keeper, etc) the IOMUXC controls also the PAD settings parameters.

有关客户端设备常用 pinctrl 绑定的详细信息,包括 "引脚配置节点 "的含义,请参阅本目录中的 pinctrl-bindings.txt。

Please refer to pinctrl-bindings.txt in this directory for details of the common pinctrl bindings used by client devices, including the meaning of the phrase "pin configuration node".

飞思卡尔 IMX 引脚配置节点是一组引脚的节点,可用于特定设备或功能。该节点代表该组引脚的复用和配置。”mux " 选择该引脚可工作的功能模式(也称为 muxmode),"config "配置各种焊盘设置,如上拉、漏极开路、驱动强度等。

Freescale IMX pin configuration node is a node of a group of pins which can beused for a specific device or function. This node represents both mux and config of the pins in that group. The 'mux' selects the function mode(also named muxmode) this pin can work on and the 'config' configures various pad settingssuch as pull-up, open drain, drive strength, etc.

iomux 控制器所需的属性:

- compatible:“fsl,<soc>-iomuxc”

  请参阅每个 fsl,<soc>-pinctrl.txt 绑定文档以了解支持的 SoC。

Required properties for iomux controller:

- compatible: "fsl,<soc>-iomuxc"

  Please refer to each fsl,<soc>-pinctrl.txt binding doc for supported SoCs.

引脚配置节点所需的属性:

- fsl,pins:每个条目由 6 个整数组成,代表一个引脚的复用器和配置设置。前 5 个整数 <mux_reg conf_reg input_reg mux_val input_val> 使用 PIN_FUNC_ID 宏指定,该宏可以在设备树源文件夹下的 imx*-pinfunc.h 中找到。最后一个整数 CONFIG 是焊盘设置值,例如该引脚上的上拉电阻。这就是为什么 fsl,pins 条目在下面的示例中看起来像 <PIN_FUNC_ID CONFIG> 。

Required properties for pin configuration node:

- fsl,pins: each entry consists of 6 integers and represents the mux and config setting for one pin. The first 5 integers <mux_reg conf_reg input_reg mux_val  input_val> are specified using a PIN_FUNC_ID macro, which can be found in  imx*-pinfunc.h under device tree source folder. The last integer CONFIG is  the pad setting value like pull-up on this pin. And that's why fsl,pins entry  looks like <PIN_FUNC_ID CONFIG> in the example below.

用于配置的位:

NO_PAD_CTL(1 << 31):表示该引脚不需要配置。

Bits used for CONFIG:

NO_PAD_CTL(1 << 31): indicate this pin does not need config.

当使用 0x80000000(又名 NO_PAD_CTL)作为焊盘配置值时,SW_PAD_CTL 寄存器不会被修改。因此,在此应更明确地指定重置默认值。

When 0x80000000 (aka NO_PAD_CTL) is used as pad config value, the SW_PAD_CTL register isn't modified. Instead be more explicit here and specify the reset default value.

https://patchwork.kernel.org/project/linux-arm-kernel/patch/1468145266-7567-7-git-send-email-uwe@kleine-koenig.org/

SION(1 << 30):现场软件输入。

无论 MUX_MODE 功能如何,都强制选中多路复用模式中的输入路径,即能够读取IO状态。

默认情况下,输入路径是由所选多路复用器模式(常规)的功能确定。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夜流冰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值