中文字幕 另类精品,亚洲欧美一区二区蜜桃,日本在线精品视频免费,孩交精品乱子片免费

<sup id="3hn2b"></sup>

    1. <sub id="3hn2b"><ol id="3hn2b"></ol></sub><legend id="3hn2b"></legend>

      1. <xmp id="3hn2b"></xmp>

      2. 新聞中心

        EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于PxA255的U-B00t啟動(dòng)分析及移植

        基于PxA255的U-B00t啟動(dòng)分析及移植

        作者: 時(shí)間:2009-05-19 來源:網(wǎng)絡(luò) 收藏

        3.4.1 目標(biāo)板配置文件的修改
        目標(biāo)板配置文件inclLlde/configs/xsbase255.h,是過程中最重要的文件。在這個(gè)文件中,包括兩種類型的配置,一類是選項(xiàng),前綴是CONFIG_,用來選擇處理器、接口、命令、屬性等;另一類是CFG_用來定義總線頻率、串口波特率等。例如:
        #define CONFIG_PXA255 1
        #define CFG_SDRAMBASE O xa0000000
        在這個(gè)頭文件中,配置相當(dāng)?shù)闹匾锩媾渲弥饕布膮?shù),配置時(shí)必須結(jié)合相應(yīng)的硬件手冊(cè)才能正確的完成。主要的配置參數(shù)如表1所示。

        本文引用地址:http://www.antipu.com.cn/article/152485.htm

        除了上述表格列舉的以外,還有一些其他的參數(shù)需要修改,例如控制臺(tái)串口缺省的通信波特率,缺省的環(huán)境變量設(shè)置(包括本地IP地址、以太網(wǎng)接口的掩碼和MAC地址、服務(wù)器IP地址、傳遞給內(nèi)核的命令行參數(shù)等),參數(shù)列表配置等。頭文件的修改需要對(duì)目標(biāo)板的硬件資源有相當(dāng)?shù)牧私?,主要參考處理器和目?biāo)板的開發(fā)文檔。
        3.4.2 目標(biāo)板支持文件的修改
        目標(biāo)板支持文件board/xsbase255/xsbase255.c也需要修改,此文件中的重點(diǎn)是board_init()函數(shù),這個(gè)函數(shù)里包含與開發(fā)板密切相關(guān)的設(shè)備的初始化。bi_arch_number為系統(tǒng)時(shí)傳遞給內(nèi)核的MACH號(hào),如果這個(gè)參數(shù)與內(nèi)核配置的不相同,則內(nèi)核解壓縮完成后將出現(xiàn)“Error:a”錯(cuò)誤,提示用戶這個(gè)是體系結(jié)構(gòu)參數(shù)傳遞不正確。bi_boot_params為啟動(dòng)參數(shù)的地址,一般放在RAM起始的16 Kb處,在此設(shè)置為Oxa0000100。
        3.4.3 驅(qū)動(dòng)的
        在這一部分主要包括閃存和網(wǎng)卡驅(qū)動(dòng)程序的。
        (1)FLASH驅(qū)動(dòng)。這里所使用的目標(biāo)板采用2片NOR型閃存,單片容量16 MB,數(shù)據(jù)線寬度為16 b,2片并作1個(gè)32 MB的數(shù)據(jù)寬度為32 b的。BANK。U-Boot本身支持CFI接口規(guī)范的閃存(CFI是針對(duì)NOR型FLASH提出的一種獲取閃存和結(jié)構(gòu)參數(shù)的操作規(guī)程和標(biāo)準(zhǔn)),涉及到的文件主要包括drivers/cfi-FLASH.c,comrhand/cmd_FLASH.c。要使U-Boot,支持CFI驅(qū)動(dòng),只需在include/configs/xsbase255.h中添加:
        #define CFG_FLASH_CFI
        #defineCFG_FLASH_CFl_DRIVER 1
        (2)網(wǎng)卡驅(qū)動(dòng)。這里使用的目標(biāo)板上采用的網(wǎng)卡是LAN91C96,U-Boot自帶的驅(qū)動(dòng)程序drivers/lan91c96.c恰好支持這個(gè)網(wǎng)卡,因此只需在include/Configs/xsbase255.h中添加相應(yīng)的配置即可:
        #define CONFIG_DRIVER_IAN91C96
        #define CONFIG_LAN91C96_BASE 0x0C000300
        CONFIG_LAN91C96_BASE定義的值,應(yīng)當(dāng)由網(wǎng)卡的片選地址和I/O基址決定。如果U-Boot固有的驅(qū)動(dòng)程序沒有對(duì)目標(biāo)板的支持,就需要自行在board/xsbase255目錄下添加驅(qū)動(dòng)程序,然后將其添加到本目錄的Makefile中進(jìn)行編譯和鏈接。


        4 U-Boot的編譯和下載調(diào)試
        在U-Boot根目錄里輸入命令:
        make xsbase255_config
        該命令通過./mkconfig腳本生成include/config.mk的配置文件,然后運(yùn)行make命令,完成編譯。如果在編譯過程中出現(xiàn)錯(cuò)誤,可根據(jù)錯(cuò)誤的提示逐一排查。完成了錯(cuò)誤的修改,在重新編譯前,先運(yùn)行make distclean命令,對(duì)先前編譯生成的文件進(jìn)行徹底的清除。
        成功編譯后,會(huì)生成3種不同的映像格式,分別是:u-boot:.bin(二進(jìn)制格式),u-boot(ELF格式)和u-boot.srec(S―Record格式),根據(jù)加載器的不同,選擇合適的格式燒寫到FLASH中進(jìn)行運(yùn)行調(diào)試。在此選擇u-boot.bin,直接按照二進(jìn)制格式下載。
        最有效的調(diào)試方法是下載映像到FLASH,使用硬件仿真器進(jìn)行跟蹤調(diào)試。但是由于硬件仿真器價(jià)格高等客觀因素,采用軟件跟蹤的方法,利用目標(biāo)板上的LED燈做出判斷。一旦可以打印串口信息,就可以利用串口,將調(diào)試信息輸出到屏幕上。


        5 結(jié) 語(yǔ)
        U-Boot是一個(gè)功能強(qiáng)大的:Bootloader開發(fā)軟件,對(duì)多種開發(fā)板的支持使得它可以方便地移植到目標(biāo)板上。首先詳細(xì)U-Boot啟動(dòng)流程,然后詳細(xì)介紹U-Boot在PXA255目標(biāo)板上移植的全過程。目前U-Boot已經(jīng)在目標(biāo)板上穩(wěn)定的運(yùn)行,為L(zhǎng)inux內(nèi)核的移植打下了堅(jiān)實(shí)的基礎(chǔ)。


        上一頁(yè) 1 2 3 下一頁(yè)

        評(píng)論


        相關(guān)推薦

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

        關(guān)閉