前言 随着内核的发展,linux驱动框架在不断的变化.很早很早以前,出现了gpio子系统,后来又出现了pinctrl子系统.在网上很难看到一篇讲解这类子系统的文章.就拿gpio操作来说吧,很多时候都是简单的调用gpio子系统提供的api,然后根据sdk说明文档写明的gpio号传参数,至于里面的工作过程对于驱动工程师而言就像个黑盒子.当我们自己设计的板子和demo板有很大变动时,问题就出现了.首先遇到的是怎么配置pin(是基于设备树还是不基于设备树,基于设备树的话,怎么修改设备树关于pinctrl…