色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

電子發燒友App

硬聲App

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

電子發燒友網>嵌入式技術>嵌入式操作系統>U-Boot在基于BF561的嵌入式Linux系統上的移植 - 全文

U-Boot在基于BF561的嵌入式Linux系統上的移植 - 全文

4 U-BOOT的移植

4.1 ?U-Boot方法與要點

????移植U-Boot簡便的方法是從U-Boot支持的開發板中選擇一個與其目標板接近的開發板進行修改。需修改的是與硬件相關的部分,涉及到兩個層面:針對CPU的移植,由于U-Boot_1.1.3支持BF561,故只需做第二層面的移植:針對目標板硬件的移植。在移植前,需仔細閱讀U-Boot/readme文件,該文件對目錄結構和如何移植作了簡要介紹。從移植U-Boot的最小要求、U- Boot能夠正常啟動的角度出發,選擇BF561的STAMP板為模板,相關源代碼在/board/stamp目錄下,結合U-Boot的啟動流程,主要修改文件如下:
????(1)與目標板相關的代碼部分:在board下創建mybf561目錄,無需從頭開始,參考與目標板相似的STAMP板在mybf561目錄下創建mybf561.c、mybf561.h、flash.c、config.mk、Makefie等文件。需要修改/board/mybf561/config.mk:
TEXT_BASE = 0x01FC0000
PLATFORM_CPPFLAGS += - I$(TOPDIR)
TFEXT_BASE用于設置程序編譯鏈接的起始地址即將U-Boot的stage2拷貝到SDRAM的TEXT_BASE處,即SDRAM最頂層一段存儲區。修改board/mybf561/Makefile:
include $(TOPDIR)/config.mk
LIB= lib$(BOARD).a???????????? # 選擇庫文件
OBJS=$(BOARD).o mybf561.o???? # 目標文件
????(2)與CPU相關的代碼部分:U-Boot_1.1.3/epu文件中含有BF561的目錄,其中包含start.s、cpu.c、cpu.h、interrupt.c、init_sdram.s等。故不需要建立與cpu相關的文件目錄。
????(3)與頭文件相關的代碼:在include/configs創建mybf561.h,參考include/configs/stamp.h,如下:
#define CONFIG_MYBF561 1
#define CONFIG_CLKIN_HZ 1000000?? // 輸入時鐘
#define CONFIG_PLL_BYPASS 0???? ??// 使用鎖相環
????與Flash 相關設置:
#define CFG_FLASH_BASE 0x20000000??? // Flash起始地址
#define CFG_MAX_FLASH_BANKS 1 ????// max number of memory banks
#define CFG_MAX_FLASH_SECT 67????? // max number of sector on one chip
#define CFG_ENV_ADDR 0x20004000???? // 環境變量保存地址
#define CFG_ENV_OFFSET?? (CFG_ENV_ADDR-CFG_FLASH_BASE)
#define CFG_ENV_SIZE????????? 0x2000
#define CFG_ENV_SECT_SIZE??? 0x2000
????Flash的修改與具體型號和容量有關,修改過程中參考Flash擦除數據命令、特定寄存器的寫入地址以及扇區的大小和位置。
與SDRAM相關設置:
# define CONFIG_MEM_SIZE 32??? // 128,64,32,16
# define CONFIG_MEM_ADD_WDTH?? // 8,9,10,11
# define CONFIG_MEM_MT48LC64M4A2FB_7E 1
# define CFG_MEMTEST_START 0x00000000???
// memtest works on
# if (CONFIG_MEM_SIZE == 32)
# define CFG_MAX_RAM_SIZE 0x02000000
# define CFG_MEMTEST_END 0x01F7FFFF????
// 1…31.5MB in DRAM
# define CFG_LOAD_ADDR 0x01000000
//default load
????最后一行要用Tab鍵開頭表示命令。其中blackfin表示CPU的種類。bf561是cpu bf561對應的代碼目錄,mybf561是目標板對應的目錄。這樣可使用make mybf561_config配置自身的開發板。
????其他修改視情況而定。如根據SDRAM大小修改cplb表,根據需要修改堆棧大小。如drivers/cfi_flash.c中flash_init()函數,cpu/bf561/ints.c中init_IRQ()函數等。
????修改完畢后就可以采用以下命令編譯U-Boot:bash$>make clean,bash$>make mrproper,bash$>make mybf561_ config,bash$>make。
????編譯完后U-Boot_1.1.3生成U-Boot的二進制文件U-Boot.bin(U- Boot.bin只能用于更新)。執行bash$>bfin-uclinux-objcopy-I binary-Oihex U-Boot.bin,生成可在Windows下首次燒寫到Flash的十六進制文件U-Boot.hex。

