您的位置:首页 > 运维架构 > Linux

嵌入式Linux驱动学习之路(二)u-boot体验

2016-10-12 13:47 429 查看

u-boot工程简介

  现在的u-boot支持PowerPC、ARM、X86、MIPS体系结构的上百种开发板,已经称为功能最多、灵活性最强,并且开发最积极的开源Bootloader。目前由DENX的WolfgangDenk维护。

  u-boot远吗包可以从其官方网站下载。

u-boot软件包下载网站: ftp://ftp.denx.de/pub/u-boot/
u-boot邮件列表网站: http://lists.denx.de/pipermail/u-boot/

DENX的u-boot主页: http://www.denx.de/wiki/u-boot/

u-boot源码结构

board      存放电路板相关的目录文件。

CPU 存放CPU相关的目录文件。

lib_xxx     与体系结构相关的库文件。

include     u-boot使用的头文件,还有支持各种硬件平台的汇编文件、系统的配置文件和支持文件系统的文件。

common    实现u-boot命令行下支持的命令,每一条命令都对应一个文件。

lib_generic   通用库函数的实现。

net       与网络协议相关的代码。

fs        支持的文件系统。

drivers      u-boot支持的设备驱动程序都放在该目录中。

disk       对磁盘的支持。

doc       文档目录。

tools      生成u-boot工具。

examples    一些独立运行的应用程序的例子。

u-boot的配置编译

  1. 安装好toolchain并设置好环境变量。

  2. 解压uboot_tiny4412-20130729.tgz 并进入相应的目录

tar xzf uboot_tiny4412-20130729.tgz


  3. 配置u-boot并编译

 cd uboot_tiny4412
make tiny4412_config
make


  4.编译 用于生成bl2的工具

  make -C sd_fuse

  或者

  cd sd_fuse; make

制作启动Tiny4412的SD卡

  a. 先准备一张大于4Gb大小的SDHC卡。(请先将SD卡内的数据备份,下面操作会损坏SD内数据)。

   b. fusing SD card

   将SD卡插到电脑上, 假设已被识别为/dev/sdb

cd sd_fuse/tiny4412/
sudo ./sd_fusing.sh /dev/sdb


若有以下提示,则制作成功。

U-boot image is fused successfully.
Eject SD card and insert it again.

将SD卡插入到卡槽,设置为从SD卡启动,打开电源,按任意键进入到U-BOOT命令行模式。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: