當前位置:首頁 » 存儲配置 » uboot如何配置

uboot如何配置

發布時間: 2022-01-15 14:55:06

① uboot的/include/configs下的配置文件需要自己寫么

uboot的傳入參數寫死,不是寫在內核中。你將你的參數寫到/uboot/include/configs/xxx.config ,就不需要再在啟動uboot後設置環境變數了。

② 如何在UBOOT代碼中進行內存配置

下載完要寫入,不是邊下邊寫入。
寫入uboot時需要運行本地代碼,此時必須讓東西放在內存檔才能分區、格式化快閃記憶體而不會影響到下載來的uboot。

③ rootfs.cpio怎樣設置uboot啟動參數

這一問題來自項目中一個實際的需求: 我需要在linux啟動之後,確認我指定的晶元寄存器是否與我在uboot的配置一致。 舉個例子: 寄存器地址:0x20000010負責對DDR2的時序配置,該寄存器是在uboot中設置,現在我想在Linux運行後,讀出改寄存器的值...

④ 如何配置uboot的默認網關

首先做的是執行這樣一條指令
例如:
make s3c2440_config
這條指令實際上是指向了一條更長的指令
這條指令在uboot根目錄下的makefile中自己定義的,跟你的開發板相關;
s3c2440_config:unconfig
@$(MKCONFIG) $(@:_config=) arm arm920t s3c2440 NULL s3c24x0
這條指令指向的執行文件是MKCONFIG
通過閱讀MKCONFIG 文件源碼我們可以看出。MKCONFIG有如下作用
第一:確定開發板的名字就是BOARD_NAME
-n) shift ; BOARD_NAME =" ${1%%_config}";shift;;
第二:創建到平台/開發板的頭文件的鏈接
ln -s asm-$2 asm
$2 便是我們第一條指令傳遞出來的arm,
還有如下代碼
ln -s ${LNPREFIX}arch-$6 asm-$2/arch
這樣s3c24x0也發揮作用了。
第三:創建頂層Makefile包含的文件include/config.mk
第四:創建開發板相關的頭文件 include/config.h
在config.h這個文件里,存放的是開發板的配置信息。
只有以下兩類宏
(1)一類是選項CONFIG開頭,用來選擇CPU,SOC,開發板類型,設置系統時鍾,選擇設備驅動
(2)另一類是參數 用CFG來開頭,如設置malloc緩沖池的大小,U-boot的提示符,u-boot下載文件的默認載入地址,flash的起始地址。
開發板的第一個參數,將編譯文件分別指向了/board/$board_name and cpu/$cpu/
所以才會產生如下的編譯結果。
(1)首先編譯/board/$board_name/start.S,對於不同的CPU,還可能編譯cpu/$(CPU)下的其他文件。
(2)然後,對於平台/開發板相關的每個目錄、每個通用目錄都使用它們各自的Makefile生成相應的庫。
(3)將1,2步驟生成的.o、.a文件安裝board/$(BOARDDDIR)/U-boot.lds連接腳本進行連接。
(4)第3步得到的是ELF格式的u-boot,後面Makefile還會將它轉換為二進制格式,s_Record格式。

⑤ 天嵌mx6怎樣查看uboot的配置信息命令

這個說明你的硬體連接是好的,出現這個原因是因為NOR FLASH里邊沒有燒入uboot,所以不能反饋信息到CRT上。
具體是使用JTAG來燒寫固件程序,然後從nor flash啟動之後就會有串口輸出信息到CRT上了。
具體操作方法在天嵌給的資料上邊有。

⑥ uboot 設置內存容量

在uboot/include/configs/yourBoard.h中有類似於

#define CONFIG_NR_DRAM_BANKS 1
#define PHYS_SDRAM 0x20000000
#define PHYS_SDRAM_SIZE 0x2000000 /* 32 megs */
每一種board定義有所區別 我貼出來的是AT91RM9200DK的。

