Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1229513
  • 博文数量: 479
  • 博客积分: 12240
  • 博客等级: 上将
  • 技术积分: 4999
  • 用 户 组: 普通用户
  • 注册时间: 2007-10-24 17:12
文章分类

全部博文(479)

文章存档

2014年(1)

2013年(1)

2012年(1)

2011年(95)

2010年(177)

2009年(167)

2008年(16)

2007年(21)

分类: LINUX

2009-12-01 16:59:53


U-Boot:

修改内存大小的值的定义:
    413 #define CFG_DRAM_BASE       0xa0000000
    414 #define CFG_DRAM_SIZE       0x08000000 //128M

最重要的是修改PXA270寄存器MDCNFG,将bit31置1,把PXA270的SDRAM映射改为Large 1G-byte映射,详情参考PXA270用户手册memory controler一节。
同时还需要把bit[4:3]设置为0b10,即10 column address bits:
569 #define CFG_MDCNFG_VAL      0x82000BD1




内核:

内存地址:include/asm-arm/arch-pxa/memery.h

内存大小:arch/arm/kernel/setup.c中设定。MEM_SIZE (64*1024*1024)


这个不用,因为系统是连续的内存)还需要对内核的include/asm-arm/arch-pxa/memory.h文件进行修改,修改CPU 内存BANK映射关系,默认还是以256MB(4x64MB)的空间映射的:

41 /*
     42 * The nodes are matched with the physical SDRAM banks as follows:
     43 *
     44 * node 0: 0xa0000000-0xa3ffffff --> 0xc0000000-0xc3ffffff
     45 * node 1: 0xa4000000-0xa7ffffff --> 0xc4000000-0xc7ffffff
     46 * node 2: 0xa8000000-0xabffffff --> 0xc8000000-0xcbffffff
     47 * node 3: 0xac000000-0xafffffff --> 0xcc000000-0xcfffffff
     48 */

     49 /* Note: depending on Blob revision Mainstone has 32 or 64 Mb of SDRAM
     50 * initialized. Example with 32 Mb works for both
     51 */

     52 //#define NR_NODES 4
     56 #define NODE_MAX_MEM_SHIFT 26
     57 #define NODE_MAX_MEM_SIZE (<< NODE_MAX_MEM_SHIFT)

1<<26位,刚好是64BM。

现在改为1G-byte(256MBx4),应该改为1<<28。


同时,在u-boot中设置参数mem=128M。




阅读(2236) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~