嵌入式开发者社区

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

作者: supeng    时间: 2016-12-19 16:27
标题: linux 内核移植,启动时卡住了
[attach]1724[/attach]# r3 h7 `) H2 s& i( c

* p4 s' J! _% B内核启动就卡在这里了?nandflash和网络启动都是这种错误,不知道为什么?6 M0 F# ^- w5 O+ U5 G, U8 m% y! @

2 d$ d1 D" p. t4 @# z+ ~
" F5 q/ W, W( W3 }
作者: 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& i1 l7 r8 c5 E& u2 |
确认内核启动时的打印串口是否为uart2

3 }& g) X8 y" Z% u# Y1 ?是串口2,console =ttyS2,115200n8.还有其他原因造成么?
作者: wang253098656    时间: 2016-12-21 09:11
有的,跟启动参数无关,跟内核有关,让我想想,我也遇到过,我记得是内核有问题。
作者: supeng    时间: 2016-12-21 09:14
wang253098656 发表于 2016-12-21 09:11
; Y2 I( S& D0 ]' u1 W+ v* X" R有的,跟启动参数无关,跟内核有关,让我想想,我也遇到过,我记得是内核有问题。 ...
5 g4 ]+ K  [4 q4 G8 p
能留个通信方式么?
作者: wang253098656    时间: 2016-12-21 09:23
原谅我是个彩笔,我只遇到过,但是忘记怎么处理了,嘻嘻
作者: supeng    时间: 2016-12-21 09:30
wang253098656 发表于 2016-12-21 09:236 E1 n/ U) p3 M' R- C: Z$ Q' E
原谅我是个彩笔,我只遇到过,但是忘记怎么处理了,嘻嘻

: y5 f" `$ u3 n6 C  t好的谢谢!
作者: 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
* y& [" @7 |- j; m参考这个看看http://wenku.baidu.com/link?url=3pklCrDOgf4jVDwSVKM7yiXkEXoS_bZC9pp59SqW2bkEryiHVxQyWJ1e ...
9 ]' R7 I8 j- q* h5 d5 ~0 I8 d
你们的开发板有没有遇到过这种原因!,这个文档上写的和你们给的内核对应不上
作者: vefone    时间: 2016-12-22 21:14
这个问题挺棘手。
6 l1 Z; w" ^( _http://processors.wiki.ti.com/index.php/Kernel_-_Common_Problems_Booting_Linux
) [( W) s4 f8 U% b0 P3 ^  u5 Q# C总结为两个原因:
9 a4 K3 ?8 S4 q) A% M1. u-boot串口参数不对或调试串口初始化有问题(主要是pinumux)
' h+ K) t4 }% t' D# J2. 内核中对外设初始化不成功,导致卡死4 H, W) D) d+ S$ Y
3. 其他未知4 N% e2 Y  K+ L* r$ v, W
之前调试这个问题的步骤,十分遗憾,最后没有找出问题所在/ i; l2 c2 Y0 C9 i2 u, }/ N3 a
启动卡在Uncompressing Linux... done, booting the kernel
  N4 o( Y3 H: T调试:
' P& J. m# X4 x; v4 |& \查看内核中的System.map,寻找 __log_buf的地址
( n' ?" m, A8 X
! g, s$ X# Q& F启动u-boot,让她运行至Uncompressing Linux... done, booting the kernel,按复位键,按下空格。进入u-boot命令行。
& B- M( ]* B, H7 {执行 md 0x8059ff88  查看内核运行过程(注:需将System.map中的 __log_buf的地址最高四位从 C 改为 8)。
" m* R9 D5 H3 g: Q# s; T
' `% h) D$ p! y, c$ x7 [6 }+ h" r* A# i( g
7 L! |- f" J6 y0 v9 V: f





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