发布时间:2015-11-17 17:54:48
大家都知道U-Boot启动的时候会将启动参数的地址放入R2中,然后再启动内核。我们看看这些参数是如何设置的。 首先看两个重要的数据结构: 第一个是global_data,定义在include/asm-arm/global_data.h文件中: typedef struct global_data { &......【阅读全文】
发布时间:2015-11-17 17:54:41
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设置命令行标记ATAG_CMDLINE 3.4设置ATAG_NONE 一、简介 U-Boot与Linux内核的交互是单向的,U-Boot将各类参数传递给讷河。由于他们不能同时运行,传递办法只能有一个个:U-Boot将参数放在某个约定的地方之后,在启动内核,内核启动后从这个地方获得......【阅读全文】
发布时间:2015-11-17 17:54:36
U-Boot的命令为用户提供了交互功能,并且已经实现了几十个常用的命令。如果开发板需要很特殊的操作,可以添加新的U-Boot命令。U-Boot的每一个命令都是通过U_Boot_CMD宏定义的。这个宏在<include/command.h>头文件中定义 #define U_BOOT_CMD(name,maxargs,rep,cmd,usage,help) \ cmd_tbl_t __u_boot_cmd_##name Struct_Section = {#name, maxargs, rep,&nbs......【阅读全文】