4.2? U-Boot的燒寫

????下載U-Boot到目標板,或者當U-Boot不能正常啟動時,必須通過JTAG或者ADI ICE將U-Boot下載到目標板。在此可將ADI公司仿真器與Visual DSP++環境相連,通過Visual DSP++,在TOOLS-->Flash Programmer下執行Flash驅動程序M25P64.dxe,選擇"Erase all"-->Load Flie燒寫U-Boot.hex文件到Flash中。
????移植成功后,打開終端minicom復位開發板,若串口能輸出正確的啟動信息.則表明移植基本成功。啟動后,如果在設定的時間內,串口沒有接收到按鍵。U-Boot將自動加載操作系統內核和文件系統。若設定時間內串口接收到按鍵,則U-Boot停止自動加載,進入命令行,可看到U-Boot的提示符"mybf561>",查看Flash信息,調試或手動加載內核。
????生成新的U-Boot.bin文件后。可通過Ethernet或者串口更新U-Boot。因為網絡的傳輸速度遠比串口快,故一般選擇網絡傳輸。將新生成的U-Boot.bin拷貝到宿主機根目錄下的tftpboot目錄(前提是已經創建tftp sever),在目標板出現U-Boot提示符后。按任意鍵進入下載模式:
????mybf561>tftp 0x1000000 U-Boot.bin
????0x1000000為SDRAM默認的下載地址空間,用于U-Boot的升級、調試。當需要升級或者修改U-Boot,可將新的U-Boot從SDRAM燒寫到Flash,覆蓋原來的U-Boot,以減少燒寫Flash的次數。在燒寫以前最好測試一下所下載的U-Boot能否正常運行:
????Mybf561>go 0x1000000
????如果運行正常就可將U-Boot寫到Flash中:
????mybf561>protect off all
????mybf561>erase all
#可只擦除部分扇區
????檢驗寫入Flash中的內容是否正確:
????mybf561>cp.b 0x1000000 0x20000000? $(filesize)
????mybf561>cmp.b 0x1000000 0x20000000? $(filesize)
????如果不正確,應重復執行Erase all 和Copy 命令,直到正確為止。至此,U-Boot移植的步驟基本完成。

5 結束語

????U-Boot是一個功能強大的Boot loader。前期移植工作是嵌入式系統開發的首要環節。嵌入式開發人員應該在了解U-Boot的工作機理、移植條件后,根據目標板和具體情況靈活裁減U -Boot以提高操作系統移植的穩定性,縮短移植周期,降低產品成本,為后續開發奠定了良好的基礎。
上一頁12全文
收藏0

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴

評論

请按住滑块,拖动到最右边
了解新功能

查看更多

相關推薦

嵌入式Linux引導以及U-Boot移植深度分析

引言:本文簡明扼要的介紹了嵌入式Linux的引導過程,X86體系的引導過程以及幾種常見嵌入式處理器的引導過程,U-Boot移植的基本步驟、常用命令如何使用。通過本文可以對嵌入式Linux的引導
2020-05-11 06:54:001749

U-boot的基本介紹

從本文開始,將陸續推送“手把手教你移植U-boot”系列文章,目標是由淺入深地講解U-boot的工作流程、原理、配置方法和移植方法,手把手教你完成U-boot移植工作,默認硬件開發平臺為ARM,操作系統Linux
2023-07-14 16:52:011239

U-Boot NAND FLASH移植

FLASH設備的底層驅動3.根據出現的問題、錯誤進行細微調整三、移植步驟1.修改配置文件 參考韋老師的書《嵌入式Linux應用開發完全手冊》,開始我們的移植工作。首先在配置文件smdk2410.h
2019-07-03 05:45:43

U-BootAT91RM9200移植及啟動分析

嵌入式操作系統內核,具有較高的可靠性和穩定性,已經成為功能最多、靈活性最強并且開發最積極的開放源碼BootLoader。作為通用的BootLoader,U-Boot可以方便地移植到其他硬件平臺上。本文
2010-03-16 11:00:22

