天天看點

u-boot-1.1.6移植到mini2440筆記

最近工作由于要做arm 平台的linux 和andriod4.2的雙作業系統引導,但對于一個剛出校門半年的我來說還是很有挑戰,要是我還在學校的話,我肯定想都不敢想,覺得不可能,但自從上班來,很多東西從沒接觸過,PM/PL 一個郵件發來 ——“jy麻煩你處理一下啊” 。與其去推脫還不如立馬進入戰鬥狀态,一陣猛搞,幾天下來一般都能搞定了。這次在美女姐姐同僚的指導下我對嵌入式雙作業系統引導有那麼點概念,因為之前的平台就支援各種啟動,而我做的工作隻是在boot 前做判斷,給兩個OS放到不同分區,然後設定不同的環境變量去引導。工作也許完成了,但大部分都是做好了的,自己并沒有很深的了解,不行我得徹底搞懂。

怎麼玩我打算從bootload 開始搞起,平台還是選簡單的mini2440啦,uboot暫時不用最新的,公司的四核處理器太複雜很多硬體的東西都台灣搞的,根本不利于徹底搞懂。廢話不說了,先說明下,預設你對ARM 處理器,已經Uboot 架構,makefile 和 shell 腳本已經有足夠的了解了。

1、官網下載下傳 ftp://ftp.denx.de/pub/u-boot/    u-boot-1.1.6.tar.bz2 版本

2 、修改 Makefile

添加 mini2440_config : unconfig

             :

3、 進入 board/目錄   發現暫時并不支援s3c2440處理器,其實這更利于學習

cp -r smdk2410 mini2440

cd mini2440

mv

4、 修改 /rtc/interrupte.c 

修改 cpu/arm920t# vim s3c24x0/interrupts.c 

cpu/arm920t   這個下面的檔案大部分要改

5、在其他檔案中都會包含一個通用檔案/include/common.h

而 common.h 檔案會包含目前目錄下 config.h 而這個config.h 檔案是 由于 mkconfig 産生的,他将包含 /include/configs/mini2440.h檔案, 這個配置檔案将是是以的uboot配置資訊