嵌入式Linux开发实操(四):pinctrl和dt_binding

e07c284848174926a6886cc678ba2e5a.png

Linux/pinctrl subsystem,统一了各SOC/MCU厂商的PIN引脚管理了吗? pin命名遵循IC spec上的命名。它是如何实现驱动到硬件的对接的呢?在CPU、Memory等完成初始化加载之后,显然就进入到了嵌入式linux的核心部分,管理对接硬件,这正是pinctrl要完成的工作。

Linux®pinctrl架构

光有设备树显然不够,硬件怎么联系起来,Linux®pinctrl架构就是实现这个功能的。许多MCU pin具有数字I/O或模拟I/O,有的还要多路复用。pinctrl框架可以:

1、配置引脚硬件设置:多路复用、上拉pull-up/下拉pull-down电阻、漏极开路、配置引脚的driver strength等。

2、通过调试提供信息

pinctrl框架是用于配置和控制MCU引脚的Linux框架。有两种使用方法:

1、一个pin引脚(或一组pin引脚)由硬件块控制,然后pinctrl将应用device tree设备树给出的引脚配置(注意是:应用)

2、pin引脚需由软件&#x

猜你喜欢

转载自blog.csdn.net/weixin_49369227/article/details/131685998