我在EP9315(属于ARM920T)上移植linux2.6 当然碰到不少问题,以下是其中之一.
我现在的FLASH分区信息如下:
Name FLASH addr Mem addr Length Entry point RedBoot 0x60000000 0x60000000 0x00040000 0x00000000 RedBoot config 0x61F80000 0x61F80000 0x00001000 0x00000000 FIS directory 0x61FC0000 0x61FC0000 0x00040000 0x00000000 zImage 0x60040000 0x00080000 0x001C0000 0x00080000 root 0x60200000 0x00800000 0x01800000 0x00000000 user 0x61A00000 0x02000000 0x00500000 0x00000000
我将zImage和ramdisk.gz写入zImage和root分区,再复位电路后执行:
>fis load zImage >exec -c "noinitrd root=/dev/mtdblock4 init=/linuxrc console=ttyAM0"
内核引导至以下信息处挂掉了:
VFS: Unable to mount root fs via NFS, trying floppy. VFS: Cannot open root device "mtdblock3" or unknown-block(2,0) Please append a correct "root=" boot option Kernel panic: VFS: Unable to mount root fs on unknown-block(2,0)
我的mtd分区配置如下:
#define BOOT_PARTITION_SIZE (KSZ_1M * 2) /* * Define static partitions for flash device */ static struct mtd_partition partition_info[] = { { .name = "Boot", .offset = 0, .size = KSZ_1K * 256 }, { .name = "Kernel", .offset = KSZ_1K * 256, .size = KSZ_1M * 2 - KSZ_1K * 256 }, { .name = "Root", .offset = KSZ_1M * 2, .size = KSZ_1M * 24 }, { .name = "User", .offset = KSZ_1M * 26, .size = KSZ_1M * 5 }
}; #define NUM_PARTITIONS 4
========================================================== 我在编译内核时也已经选择了关于devfs选项,请帮我分析一下可能导致问题的原因??????????????? 谢谢! |