注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

小白的博客

嵌入式爱好者

 
 
 

日志

 
 

u-boot-2012.04.01移植笔记——支持norflash启动  

2012-08-12 22:54:16|  分类: 韦东山视频第二轮 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
1、在arch/arm/lib/board.c文件里面
将:
puts(failed);
      hang();
改为:
      puts("0MB\n\r");
目的:防止nand启动时,程序卡死!

2、在drivers/mtd/jedec_flash.c文件的amd_flash_info数组的最后加上这么一项:
{
.mfr_id = (u16)MX_MANUFACT,
.dev_id = 0x2249,
.name = "MXIC MT29LV160DB",
.uaddr = {
[1] = MTD_UADDR_0x0555_0x02AA /* x16 */
},
.DevSize = SIZE_1MiB,
.CmdSet = P_ID_AMD_STD,
.NumEraseRegions = 4,
.regions = {
ERASEINFO(16*1024, 1),
ERASEINFO(8*1024, 2),
ERASEINFO(32*1024, 1),
ERASEINFO(64*1024,31 ),
}
},
注:在最后一个endif之后添加此项!!!
目的:使u-boot可以识别出来本开发板的norflash

3、在include/configs/smdk2440.h中
将:
#define CONFIG_SYS_MAX_FLASH_SECT (19)
改为:
#define CONFIG_SYS_MAX_FLASH_SECT (128)
目的:使u-boot支持更多的norflash扇区

4、在arch/arm/cpu/arm920t/start.S文件的开始处添加:
.globl base_sp
base_sp:
    .long 0

并且将:
        ldr r1 , = _TEXT_BASE
        bl board_init_r
改为:
        ldr r1 , = _TEXT_BASE
        ldr sp ,  base_sp  //加了这么一项
        bl board_init_r

在arch/arm/lib/board.c文件的board_init_f文件中
开头添加声明:
extern ulong base_sp;
结尾return之前添加:
base_sp = addr_sp ;

目的:将栈移动到后面去,程序执行的时候设为栈的内存空间内容会发生变化!!!

目前norflash启动会可以通过ymodem模式下载,超级终端支持ymodem模式
  评论这张
 
阅读(896)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017