Chinaunix首页 | 论坛 | 博客
  • 博客访问: 624546
  • 博文数量: 121
  • 博客积分: 8469
  • 博客等级: 中将
  • 技术积分: 1065
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-03 10:32
文章分类

全部博文(121)

文章存档

2013年(1)

2012年(15)

2010年(2)

2009年(8)

2008年(95)

我的朋友

分类: LINUX

2008-07-10 14:36:12


这是我在PXA270处理器上移植linux-2.6.9的过程遇到的一个问题。

u-boot移植成功后,我开始把开发板的linux-2.6.9的内核镜像下载到最小系统中运行。

内核启动到pxa_init就不动了。经过进一步的跟踪后发现问题出在mempool_alloc_slab。

这让我想到可能是SDRAM控制器的设置有问题,因为在画原理图的时候就在SDRAM的bank选择地址线存在疑问,我们之前的PXA255平台采用的是A22、A23,而新买的PXA270的开发板是采用A23、A24。最后是选择A23、A24来作为SDRAM的bank选择。

在CPU的datasheet中可以看到:
选择SA-1110 Addressing Mode,则以A22、A23来做bank选择
2x13x9x16 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 23 22 0 9 8 7 6 5 4 3 2 1
选择非SA-1110 Addressing Mode,则以A23、A24来做bank选择
2x13x9x16 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 24 23 0 9 8 7 6 5 4 3 2 1

修改MDCNFG寄存器的值后没有再出现内存分配的问题。

现在回想起来,u-boot的正常运行反而让我以为SDRAM的设置正确,多花了些时间来分析调试linux内核源码。


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