溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Freescale Ltib-MPC8308如何安裝,編譯,燒寫uboot

發(fā)布時間:2021-11-26 14:00:09 來源:億速云 閱讀:185 作者:小新 欄目:互聯(lián)網(wǎng)科技

這篇文章主要介紹Freescale Ltib-MPC8308如何安裝,編譯,燒寫uboot,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!

在VM(Fedroa9)上建立交叉編譯環(huán)境
. 安裝步驟(in Fedora9)
  (TLIB是Freescale比較早期開發(fā)的跨平臺交叉編譯包, 所以不建議在新近的Linux上運(yùn)行)
  (TLIB建議在Redhead系Linux上運(yùn)行)
  (故我們最終選擇Fedroa9平臺 with GCC4.3)
      
 
  原始文檔: ltib-mpc8308erdb-20100413.iso;
 
  首先mount該iso:
    mount -o loop ltib-mpc8308erdb-20100413.iso /mnt/ltib
    
  安裝:
    cd /mnt/ltib
    ./install
    安裝時程序會提示要安裝的目錄, 本例中設(shè)置目錄為 ~/WorkShop;
    安裝完成后我們得到 ~/WorkShop/mpc8308erdb-20100413/;
    
  調(diào)整visudo:
    由于運(yùn)行l(wèi)tib程序需要用戶級權(quán)限, 然而運(yùn)行過程中又需要某些root權(quán)限下的操作,
    故首先需要調(diào)整sudo組權(quán)限:
      cd /usr/sbin/
      ./visudo
      在User privilege section下添加
      quakezh ALL=NOPASSWD: /bin/rpm, /opt/freescale/ltib/usr/bin/rpm
      保存, 退出
 
  首次運(yùn)行l(wèi)tib程序:
    ./ltib
    若系統(tǒng)缺少所必須的工具包, 會給予提示;
    首次運(yùn)行l(wèi)tib需要較長時間, 完成后, 交叉目標(biāo)平臺的工具鏈被保存在 /opt/freescale下,
    其中, gcc(for Freescale e300c)保存在/ope/freescale/usr/local/目錄下,
      用戶若開發(fā)該平臺的應(yīng)用程序, 需使用此gcc來編譯;
    
    
-------------------------------------------------------------------------------
. LTIB命令
  ./ltib -m config
  僅配置
 
  ./ltib --configure
  配置及編譯
 
  ltib [-m <mode>] [options....]
  舉例:    
    ./ltib -m prep -p helloworld    
    對helloworld文件包解壓, 輸出目錄為/../安裝目錄/ltib-mpc8313erdb-20070824/rpm/BUILD;
    
    ./ltib -m prep -p kernel
    ./ltib -m prep -p u-boot
    解出的源文件保存在 rpm/BUILD
    
    ./ltib -m scbuild -p kernel

  下面給出LTIB的常用命令:
  --mode | m
    prep            //解開源碼包并打補(bǔ)丁
    scbuild            //解開源碼包、打補(bǔ)丁然后編譯
    scinstall        //解開源碼包、打補(bǔ)丁,編譯后安裝
    scdeploy        //運(yùn)行一個scinstall命令并安裝到rootfs下
    patchmerge        //生成并且合并一個補(bǔ)丁 (需要與-p <pkg>一起使用)
    clean            //清除并且反安裝目標(biāo)源碼包
    distclean        //完全清除,移除相關(guān)的所有東西
    listpkgs        //列出源碼包(按字母排序)
    release            //制作一個二進(jìn)制發(fā)布iso鏡像
    config            //使用--configure命令,僅做配置
    shell            //進(jìn)入ltib命令行模式
  --pkg|p :           //僅操作指定源碼包
  --configure|c :      //運(yùn)行交互式配置
  --preconfig :        //配置文件來源
  --profile :         //profile文件。這個被用來選擇用戶空間源碼包集合(例如

  config/profiles/max.config)
  --rcfile|r :        //使用這個資源文件
  --batch|b :        //批處理模式,假定對所有的問題回答yes
  --force|f :        //強(qiáng)迫重新編譯鏈接即使已經(jīng)更新到最新
  --reinstall|e :     //重新安裝rpm包
  --nodeps|n :        //關(guān)閉安裝和反安裝依賴關(guān)系檢查
  --conflicts|k :      //不強(qiáng)迫安裝有文件沖突的rpm包
  --keepsrpms|s :     //保留srpms 在編譯鏈接之后 (缺省是刪除的)
  --verbose|v :        //更多的輸出
  --dry-run|d :        //只運(yùn)行不打印 (僅輸出echo消息)
  --continue|C :      //在源碼包編譯鏈接過程中出錯也繼續(xù)進(jìn)行
  --version|V :        //打印應(yīng)用程序版本并退出
  --noredir|N :        //不重定向到任何輸出
  --deploy|D :        //運(yùn)行部署腳本即使已經(jīng)更新
  --dlonly :          //僅下載源碼包
  --dltest :          //測試BSP的源碼包是否有效
  --leavesrc|l :      //留下不解壓的源碼包 ( 僅在pkg模式下使用)
  --hostcf :        //重新配置編譯鏈接安裝主機(jī)支持的源碼包集
  --help|h :        //使用幫助
 -------------------------------------------------------------------------------

  生成文件說明 :
    rootfs.ext2.gz.uboot    
        ram-disk image that can be load with u-boot
    rootfs.jffs2            
        jffs2 filesystem image
    rootfs                   
        directory,the root file system that will be deployed on your Board
    rootfs/boot/uImage
        kernel image that can be load with u-boot
    rootfs/boot/u-boot.bin
        u-boot binary image that can be programmed into mpc8315erdb board nor flash
    rootfs/boot/u-boot-nand.binary--
        u-boot binary image that can be programmed into mpc8315erdb board nand flash
    rootfs/boot/mpc8315erdb.dtb
        device tree binary(dtb)files for kernal boot up(support usb internal phy)
    rootfs/boot/mpc8315erdb_uipi.dtb  
        device tree binary(dtb)files for kernal boot up (support usb external phy)      
   
    內(nèi)核文件為   rootfs/boot/uImage,
    根文件系統(tǒng)文件為 rootfs.ext2.gz.uboot
    u-boot.bin   u-boot
    mpc8315erdb.dtb  s  
  
