米尔用户在使用i.mx6ul/i.mx6ull系列产品开发时,需要调整gpio在内核启动阶段的状态,这怎么操作呢?在这里将用户问题做一个详细的整理,如果遇到相似问题可以参考:
现象:改了dts文件,在 &iomuxc 和 &iomuxc_snvs 的 pinctrl_hog_x 中加入了一些自定义的gpio,操
作系统启动后,使用 echo x > /sys/class/gpio/export 指令导出后,可以用程序正常控制,都没有问题
。但是这些引脚在内核启动阶段都输出了高电平,导致我们电路板上的蜂鸣器和led在内核启动阶段,始终
是打开状态,蜂鸣器会一直响。在uboot阶段蜂鸣器是不响的,只有内核加载完毕打印 starting kernel
... 这句开始,就会一直响,直到操作系统启动后,把蜂鸣器关掉。 我好像是内核加载了 dts 中 iomux
相关配置后,对io口做了初始化之类的动作导致的,但是我找不到这些代码位置。
问题:出现以上问题,修改内核哪里可以调整gpio在内核启动阶段的状态?
米尔凯发k8官网的技术支持:在配置dts时需要配置gpio pad_ctrl的值, 参考cpu 手册《imx6ullrm》把pus设置为00下拉。
参考下面的例子:
本文来自凯发app-凯发k8官网科技,原文地址:
http://www.myir-tech.com/resource/528.asp,转载请注明出处。