U-BootPXA255目標板移植過程

較高的可靠性和穩定性;高度靈活的功能設置;豐富的設備驅動程序和豐富的開發和調試文檔,因此選擇U-Boot作為目標板的Bootloader。對于嵌入式系統,Bootloader是基于特定的硬件來實現
2019-06-20 06:38:20

U-Boot移植DM9000網卡分享!

U-Boot移植DM9000網卡——西伯利亞的風 根據書《嵌入式Linux應用開發完全手冊》移植網卡驅動,對于Jz2440開發板好像并不適用,Jz2440開發板使用的是DM9000網卡,已經不是書上
2019-07-29 00:06:31

U-BootLinux內核系統是怎樣去移植

前言這是哈工大嵌入式軟硬件設計上機實驗教程第二期U-Boot、Linux 內核的系統移植實驗。U-BootLinux 內核的系統移植實驗1.編譯uboot設置環境變量export ARCH
2021-12-22 06:01:56

U-Boot移植操作

U-Boot移植U-Boot移植主要分為兩個層面,一個是對CPU的移植,一個是針對Board的移植U-Boot中已經有大量可直接下載到某些開發板的程序,為了減小工作量,可選一個最接近自己設計的開發板來進行修改。本設計中采用了stamp目標板。
2019-07-15 07:48:00

U-boot移植步驟詳解!

習的過程中,想不使用補丁文件,自己通過修改將u-boot移植到Jz2440開發板,按照《嵌入式Linux應用開發完全手冊》操作后,發現還是存在問題,所以研究了一下,最終實現將U-Boot移植到Jz2440
2019-08-23 02:13:10

U BootS3C2410移植

cpu構建,要想讓運行在一塊板子的botloader程序也能運行在另一塊板子,通常也都需要修改botloader的源程序。本文就是將運行在目標板smdk2410的bootloader(u-boot)移植到自己的開發板
2009-03-28 13:35:31

u-boot

最近在移植u-boot,移植到dm9000網卡的時候出問題了。u-boot能識別dm9000,并且板子通過u-boot能ping通服務器,但是tftp下載時候一直處于等待狀態。。。,搞了兩天了,還沒解決。有沒有遇到這個問題的大神們,指教指教啊。。。。
2014-04-14 16:48:01

u-boot

最近在移植u-boot移植到dm9000網卡的時候出問題了。u-boot能識別dm9000,并且板子通過u-boot能ping通服務器,但是tftp下載時候一直處于等待狀態。。。,搞了兩天了,還沒解決。有沒有遇到這個問題的大神們,指教指教啊。。。。
2014-04-14 16:53:04

正在加载...

主站蜘蛛池模板: 办公室韩国电影免费完整版 | 涩涩电影网 | 中文字幕A片视频一区二区 中文字幕AV在线一二三区 | yellow片在线观看免费观看动漫 | 国产精品伦一区二区三级视频 | 国产精品爽爽久久久久久蜜桃 | 日本一在线中文字幕 | 忘忧草在线影院WWW日本动漫 | 老师掀开短裙让我挺进动态 | 男人就爱吃这套下载 | 亚洲精品无码专区在线播放 | 精品一区二区三区四区五区六区 | 中文字幕在线观看 | 国产成人小视频在线观看 | zxfuli午夜福利在线 | 国产精品97久久久久久AV色戒 | SAO货腿张开JI巴CAO死我 | 中文免费视频 | 91偷偷久久做嫩草电影院 | 99久久久国产精品免费调教 | 5G年龄确认我已满18免费 | 欧美亚洲日韩国产在线在线 | 女人高潮时一吸一夹 | 桃花在线观看播放 | 亚洲精品久久AV无码蜜桃 | 国产互换后人妻的疯狂VIDEO | 乡土女性网动态图解 | 囯产免费精品一品二区三区视频 | 在线中文字幕亚洲日韩 | 最新国产三级在线不卡视频 | 最好看中文字幕国语 | 亚洲精品www久久久久久久软件 | 奶头从情趣内衣下露了出来AV | 国产传媒精品1区2区3区 | 亚洲午夜久久久精品电影院 | 小雪奶水涨翁工帮吸的推荐语录 | 国产AV果冻传奇麻豆 | 一边喂奶一边做边爱 | 国产69精品久久久久妇女 | 看80后操| 亚洲乱亚洲乱妇13p 亚洲乱色视频在线观看 |