//-----------------------------------------------------------------------------
RootFS中加入其他文件:

用戶有時候需要在根文件系統(tǒng)中加入一些自己的文件,只需要在平臺目錄下建立merge文件夾,
將需要加入的文件放入merge文件下就可以了,merge文件夾下的文件在開發(fā)板上相當(dāng)于位于根文件系統(tǒng)下面.
步驟如下:

2. # mkdir -p config/platform/mpc8308erdb/merge/xxx
3. # cp /myfile1 config/platform/mpc8308erdb/merge/xxx

這個過程簡單說就是, 建merge文件夾, 把要加的文件放到merge里, 執(zhí)行./ltib

//-----------------------------------------------------------------------------

. 首先, VM上要配置好tftp服務(wù)器;
    Fedora9中, tftp的配置文件/etc/xinetd.d.tftp
    
. 建立tftp目錄:
    一般設(shè)置在根目錄下;
        /tftp/mpc8308
    該權(quán)限為777;
. 將ltib編譯好的文件拷貝到tftp目錄下, 文件包括
    linux.config
    mpc8308erdb.dtb
    mpc8308erdb.dtu
    System.map
    u-boot
    u-boot.bin
    uImage
    vmlinux
    vsc2bin
    編譯好的U-image所在目錄:
        /rpm/BUILD/linux-2.6.29.6/arch/powerpc/boot

    
//-----------------------------------------------------------------------------
MPC8308開發(fā)板啟動后進(jìn)入u-boot設(shè)置狀態(tài);
可能需要設(shè)置u-boot環(huán)境變量;

//設(shè)置本設(shè)備地址:
setenv ipaddr 192.168.0.201

//設(shè)置tftp服務(wù)器地址:
setenv serverip 192.168.0.123
setenv gatewayip 192.168.0.201

//出廠設(shè)置
setenv tftp_path mpc8308
setenv ramdiskaddr 2400000
setenv loadaddr 2000000
setenv kernaddr 2000000
setenv fdtaddr 1f00000
setenv ramdisksize 90000
setenv dtbname mpc8308erdb.dtb
setenv hostname PowerQUICC
setenv flashkernaddr fe0a0000
setenv flashkernend fe2fffff
setenv flashramdiskaddr fe300000
setenv flashramdiskend fe7effff
setenv flashfdtaddr fe7f0000
setenv flashfdtend fe7f3fff
setenv fdtsize 3000
setenv vscfwaddr fe7fe000
setenv vscfwend fe7fffff

//設(shè)定系統(tǒng)啟動方式 (bootm means boot-memory-map)
setenv bootcmd bootm fe0a0000 fe300000 fe7f0000


setenv bootfile mpc8308/uImage
setenv fdtfile mpc8308/mpc8308erdb.dtb
setenv ramdiskfile mpc8308/rootfs.ext2.gz.uboot
setenv bootargs root=/dev/ram ramdisk_size=90000 rwip=192.168.0.201:192.168.0.111:192.168.0.201::PowerQUICC:eth0:off console=ttyS0,115200
                

Update-Kernel:
    tftp 2000000 mpc8308/uImage
    erase fe0a0000 fe2fffff
    cp.b 2000000 fe0a0000 $filesize

Update-DTB:
    tftp 2000000 mpc8308/mpc8308erdb.dtb
    //erase fe7f0000 fe7f3fff
    erase fe7f0000 fe7f7fff
    //erase fe7f0000 fe7fffff
    cp.b 2000000 fe7f0000 $filesize

Update-rootfs:
    tftp 2400000 mpc8308/rootfs.ext2.gz.uboot
    erase fe300000 fe7effff
    cp.b 2400000 fe300000 $filesize
    

    
-------------------------------------------------------------------------------
查看硬盤設(shè)備號:
fdisk -l
加掛到指定目錄:
mount -t vfat /dev/sda1 /mnt/src

-------------------------------------------------------------------------------
VM-Host(IP:192.168.0.123) NFS to MPC8308e-rdb:
    (注意要加'nolock')
    mount -t nfs -o nolock 192.168.0.123:/var/nfsshare /mnt/nfs/

以上是“Freescale Ltib-MPC8308如何安裝,編譯,燒寫uboot”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI