今天想用uboot启动友善的内核,从其网站上下的2.29.4的内核,
uboot打印
Uncompressing Linux.............................................................
...................................................................
之后就没了,应该是machine id不对,在内核中grep MACH_TYPE_MINI2440
在include/asm-arm/mach-types.h里有,不管是友善的还是kernel.org上下的内核,都有
#define MACH_TYPE_MINI2440 1999
于是给uboot传入1999
还是不能启动,
google发现有人传入 id 782 启动
于是改为782,竟然能启动,不得其解,突然想起
arch/arm/mach-s3c2440/mach-mini2440.c里有个地方有问题
MACHINE_START(PNX4008, "FriendlyARM Mini2440 development board")
.phys_io = S3C2410_PA_UART,
.io_pg_offst = (((u32)S3C24XX_VA_UART) >> 18) & 0xfffc,
.boot_params = S3C2410_SDRAM_PA + 0x100,
.init_irq = s3c24xx_init_irq,
.map_io = mini2440_map_io,
.init_machine = mini2440_machine_init,
.timer = &s3c24xx_timer,
MACHINE_END
最开始看的时候就觉得PNX4008怪怪的
在include/asm-arm/mach-types.h里
有
#define MACH_TYPE_PNX4008 782
于是,明白了,
google PNX4008 是NXP的ARM9
友善真奇怪,明明自己有machine id,不用,
为什么要用别人的呢?
阅读(1636) | 评论(0) | 转发(0) |