1. 程式人生 > >buildroot學習(三)——at91sam9g45軟體平臺更新

buildroot學習(三)——at91sam9g45軟體平臺更新

轉載地址:https://blog.csdn.net/srf1986/article/details/52294301

繼續探索buildroot的神奇世界

1、繼續以make menuconfig開啟buildroot

(1)Taget option選項

主要是目標系統的處理器配置可以看到我的9G45是ARM926版本,其他的選項根據自己的情況配置,我使用預設配置即可

(2)Build options選項

跟下載和編譯相關,我採用預設配置

(3)Toolchain 選項

編譯工具鏈選項,我選擇的是外部編譯鏈,Sourecry CodeBench ARM 2014.05,至於外部編譯工具和內部編譯工具的區別,

看官網的manual.pdf就明白了,其他選項我採用預設配置

(4)System configuration選項

這個選項與你的根檔案系統有關係了

System hostname -> 配置主機名

System banner  ->系統歡迎詞吧,等移植到開發板後上傳效果圖

Passwords encoding  -> 系統密碼編碼方式,支援md5,sha256,sha512,足夠滿足你的需求了

Iint system ->  init程序使用的軟體,有busybox,systemV,systemd,init介紹在manual.pdf有介紹,我還是選擇之前熟悉的busybox吧,

發行版linux一般採用systemV方式

/dev management -> 我更改了,我改為Dynamic using devtmpfs + mdev模式

後面的選項我就不一一說明了,一看就明白了,不過有個選項是Root password 設定你的開機密碼,這個還是挺方便的

(5)Kernel 選項

選擇你要的核心,這個根據你的需求來定,我使用當前最新的linux4.4,再進行kernel中的選項配置時,

①Defconfig name 的名稱一定要在你的arch/arm/configs中能找到

②kernel binary format 選擇你要的核心燒寫檔案,我選擇uImage模式

③load address 這個選項很重要,就是這個需要和uboot根據uboot引數進行修改,在下面的移植中進行更改,我根據之前的經驗

先寫0x10080000,後面在移植uboot中看是否需要更改這個值

④Build a Device Tree Blob(DTB)這個功能我只最近才知道的,百度下,就是進一步增加可移植性,同一款晶片不同的電路板

可以做到同一個核心,不同的dtb檔案,這個dtb檔案就是硬體介面描述檔案,我也只是淺淺的看了下,後面在移植驅動時,深入探索

後面的我使用預設選項,自己看看吧

(6)Target packages 選項

這是我為之一振的功能,通過他可以輕鬆地將你需要的工具交叉編譯到開發板上,這個是下面要深入學習的,這裡就不講了,很快我就會

挨個百度其功能,並記錄,整理出一個我要的工具清單

(7)Filesystem image 選項

就是你檔案系統的型別,我使用其推薦的ubifs檔案系統,這個檔案系統是代替jffs2的檔案系統,效能好,主要是實現機理是寫回式操作,

就是將要寫入nandflash的內容先在記憶體中快取起來,在合適的時機寫,作業系統有自己的會寫時間演算法,按照我現在淺淺的理解核心,

有兩個指標,一個要會寫緩衝區的長度,一個是緩衝區髒時間,作業系統超過多長呼叫pflush核心執行緒指標我還沒找到,髒時間我找到了,

在linux2.6.30核心中mm/writepage.c有程式碼,時間預設是30s

ubifs的引數設定也挺繁瑣的,我後面在移植中會介紹引數設定方式

(8)Bootloaders選項

atmel這機款ARM9處理器,在uboot之前,還有自己的bootload,就是bootstrap,bootstrap就是引導uboot用的,bootloaders我採用預設

選項,不過核心我採用了DTB模式,uboot怎麼更改,後面移植中我在探索下

對於uboot,我的要求就是,可以網路下載核心,網路掛在根檔案系統,可以方便核心學習;可以從nandflash啟動核心和掛載根檔案系統。這個

兩個功能實在uboot的環境變數中設定的,在移植中,我在設定

(9)Host utilities選項

你的編譯主機的工具,預設配置帶的是samba燒寫工具,就是專門燒寫atmel的工具

(10)Legacy config options 選項

以前的配置,我沒動,預設設定就是啥沒選

以上是大體瀏覽了buildroot的配置選項

後面的任務就是,查詢Target packages中工具的功能,和移植的9G45開發板,最近工作比較忙,所以一直沒一直,等稍微有空就移植,還是先

查詢工具功能,看看我能用他們幹什麼
--------------------- 
作者:海邊自在生活 
來源:CSDN 
原文:https://blog.csdn.net/srf1986/article/details/52294301 
版權宣告:本文為博主原創文章,轉載請附上博文連結!