Chinaunix首页 | 论坛 | 博客
  • 博客访问: 845545
  • 博文数量: 321
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 936
  • 用 户 组: 普通用户
  • 注册时间: 2013-02-23 11:25
文章分类

全部博文(321)

文章存档

2017年(1)

2016年(10)

2015年(61)

2014年(187)

2013年(62)

分类: Android平台

2014-06-24 00:06:11

原文地址:machine id不匹配 作者:edaworld

uboot问题:uboot引导kernel时出现machine id不匹配的问题
-------------------------------------------------------------
Starting kernel ...

machid:0x65a,gd:57cdffe0,bd57cdffc4
Uncompressing Linux... done, booting the kernel.

Error: unrecognized/unsupported machine ID (r1 = 0x0000065a).

Available machine support:

ID (hex) NAME
000009d8 MINI6410

Please check your kernel config and/or bootloader.
-------------------------------------------------------------
解决方法:要让uboot传给kernel的machine id与kernel中的id相匹配;
第一种:修改uboot源码:
修改 board/samsung/xwr6410/xwr6410.c 文件:
--> gd->bd->bi_arch_number = MACH_TYPE_SMDK6410;
--> if(gd->bd->bi_arch_number!=MACH_TYPE_SMDK6410)
--> 将SMDK6410改成MINI6410;达到与kernel中的machine id一致;

查看定义的machine id:
arch/arm/include/asm/mach-types.h


第二种:修改kernel源码:
在linux内核(./arch/arm/mach-s3c2440/mach-smdk2440.c)中,代码是这样:
MACHINE_START(SMDK2440, "SMDK2440"

或者
修改 arch/arm/tools/mach-types 
修改里面的id号码;达到与uboot传出的machine id一致
阅读(702) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~