免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1476 | 回复: 0
打印 上一主题 下一主题

linux2.6.32.移植到TQ2440 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-20 09:44 |只看该作者 |倒序浏览

篇文章重点在于探讨移植linux2.6.32和busybox到TQ2440开发板上可能出现的问题分析

对于移植过程,请按照指导书上的内容按部就班操作

问题1. 卡死

描述  文件系统不能加载

Copy linux kernel from 0x00200000 to 0x30008000, size = 0x00200000 ... Copy Kernel to SDRAM done,NOW, Booting Linux......
Uncompressing Linux................................................................................................................................. done, booting the kernel.,

然后,在此处卡死了

可能的解决方案:

查看Uboot传递的参数,可能是bootargs参数错误,比如root=/dev/mtdblockx  x的值不对,比如文件系统rootfstype=yaffs2 内容书写错误

问题2:  Kernel panic

描述:文件系统加载成功后

Free init memory :140k

Kernel paic -not syncing: Attempted to kill init!,然后卡死


可能的解决方法:

1. 在内核编译时候,注意打开对EABI,OABI的支持,2440的指导文档上着重提到了这一点

2. 查看busybox的属性

your  rootfs   #readelf /bin/busybox -A

  Tag_CPU_name: "4T"
  Tag_CPU_arch: v4T
  Tag_ARM_ISA_use: Yes
  Tag_THUMB_ISA_use: Thumb-1
  Tag_ABI_PCS_wchar_t: 4
  Tag_ABI_FP_denormal: Needed
  Tag_ABI_FP_exceptions: Needed
  Tag_ABI_FP_number_model: IEEE 754
  Tag_ABI_align8_needed: Yes
  Tag_ABI_enum_size: int

看支持的CPU架构Tag_CPU_arch是否为V4T,因为S3C2440是V4T的,一些编译器版本比如codesourrce出品的arm-2009q1是默认支持armv5t的

如果显示的 CPU架构是Tag_CPU_arch: xxx   xxx不为V4T

请修改busybox的Makefile

#vi Makefile

设置工具链

修改

CC=$(CROSS_COPILE)gcc

CC=$(CROSS_COPILE)gcc -march=armv4t

 

‍问题3: 不能进控制台

描述

一直打印

cant'open /dev/s3c2410_serial: No such file or director


可能的解决方案

修改 etc/inittab

#vi /etc/inittab

‍s3c2410_serial::askfirst:/bin/sh修改为

console::askfirst:/bin/sh

 

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP