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

2.1 linux中uboot移植

發(fā)布者:CelestialLight最新更新時(shí)間:2024-11-18 來源: cnblogs關(guān)鍵字:linux  uboot  移植 手機(jī)看文章 掃描二維碼
隨時(shí)隨地手機(jī)看文章

(一)友善之臂介紹:

README for FriendlyARM Tiny4412

說明:本u-boot源代碼由三星原廠提供,并由友善之臂修改移植,以適用于Tiny4412開發(fā)板平臺。
僅供嵌入式愛好者學(xué)習(xí)研究之用,友善之臂不對此提供任何技術(shù)支持和維護(hù)。

-----------------------------------------------------
1. Build uboot

a) 安裝好toolchain (arm-linux-gcc-4.5.1-v6-vfp-20120301.tgz)并設(shè)置好
環(huán)境變量PATH,保證可以正常使用。

b) 解壓 uboot_tiny4412-20130729.tgz 并進(jìn)入相應(yīng)的目錄
tar xzf uboot_tiny4412-20130729.tgz

c) 配置 uboot 并編譯
cd uboot_tiny4412
make tiny4412_config
make

生成u-boot.bin

d) 編譯 用于生成bl2 的工具
make -C sd_fuse
或者
cd sd_fuse; make


-----------------------------------------------------
2. 制作啟動(dòng) Tiny4412 的SD卡

a) 先準(zhǔn)備一張4G或以上的SDHC卡
注意:該卡的已有數(shù)據(jù)將會(huì)被破壞,因此請先對SD卡上的數(shù)據(jù)進(jìn)行備份。

b) fusing SD card
假設(shè)SD卡已被PC Linux識別為/dev/sdb, 以root用戶運(yùn)行以下命令即可:
cd sd_fuse/tiny4412
./sd_fusing.sh /dev/sdb


-----------------------------------------------------
3. 使用SD卡啟動(dòng) Tiny4412 并燒寫Android

a) 將已經(jīng)制作好的SD卡插到 Tiny4412 板上,撥動(dòng)S2切換到SDBOOT,同時(shí)連接
串口線到PC且假設(shè)已經(jīng)準(zhǔn)備好。

b) 開發(fā)板加電,然后在串口控制臺(如minicom),按任意鍵進(jìn)入uboot 命令行模式

c) 對SD卡進(jìn)行分區(qū)
輸入以下uboot命令即可對SD卡進(jìn)行分區(qū):
fdisk -c 0 320 806 518
重新分區(qū)后,可重新格式化FAT分區(qū)
fatformat mmc 0:1

d) 進(jìn)入fastboot模式以燒寫Android
使用USB線連接Tiny4412的MICRO_USB口到PC,然后輸入以下uboot命令:
fastboot

e) 燒寫 Android 到SD卡
首先請準(zhǔn)備好Android image,包括: zImage, ramdisk-u.img, system.img
在PC端輸入以下命令進(jìn)行燒寫:
fastboot flash kernel zImage (燒寫kernel)

fastboot -w (格式化userdata和cache)

fastboot flash ramdisk ramdisk-u.img (燒寫ramdisk)

fastboot flash system system.img (燒寫system)

f) 也可以在PC端通過fastboot燒寫uboot到SD卡
先手動(dòng)生成bl2.bin
cd sd_fuse/tiny4412
../mkbl2 ../../u-boot.bin bl2.bin 14336

然后輸入以下命令:
fastboot flash fwbl1 E4412_N.bl1.bin

fastboot flash bl2 bl2.bin

fastboot flash bootloader ../../u-boot.bin

fastboot flash tzsw E4412_tzsw.bin


-----------------------------------------------------
4. 使用SD卡啟動(dòng) Android

a) 如果是使用HD700,則燒寫完成后直接重啟Tiny4412 即可自動(dòng)啟動(dòng) Android

b) 如果是使用S700,則需要在uboot上設(shè)置kernel命令行參數(shù):
setenv bootargs console=ttySAC0,115200n8 androidboot.console=ttySAC0 lcd=S700
saveenv
然后重啟Tiny4412即可。

 -----------------------------------------------------------------------------------------------------------

 (二)編譯結(jié)果

tiny4412中uboot編譯成功

o lib/lzo/liblzo.o net/libnet.o post/libpost.o board/samsung/tiny4412/libtiny4412.o --end-group /opt/FriendlyARM/tiny4412/uboot/uboot_tiny4412/arch/arm/lib/eabi_compat.o -L /opt/FriendlyARM/toolschain/4.5.1/lib/gcc/arm-none-linux-gnueabi/4.5.1 -lgcc -Map u-boot.map -o u-boot
arm-linux-ld: warning: creating a DT_TEXTREL in object.
arm-linux-objcopy -O srec u-boot u-boot.srec
arm-linux-objcopy --gap-fill=0xff -O binary u-boot u-boot.bin
root@phone-desktop:/opt/FriendlyARM/tiny4412/uboot/uboot_tiny4412# make -C sd_fuse
make:進(jìn)入目錄'/opt/FriendlyARM/tiny4412/uboot/uboot_tiny4412/sd_fuse'
gcc -o    mkbl2 V310-EVT1-mkbl2.c
gcc -o    sd_fdisk sd_fdisk.c
make:離開目錄“/opt/FriendlyARM/tiny4412/uboot/uboot_tiny4412/sd_fuse”
root@phone-desktop:/opt/FriendlyARM/tiny4412/uboot/uboot_tiny4412#

 

(三)目錄分析

Directory Hierarchy:
====================

/arch            Architecture specific files    #拱結(jié)構(gòu)的特定文件
  /arm            Files generic to ARM architecture  #ARM文件通用的ARM架構(gòu)
    /cpu        CPU specific files CPU特定文件
      /arm720t        Files specific to ARM 720 CPUs
      /arm920t        Files specific to ARM 920 CPUs
    /at91rm9200    Files specific to Atmel AT91RM9200 CPU
    /imx        Files specific to Freescale MC9328 i.MX CPUs
    /s3c24x0    Files specific to Samsung S3C24X0 CPUs
      /arm925t        Files specific to ARM 925 CPUs
      /arm926ejs    Files specific to ARM 926 CPUs
      /arm1136        Files specific to ARM 1136 CPUs
      /ixp        Files specific to Intel XScale IXP CPUs
      /pxa        Files specific to Intel XScale PXA CPUs
      /s3c44b0        Files specific to Samsung S3C44B0 CPUs
      /sa1100        Files specific to Intel StrongARM SA1100 CPUs
    /lib        Architecture specific library files
  /avr32        Files generic to AVR32 architecture
    /cpu        CPU specific files
    /lib        Architecture specific library files
  /blackfin        Files generic to Analog Devices Blackfin architecture
    /cpu        CPU specific files
    /lib        Architecture specific library files
  /i386            Files generic to i386 architecture
    /cpu        CPU specific files
    /lib        Architecture specific library files
  /m68k            Files generic to m68k architecture
    /cpu        CPU specific files
      /mcf52x2        Files specific to Freescale ColdFire MCF52x2 CPUs
      /mcf5227x        Files specific to Freescale ColdFire MCF5227x CPUs
      /mcf532x        Files specific to Freescale ColdFire MCF5329 CPUs
      /mcf5445x        Files specific to Freescale ColdFire MCF5445x CPUs
      /mcf547x_8x    Files specific to Freescale ColdFire MCF547x_8x CPUs
    /lib        Architecture specific library files
  /microblaze        Files generic to microblaze architecture
    /cpu        CPU specific files
    /lib        Architecture specific library files
  /mips            Files generic to MIPS architecture
    /cpu        CPU specific files
    /lib        Architecture specific library files
  /nios2        Files generic to Altera NIOS2 architecture
    /cpu        CPU specific files
    /lib        Architecture specific library files
  /powerpc        Files generic to PowerPC architecture
    /cpu        CPU specific files
      /74xx_7xx        Files specific to Freescale MPC74xx and 7xx CPUs
      /mpc5xx        Files specific to Freescale MPC5xx CPUs
      /mpc5xxx        Files specific to Freescale MPC5xxx CPUs
      /mpc8xx        Files specific to Freescale MPC8xx CPUs
      /mpc8220        Files specific to Freescale MPC8220 CPUs
      /mpc824x        Files specific to Freescale MPC824x CPUs
      /mpc8260        Files specific to Freescale MPC8260 CPUs
      /mpc85xx        Files specific to Freescale MPC85xx CPUs
      /ppc4xx        Files specific to AMCC PowerPC 4xx CPUs
    /lib        Architecture specific library files
  /sh            Files generic to SH architecture
    /cpu        CPU specific files
      /sh2        Files specific to sh2 CPUs
      /sh3        Files specific to sh3 CPUs
      /sh4        Files specific to sh4 CPUs
    /lib        Architecture specific library files
  /sparc        Files generic to SPARC architecture
    /cpu        CPU specific files
      /leon2        Files specific to Gaisler LEON2 SPARC CPU
      /leon3        Files specific to Gaisler LEON3 SPARC CPU
    /lib        Architecture specific library files
/api            Machine/arch independent API for external apps
/board            Board dependent files
/common            Misc architecture independent functions
/disk            Code for disk drive partition handling
/doc            Documentation (don't expect too much)
/drivers        Commonly used device drivers
/examples        Example code for standalone applications, etc.
/fs            Filesystem code (cramfs, ext2, jffs2, etc.)
/include        Header Files
/lib            Files generic to all architectures
  /libfdt        Library files to support flattened device trees
  /lzma            Library files to support LZMA decompression
  /lzo            Library files to support LZO decompression
/net            Networking code
/post            Power On Self Test
/rtc            Real Time Clock drivers
/tools            Tools to build S-Record or U-Boot images, etc.

[1] [2]
關(guān)鍵字:linux  uboot  移植 引用地址:2.1 linux中uboot移植

上一篇:uboot重定位代碼分析
下一篇:嵌入式開發(fā)學(xué)習(xí)(1)

推薦閱讀最新更新時(shí)間:2025-07-11 06:08

基于mini2440的uboot移植(一)
一.移植環(huán)境 虛擬機(jī):ubuntu12.04 uboot源碼:u-boot-2008.10.tar.bz2 交叉編譯:arm-linux-gcc-4.4.3 簡單的記錄下編譯uboot的過程,要想具體了解uboot的工作原理,可以查看韋東山對uboot這部分的講解,紅色部分為修改部分 二.移植步驟 1.將uboot源碼復(fù)制到ubuntu下的自己定義的文件夾,并解壓tar jxvf u-boot-2008.10.tar.bz2 2.選擇要移植的開發(fā)板,我們要準(zhǔn)備將uboot移植到mini2440上,s3c2440開發(fā)板的cpu為arm920t,smdk2410開發(fā)板的cpu也為arm920t,所以我們選擇
[單片機(jī)]
基于mini2440的<font color='red'>uboot</font><font color='red'>移植</font>(一)
Exynos4412 Uboot 移植(四)—— Uboot引導(dǎo)內(nèi)核過程分析
bootloader 要想啟動(dòng)內(nèi)核,可以直接跳到內(nèi)核的第一個(gè)指令處,即內(nèi)核的起始地址,這樣便可以完成內(nèi)核的啟動(dòng)工作了。但是要想啟動(dòng)內(nèi)核還需要滿足一些條件,如下所示: 1、cpu 寄存器設(shè)置 * R0 = 0 * R1 = 機(jī)器類型 id * R2 = 啟動(dòng)參數(shù)在內(nèi)存中的起始地址 2、cpu 模式 * 禁止所有中斷 * 必須為SVC(超級用戶)模式 3、Cache、MMU * 關(guān)閉 MMU * 指令Cache可以開啟或者關(guān)閉 * 數(shù)據(jù)Cache必須關(guān)閉 4、設(shè)備 * DMA 設(shè)備應(yīng)當(dāng)停止工作 5、PC為內(nèi)核的起始地址 這些需求都由 boot loader 實(shí)現(xiàn)
[單片機(jī)]
Exynos4412 <font color='red'>Uboot</font> <font color='red'>移植</font>(四)—— <font color='red'>Uboot</font>引導(dǎo)內(nèi)核過程分析
mini2440_uboot移植筆記
一、準(zhǔn)備階段 下載軟件:u-boot 下載地址:ftp://ftp.denx.de/pub/u-boot/ u-boot-2009.11.tar.bz2   為《friendlyARM》參考文檔版本 u-boot-2010.03.tar.bz2 為《申嵌-uboot移植》參考文檔版本 本次使用較新的uboot版本:u-boot-2010.03.tar.bz2 tar xvjf /yang/uboot_tools/u-boot-2010.03.tar.bz2 二、建立開發(fā)板文件,測試編譯環(huán)境(6.1) 1、修改頂層Makefile(6.1.1) (目的:定義交叉編譯工具鏈和開發(fā)板配置選項(xiàng))
[單片機(jī)]
linux2.6.18內(nèi)核S3C2410平臺移植筆記
我使用的實(shí)驗(yàn)箱是Embest EDUKIT-III,板上資源CPU:SAMSUNG S3C2410A、FLASH:K9F5608U0(Samsung NAND 32MiB),燒錄工具:embest flash programmer。因?yàn)閺S家自帶的是2.4的內(nèi)核,目前學(xué)習(xí)開發(fā)用的基本上都是2.6內(nèi)核,這兩者改動(dòng)還是比較大的。電話咨詢過技術(shù)支持后,對方說只想在板子上跑系統(tǒng)的話還是比較好移植的。于是決心自己動(dòng)手移植內(nèi)核。不然今后的驅(qū)動(dòng)編寫,都沒有合適的運(yùn)行環(huán)境,影響進(jìn)度。所以工欲善其事,必先 利其器,前期的這些準(zhǔn)備還是很有必要的。那幾天剛好ubuntu10.10發(fā)布,滿懷期待的我升完級后,結(jié)果悲劇了,中文顯示變得發(fā)虛模糊,主題顏色也極度
[單片機(jī)]
linux2.6.32.2 mini2440平臺移植-- UDA1341 音頻驅(qū)動(dòng)移植
1.6.1 在初始化文件中加入 UDA1341 設(shè)備結(jié)構(gòu) Linux-2.6.32.2已經(jīng)完美的支持UDA1341音頻芯片的驅(qū)動(dòng),我們只要在arch/arm/mach-s3c2440/mach-mini2440.c 文件中注冊 UDA1341 平臺設(shè)備的控制端口就可以了,打開 mach-mini2440.c,添加如下內(nèi)容: //在文件首部添加頭文件 #include sound/s3c24xx_uda134x.h //在 LCD 平臺設(shè)備后面添加 UDA1341 設(shè)備結(jié)構(gòu) static struct s3c24xx_uda134x_platform_data s3c24xx_uda134x_data = {
[單片機(jī)]
ARM-Linux觸摸屏驅(qū)動(dòng)移植--問題總結(jié)
硬件平臺:FL2440 內(nèi)核版本:2.6.28 主機(jī)系統(tǒng):Ubuntu 11.04 內(nèi)核版本:2.6.39 1、由于自己編譯的內(nèi)核觸摸屏驅(qū)動(dòng)選項(xiàng)選擇的問題,觸摸屏搞了好久 由于自己編譯內(nèi)核將觸摸屏驅(qū)動(dòng)以模塊的形式編譯的,方便自己調(diào)試ADC驅(qū)動(dòng)和觸摸屏驅(qū)動(dòng)。遇到以下問題: 編譯完觸摸屏驅(qū)動(dòng)完成后,利用insmod ts.ko加載驅(qū)動(dòng),之后在/dev/下生成鼠標(biāo)結(jié)點(diǎn)文件mouse0,沒有生成ts0 由于將觸摸屏接口也一M的形式編譯了,改成* /dev下不生成event*節(jié)點(diǎn),編譯選項(xiàng)中選擇Event interface 后面的touch screen驅(qū)動(dòng)以模塊的形式編譯進(jìn)內(nèi)核,手動(dòng)加載,方便自己調(diào)試 重
[單片機(jī)]
ARM-<font color='red'>Linux</font>觸摸屏驅(qū)動(dòng)<font color='red'>移植</font>--問題總結(jié)
SAM-BA燒寫B(tài)ootstrap1.16和Uboot1.3.4方法
SAM-BA燒寫B(tài)ootstrap1.16和Uboot1.3.4方法,MCU芯片為at91sam9261,Nandflash為K9F1G08 系統(tǒng)上電,然后通過串口連上電腦,打開SAM-BA如果硬件沒有問題就可以連上了,然后燒寫B(tài)ootstrap,在燒寫之前先擦除一下,就是在Scripts選項(xiàng)選擇Nandflash erase all然后點(diǎn)Execute,就可以看到Nandflash的信息。然后選擇Send Boot File點(diǎn)Execute選擇Bootstrap.bin文件進(jìn)行燒寫。 燒寫Uboot.bin文件方法為:在Send File Name中導(dǎo)入文件,在Address中填寫燒寫地址為0x20000然后Send F
[單片機(jī)]
cortex-a8 uboot系列:第十章 uboot啟動(dòng)總結(jié)
一、uboot啟動(dòng)第2階段總結(jié) 第二階段主要是對開發(fā)板板級的硬件、軟件數(shù)據(jù)結(jié)構(gòu)進(jìn)行初始化。 第一步:為gd,bd分配內(nèi)存空間 第二步:循環(huán)執(zhí)行init_sequence里的初始化函數(shù) init_sequence: cpu_init: 空函數(shù) board_init: 網(wǎng)卡、機(jī)器碼、內(nèi)核傳參內(nèi)存地址 dm9000_pre_init SOC內(nèi)部SROM控制器初始化,因?yàn)楹屯獠烤W(wǎng)卡DM9000的通信使用的是SROM接口,所以要對這個(gè)SROM控制器進(jìn)行初始化 interrupt_init: pwm timer4 定時(shí)10ms env_init: init_baudrate:
[單片機(jī)]
小廣播
設(shè)計(jì)資源 培訓(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