基于qq2440开发平台的uboot移植(1)
来源:互联网 发布:sql验证主键约束 编辑:程序博客网 时间:2024/05/17 01:09
在嵌入式系统中,bootloader起到了一个配置硬件、创建软件执行环境和调试(仅在开发阶段对于开发人员有用)的作用。本文以目前功能最强大的bootloader--uboot为例,记录了我将uboot一直到QQ2440(S3C2440)开发板的过程。
最开始要说一下uboot各文件夹的内容:
board 目录:里面是各种开发板目录,每个开发板相当于一种硬件配置;
common目录:里面是各种命令实现的源文件,是各个开发板共同使用的目录;
cpu 目录:顾名思义,里面是各种内核体系的目录,每一个目录代表一种内核结构;
doc目录:里面是各种移植文档,供移植参考使用;
drivers目录:里面是各种驱动程序;
examples目录:里面是一个移植例程;
include目录:是所有内核共有的、所要包含的头文件;
lib_**目录: 针对不同体系,各自独特的库文件;
net目录:里面是各种网络协议;
tools目录:里面是各种小工具;
基本上就这些目录,还有一些小目录及文件就不一一列举了,下面介绍一下具体的移植过程:
1.1.1 添加开发板的配置选项
进入U-Uoot根目录,修改Makefile文件,参考smdk2410的配置选项修改如下:
smdk2410_config : unconfig
@$(MKCONFIG) $(@:_config=) arm arm920t smdk2410 NULL s3c24x0
qq2440_config : unconfig
@$(MKCONFIG) $(@:_config=) arm arm920t qq2440 NULL s3c24x0
各项的意思如下:
arm : CPU的架构(ARCH)
arm920t : CPU的类型(CPU),其对应于cpu/arm920t子目录。
qq2440: 开发板的型号(BOARD),对应于board/ mini2440目录。
NULL: 开发者/或经销商(vender),NULL为没有。
s3c24x0 : 片上系统(SOC)。
同时在“ifndef CROSS_COMPILE ”之前加上自己交叉编译器的路径,我的是arm-linux-gcc-4.3.2
1.1.2 在/board子目录中建立自己的开发板qq2440目录
目录结构为board/qq2440。如果开发者/经销商(vender)不为NULL,则目录结构为board/verder_name/mini2440,否则编译会出错。然后,将smdk2410目录下的文件考入此目录中,并将其中的smdk2410.c改名为mini2440.c。同时还得修改board/mini240/Makefile文件: 1.1.3 在include/configs/中建立配置头文件 将smdk2410.h 复制一份在相同目录下,并改名为qq2440.h。 1.1.4 测试编译能否成功 回到U-Boot主目录,(若之前有编译过,最好执行一下make clean) make qq2440_config,再make,编译生成u-boot.bin成功。
COBJS := qq2440.o flash.o
这是第一阶段,如果编译能够成功,恭喜你,可以进入下一步的移植了······
- 基于qq2440开发平台的uboot移植(1)
- qt-embedded-linux-opensource-src-4.5.1移植到QQ2440开发板(不错)
- 移植u-boot-1.3.4到qq2440开发板(1)
- uboot phy移植心得(基于hi3531A平台)
- 基于mini2440的uboot移植(一)
- OK6410平台下uboot的移植(第一步)
- Uboot在不同平台上的移植
- 嵌入式linux开发uboot移植(七)——三星官方uboot的移植
- qt-embedded-linux-opensource-src-4.5.1移植到QQ2440开发版
- qt-embedded-linux-opensource-src-4.5.1移植到QQ2440开发板
- UBOOT-2012-10在OK6410平台的移植(二)uboot 2012.10启动流程
- UBOOT-2012-10在OK6410平台的移植(三)uboot 2012.10编译配置
- UBOOT-2012-10在OK6410平台的移植(三)uboot 2012.10编译配置
- S5PC100平台uboot移植
- davinci平台Uboot移植
- 深入浅出 - Android系统移植与平台开发(六)- 搭建基于Linux的Android开发环境
- 深入浅出 - Android系统移植与平台开发(六)- 搭建基于Linux的Android开发环境
- 深入浅出 - Android系统移植与平台开发(六)- 搭建基于Linux的Android开发环境
- 时钟周期、状态周期、机器周期、指令周期、12T、6T、1T
- Dev
- in子查询、exists子查询、连接,效率的探讨
- latex 章节 行间距等控制
- 制作一张镜像光盘可以自动安装linux系统
- 基于qq2440开发平台的uboot移植(1)
- Delphi源程序格式书写规范
- hdu 1069
- VNC服务的配置
- ANT 环境安装
- 创建基于grub的小型Linux安装光盘
- 关于基于XOR的加密算法,我想到了更好的方法
- JS
- DELPHI中的快捷方式一览(完全正式版)