米爾用戶在使用i.MX6UL/i.MX6ULL系列產品開發(fā)時,需要調整GPIO在內核啟動階段的狀態(tài),這怎么操作呢?在這里將用戶問題做一個詳細的整理,如果遇到相似問題可以參考:
現象:改了dts文件,在 &iomuxc 和 &iomuxc_snvs 的 pinctrl_hog_x 中加入了一些自定義的GPIO,操 作系統(tǒng)啟動后,使用 echo x > /sys/class/gpio/export 指令導出后,可以用程序正??刂?,都沒有問題 。但是這些引腳在內核啟動階段都輸出了高電平,導致我們電路板上的蜂鳴器和LED在內核啟動階段,始終 是打開狀態(tài),蜂鳴器會一直響。在UBOOT階段蜂鳴器是不響的,只有內核加載完畢打印 Starting kernel ... 這句開始,就會一直響,直到操作系統(tǒng)啟動后,把蜂鳴器關掉。 我好像是內核加載了 dts 中 iomux 相關配置后,對IO口做了初始化之類的動作導致的,但是我找不到這些代碼位置。
問題:出現以上問題,修改內核哪里可以調整GPIO在內核啟動階段的狀態(tài)?
米爾技術支持:在配置dts時需要配置GPIO pad_ctrl的值, 參考CPU 手冊《IMX6ULLRM》把PUS設置為00下拉。 參考下面的例子:


-
嵌入式主板
+關注
關注
7文章
6106瀏覽量
36764 -
米爾科技
+關注
關注
5文章
227瀏覽量
21912
發(fā)布評論請先 登錄
如何使用dtb方式啟動內核
基于ARM體系的內核啟動解析
在內核啟動時發(fā)現SPI驅動沒有正確運行?
linux內核啟動流程

Linux內核源碼分析--內核啟動命令行的傳遞過程
用戶與內核空間數據交換的方式之一:內核啟動參數
Linux內核啟動流程(上)

如何在內核中啟動secondary cpu

評論