http://www.ourdev.cn/bbs/bbs_content_all.jsp?bbs_sn=3472292
三星的S3c2410从nandflash启动将nandflash的前4K的代码片内RAM中去执行,
三星的s3c6410从SD启动时吧SD卡的最末的8K读取到片内的RAM中执行,网上的资料比较少,只有这篇文章中提到了。
6410的手册上说,可以从nandflash、onenand、SD卡启动,没有专用的烧录工具的情况下,只有SD卡启动是可以考虑的。手册上看到,SD卡启动,实际上是先执行片内IROM中的一段程序,该程序从SD卡中读取代码,写到stepping stone中,stepping stone是位于0x0c000000、size为8K的片内内存,代码写入stepping stone后,跳到0x0c000000处继续执行程序。那么,要实现从SD卡启动,就必须弄清楚:
楼主说2G的SD卡不行,应该是放的位置不对。我用的就是2G的SD卡,用友坚提供的bootloader工具烧写,对比发现,bootloader是从0x7537DC00这个地址开始写的,是一条跳转语句……我自己用RVDS写了个闪烁LED的汇编小程序,编译后,从这个位置开始写入,发现是可以用的,至于原因,还不清楚,估计与SD卡的结构有关 |