LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1575|回复: 1

在2410上移植2.6.20.24内核,挂不上root fs!!!!!!

[复制链接]
发表于 2007-7-9 15:44:49 | 显示全部楼层 |阅读模式
打印出一下错误信息:

usbmon: debugfs is not available

s3c2410-ohci s3c2410-ohci: S3C24XX OHCI

s3c2410-ohci s3c2410-ohci: new USB bus registered, assigned bus number 1

s3c2410-ohci s3c2410-ohci: irq 42, io mem 0x49000000

usb usb1: configuration #1 chosen from 1 choice

hub 1-0:1.0: USB hub found

hub 1-0:1.0: 2 ports detected

mice: PS/2 mouse device common for all mice

s3c2410-i2c s3c2410-i2c: slave address 0x10

s3c2410-i2c s3c2410-i2c: bus frequency set to 99 KHz

s3c2410-i2c s3c2410-i2c: i2c-0: S3C I2C adapter

TCP cubic registered

NET: Registered protocol family 1

No filesystem could mount root, tried:  ext3 ext2 cramfs sysv v7 romfs fuseblk

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(31,2)

PS:我的移植方法
VIVI
bon part 0 128k 192k 2048k 18432k 64704k

load flash vivi x

reset 开发板,修改param

param set linux_cmd_line "mem=64m noinitrd root=/dev/mtdblock2 init=/linuxrc console=ttySAC0"

param save

linux 用的是2.6.20.14

修改 Makefile

ARCH        ?=arm
CROSS_COMPILE        ?=/opt/eldk/usr/bin/arm-linux-


修改arch/arm/mach-s3c2410/devs.c


/* NAND Controller */

/*--------------------------for partitions---------*/

static struct mtd_partition partition_info[]={
        {/*128k*/
                name:"vivi",
                size:0x00020000,
                offset:0x00000000
        },{/*64k*/
                name:"param",
                size:0x00010000,
                offset:0x00020000
        },{/*1m+832k*/
                name:"kernel",
                size:0x001d0000,
                offset:0x00030000
        },{/*16m*/
                name:"root",
                size:0x01000000,
                offset:0x00200000
        },{/*45.1.*/
                name:"user",
                size:0x02d30000,
                offset:0x01200000
        }
};

static struct s3c2410_nand_set nandset = {
        nr_partitions:5,        /*the number of partition*/
        partitions:partition_info,
};

static struct s3c2410_platform_nand superlpplatform = {
        tacls:0,
        twrph0:30,
        twrph1:0,
        sets:&nandset,
        nr_sets:1,
};

.....................................
.....................................

struct platform_device s3c_device_nand = {
        .name             = "s3c2410-nand",
        .id               = -1,
        .num_resources    = ARRAY_SIZE(s3c_nand_resource),
        .resource         = s3c_nand_resource,

        /*------------------------for MTD partitions------------------*/
        .dev = {
                .platform_data = &superlpplatform
        }
        /*------------------------------------------------------------*/
};


指定启动时初始化

修改arch/arm/machs3c2410/mach-smdk2410.c
修改smdk2410_devices[].指明初始化时包括我们在前面所设置的flash分区信息
static struct platform_device *smdk2410_devices[] __initdata = {
        &s3c_device_usb,
        &s3c_device_lcd,
        &s3c_device_wdt,
        &s3c_device_i2c,
        &s3c_device_iis,
        /* 添加如下语句 */
        &s3c_device_nand,
};

禁止Flash ECC校验
修改drivers/mtd/nand/s3c2410.c 文件:

找到s3c2410_nand_init_chip()函数,在该函数体最后加上一条语句:
chip>ecc.mode = NAND_ECC_NONE;

配置内核
cp arch/arm/configs/smdk2410_defconfig .config
make menuconfig

boot option 改为:
mem=64m noinitrd root=/dev/mtdblock2 init=/linuxrc console=ttySAC0

编译:
make zImage
发表于 2007-7-17 17:05:53 | 显示全部楼层
改成:root=/dev/mtdblock3
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表