ce123的技术博客

专注于嵌入式软件开发

系统引导时为什么要关闭Caches?

系统引导时为什么要关闭Catchs?一、引言 U-Boot 1.1.6中有如下代码:/* ************************************************************************* * * CPU_init_critical register...

2012-04-30 20:16:49

阅读数 6231

评论数 5

详解U-Boot中printf函数的实现

详解U-Boot中printf函数的实现一、printf函数调用关系1.1fputc和srial_putc的关系/* * Output a single byte to the serial port. */ void serial_putc (const char c)//发送数据 { S...

2012-04-29 19:18:35

阅读数 10489

评论数 2

U-Boot串口初始化详解

U-Boot串口初始化详解目录零、概述一、init_baudrate二、serial_init三、console_init_f四、devices_init五、console_init_r六、打印信息七、为什么要使用devlist,std_device[]?零、概述 上面这张图是U-Boot中串口设...

2012-03-21 14:55:42

阅读数 12941

评论数 0

再谈U-Boot的设备管理框架

再谈U-Boot的设备管理框架一、U-Boot的设备管理框架 在《U-Boot的设备管理》一文中通过源码分析讲解了U-Boot的设备管理。本文将从宏观的角度继续讲解U-Boot的设备管理框架。设备管理框架实现了设备的高度抽象,保持框架的稳定性,允许框架下的代码实时变化,可以很好的实现U-Boot的...

2012-03-18 13:55:09

阅读数 6507

评论数 4

U-Boot常用命令

U-Boot常用命令czu2440 # help?       - alias for 'help'autoscr - run script from memorybase    - print or set address offsetbdinfo  - print Board Info str...

2012-03-18 13:54:49

阅读数 3568

评论数 0

U-Boot与Ping命令

U-Boot与Ping命令 开发板运行U-Boot,在终端下使用Ping命令是能Ping通PC机,但PC机Ping不同U-Boot。 在开发行U-Boo下的Ethernet 驱动时,只能在Target上去Ping 外面的主机能检测以太网是否连通,如果在外面的主机上去ping目标板,则即使目标板上的...

2012-03-15 14:08:32

阅读数 8437

评论数 0

U-Boot直接引导zImage内核

U-Boot直接引导zImage内核         U-boot1.1.6只能只能就能过mkimage工具加工后的内核镜像文件。mkimage工具给zImage增加了一个64B大小的头。U-Boot是通过bootm命令来引导Linux内核的,bootm命令调用do_bootm函数来mkimage...

2012-03-11 23:13:26

阅读数 10241

评论数 0

U-Boot与Linux内核的交互

U-Boot与Linux内核的交互说明:本文所使用的U-Boot的版本是1.1.6,平台是S3C2440。目录一、简介 1.1标记列表二、设置标记存放的地址 2.1相关的结构体定义 2.2标记存放地址的设定三、标记的设置 3.1设置标记ATAG_CORE 3.2设置内存标记ATAG_MEM 3.3...

2012-03-11 23:12:50

阅读数 8637

评论数 15

U-Boot的设备管理

U-Boot的设备管理目录一、初始设备链表、初始化设备和注册设备 1.1 devices_init函数 1.2 devices结构的定义 1.3 drv_system_init 函数二、设备注册 2.1 device_register (device_t * dev) 2.2 device_der...

2012-03-08 15:56:39

阅读数 5884

评论数 2

图解U-Boot:引导内核分析

U-Boot的命令为用户提供了交互功能,并且已经实现了几十个常用的命令。如果开发板需要很特殊的操作,可以添加新的U-Boot命令。U-Boot的每一个命令都是通过U_Boot_CMD宏定义的。这个宏在头文件中定义#define U_BOOT_CMD(name,maxargs,rep,cmd,usa...

2012-03-05 18:31:16

阅读数 21748

评论数 3

mkimage的-a 和 –c参数和内核引导

目录一、mkimage工具简介二、-a参数与-e参数和内核引导的关系三、实例测试3.1 -a参数与-e参数相同,可以将内核下载到SDRAM的任何地址,然后从这启动3.2 -a参数与-e参数不同,只能将内核下载到-a参数后面的地址,然后从这启动;否则无法引导内核3.3 -a参数与-e参数不同,下载地...

2012-03-05 16:29:14

阅读数 4623

评论数 1

图解U-Boot:第二阶段源码分析

说明:图片上传后有点模糊,可从http://download.csdn.net/detail/ce123/4112241下载清晰的图片(免费)。

2012-03-05 11:20:37

阅读数 6586

评论数 2

图解U-Boot:第一阶段源码分析

U-Boot第一阶段的启动流程。这个阶段主要是初始化硬件设备,为加载U-Boot的第二阶段代码准备RAM空间最后跳转到lib_arm/board.c中start_armboot函数,这是第二阶段的入口点。  U-Boot第一阶段的存储器布局。上图中U-Boot安装在Nand Flash,启动时Na...

2012-03-04 23:22:04

阅读数 10110

评论数 2

ARM汇编中的ldr和adr的区别及其在uboot中相关源码的分析

ARM汇编中的ldr和adr的区别及其在uboot中相关源码的分析 ARM汇编有ldr指令以及ldr、adr伪指令,它们都可以将标号表达式作为操作数,下面通过分析一段代码以及对应的反汇编结果来说明它们的区别。ldr r0, _start adr r0, _start ldr r0, =_start...

2012-02-22 20:09:26

阅读数 8666

评论数 5

zImage和uImage的区别

zImage和uImage的区别一、简介 对于Linux内核,编译可以生成不同格式的映像文件,例如:# make zImage# make uImage zImage是ARM Linux常用的一种压缩映像文件,uImage是U-boot专用的映像文件,它是在zImage之前加上一个长度为0x40的...

2011-08-14 15:55:33

阅读数 15563

评论数 1

提示
确定要删除当前文章?
取消 删除
关闭
关闭