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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 7627|回复: 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错误,掉电重启后可以正常
2 \" c/ E" l  X* i" o8 a* @0 o8 ^# N5 N& k& g
进系统但是SSH应用程序报ubifs读node错误,这种现象会不会是u-boot的bug, 日志文件如下:3 ]0 c/ r% M4 c2 ^6 U

) S# t/ Y* r) m- s+ o
  X( r2 \8 \" ?" jU-Boot 2012.04.01-00054-g9a6dfff (Nov 04 2014 - 22:07:15)9 y6 L6 A) k; o' f( I

+ `/ Q  v7 l$ I  II2C:   ready
7 D1 A4 D  p/ ~& p- h5 KDRAM:  128 MiB
. i( r) f. z# tWARNING: Caches not enabled
/ ^6 W. O- c  N; i- E' lNAND:  512 MiB  Q, q- D( {* W1 s
MMC:   davinci: 0
# T& m/ g" k  O1 Y3 N' \$ QBad block table not found for chip 0
& G# R5 B- o; L# A8 o/ d: S3 `2 xBad block table not found for chip 0
6 d) D/ s2 @! lBad block table written to 0x00001ffe0000, version 0x012 C" u# ~5 a: z* u1 ~
Bad block table written to 0x00001ffc0000, version 0x01
7 B- X5 O- I; i8 q( y" ~In:    serial
( Q, Y3 H0 k9 F- [. h4 V- O' h5 S' P% pOut:   serial/ F0 D  [' v5 l! u& f
Err:   serial+ g+ [  d, l- c9 H* T
Default using MAC address from environment
# s/ s3 J2 Q" |% }Net:   DaVinci-EMAC
  h# e) ]" T( n6 h: n% bHit any key to stop autoboot:  0
: _) O# B6 r! Q3 V  w5 Y- A$ }/ [6 H: a' \4 R
Loading from nand0, offset 0x1200004 p( ~; ~* U& T! m! i
   Image Name:   Linux-3.3.0
/ v4 x/ D: }% v' O   Image Type:   ARM Linux Kernel Image (uncompressed)5 ^# l# A0 t& q
   Data Size:    2843400 Bytes = 2.7 MiB8 l5 P7 E5 b  y4 m7 J: A% v$ {1 C
   Load Address: c0008000; \* |; D" q2 h" l% d
   Entry Point:  c0008000! l" ~- K$ `/ h4 x4 {# b7 [
## Booting kernel from Legacy Image at c0700000 ...0 K# h7 L/ p5 [! _
   Image Name:   Linux-3.3.0  k4 U3 l0 N, v- u* G: c
   Image Type:   ARM Linux Kernel Image (uncompressed)
# C5 }9 T: N0 u0 e+ X5 o: d1 q   Data Size:    2843400 Bytes = 2.7 MiB
. x5 ]+ w& O4 K& u+ }7 N* a   Load Address: c0008000
$ ]9 N0 n* f- J+ Y: ]2 f- O6 h   Entry Point:  c0008000' y: A: u. b  R( S9 W' T- A
   Verifying Checksum ... Bad Data CRC- |9 t  h5 f7 B, w' |; C
ERROR: can't get kernel image!
2 @+ d5 k, g5 X$ iU-Boot > Nand boot...
! J0 n3 f$ g( h( }( k2 b1 K1 ]3 d$ F+ t4 g3 A% Z
* j0 }  v6 f) b( ^; R- z0 w
U-Boot 2012.04.01-00054-g9a6dfff (Nov 04 2014 - 22:07:15)
' A4 L% e2 S. X) K4 R+ }. d. _$ p% G# K2 n( m* f9 \8 R
I2C:   ready
. R+ A# b& s( c; U( d8 hDRAM:  128 MiB! J- e- O- _  i1 t' ~8 s
WARNING: Caches not enabled
  C: t/ U* u+ w% z+ T4 lNAND:  512 MiB
( Z* o0 [# X" [- l, }1 W% UMMC:   davinci: 0
" M$ }/ d; Z0 e4 {& j, \Bad block table not found for chip 0
3 ?4 i) ^+ o8 m  C% ?Bad block table not found for chip 0- I* r$ M7 ~% ]. O% R/ w: x/ v
Bad block table written to 0x00001ffe0000, version 0x01( i' S1 [8 J' o% O2 m
Bad block table written to 0x00001ffc0000, version 0x01
2 v2 }, g1 ]: r  }( X5 B$ fIn:    serial. n) z4 O8 z( c) B" x
Out:   serial" Q6 [! M# G8 [2 D( `' f( S
Err:   serial( P( e  d2 }- [1 n
Default using MAC address from environment; `1 Z, \  [" `  R4 w6 Q
Net:   DaVinci-EMAC
) ]8 k8 p9 N/ eHit any key to stop autoboot:  0
  K/ R( u! ~! g# F4 H
9 |6 \2 z4 W/ U  Y5 F7 |8 WLoading from nand0, offset 0x120000) p" K* L2 J5 Z$ ]1 R! s8 ~6 M
   Image Name:   Linux-3.3.0
0 }1 C$ W7 R) d( \2 _3 \; O   Image Type:   ARM Linux Kernel Image (uncompressed)$ L( j2 {% U0 _3 B1 V! \8 i6 U
   Data Size:    2843400 Bytes = 2.7 MiB
* ~. ]* u3 r4 O. y0 S3 [1 `6 @   Load Address: c0008000
, a6 V8 C4 u% Q: j0 A2 r   Entry Point:  c0008000
) n0 P' ?4 A% o: }## Booting kernel from Legacy Image at c0700000 ...3 z5 t% J' G7 m0 L
   Image Name:   Linux-3.3.0. o, ^% n8 ?9 d* P) x4 e5 `
   Image Type:   ARM Linux Kernel Image (uncompressed)
9 p' e9 }# P/ X/ ]' C* e   Data Size:    2843400 Bytes = 2.7 MiB
2 S7 ]# t; ~2 P- m+ L7 X   Load Address: c00080007 h8 W2 u4 \" z8 Y0 O3 C7 _: N
   Entry Point:  c0008000
' F9 F0 n. p, i3 [   Verifying Checksum ... OK
3 g0 ?: c5 ]; B  h5 Y   Loading Kernel Image ... OK  W, X# a% k# [) Z! z+ \1 I
OK
* t0 w2 b; U- d& }% A& j# |1 X$ \/ E; Y
Starting kernel ...
- B" `5 [. U1 D/ ?% w; I2 M  T' J! q' K0 X  x) L
Uncompressing Linux... done, booting the kernel.
$ e& C1 T- q0 V; B& a% H  V[    0.000000] Booting Linux on physical CPU 04 c  Q/ f. S: @* |( T
[    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
  _' d$ w6 N+ R* o! \[    0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
  u: ~- [! w  c. V& Y6 c8 ^[    0.000000] CPU: VIVT data cache, VIVT instruction cache% d4 [4 [# X5 j3 U
[    0.000000] Machine: DaVinci DA850/OMAP-L138/AM18x EVM
" D! W4 m( Q8 r[    0.000000] Memory policy: ECC disabled, Data cache writeback
6 V9 Y; P5 x: @$ [0 n[    0.000000]  =======> da850_evm_map_io!: M) z7 m, t, `% Z# C; P
[    0.000000] BUG: mapping for 0x80000000 at 0xfffe0000 out of vmalloc space: G; h8 h; T! X  I" K
[    0.000000] DaVinci da850/omap-l138/am18x variant 0x1
( b" }" p6 e  R+ @5 p% ?
- m6 |7 s) m6 N$ r+ m0 W
2 N7 j8 X$ h4 @# p4 D+ v. |
' ~* G4 k) r) X. U/ |......
. v9 ~8 E" H+ q  h" qtarting Dropbear SSH server: [   17.173901] UBIFS error (pid 1063): ubifs_read_node: bad node length 4082, expected 3570
- w  j! H  K: L- o# t5 q% @[   17.182220] UBIFS error (pid 1063): ubifs_read_node: bad node at LEB 486:101360, LEB mapping status 1/ w9 f. p6 p1 U8 P6 @
[   17.191623] UBIFS error (pid 1063): do_readpage: cannot read page 22 of inode 3091, error -22
- b2 P3 e0 N7 Q0 y7 [( Y# }[   17.202389] UBIFS error (pid 1063): ubifs_read_node: bad node length 4082, expected 3570
" _2 }1 n7 w/ l. m) u( @[   17.210675] UBIFS error (pid 1063): ubifs_read_node: bad node at LEB 486:101360, LEB mapping status 10 l/ E, y' ?% E# `6 t
[   17.220069] UBIFS error (pid 1063): do_readpage: cannot read page 22 of inode 3091, error -22
, R8 ~" M- |7 n8 U: |( D/etc/rc5.d/S10dropbear: line 70:  1063 Bus error               start-stop-daemon -S -x "$DAEMON" -- $KEY_ARGS -p "$DROPBEAR_PORT" $DROPBEAR_EXTRA_ARGS
$ j5 c3 Y# r( G+ g  ^Starting telnet daemon.  @; K; r) e- l6 d" i- X

7 a3 H, g0 ^8 J- B5 p) q; s! W......
, Z, s) A2 b0 u, K( x, [Stopping Bootlog daemon: bootlogd.: o0 a) B7 [, V5 U

0 \3 v( e: W. u: M, z _____                    _____           _         _
7 s7 ]' h( k) K: L, h|  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_: {* U% m$ K5 S8 J& p5 o4 i0 H
|     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|, l9 }5 T. e/ |$ @$ I4 W0 h( f+ p3 r
|__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|
  P. D: ?1 J% O* D              |___|                    |___|: D2 z$ ]$ y6 v6 v1 x
" B# k0 f) p- n
Arago Project http://arago-project.org tl ttyS2' N5 @. _! Q: O- c" V% [1 @3 x6 h  }
  S9 D2 f, ]$ F7 K. A% i) |& ~
Arago 2013.06 tl ttyS2
9 u( i# P% H2 E' E3 b* ?6 [" J# i% W- E
tl login: root (automatic login)/ t8 C6 w' z" B6 I0 W5 Q
# I4 n7 c7 q& b+ s
root@tl:~#
8 t' w0 J* i. y) {( h6 Y( L% R& ^# a7 w) b) P* o' p- ^. i) \
分享到:  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:543 @2 C  z* ?: I  w4 k
16C554串口芯片是连接在emifa总线,nand flash也是连接emifa总线,有可能被影响了。 ...
/ l  h% y8 T& a  ~% K0 [
会是数据线影响,还是片选之间干扰,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
; @, F: H9 m$ Q可以参考创龙的多串口模块TL16CP754,就是通过emifa扩展串口,相应的驱动源码,例程都是提供的。 ...
! J/ W& v& M% l" z. z
EMIF相关配置应该是没问题的,spansion的片子在延长总线时序,增加时钟之后,UBIFS逻辑坏块试了1000次反复满规格擦写不会出现,但是某些核心板还是会出现重启后内核bad crc,一般是在更改系统里文件并reboot之后出现,这时在u-boot中reset,又正常了,但是还是会出现在! s" c  t$ n8 r" u
Starting kernel ...
" t, F" O' Q8 D' C0 S. C7 e# y5 E4 [Uncompressing Linux... done, booting the kernel.之后卡住的现象!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-4 08:35 , Processed in 0.040813 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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