2010年11月6日 星期六

u-boot/Linux booting machid

(u-boot)/include/asm-arm/mach-types.h

#define MACH_TYPE_IMX27IPCAM 1871
#define MACH_TYPE_NEMOC 1872
#define MACH_TYPE_GENEVA 1873
#define MACH_TYPE_VEGA 2776


(u-boot)/lib_arm/bootm.c: do_bootm_linux

linux内核启动过程——基于S3C2410(1)zImage自解压
http://os.it168.com/a2009/0610/993/000000993984.shtml

[原创] linux启动流程分析(1)---bootloader启动内核过程
http://www.eetop.cn/blog/html/45/11145-560.html

[原创] linux启动流程分析(2)---内核启动地址的确定
http://www.eetop.cn/blog/html/45/11145-562.html

ARM Linux Kernel Boot Requirements
http://www.arm.linux.org.uk/developer/booting.php

(linux)/arch/arm/tools/mach-types
ttc_vision2 MACH_TTC_VISION2 TTC_VISION2 2775
cns3420vb MACH_CNS3420VB CNS3420VB 2776
lpc2 MACH_LPC2 LPC2 2777


(linux)/arch/arm/kernel/head-common.S: lookup_machine_type

linux内核启动之lookup_machine_type
http://blog.chinaunix.net/u2/73067/showart_2229056.html
例子分享:
我现在移植的一个板子,是不带mmu的,刚开始怎么都启动不起来,打印出“done, booting the kernel",然后就无声无息了。后来在Kernel startup entry point开始处的ENTRY(stext)下添加了句代码:”ldr r1, =machine_arch_type“就很顺利得起来了.后来分析知道,添加这句代码后就不会进行平台的匹配了!但是启动以后也是正常的!不知道此处平台匹配的真正意义是什么,还需要与有经验的朋友共同探讨。


linux板级设备的初始化过程
http://hi.baidu.com/rwen2012/blog/item/4163bb033273b88bd43f7cbc.html

第9章 内核调试技术
http://mcuol.com/download/upfile/armLinuxEMB09.pdf

沒有留言: