SOS,从NAND启动,uboot加载linux 内核报 bad data crc错 - OMAP-L138 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 7529|回复: 5
打印 上一主题 下一主题

SOS,从NAND启动,uboot加载linux 内核报 bad data crc错

[复制链接]

89

主题

104

帖子

391

积分

中级会员

Rank: 3Rank: 3

积分
391
跳转到指定楼层
楼主
发表于 2015-7-21 12:53:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用创龙核心板加自制的底板,总线上挂接16C554串口芯片,突然出现从nand启动后u-boot加载linux内核时报 bad datacrc错误,掉电重启后可以正常+ s/ X$ L, s: X2 J) G! x/ I  M
$ X' v4 I( a/ s5 E7 J0 P' S! n% n
进系统但是SSH应用程序报ubifs读node错误,这种现象会不会是u-boot的bug, 日志文件如下:' u6 X7 ^' _# \) _  M; u
8 Q$ \- K, F4 o- l" k" x1 g- I
; K+ b& q! V( |
U-Boot 2012.04.01-00054-g9a6dfff (Nov 04 2014 - 22:07:15)6 `* ^7 Q( J4 U0 c8 i. @
' Y3 w7 z6 _( l
I2C:   ready
5 r4 A/ G7 b' }3 z+ e4 V  }5 GDRAM:  128 MiB
& c7 c$ Y/ C' n% t+ RWARNING: Caches not enabled1 z7 q* n: h  M! @8 S
NAND:  512 MiB) n; G$ v" S6 a; b0 G- p
MMC:   davinci: 0
) v1 Z3 g9 d8 X  e, ~* e  fBad block table not found for chip 08 f& g0 G( @  s0 {
Bad block table not found for chip 0- J. N: U' v  M" H( }: F5 U
Bad block table written to 0x00001ffe0000, version 0x01& f( b: [+ n/ m5 e
Bad block table written to 0x00001ffc0000, version 0x01
7 C6 U3 w9 d" cIn:    serial
9 v' Q, e! m* J4 L( p) ~5 E# LOut:   serial
. `  \: I; j) l$ LErr:   serial6 l+ J: `1 x5 o4 ]+ Q" G/ t, w2 P
Default using MAC address from environment
7 ~3 E& @+ K+ A% b  e( ~( CNet:   DaVinci-EMAC
* D6 V: V0 V3 b% J' YHit any key to stop autoboot:  0
4 y+ e' W6 V- R% l& T( B; q: s  y2 T
9 H2 ~6 J7 K5 zLoading from nand0, offset 0x120000
* V; K/ Y. j0 I9 ~# S   Image Name:   Linux-3.3.0: D& s/ L, k9 s' g& o5 [0 T% B9 W2 |
   Image Type:   ARM Linux Kernel Image (uncompressed)
9 b: @9 |/ K9 z& L% Q9 _   Data Size:    2843400 Bytes = 2.7 MiB9 G* [1 T& v* Q: e- ^& n1 E
   Load Address: c0008000, ?% {; h% R( B" A3 x: ^
   Entry Point:  c0008000
& r6 o  R. n# L! ]## Booting kernel from Legacy Image at c0700000 ...  M2 Z/ W  I) Q; d
   Image Name:   Linux-3.3.0! @3 m6 o/ s9 s. P0 k1 Q$ R1 \
   Image Type:   ARM Linux Kernel Image (uncompressed)
/ R4 o5 ]8 @( Y7 W; }   Data Size:    2843400 Bytes = 2.7 MiB0 n" ]7 ^* x8 P* v+ B7 B
   Load Address: c0008000
0 p" X' g. M% t- t% f   Entry Point:  c0008000$ V5 r  U  k7 H, \
   Verifying Checksum ... Bad Data CRC! `0 a8 Q/ l( W( C- I8 z
ERROR: can't get kernel image!/ ]5 @) n0 T2 j. H
U-Boot > Nand boot...1 }0 u, P0 p6 u, @# Y  d  K
0 d- q( a2 a# L+ ~( b

) |+ c; m& a) O: {U-Boot 2012.04.01-00054-g9a6dfff (Nov 04 2014 - 22:07:15)
- M) x, p$ i, C- h4 b5 {, j% N6 o: ]0 U8 Y$ Y$ U
I2C:   ready
6 L6 v$ r- V) z: \* k6 EDRAM:  128 MiB: R  G' _1 S7 W
WARNING: Caches not enabled
# _! ?+ n5 u9 A9 BNAND:  512 MiB5 w; }8 S! V& e) E- [, N6 z
MMC:   davinci: 0# {) [/ q- _+ K. v4 g" Y  f
Bad block table not found for chip 0$ s0 {: e+ u( X2 @
Bad block table not found for chip 0+ G. b( {/ @9 |1 x# J
Bad block table written to 0x00001ffe0000, version 0x016 j/ d* q2 `! Q% V2 p  c
Bad block table written to 0x00001ffc0000, version 0x01
8 z7 X4 J/ ^- W' U+ e  z6 u" M0 OIn:    serial
; m1 ]6 |9 }% J/ j. n3 g& {Out:   serial; O- S9 c6 t) b4 `) S" c
Err:   serial- i* k: m+ R2 \  l' E8 m2 V1 m. ^
Default using MAC address from environment
: e. @0 A2 j5 w5 h$ B- E  fNet:   DaVinci-EMAC
6 h6 R0 v/ v8 [2 Y" i& [+ |( G3 x2 RHit any key to stop autoboot:  0- [8 D$ o* \. q5 Z; ]

9 P4 {+ H( _! B7 d4 g5 S# WLoading from nand0, offset 0x120000
; L# Y; Q$ h  }  S   Image Name:   Linux-3.3.07 N  x# N3 r7 a" I4 F/ D% u6 Z
   Image Type:   ARM Linux Kernel Image (uncompressed)
* y0 W7 p  j$ }* s9 t9 ^( z   Data Size:    2843400 Bytes = 2.7 MiB9 }" ]- ]$ q4 G9 M* J
   Load Address: c0008000
# V3 `3 R; o& e& x( f/ O+ [& g   Entry Point:  c0008000
. m' F& h7 G' C' G+ t* ?- W& Q## Booting kernel from Legacy Image at c0700000 ...
# h! ]+ L* X/ Q! S' _0 d   Image Name:   Linux-3.3.0
% `( W. G1 x5 r   Image Type:   ARM Linux Kernel Image (uncompressed)
$ w' n$ C% R8 C- X7 M   Data Size:    2843400 Bytes = 2.7 MiB
, q+ b  {, i6 y   Load Address: c00080005 c$ Z$ A4 G0 \" b3 N, ~
   Entry Point:  c0008000
2 y9 B# G" n( r2 N3 q' @   Verifying Checksum ... OK
# g, g0 l7 y% s* t6 X   Loading Kernel Image ... OK& O$ Q2 i  B# |) B/ l. B
OK
; x2 K/ L( Q% _- K/ T. ~
1 r8 Z! D3 {1 L2 D) hStarting kernel ...7 _. [% d( i; [2 |( U
5 F  d$ b" `* g/ R( ^4 ?4 B. K
Uncompressing Linux... done, booting the kernel.0 K6 F- P* T) r, V! w( j# t4 i- v
[    0.000000] Booting Linux on physical CPU 0/ A$ i% V$ X& v, C  k2 w9 `) x/ r" a
[    0.000000] Linux version 3.3.0 (root@custar-desktop) (gcc version 4.3.3 (Sourcery G++ Lite 2009q1-203) ) #8 g PREEMPT Tue Apr 28 08:29:38 CST 2015: `# P* Q$ `1 q6 g$ G* K
[    0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
6 n! R1 Q$ U$ \, H  h5 R: o7 H[    0.000000] CPU: VIVT data cache, VIVT instruction cache
. q6 U* f! M! F1 T) c) _[    0.000000] Machine: DaVinci DA850/OMAP-L138/AM18x EVM
" A( L; z/ |, }  h/ F* n[    0.000000] Memory policy: ECC disabled, Data cache writeback8 b3 q( r/ \9 \. c) l5 C8 i
[    0.000000]  =======> da850_evm_map_io!
" ?  }) ?& O! h[    0.000000] BUG: mapping for 0x80000000 at 0xfffe0000 out of vmalloc space- _/ B7 ~5 f  Q6 N; B, k% n
[    0.000000] DaVinci da850/omap-l138/am18x variant 0x1
/ e" U) u' h$ j' d2 J- Y8 l! X. G1 v) ?4 Q
0 k& c2 x' Z( E* g6 S5 w9 q

( Z+ V3 D) N& I( v9 i) m' ^, \- R/ x8 W......
) @+ R( u5 P: N5 Z$ t; `tarting Dropbear SSH server: [   17.173901] UBIFS error (pid 1063): ubifs_read_node: bad node length 4082, expected 35702 g0 u& @  q  y3 P
[   17.182220] UBIFS error (pid 1063): ubifs_read_node: bad node at LEB 486:101360, LEB mapping status 1
9 h" u0 s! D8 k' A" y[   17.191623] UBIFS error (pid 1063): do_readpage: cannot read page 22 of inode 3091, error -22
! ^$ v) B- s0 ^, L6 ]7 Q[   17.202389] UBIFS error (pid 1063): ubifs_read_node: bad node length 4082, expected 3570& @1 o  H) n: R% {4 P, G4 E
[   17.210675] UBIFS error (pid 1063): ubifs_read_node: bad node at LEB 486:101360, LEB mapping status 1
) v# g2 |2 _8 d4 O: R9 Q. v' |! S[   17.220069] UBIFS error (pid 1063): do_readpage: cannot read page 22 of inode 3091, error -22- C9 g" M4 @  X
/etc/rc5.d/S10dropbear: line 70:  1063 Bus error               start-stop-daemon -S -x "$DAEMON" -- $KEY_ARGS -p "$DROPBEAR_PORT" $DROPBEAR_EXTRA_ARGS
, d8 U9 W/ L) ?4 YStarting telnet daemon.4 a& u/ c$ t& N3 R
& H9 r! n* l$ V2 G) }, a2 ?
......
4 }1 r6 g/ h7 X" b% m$ ?Stopping Bootlog daemon: bootlogd.
) R' Y: ~  [. n7 @5 O7 D+ C5 h% R9 x# @+ o5 s
_____                    _____           _         _
; `. Z( p2 ~6 h  C5 w" K|  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_
2 @7 |, Q! m8 S1 ^1 m|     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|$ g$ M" K$ c# V) D5 d) m1 x8 ^2 b
|__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|
; H5 J/ {2 Q8 W/ ]              |___|                    |___|
; G0 V. h5 L  Q/ U0 H$ Y
" Q6 A* U) I( O: D4 _3 bArago Project http://arago-project.org tl ttyS2
" \" z5 T; D' p" f8 o, A! f" Y- p% w8 s) V! ^1 t, Y! U& V
Arago 2013.06 tl ttyS2/ U, T5 G) w# m( X

* w0 ^6 z  j1 x* Rtl login: root (automatic login): o* N, j0 H1 n  P

) ^8 K( C" t4 G( E3 |( U1 Nroot@tl:~#6 C2 V; w/ j4 R5 @, N# E- F# o. \
/ o* `( K. m" |$ z
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
沙发
发表于 2015-7-21 13:54:08 | 只看该作者
16C554串口芯片是连接在emifa总线,nand flash也是连接emifa总线,有可能被影响了。
回复 支持 反对

使用道具 举报

89

主题

104

帖子

391

积分

中级会员

Rank: 3Rank: 3

积分
391
板凳
 楼主| 发表于 2015-7-21 14:51:04 | 只看该作者
teddy 发表于 2015-7-21 13:54  [; y" g! L; [  x! p( f
16C554串口芯片是连接在emifa总线,nand flash也是连接emifa总线,有可能被影响了。 ...

* @# o' z1 X3 l会是数据线影响,还是片选之间干扰,16c554 是一上电就复位的。
回复 支持 反对

使用道具 举报

89

主题

104

帖子

391

积分

中级会员

Rank: 3Rank: 3

积分
391
地板
 楼主| 发表于 2015-7-21 14:52:25 | 只看该作者
有没有可能EMIF哪个寄存器设置不妥当产生这种影响。
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
5#
发表于 2015-7-27 15:10:34 | 只看该作者
可以参考创龙的多串口模块TL16CP754,就是通过emifa扩展串口,相应的驱动源码,例程都是提供的。
回复 支持 反对

使用道具 举报

89

主题

104

帖子

391

积分

中级会员

Rank: 3Rank: 3

积分
391
6#
 楼主| 发表于 2015-8-12 10:20:09 | 只看该作者
teddy 发表于 2015-7-27 15:10
8 j+ B' l1 ~9 W8 f  L1 m! N可以参考创龙的多串口模块TL16CP754,就是通过emifa扩展串口,相应的驱动源码,例程都是提供的。 ...

& N+ w; u- M- DEMIF相关配置应该是没问题的,spansion的片子在延长总线时序,增加时钟之后,UBIFS逻辑坏块试了1000次反复满规格擦写不会出现,但是某些核心板还是会出现重启后内核bad crc,一般是在更改系统里文件并reboot之后出现,这时在u-boot中reset,又正常了,但是还是会出现在5 ~1 b4 J8 N' k: _! k7 J) q' ?
Starting kernel ...7 X& ], k' X9 X/ r1 \, x, e
Uncompressing Linux... done, booting the kernel.之后卡住的现象!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2025-6-16 17:13 , Processed in 0.040880 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

快速回复 返回顶部 返回列表