日韩一区二区三区精品,欧美疯狂xxxxbbbb牲交,热99re久久免费视精品频,人妻互换 综合,欧美激情肉欲高潮视频

6410上移植uboot

發(fā)布者:溫暖的微風(fēng)最新更新時間:2024-11-06 來源: cnblogs關(guān)鍵字:移植  uboot 手機(jī)看文章 掃描二維碼
隨時隨地手機(jī)看文章

由于Uboot2011.06對S3C6410有了很好的支持,所以采用Uboot2011.06版本。
一、             移植環(huán)境
主 機(jī):VMWare-ubuntu
開發(fā)板:ok6410—512M nandflash,Kernel:2.6.30.4
u-boot:u-boot-2011.06

二、       源碼獲得
              Uboot源碼到:ftp://ftp.denx.de/pub/u-boot/下載
三、     本次移植的功能實現(xiàn)
· 支持Nand Flash讀寫
· 支持從Nand Flash/SD啟動(SD卡啟動只在uboot1.1.6中完成)
· 支持CS8900或者DM9000網(wǎng)卡
· 支持Yaffs文件系統(tǒng)
· 支持USB下載
四、     移植步驟
              1. 建立自己的開發(fā)板項目并測試編譯
目前u-boot對很多CPU直接支持,可以查看board目錄的一些子目錄,如:board/samsung/目錄下就是對三星一些ARM處理器的支持,有smdk2400、smdk2410和smdk6400,但沒有6410,所以我們就在這里建立自己的開發(fā)板項目。
1)因6410和6400的資源差不多,主頻和外設(shè)有點差別,所以我們就在board/samsung/下建立自己開發(fā)板的項目,取名叫smdk6410
#tar -jxvf u-boot-2011.06.tar.bz2    //解壓源碼
#cd u-boot-2011.06/board/samsung/    //進(jìn)入目錄
#mkdir smdk6410                        //創(chuàng)建smkd6410文件夾
2)因6410和6400的資源差不多,所以就以6400項目的代碼作為模板,以后再修改
#cp -ar smdk6400/* smdk6410/   //將6400下所有的代碼復(fù)制到6410下
#cd smdk6410                   //進(jìn)入smdk6410目錄
#mv smdk6400.c my6410.c      //將smdk6410下的smdk6400.c改名為smdk6410.c
#cd ../../../                //回到u-boot根目錄
#cp include/configs/smdk6400.h include/configs/smdk6410.h //建立6410配置頭文件

注:把新建smdk6410下smdk6400_nand_spl.c更名位smdk6410_nand_spl.c,并且把smdk6410_nand_spl.c和makefile文件中的6400改為6410。其他文件不需要改動。


3)修改u-boot跟目錄下的Makefile文件。查找到smdk6400_config的地方,在他下面按照smdk6400_config的格式建立smdk6410_config的編譯選項,另外還要指定交叉編譯器

#vim Makefile


CROSS_COMPILE ?= arm-linux-        //指定交叉編譯器為arm-linux-gcc
smdk6410_noUSB_config
smdk6410_config      :      unconfig
      @mkdir -p $(obj)include $(obj)board/samsung/smdk6410       // 注意@前不是空格,是Tab鍵
      @mkdir -p $(obj)nand_spl/board/samsung/smdk6410
      @echo '#define CONFIG_NAND_U_BOOT' > $(obj)include/config.h
      @if [ -z '$(findstring smdk6410_noUSB_config,$@)' ]; then                  
             echo 'RAM_TEXT = 0x57e00000' >> $(obj)board/samsung/smdk6410/config.tmp;           //前面兩個Tab鍵
             $(MKCONFIG) $(@:_config=) arm arm1176 smdk6410 samsung s3c64xx;            
      else                                                               
             echo 'RAM_TEXT = 0xc7e00000' >> $(obj)board/samsung/smdk6410/config.tmp;
             $(MKCONFIG) $(@:_noUSB_config=) arm arm1176 smdk6410 samsung s3c64xx;      
      fi
      @echo 'CONFIG_NAND_U_BOOT = y' >> $(obj)include/config.mk

*說明:arm    :CPU的架構(gòu)(ARCH)

       arm1176:CPU的類型

       smdk6410 :對應(yīng)在board目錄下建立新的開發(fā)板項目的目錄

       samsung:新開發(fā)板項目目錄的上級目錄,如直接在board下建立新的開發(fā)板項目的目錄,則這里就為NULL

       s3c64xx:CPU型號

*注意:編譯選項格式的第二行要用Tab鍵開始,否則編譯會出錯



4)進(jìn)入頂層目錄nand_spl/board/samsung目錄新建目錄smdk6410,并將smdk6400下的文件復(fù)制到剛剛新建的smdk6410下

#cd nand_spl/board/samsung //

#cp –ar smdk6400/* smdk6410/

注:修改目此6410目錄下的makefile文件,把里面的6400改為6410


5)測試編譯新建的smdk6410開發(fā)板項目

#make smdk6410_config //如果出現(xiàn)Configuring for smdk6410 board...則表示設(shè)置正確

#make //編譯后在根目錄下會出現(xiàn)u-boot.bin和u-boot-nand.bin文件,則u-boot移植的第一步就算完成了



由于此版本的u-boot對于串口和時鐘在開始配置文件中就已經(jīng)初始化,對于ARM1176有很好的支持,利用從SD卡啟動的uboot將u-boot-nand.bin下載到nand flash中,同時將開發(fā)板上SW2設(shè)置到從Nand flash啟動位置。利用SecureCRT.exe軟件觀察串口打印信息如下:


可以看到移植在tq6410上移植uboot已經(jīng)成功??墒荖or flash是2M可是信息上顯示為0,是因為沒有添加Nor flash的驅(qū)動引起的,而且開發(fā)板上自帶的是DM9000AE的100M網(wǎng)卡,而uboot默認(rèn)支持CS8900所以開始添加uboot的相關(guān)功能。

移植是采用SD燒寫nand flash的uboot,為了方便燒寫和調(diào)試首先移植網(wǎng)卡實現(xiàn)tftp下載。


關(guān)鍵字:移植  uboot 引用地址:6410上移植uboot

上一篇:Centos 上搭建nfs且可掛載到6410開發(fā)板
下一篇:編譯可加載觸摸屏驅(qū)動的uImage內(nèi)核

小廣播
設(shè)計資源 培訓(xùn) 開發(fā)板 精華推薦

最新單片機(jī)文章

 
EEWorld訂閱號

 
EEWorld服務(wù)號

 
汽車開發(fā)圈

 
機(jī)器人開發(fā)圈

電子工程世界版權(quán)所有 京ICP證060456號 京ICP備10001474號-1 電信業(yè)務(wù)審批[2006]字第258號函 京公網(wǎng)安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved