新聞中心

ARM9的bootloader---vivi

作者: 時(shí)間:2016-11-10 來源:網(wǎng)絡(luò) 收藏
vivi是韓國mizi 公司開發(fā)的bootloader, 適用于ARM9處理器。Vivi有兩種工作模式:啟動(dòng)加載模式和下載模式。啟動(dòng)加載模式可以在一段時(shí)間后(這個(gè)時(shí)間可更改)自行啟動(dòng)linux內(nèi)核,這時(shí)vivi的默認(rèn)模式。在下載模式下,vivi為用戶提供一個(gè)命令行接口,通過接口可以使用vivi提供的一些命令,如下:
  命令
  功能
  Load
  把二進(jìn)制文件載入Flash或RAM
  Part
  操作MTD分區(qū)信息。顯示、增加、刪除、復(fù)位、保存MTD分區(qū)
  Param
  設(shè)置參數(shù)
  Boot
  啟動(dòng)系統(tǒng)
  Flash
  管理Flash,如刪除Flash的數(shù)據(jù)
  vivi代碼分析
  vivi的代碼包括arch,init,lib,drivers和include等幾個(gè)目錄,共200多條文件。
  Vivi主要包括下面幾個(gè)目錄:
  arch:此目錄包括了所有vivi支持的目標(biāo)板的子目錄,例如s3c2410目錄。
  drivers:其中包括了引導(dǎo)內(nèi)核需要的設(shè)備的驅(qū)動(dòng)程序(MTD和串口)。MTD目錄下分map、nand和nor三個(gè)目錄。
  init:這個(gè)目錄只有main.c和version.c兩個(gè)文件。和普通的C程序一樣,vivi將從main函數(shù)開始執(zhí)行。
  lib:一些平臺(tái)公共的接口代碼,比如time.c里的udelay()和mdelay()。
  include:頭文件的公共目錄,其中的s3c2410.h定義了這塊處理器的一些寄存器。Platform/smdk2410.h定義了與開發(fā)板相關(guān)的資源配置參數(shù),我們往往只需要修改這個(gè)文件就可以配置目標(biāo)板的參數(shù),如波特率、引導(dǎo)參數(shù)、物理內(nèi)存映射等。


關(guān)鍵詞: ARM9bootloaderviv

評(píng)論


技術(shù)專區(qū)

關(guān)閉