米爾用戶在使用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在內核啟動階段的狀態?
米爾技術支持:在配置dts時需要配置GPIO pad_ctrl的值, 參考CPU 手冊《IMX6ULLRM》把PUS設置為00下拉。 參考下面的例子:


-
嵌入式主板
+關注
關注
7文章
6102瀏覽量
36307 -
米爾科技
+關注
關注
5文章
227瀏覽量
21610
發布評論請先 登錄
如何使用dtb方式啟動內核
【米爾MYS-8MMX開發板免費試用】編譯內核鏡像&與USBHID設備通信
基于ARM體系的內核啟動解析
在內核啟動時發現SPI驅動沒有正確運行?
linux內核啟動流程

用戶與內核空間數據交換的方式之一:內核啟動參數
Linux內核啟動流程(上)

如何在內核中啟動secondary cpu

評論