⑦ 如何修改uboot環境變數,pf0100np怎麼配置成f0

你好,那個文檔裡面沒有uboot參數嗎?我現在能進系統了,進入了linux的文字界面,但是hdmi沒有顯示,請問是uboot環境設置問題還是硬體問題,我是按附件設置sd3啟動。

⑧ linux怎麼進入uboot菜單

linux下的dnw配置步驟以下:1
下載源碼
源碼:dnw_linux
這個是在1個論壇上搜到的,這個不需要注冊,就能夠免費下載奧,感謝作者的辛苦勞動和忘我的奉獻精神,呵呵...2
解壓這個下載完以後是rar格式的,還得到windows下解壓。解壓後到linux下便可。其中secbulk.c是pc端usb驅動,
dnw.c是寫入工具。3
編譯並載入secbulk模塊$cd
secbulk$make
-c
/lib/moles/`uname
-r`/build
m=`pwd`
moles編譯成功後在當前目錄下可以看到secbulk.ko
用insmod命令載入模塊,這需要root許可權$sudo
insmod
./secbulk.ko4
編譯dnw寫入工具$gcc
-o
dnw
dnw.c編譯成功後生成可履行dnw5
使用dnw下載使用方式和windows下基本1致。在終端下輸入相應的uboot命令,當出現「usb
host
is
connected.
waiting
a
download.」時,在pc端linux上用dnw工具寫入要下載的文件便可。切換到root許可權,履行dnw下載.$./dnw
/path註:這個/path就是所要下載的文件的路徑及名稱,例:/home/linux⑵.6.30.4/arch/arm/boot/zimage寫入完成後提示成功100%
xxxxxxx
bytes
ok可以把編譯好的dnw拷貝到/usr/sbin下或是usr/bin下,以後使用就直接使用dnw
/path
便可。至此,完成內核的下載,下載文件系統一樣的方法便可。注意:注意:有時候由於內核的升級,運行時會提示can
not
open
/dev/secbulk0的毛病,此時需要重新到secbulk目錄履行$make
-c
/lib/moles/`uname
-r`/build
m=`pwd`
moles,然後載入模塊$sudo
insmod
./secbulk.ko便可!

⑨ uboot怎麼查找ddr的配置文件

如果因為uboot或者內核有錯誤而導致啟動失敗,出現卡死狀態等,那麼需要判斷問題是出在uboot階段還是linux階段,這可以通過觀察啟動過程中的debug信息來判斷,

如果uboot出現問題是比較麻煩的,因為這需要有一個裝有正確的uboot/bootloader的flash晶元作為引導,

將系統重新引導至uboot界面中,之後再重新燒寫uboot到系統本身的flash中,進而燒寫內核(如有必要)。

一,重新燒寫uboot

首先需要一個特定的PCLL(flash晶元),這個PCLL上固化了一個正確的bootloader, 通過這個bootloader可以成功進入bootloader界面, 在此條件下重新燒寫uboot/bootloader。

使用此PLCC的步驟是:

在系統下電情況下, 使用跳線/撥碼開關等將此系統的啟動方式變從外部flash(即PLCC)引導,

之後將系統上電, 這時會從PLCC 啟動。

啟動成功後,進入uboot界面, 即命令行顯示Dream 5220# #(類似命令行提示符)

此時將版卡的啟動方式變為 從 nor flash 啟動。 之後重新燒寫uboot到此nor flash 上。

再用 kermit 來操作。

Kermit是一個串口服務工具,類似與minicom ,功能比minicom 多。

//kermit/usb0.cfg 是kermit 的配置文件, 在其中可以配置 /dev/ttyUSB0 等路徑
kermit -y kermit/usb0.cfg

-y kermit/usb0.cfg 指定配置文件。

該文件內容如下:
/*

set line /dev/ttyUSB0
set speed 115200
set carrier-watch off
set hardshake none
set flow-control none
robust
set file type bin
set file name lit
set rec pack 1000
set send pack 1000
set window 5

*/
將此文件保存在主目錄下, 命名為:kermit/usb0.cfg(可自定義)

