主题 : 哪位大师在MINI2440上移植了2.6.31内核..麻烦发个移植步骤... 复制链接 | 浏览器收藏 | 打印
要不干脆就不要做...
级别: 新手上路
UID: 7244
精华: 0
发帖: 29
金钱: 290 两
威望: 150 点
综合积分: 58 分
注册时间: 2009-07-06
最后登录: 2009-11-16
10楼  发表于: 2009-11-02 20:56

 回 9楼(kasim) 的帖子

谢谢你..我再按你说的尝试一下..
真正奇妙的不是世界是什么样子..而是世界就是这个样子..
要不干脆就不要做...
级别: 新手上路
UID: 7244
精华: 0
发帖: 29
金钱: 290 两
威望: 150 点
综合积分: 58 分
注册时间: 2009-07-06
最后登录: 2009-11-16
11楼  发表于: 2009-11-03 20:04
kasim 又要向你求救了...

我按照你说的配置了内核..并按照那个帖子修改了编译错误..并打了yaffs2的补丁..

结果启动时一直停留在 booting the kernel.这个地方..LCD也没显示..
------
Enter your selection: b
Copy linux kernel from 0x00050000 to 0x30008000, size = 0x00200000 ... done
zImage magic = 0x016f2818
Setup linux parameters at 0x30000100
linux command line is: "noinitrd root=/dev/mtdblock2 init=/linuxrc console=ttySAC0"
MACH_TYPE = 782
NOW, Booting Linux......
Uncompressing Linux......................................................................................................................... done, booting the kernel.

我在又修改了内核 勾上了kernel hacking目录下的kernel debugging和kernel low-level debugging functions
(0) s3c UART to use for  low-level debug 我用的 USB 0

编译后重新运行内核。。却出现
Copy linux kernel from 0x00050000 to 0x30008000, size = 0x00200000 ... done
zImage magic = 0x016f2818
Setup linux parameters at 0x30000100
linux command line is: "noinitrd root=/dev/mtdblock2 init=/linuxrc console=ttySA
C0"
MACH_TYPE = 782
NOW, Booting Linux......
一直停留在这个地方...调试信息都没出呢..什么原因咯..
真正奇妙的不是世界是什么样子..而是世界就是这个样子..
要不干脆就不要做...
级别: 新手上路
UID: 7244
精华: 0
发帖: 29
金钱: 290 两
威望: 150 点
综合积分: 58 分
注册时间: 2009-07-06
最后登录: 2009-11-16
12楼  发表于: 2009-11-03 21:00
在内核引导阶段就出错了。。应该还没跳到start_kernel之前就出问题了。。初始化的问题怎么解决咯。。。
真正奇妙的不是世界是什么样子..而是世界就是这个样子..
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
13楼  发表于: 2009-11-03 21:29
把你内核根目录下的.config文件附上来看看
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
要不干脆就不要做...
级别: 新手上路
UID: 7244
精华: 0
发帖: 29
金钱: 290 两
威望: 150 点
综合积分: 58 分
注册时间: 2009-07-06
最后登录: 2009-11-16
14楼  发表于: 2009-11-03 21:50
太长了..我就不贴了..做成附件了..麻烦您下载下来帮我看看吧..
附件: config.rar (12 K) 下载次数:1
真正奇妙的不是世界是什么样子..而是世界就是这个样子..
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
15楼  发表于: 2009-11-03 22:36

 回 14楼(mrlee321) 的帖子

从内核的配置来看似乎没什么错,你确定你没烧错image?
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
要不干脆就不要做...
级别: 新手上路
UID: 7244
精华: 0
发帖: 29
金钱: 290 两
威望: 150 点
综合积分: 58 分
注册时间: 2009-07-06
最后登录: 2009-11-16
16楼  发表于: 2009-11-03 23:14

 回 15楼(kasim) 的帖子

不是烧 zImage么..我以前也烧过的啊..应该没错的..

我觉得是初始化的问题啊..那个成功移植2.6.31的帖子上说初始化有问题..要删除除了其中一句代码以外的所有__init....

我照着他的做了...但是编译内核的时候会出现错误..不删__init可以编译通过..但是烧到班子里面不能初始化...移植停留在boot kernel那个地方。。

我刚才又对照了一遍2.6.29内核的.config..配置应该没有错误..还是启动初始化的问题...
真正奇妙的不是世界是什么样子..而是世界就是这个样子..
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
17楼  发表于: 2009-11-03 23:24
arch/arm/mach-s3c2440/mach-mini2440.c里的"__initdata"和你现在遇到的问题无关,你的内核还没有跑到那里。正常情况下"Uncompressing Linux..."的信息是从arch/arm/boot/compressed/misc.c的decompress_kernel()函数里打出来的:
复制代码
  1. #ifndef STANDALONE_DEBUG
  2. ulg
  3. decompress_kernel(ulg output_start, ulg free_mem_ptr_p, ulg free_mem_ptr_end_p,
  4.           int arch_id)
  5. {
  6.     output_data        = (uch *)output_start;    /* Points to kernel start */
  7.     free_mem_ptr        = free_mem_ptr_p;
  8.     free_mem_end_ptr    = free_mem_ptr_end_p;
  9.     __machine_arch_type    = arch_id;
  10.     arch_decomp_setup();
  11.     makecrc();
  12.     putstr("Uncompressing Linux...");
  13.     gunzip();
  14.     putstr(" done, booting the kernel.\n");
  15.     return output_ptr;
  16. }
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
18楼  发表于: 2009-11-03 23:29
抱歉,我刚才看的还不够仔细,的确是配置的问题,你的配置中有:
CONFIG_DEBUG_ICEDCC=y
这会告诉内核把解压过程中的debug信息通过ICE输出来,而Mini2440上显然没有接这个东西,于是...
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
要不干脆就不要做...
级别: 新手上路
UID: 7244
精华: 0
发帖: 29
金钱: 290 两
威望: 150 点
综合积分: 58 分
注册时间: 2009-07-06
最后登录: 2009-11-16
19楼  发表于: 2009-11-03 23:35

 回 18楼(kasim) 的帖子

是么??我要改一下。。。
真正奇妙的不是世界是什么样子..而是世界就是这个样子..