<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[亚克鸿宇的专栏]]></title><description><![CDATA[这家伙很懒，没什么废话！^_^]]></description><link>https://blog.youkuaiyun.com/yakehy</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; yakehy]]></copyright><item><title><![CDATA[UBOOT之源码分析——向内核传送参数过程分析]]></title><link>https://blog.youkuaiyun.com/yakehy/article/details/39344347</link><guid>https://blog.youkuaiyun.com/yakehy/article/details/39344347</guid><author>yakehy</author><pubDate>Wed, 17 Sep 2014 16:19:12 +0800</pubDate><description><![CDATA[U-boot会给LinuxKernel传递很多参数，如：串口，RAM，videofb、MAC地址等。而Linuxkernel也会读取和处理这些参数。两者之间通过structtag来传递参数。U-boot把要传递给kernel的东西保存在structtag数据结构中，启动kernel时，把这个结构体的物理地址传给kernel；Linuxkernel通过这个地址，用parse_tags分析出传递过来的]]></description><category></category></item><item><title><![CDATA[UBOOT之源码分析——命令的处理过程]]></title><link>https://blog.youkuaiyun.com/yakehy/article/details/39341855</link><guid>https://blog.youkuaiyun.com/yakehy/article/details/39341855</guid><author>yakehy</author><pubDate>Wed, 17 Sep 2014 13:59:37 +0800</pubDate><description><![CDATA[在uboot运行到第二个阶段进入到main_loop函数中，该函数有一个作用就是处理用户所输入的命令，下面详细分析命令处理的流程：
一、命令的结构及定义
在uboot里面，命令的创建是通过宏定义U_BOOT_CMD来实现的，该宏定义在文件include/command.h文件中，
#define U_BOOT_CMD(name,maxargs,rep,cmd,usage,help) \
c]]></description><category></category></item><item><title><![CDATA[UBOOT之源码分析——初始化环境变量]]></title><link>https://blog.youkuaiyun.com/yakehy/article/details/39339493</link><guid>https://blog.youkuaiyun.com/yakehy/article/details/39339493</guid><author>yakehy</author><pubDate>Wed, 17 Sep 2014 10:54:34 +0800</pubDate><description><![CDATA[我们在u-boot命令行中输入print会得到所有的环境变量，接下来我们来分析这些环境变量都是在哪里实现的。
先看看common/cmd_nvedit.c文件中定义的print命令：
U_BOOT_CMD(
printenv,CONFIG_SYS_MAXARGS, 1, do_env_print,
"print environmentvariables",
"\n - print val]]></description><category></category></item><item><title><![CDATA[UBOOT之源码分析（X4412）——SD卡烧录之sdfuse命令分析]]></title><link>https://blog.youkuaiyun.com/yakehy/article/details/39320821</link><guid>https://blog.youkuaiyun.com/yakehy/article/details/39320821</guid><author>yakehy</author><pubDate>Tue, 16 Sep 2014 18:21:50 +0800</pubDate><description><![CDATA[cmd_fastboot.c文件中
命令格式：
sdfuseflash kernel zImage
sdfuse flash systemsystem.ext3
=========================================
intdo_sdfuse (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) 
{
i]]></description><category></category></item><item><title><![CDATA[fdisk命令分析]]></title><link>https://blog.youkuaiyun.com/yakehy/article/details/39318583</link><guid>https://blog.youkuaiyun.com/yakehy/article/details/39318583</guid><author>yakehy</author><pubDate>Tue, 16 Sep 2014 15:57:06 +0800</pubDate><description><![CDATA[fdisk -c 0

命令分析：

