【ARM】一步一步移植Linux Kernel 2.6.13到板子

文章目錄


#1環境搭建所需材料

  • Linux 內核代碼
  • 編譯器
  • 文件系統
  • samba
  • tftp
  • SecureCRT6.0
  • 開發板uboot
  • nfs-kernel-server

#2環境搭建所需材料之間的關係
這裏寫圖片描述
#3所使用的開發板
這裏寫圖片描述
#4譯內核
這裏寫圖片描述
##4.1修改makefile
這裏寫圖片描述
##4.2拷貝配置文件
這裏寫圖片描述
##4.3編譯得到zImage
這裏寫圖片描述
##4.4把zImage轉成uImage
這裏寫圖片描述
#5開發板串口連接
串口形狀 ,在電腦上映射出來的串口設備連接串口
這裏寫圖片描述
這裏寫圖片描述
這裏寫圖片描述
到0回車。。。
#6uboot設置
這裏寫圖片描述
這裏寫圖片描述
#7通過tftp服務器下載uImage
這裏寫圖片描述
這裏寫圖片描述
#8啓動內核
這裏寫圖片描述
這時啓動內核後還不會進入文件系統
#9先看掛載文件系統的樣子
先看現象:掛載成功,啓動板子,再tftp下載
這裏寫圖片描述
#10下面正式來操作
##10.1安裝nfs-kernel-server
這裏寫圖片描述
##10.2配置網絡文件系統
這裏寫圖片描述
重啓遠程文件系統
/etc/init.d/nfs-kernel-server restart
##10.3配置內核裏面的nfs選項
make menuconfig
這裏寫圖片描述
#11配置開發板的啓動參數
這裏寫圖片描述
這裏寫圖片描述
#12操作板子的Linux
下來可以通過SecureCRT操作板子的Linux系統了。我們可以在Ubuntu先用arm-linux-gcc 編譯一個hello.c,然後把可執行文件複製到板子的遠程文件系統,最後在SecureCRT裏運行hello。
#13注意(總結)

  • 64位Ubuntu 編譯linux源碼arm-linux-gcc問題

好像要下載個軟件
吳兵(1040003585) 2017-5-16 14:36:59
make出問題
韓滔(1198637117) 2017-5-16 14:37:50
你用的vm和Ubuntu什麼版本
吳兵(1040003585) 2017-5-16 14:39:19
ubuntu 64位
程老師(1209050967) 2017-5-16 14:43:25
但arm編譯器是32位

韓滔(1198637117) 2017-5-16 14:45:08
sudo apt-get install lsb-core

吳兵(1040003585) 2017-5-16 14:57:27

吳兵(1040003585) 2017-5-16 16:32:38
板子網線是連接和電腦同一個網段的路由器
吳兵(1040003585) 2017-5-16 17:00:03
tftp
吳兵(1040003585) 2017-5-16 17:01:58
搞定

  • bootm之後就卡在這裏——兩個782改爲1999

這裏寫圖片描述

參考文檔,把782改成1999即可@吳兵
吳兵(1040003585) 2017-5-16 17:43:40
ok
吳兵(1040003585) 2017-5-16 17:52:45
@張奧華 兩個782都要改嗎?
這是什麼道理
張奧華(434638973) 2017-5-16 17:52:57
是的
改成1999
mach type不匹配
程老師(1209050967) 2017-5-16 17:53:39
uboot引導的內核需要與其機器類型一致
這裏寫圖片描述
這裏寫圖片描述
這裏寫圖片描述

  • 設置bootargs (文件系統路徑)

setenv bootargs noinitrd root=/dev/nfs rw nfsroot= 172.16.245.93:/home/wuchengbing/linux/root_nfs ip= 172.16.245.254:172.16.245.93: 172.16.245.1:255.255.255.0 console=ttySAC0,115200 init=/linuxrc mem=64M

文件系統IP:172.16.245.93
板子IP:172.16.245.254
網關:172.16.245.1
掩碼:255.255.255.0

  • bootm能不能成功掛載文件系統

@張奧華 搞定,重啓遠程文件系統
/etc/init.d/nfs-kernel-server restart
吳兵(1040003585) 2017-5-16 18:59:05

#附錄

工具下載鏈接:
https://github.com/1040003585/Mini2440/tree/master/Tools

Wu_Being 博客聲明:本人博客歡迎轉載,請標明博客原文和原鏈接!謝謝!
《【ARM】一步一步移植Linux Kernel 2.6.13到板子》
http://blog.csdn.net/u014134180/article/details/72873397

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章