執行後進入kermit 界面, 按 c

進入 串口界面(就是設備的界面)

切換回kermit 界面快捷鍵:Ctrl + \ , 之後再按 c 。

執行:
Dream 5220# # detect

顯示:
Checking for NOR flash...
Flash detect 33554432Mb

這說明flash狀態良好。

//讓串口進入接受狀態。
Dream 5220# # loadb

進入kermit 界面: ctrl + \ 按 c

執行:
send uboot.bin

就是將當前目錄下的uboot.bin 文件發送給串口。

完成後,進入串口界面。

執行:
Dream 5220# # upgrade 0x20000000 0x1dc00000 +0xe0000

0x20000000 是 kermit 執行 send 後 將文件send 到的默認地址。
再將文件寫到nor flash 的首地址:0x1dc00000 +0xe0000為寫的長度。

執行:reset。讓系統重啟。

/*

至此,新的uboot燒寫完成,reset後, 如果還是不成功的話,那麼問題肯定出在linux的的啟動階段或者新的uboot還是有問題,這可以通過啟動過程中的debug信息看出來

一,如果內核有問題,導致linux沒有進入shell界面,要重新進入Uboot環境,就是在reset 之後,一直按 ctrl + c ,這樣在uboot啟動完成後, 不會進入kernel的啟動階段,而是停留在uboot的命令行中,

在這個uboot 環境下,燒寫新內核, 配置ipaddr,serverip等,同最開始的例子中操作是一樣的。

//本機uboot 的ip地址
setenv ipaddr 10.10.167.10

//伺服器ip地址
setenv serverip 10.10.167.249

//下載linux內核vmlinux52
// 在伺服器的tftpboot目錄下存在相應文件,搭建到tftp服務環境
tftpboot 0 vmlinux52

// 燒寫到flash 上。
// 0x20000000 是vmlinux52的存貯位置。
// 0x1dd00000 是系統內核的起始位置(每個設備位置不同),
// +0x600000是文件長度
upgrade 0x20000000 0x1dd00000 +0x600000

在reset 之前,一般還要設置一下環境變數。

比如

setenv linux_args mtdparts=octeon_nor0:1m(BOOT),7m(LINUX),21m(CONFIG),3m(MD)

setenv bootcmd 'bootoctlinux 0x1dd00000 coremask=0x3 mem=700'

//保存
saveenv

bootoctliux

二 ,如果新燒寫的uboot本身有問題,那麼修改uboot代碼,編譯通過後, 使用PLCC重復上述燒寫過程。

⑩ ARM開發板Uboot如何恢復出廠設置時的啟動參數

利用Setenv 設置參數。如果的真的想恢復的話,先把保存參數的分區全部擦除,再次啟動Uboot時候,Uboot提示你,CRC錯誤,這時候Uboot就會使用它默認的參數。這時候,在調用saveenv指令,保存參數。

熱點內容
攜程伺服器是什麼牌子 發布:2024-04-27 04:31:50 瀏覽:745
醫院新冠肺炎疫情防控演練腳本 發布:2024-04-27 04:04:45 瀏覽:652
天津智慧網關伺服器雲伺服器 發布:2024-04-27 03:56:51 瀏覽:422
移門製作下料尺寸演算法 發布:2024-04-27 03:15:02 瀏覽:641
c語言5常量 發布:2024-04-27 02:38:49 瀏覽:991
源碼怎麼搭建 發布:2024-04-27 02:33:44 瀏覽:97
java獲取參數 發布:2024-04-27 02:22:21 瀏覽:501
unixlinuxwindows 發布:2024-04-27 02:10:55 瀏覽:445
nginx禁止ip訪問網站 發布:2024-04-27 02:05:43 瀏覽:845
webrtc伺服器搭建哪家價格低 發布:2024-04-27 01:30:08 瀏覽:141