int do_fdisk(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[]) 
{ 
if ( argc != 3 ) 
{ 
printf("Usage: fdisk  \n"); 
return 0; 
} 

//创建分区 
if ( strcmp(argv[1], "-c")]]></description><category></category></item><item><title><![CDATA[fastboot命令分析]]></title><link>https://blog.youkuaiyun.com/yakehy/article/details/39318509</link><guid>https://blog.youkuaiyun.com/yakehy/article/details/39318509</guid><author>yakehy</author><pubDate>Tue, 16 Sep 2014 15:52:33 +0800</pubDate><description><![CDATA[uboot源码学习过程中从网上找]]></description><category></category></item><item><title><![CDATA[main_loop函数中两种循环方式介绍]]></title><link>https://blog.youkuaiyun.com/yakehy/article/details/39318299</link><guid>https://blog.youkuaiyun.com/yakehy/article/details/39318299</guid><author>yakehy</author><pubDate>Tue, 16 Sep 2014 15:42:17 +0800</pubDate><description><![CDATA[一、主循环方式一 
一般循环方式,假设未定义宏CONFIG_SYS_HUSH_PARSER
将多余的宏汇编去掉，假设均不打开宏汇编内的功能，则简化一下如下：
.......
for (;;) {
  len = readline (CFG_PROMPT);  //读取一行命令输入，从串口输入
  flag = 0; /* assume no special flags for now ]]></description><category></category></item><item><title><![CDATA[UBOOT之源码分析（X4412）——main_loop函数分析]]></title><link>https://blog.youkuaiyun.com/yakehy/article/details/39295241</link><guid>https://blog.youkuaiyun.com/yakehy/article/details/39295241</guid><author>yakehy</author><pubDate>Mon, 15 Sep 2014 17:09:48 +0800</pubDate><description><![CDATA[voidmain_loop (void)
{
#ifndefCONFIG_SYS_HUSH_PARSER
 staticchar lastcommand[CONFIG_SYS_CBSIZE] = { 0, };
int len;
int rc= 1;
int flag;
#endif
//声明一些hush参数变量

 #ifdefined(CONFIG_BOOTDELAY) &]]></description><category></category></item><item><title><![CDATA[UBOOT之源码分析（X4412）——板级第二阶段初始化]]></title><link>https://blog.youkuaiyun.com/yakehy/article/details/39295201</link><guid>https://blog.youkuaiyun.com/yakehy/article/details/39295201</guid><author>yakehy</author><pubDate>Mon, 15 Sep 2014 17:08:23 +0800</pubDate><description><![CDATA[在arch/arm/cpu/armv7/start.s重定位后接着找到函数board_init_r在重定位后的位置，然后将全局数据结构体gd_t 和重定位目标地址存分别入r0和r1中，作为函数board_init_r 的参数。跳到C函数board_init_r处执行,该函数在文件/arch/arm/lib/board.c中实现，如下：
void board_init_r (gd_t *id, u]]></description><category></category></item><item><title><![CDATA[UBOOT之源码分析（X4412）——代码重定位]]></title><link>https://blog.youkuaiyun.com/yakehy/article/details/39295081</link><guid>https://blog.youkuaiyun.com/yakehy/article/details/39295081</guid><author>yakehy</author><pubDate>Mon, 15 Sep 2014 17:03:13 +0800</pubDate><description><![CDATA[参考http://blog.youkuaiyun.com/xieweihua2012/article/details/8474655根据X4412]]></description><category></category></item><item><title><![CDATA[UBOOT之源码分析（X4412）——板级初始化]]></title><link>https://blog.youkuaiyun.com/yakehy/article/details/39294987</link><guid>https://blog.youkuaiyun.com/yakehy/article/details/39294987</guid><author>yakehy</author><pubDate>Mon, 15 Sep 2014 16:56:00 +0800</pubDate><description><![CDATA[参考转摘自http://blog.youkuaiyun.com/xieweihua2012/article/details/8470948]]></description><category></category></item><item><title><![CDATA[编译／安装busybox]]></title><link>https://blog.youkuaiyun.com/yakehy/article/details/37768189</link><guid>https://blog.youkuaiyun.com/yakehy/article/details/37768189</guid><author>yakehy</author><pubDate>Mon, 14 Jul 2014 19:52:54 +0800</pubDate><description><![CDATA[1、下载最新版本busybox-1.22.1.tar.bz2 
 2、解压源码
  # tar xvjf busybox-1.22.1.tar.bz2 
 3、进入源码修改Makefile
 164 CROSS_COMPILE ?= 改成
 164 CROSS_COMPILE ?= arm-linux- 
 190 ARCH ?= $(SUBARCH) 改成
 190 ARCH ?=]]></description><category></category></item><item><title><![CDATA[Ubuntu 14.04  交叉编译工具制作]]></title><link>https://blog.youkuaiyun.com/yakehy/article/details/37691115</link><guid>https://blog.youkuaiyun.com/yakehy/article/details/37691115</guid><author>yakehy</author><pubDate>Fri, 11 Jul 2014 10:16:59 +0800</pubDate><description><![CDATA[编译环境：
    内核名称:Linux
    硬件架构名称：i686
    硬件平台：i386
    操作系统：Ubuntu 12.04 LST
    当前系统安装的gcc版本号：4.8.1]]></description><category></category></item></channel></rss>