2012-07-05 44 views
1

我想成功構建BeagleBoard C5板的u-boot。我正在使用Ubuntu 10.04和Crosstool-NG工具鏈。我有Xloader(MLO),u-boot.bin和uImage的工作映像,這些映像是我從AngstromBB項目中發現的,這些板子已成功導入Angstrom。BeagleBoard C5 Building u-boot

我可以通過以下操作成功打造的U-BOOT.BIN文件:

git clone git://git.denx.de/u-boot.git u-boot/ 
make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- omap3_beagle_config 
make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi- 

然後複製我剛建的u-BOOT.BIN替換的工作版本的u-BOOT.BIN SD卡,並試圖啓動板,但它掛在失敗:

Reading boot sector 
Loading u-boot.bin from mmc 

它將永遠坐在那裏永遠!我似乎無法找到任何關於構建C5 BeagleBoard的u-boot的明確說明,只是它與以前的版本不同,或者需要使用u-boot構建的名爲「SPL」的東西。有誰知道我可以如何成功構建自己的BeagleBoard C5的u-boot.bin映像?

回答

2

你的第一步應該是研究電路板的啓動順序。有些處理器不直接啓動到u-boot。他們啓動一個存儲在Flash中的應用程序,或者在電路板上存儲一個EEPROM。在你的C5的情況下,這個應用程序是X-Loader(https://gitorious.org/x-loader)。您將需要了解這個1級引導加載程序的功能以及它如何啓動u-boot。通常他們會在啓動完整的引導加載程序之前執行一些基本的PSC,DRAM,...配置。但它在哪裏尋找u-boot? X-Loader是否將u-boot複製到RAM並從那裏開始執行?或者它是否從你的MMC開始執行?有時可以設置跳線來控制啓動順序。因此X-Loader可以根據設置從NAND,NOR或SD/MMC啓動。

你從哪裏得到你的u-boot源代碼?您是直接從denx網站下載它還是與您的Beagle板一起提供?

一般來說,調試不需要工具就可以調試開發板(即使它是參考板)。調試器是隨主板提供的,還是您有自己的JTAG調試器,您可以使用它來設置硬件斷點並逐步完成代碼?

+0

謝謝我一直在做研究,似乎來自denx的最新u-boot克隆與最新的buildroot打包在menuconfig中提供'SPL'支持。據我所知,SPL(名爲MLO)現在將ROM中的OMAP 1st stage loader之後的xloader替換爲第二階段引導加載程序。長話短說,從u-boot啓用SPL(MLO)支持,並使用omap3_beagle defconfig進行構建,一切正常! – PhilBot 2012-07-11 00:17:57