android x-loader和u-boot的关系

这是官方文档,大家可以参考,我写这些东西只是为了给自己做个笔记,也给用的着的朋友参考下;官方文档:http://omappedia.org/wiki/Bootloader_Project

----------------------------------------------------------
2012/09/14/五
----------------------------------------------------------
1:when a system is first booted,the CPU invokes the reset vector to start the 
code at a known location in ROM;
当系统第一次启动时,CPU调用的复位向量开始在一个已知的位置在ROM中的代码;


----------------------------------------------------------
2:
a)ROM code
    performs minimal clocks,memories and peripheral configuration;searches the booting
devices for a valid booting image;loads the x-loader into SRAM and executes it;
执行最小时钟,存储器和外设配置,搜索引导设备有效的引导映像;加载x-loader到
SRAM中并执行;

b)x-loader
    sets up the pin muxing;initializes clocks and memory;loads the u-boot into 
SDRAM and executes it;
设置引脚多路复用;初始化时钟和存储器;加载的u-boot到SDRAM并执行该程序;
fastboot flash xloader device/ti/panda/xloader.bin =>刷机;

c)u-boot
    performs some addtional platform initialization;sets the boot arguments;
passes control to the kernel image;
执行一些额外的的平台初始化;设置引导参数;将控制权传递给内核映像;

fastboot flash bootloader device/ti/panda/bootloader.bin=>这里bootloader.bin就是uboot(针对arm平台);个人理解;


d)kernel
    decompresses the kernel into SDRAM;sets up peripherals,such as LCD,HDMI,I2C bus,
USB,SD card,audio,etc;mounts the linux filesystem that contains all;
解压缩内核到SDRAM,设置外围设备,如LCD,HDMI,I2C总线,USB,SD卡,音频等;安装
Linux的文件系统,它包含所有;
-------------------------------------------------------------
3:x-loader overview


The x-loader is a small first stage bootloader derived from the u-boot base code.
It is loaded into the internal static RAM by the OMAP ROM code. Due to the small
size of the internal static RAM, the x-loader is stripped down to the essentials.
The x-loader configures the pin muxing, clocks, DDR, and serial console, so that
it can access and load the second stage bootloader (u-boot) into the DDR. This 
figure shows the code flow in the x-loader, beginning in start.S.


x-loader概述


X-Loader是一个小的第一阶段引导加载程序来自u-boot的基本代码。它被加载到由OMAP ROM
代码的内部的静态RAM。由于内部静态RAM的体积小,X-Loader是剥离下来的要领。 x-loader
的配置引脚多路复用,时钟,DDR和串行控制台,以便它可以访问和加载第二阶段引导程序
(U-BOOT)为解除武装,复员和重返社会。此图显示了码流中的x-loader,开始start.S中。


--------------------------------------------------------------
u-boot overview


The u-boot is a second stage bootloader that is loaded by the x-loader into DDR. 
It comes from Das U-Boot. The u-boot can perform CPU dependent and board dependent
initialization and configuration not done in the x-loader. The u-boot also includes 
fastboot functionality for partitioning and flashing the eMMC. The u-boot runs on
the Master CPU (CPU ID 0), which is responsible for the initialization and
booting; at the same time, the Slave CPU (CPU ID 1) is held in the “wait for
event” state. This figure shows the code flow in the u-boot, beginning in 
start.S.


u-boot概述


在U-Boot是第二阶段引导程序,它从DAS U-Boot的被加载到DDR的x-loader的。U-Boot可以进行x-loader
不能完成的CPU和电路板相关的初始化和配置;u-boot的还包括FASTBOOT功能分区和闪存的
eMMC。在U-Boot运行在主CPU(CPU ID 0),这是负责初始化和引导,同时,从CPU(CPU ID
 1)举办的“等待事件”的状态​​。此图显示的码流,开始在u-boot的start.S中。


----------------------------------------------------------------

你可能感兴趣的:(android x-loader和u-boot的关系)