嵌入式开发者社区

标题: linux 内核移植,启动时卡住了 [打印本页]

作者: supeng    时间: 2016-12-19 16:27
标题: linux 内核移植,启动时卡住了
[attach]1724[/attach]( G+ T) d2 A& X7 M/ q- z0 @

) _1 d3 d: M. M* l内核启动就卡在这里了?nandflash和网络启动都是这种错误,不知道为什么?
% l: Z0 _9 B- ^' ?' M1 E9 Z; i) g- u+ ~" @( O0 l  c& K- n
. ~2 T0 F% ?' V& k2 W& z, h

作者: human    时间: 2016-12-19 22:17
确认内核启动时的打印串口是否为uart2
作者: supeng    时间: 2016-12-20 14:25
是串口2,console =ttyS2,115200n8.还有其他原因造成么?
作者: supeng    时间: 2016-12-20 14:25
human 发表于 2016-12-19 22:17
: s( A+ R, U: _- u& a/ A& G5 ^确认内核启动时的打印串口是否为uart2
5 s' m. o) f- [$ @; h3 U% m4 Z
是串口2,console =ttyS2,115200n8.还有其他原因造成么?
作者: wang253098656    时间: 2016-12-21 09:11
有的,跟启动参数无关,跟内核有关,让我想想,我也遇到过,我记得是内核有问题。
作者: supeng    时间: 2016-12-21 09:14
wang253098656 发表于 2016-12-21 09:11* E" ]. l1 u3 ?
有的,跟启动参数无关,跟内核有关,让我想想,我也遇到过,我记得是内核有问题。 ...
: g* h, _) @, @. ?6 m- K( J# J9 t
能留个通信方式么?
作者: wang253098656    时间: 2016-12-21 09:23
原谅我是个彩笔,我只遇到过,但是忘记怎么处理了,嘻嘻
作者: supeng    时间: 2016-12-21 09:30
wang253098656 发表于 2016-12-21 09:230 P# _/ O4 \9 r. w& g
原谅我是个彩笔,我只遇到过,但是忘记怎么处理了,嘻嘻

4 \; @) U: }0 u7 R: i( ]好的谢谢!
作者: human    时间: 2016-12-22 09:21
参考这个看看http://wenku.baidu.com/link?url= ... qq-pf-to=pcqq.group
作者: supeng    时间: 2016-12-22 14:34
human 发表于 2016-12-22 09:21
+ {+ F1 h; r9 y7 G* v参考这个看看http://wenku.baidu.com/link?url=3pklCrDOgf4jVDwSVKM7yiXkEXoS_bZC9pp59SqW2bkEryiHVxQyWJ1e ...

5 Z+ U6 t' l7 Y: p4 f6 A, Q% ]你们的开发板有没有遇到过这种原因!,这个文档上写的和你们给的内核对应不上
作者: vefone    时间: 2016-12-22 21:14
这个问题挺棘手。
, t1 G; R3 Y4 Y7 ghttp://processors.wiki.ti.com/index.php/Kernel_-_Common_Problems_Booting_Linux
, Q' N, i2 J9 s  N) p# U8 y: h+ C总结为两个原因:  J  y/ h' H* W: X) o) h! K+ }8 L
1. u-boot串口参数不对或调试串口初始化有问题(主要是pinumux)
5 l7 j3 H% Y' S# X, O1 F2. 内核中对外设初始化不成功,导致卡死
' e, @7 J' j( i8 r0 ?3. 其他未知
6 g# X, P) B( ~3 W) d3 ]* \之前调试这个问题的步骤,十分遗憾,最后没有找出问题所在! ]8 d, [3 f# P, n- G' k
启动卡在Uncompressing Linux... done, booting the kernel
5 p1 V" ~4 F- W1 Y! c2 Y调试:+ ~' q* a% k. G0 ~  `
查看内核中的System.map,寻找 __log_buf的地址" V- @) y# T9 X" O; k
0 N) G6 _; @; b/ h/ ]8 z
启动u-boot,让她运行至Uncompressing Linux... done, booting the kernel,按复位键,按下空格。进入u-boot命令行。
' v% F2 `0 R) N执行 md 0x8059ff88  查看内核运行过程(注:需将System.map中的 __log_buf的地址最高四位从 C 改为 8)。
* W7 E/ i9 v* Q/ n6 B) b. t
2 s- o6 \0 w4 w# P6 l
2 Q" j5 j6 }4 [3 E2 G
* a4 x1 ^2 {0 M! h1 ^




欢迎光临 嵌入式开发者社区 (https://www.51ele.net/) Powered by Discuz! X3.4