配置火星板(mars board)的啟動參數

 

 

首先是用mini usb線連接pc和調試埠。運行終端模擬程式,選擇串口,設置串列傳輸速率為115200,然後連接mars board。把電源線插入插座,這時板子開始運行u-boot。默認u-boot會裝載mmc上的linux映射完成引導。mars board支援多種顯示輸出,包括lcd並行,ldb(lvds),以及hdmi。不過我把hdmi線連接我的顯示器到板子的hdmi口,卻沒有看到任何信號。調試視窗卻有如下資訊:

 

mxc_hdmi mxc_hdmi: phy pll not locked
mxc_hdmi mxc_hdmi: phy pll not locked
mxc_hdmi mxc_hdmi: same edid
mxc_hdmi mxc_hdmi: phy pll not locked
mxc_hdmi mxc_hdmi: phy pll not locked

 

說明書很簡略,只能自行研究如何在linux配置。

 

板子上有個reset按鈕,按一下重啟系統,等出現倒計數按任意鍵可以進入u-boot設置。使用printenv可以顯示所有環境變數。其中bootcmdbootargs是我所關心的。

 

setenv bootcmd 'mmc dev 1;mmc read ${loadaddr} 0x800 0x2000;bootm'

 

bootcmd是啟動命令。分號是命令的分隔符號。mmc dev #用來選擇mmc設備。板子上只有1號設備。mmc readmmc上的linux啟動映射裝載到記憶體。bootm開始boot

 

setenv bootargs console=ttymxc1,115200 root=/dev/mmcblk0p1 rootwait rw video=mxcfb0:dev=hdmi,1920x1080m@60,if=rgb24 fbmem=10m vmalloc=400m  

 

bootargs是傳遞給kernal的參數。console=ttymxc1,115200用來設置kernal資訊發往哪個consolettymxc1是調試終端。root=/dev/mmcblk0p1設置檔案系統在哪個分區。rootwait表示要到設備就緒後才掛載。video參數設置視頻輸出,這裡我設置hdmi埠到fb0

 

設置好環境變數後可以使用saveenv來保存變動。boot後應該hdmi信號就有了,雖然還是黑屏的狀態。要測試hdmi是否工作,可以往/dev/fb0中隨意寫入一些資料,例如:dd if=/dev/urandom of=/dev/fb0 。然後就可以看到螢幕上出現一些點點...

 

接下來的任務就是讓螢幕上輸出有意義的資訊,有待進一步研究

 

console改成tty1,這樣kernal資訊會輸出到第一個終端:

 

setenv bootargs console=tty1 consoleblank=0 video=mxcfb0:dev=hdmi,1920x1080m@60,if=rgb24 fbmem=10m vmalloc=400m video=mxcfb1:off video=mxcfb2:off root=/dev/mmcblk0p1 rootwait rw

 

saveenv

 

boot

 

果然hdmi顯示器上輸出了boot資訊。我把無線鍵鼠的usb接收器插入mars boardusb插槽,這樣就可以在終端進行輸入了。

 

 

http://www.mysjtu.com/page/M0/S887/887440.html

 

 

    全站熱搜

    立你斯 發表在 痞客邦 留言(0) 人氣()