S3C2416之3G s3c2416从NAND FLASH启动

  

Device Drivers  ---> [*] USB support  ---> USB Serial Converter support  --->  USB Serial Converter support
再选中其下的USB driver for GSM and CDMA modems 的选项即可。要注意的是,编译方式一定要选为模块化编译。

 

1、u-boot从nandflash启动会卡到这里

S3C2416之3G s3c2416从NAND FLASH启动_第1张图片

解决:uboot没有设置参数:SAM2416EDK # set bootargs root=/dev/mtdblock2 console=ttySAC0,115200

之后linux内核就启动起来了

2、对于nand flash----------->3C2416X的datasheet里有一段话:

S3C2416之3G s3c2416从NAND FLASH启动_第2张图片

关于ECC校验的,SLC NAND FLASH选则1bit ECC, MLC NAND Flash选择4bit ECC 和8bit ECC

并且:NAND Flash controller do not support ECC correction on booting;(BL1)

所以:关掉了SMDK2416.h中的CONFIG_NAND_BL1_8BIT_ECC宏

3、1bit ECC校验----------->S3C2416 datasheet


S3C2416之3G s3c2416从NAND FLASH启动_第3张图片

S3C2416之3G s3c2416从NAND FLASH启动_第4张图片


S3C2416之3G s3c2416从NAND FLASH启动_第5张图片


通过判断NFCONF里的最高位来判定是哪种启动方式:

S3C2416之3G s3c2416从NAND FLASH启动_第6张图片

当OM[4:2]为000时,表明从nand flash启动,但是我们的启动方式却是:

nand flash:0M[4:0] = 00100

sd             :OM[4:0] = 01000



 原文出处:http://blog.sina.com.cn/s/blog_6d2a0a1a0100vsf9.html

你可能感兴趣的:(c,Flash,linux内核)