免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1060 | 回复: 0
打印 上一主题 下一主题

编译2.6.18遇到的s3c2410.c问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-05-22 12:13 |只看该作者 |倒序浏览

                                                drivers/mtd/nand/s3c2410.c: In function `s3c2410_nand_init_chip':
drivers/mtd/nand/s3c2410.c:544: error: stray '\194' in program
drivers/mtd/nand/s3c2410.c:544: error: stray '\173' in program
drivers/mtd/nand/s3c2410.c:544: error: `eccmode' undeclared (first use in this function)
drivers/mtd/nand/s3c2410.c:544: error: (Each undeclared identifier is reported only once
drivers/mtd/nand/s3c2410.c:544: error: for each function it appears in.)
make[3]: *** [drivers/mtd/nand/s3c2410.o] 错误 1
make[2]: *** [drivers/mtd/nand] 错误 2
make[1]: *** [drivers/mtd] 错误 2
make: *** [drivers] 错误 2
原因是我在进行这一步:
1.3.3 禁止 Flash ECC 校验
     我们的内核都是通过 UBOOT 写到 Nand Flash 的, UBOOT 通过的软件 ECC 算法产生 ECC 校验码, 这与内核
校验的 ECC 码不一样, 内核中的 ECC 码是由 S3C2410 中 Nand Flash 控制器产生的. 所以, 我们在这里选择禁止
内核 ECC 校验.
修改 drivers/mtd/nand/s3c2410.c 文件:
[arm@localhost linux­2.6.14]$ vi drivers/mtd/nand/s3c2410.c
找到 s3c2410_nand_init_chip()函数,在该函数体最后加上一条语句:
chip­>eccmode = NAND_ECC_NONE;
保存,退出。
OK.我们的关于 flash 分区的设置全部完工.
的时候
复制chip­>eccmode = NAND_ECC_NONE;
少了-这个符号
修改完后又遇到这个错误
drivers/mtd/nand/s3c2410.c: In function `s3c2410_nand_init_chip':
drivers/mtd/nand/s3c2410.c:544: error: stray '\194' in program
drivers/mtd/nand/s3c2410.c:544: error: stray '\173' in program
drivers/mtd/nand/s3c2410.c:544: error: structure has no member named `eccmode'
make[3]: *** [drivers/mtd/nand/s3c2410.o] 错误 1
make[2]: *** [drivers/mtd/nand] 错误 2
make[1]: *** [drivers/mtd] 错误 2
make: *** [drivers] 错误 2
我把那行命令手动敲进去后再运行make zImage
得到下述错误
drivers/mtd/nand/s3c2410.c: In function `s3c2410_nand_init_chip':
drivers/mtd/nand/s3c2410.c:544: error: structure has no member named `eccmode'
make[3]: *** [drivers/mtd/nand/s3c2410.o] 错误 1
make[2]: *** [drivers/mtd/nand] 错误 2
make[1]: *** [drivers/mtd] 错误 2
make: *** [drivers] 错误 2
查阅了我博文里面的一篇文章《》
按照下述方法操作,成功:
首先gedit s3c2410.c
然后ctrl+f查找 NAND EEC SOFT
找到后将SOFT改为NONE
成功
        case TYPE_S3C2412:
        case TYPE_S3C2440:
              chip->ecc.hwctl     = s3c2440_nand_enable_hwecc;
              chip->ecc.calculate = s3c2440_nand_calculate_ecc;
            break;
        }
    } else {
        chip->ecc.mode        = NAND_ECC_NONE;
    }
}
               
               
               
               
               
               
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u3/97043/showart_1935285.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP