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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 7907|回复: 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 t; h* k* M0 q2 I/ H" C! _
  D  p" b- s6 O- E进系统但是SSH应用程序报ubifs读node错误,这种现象会不会是u-boot的bug, 日志文件如下:! ]/ h  B5 S! n, k2 I) w9 }/ Q$ G

& I- S+ }( l. W0 i$ ?! j/ P' Z' z1 Q1 `8 C+ ^) d
U-Boot 2012.04.01-00054-g9a6dfff (Nov 04 2014 - 22:07:15)5 {8 s) g/ V8 T
% ]; e& b; ?/ b  P5 D! ]4 v' m
I2C:   ready
2 C/ |4 N  h+ g- |( _! W4 nDRAM:  128 MiB
4 @8 x+ \8 t: `# _WARNING: Caches not enabled
& i- \1 W5 d0 u: \+ ANAND:  512 MiB; F) S, F6 A: r$ W2 w
MMC:   davinci: 0
& G( [9 V# E2 h) nBad block table not found for chip 0
+ ^" G) ~3 _/ m  EBad block table not found for chip 02 t; Y% T# M1 U4 g* c5 ~2 Z7 Q: H
Bad block table written to 0x00001ffe0000, version 0x012 M- W& _, g, P* ^; W# i! b& W+ C
Bad block table written to 0x00001ffc0000, version 0x014 z5 D+ w0 n0 M# ?: \4 V5 V
In:    serial. b1 O) ]: \1 @+ O$ A1 ]( R! ~
Out:   serial
+ w" P2 m/ M3 J! X( w, AErr:   serial1 N5 m/ P1 n  y; U! j* v0 o  n$ i/ C
Default using MAC address from environment$ k0 H8 g# D) G/ G  ]
Net:   DaVinci-EMAC
8 {! k! n6 D* P, @Hit any key to stop autoboot:  0
% [* `0 F1 G- K5 G8 f; Q' G
/ j9 R3 G7 g6 @) B" [( A/ ~Loading from nand0, offset 0x120000
# v1 b) I* B! C/ P   Image Name:   Linux-3.3.03 N& K2 S  H. W) f- v; H
   Image Type:   ARM Linux Kernel Image (uncompressed)
9 L5 `' ]( X6 y/ E9 l$ D4 }/ L  o   Data Size:    2843400 Bytes = 2.7 MiB( T; _+ g1 N0 [2 q
   Load Address: c0008000$ r! d( `% K) q) @
   Entry Point:  c0008000. k) l: g* b2 {. r- ~
## Booting kernel from Legacy Image at c0700000 ...3 ^( q7 Q! y0 V
   Image Name:   Linux-3.3.0
% d( M. ]8 a' m% f- ^, f1 O! h   Image Type:   ARM Linux Kernel Image (uncompressed)
8 ^; W3 I: N5 I( ~' o! R1 N   Data Size:    2843400 Bytes = 2.7 MiB0 Z9 w( k  T! |8 a9 ?7 R- s
   Load Address: c00080001 H6 l9 s. ~. d/ U' S
   Entry Point:  c0008000
) U2 Y0 |5 b; T8 Z* E   Verifying Checksum ... Bad Data CRC( O7 z$ i9 Z$ H2 e& K4 {/ L. u
ERROR: can't get kernel image!
3 H9 @: W/ o$ z9 JU-Boot > Nand boot...
3 t& ?! Y5 _# q! C9 T" e" i! V' U& |( E  z

% ~6 j2 s% V3 t. `/ Z& J; e& o8 aU-Boot 2012.04.01-00054-g9a6dfff (Nov 04 2014 - 22:07:15)* V9 H$ G$ b$ u  Z' a( C, e& d

& ^, c' e. }+ }4 ~I2C:   ready
8 q1 g, V7 w7 R5 v1 O* YDRAM:  128 MiB2 ~' W7 v: o2 Y4 M
WARNING: Caches not enabled4 n; X: N% l" k/ V1 l+ {
NAND:  512 MiB  |* p8 O6 t" ^- q
MMC:   davinci: 00 @( P- B$ a; \  s2 b7 X
Bad block table not found for chip 0
: F: c! F" v. r2 @6 JBad block table not found for chip 01 j$ Q+ Y, L/ e3 i
Bad block table written to 0x00001ffe0000, version 0x01
, o5 y8 G$ Z+ M" g; t7 B9 eBad block table written to 0x00001ffc0000, version 0x01- ?5 q9 J$ T+ X8 l7 B9 [/ m
In:    serial
; m1 L% E3 n: z+ p: K- HOut:   serial
! z* H9 s5 a# p. WErr:   serial
- c7 Q$ @' R$ z: g; G3 BDefault using MAC address from environment
; j4 f0 q5 S4 |9 U2 bNet:   DaVinci-EMAC
. ]. x% B: V9 aHit any key to stop autoboot:  0% g, S/ J& P% i8 ]
+ T* S$ j/ z2 T* ?+ U& W7 M( x
Loading from nand0, offset 0x1200003 f2 V5 T: P$ r7 T  k" k
   Image Name:   Linux-3.3.0, B! ^( K. @7 L& Y2 D
   Image Type:   ARM Linux Kernel Image (uncompressed)
' ~+ Q! t) |$ P7 }   Data Size:    2843400 Bytes = 2.7 MiB# k6 P6 m7 a: ^4 n7 z
   Load Address: c0008000
" J9 T5 v2 y! z$ L  p   Entry Point:  c0008000" j" L7 `+ D2 g5 ?! D# j
## Booting kernel from Legacy Image at c0700000 ...: y  i3 m* G. s$ y$ x
   Image Name:   Linux-3.3.0
7 ^# G' Y' H# ~: R0 e* f   Image Type:   ARM Linux Kernel Image (uncompressed)0 I9 S; p, w1 c2 h3 v8 T  T* P
   Data Size:    2843400 Bytes = 2.7 MiB
( j9 X+ e: {% H. g* X2 @+ w+ B# ]   Load Address: c0008000
8 l/ ^) N& t* Y( K0 J   Entry Point:  c0008000
, ^" R  [/ i+ `! Y) x% m# m   Verifying Checksum ... OK. y& j. O' O2 ?( |$ ~
   Loading Kernel Image ... OK
- O% m) V# W4 T: YOK
6 a- t( W0 a* I! A: O  L; R% e
' [" |* `" B9 z1 a0 ]  M8 u- JStarting kernel ...
% |3 a* R6 M4 s, ?  L/ `- b5 ^9 l4 G0 N: R  m
Uncompressing Linux... done, booting the kernel.
; z6 o- R0 M" V[    0.000000] Booting Linux on physical CPU 0
/ X/ D! R" E# ?3 {" S[    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/ c! ]/ Q  z0 ^) k! Q  m& r
[    0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
  h3 Z" I1 ?# U1 v2 G4 C[    0.000000] CPU: VIVT data cache, VIVT instruction cache
. W$ @) c  e0 l$ i" b0 J[    0.000000] Machine: DaVinci DA850/OMAP-L138/AM18x EVM1 W9 j9 [3 U  U( o* x
[    0.000000] Memory policy: ECC disabled, Data cache writeback
8 G& s: h% c& }/ W[    0.000000]  =======> da850_evm_map_io!! K. t, i: `6 x( q  F+ R1 E
[    0.000000] BUG: mapping for 0x80000000 at 0xfffe0000 out of vmalloc space
# v1 Y' e8 Y$ ^# o- F[    0.000000] DaVinci da850/omap-l138/am18x variant 0x1/ z4 d0 o, o2 j0 @

: b! w* u7 L' `) k% d% D1 c2 u  }2 h

" n+ \9 w  ^& E3 [+ P' [8 ?......9 [( t% c, ]) n1 @
tarting Dropbear SSH server: [   17.173901] UBIFS error (pid 1063): ubifs_read_node: bad node length 4082, expected 3570
) I2 ]  v1 b. C" S[   17.182220] UBIFS error (pid 1063): ubifs_read_node: bad node at LEB 486:101360, LEB mapping status 1
" }3 L1 j5 K9 h% S( o  Y[   17.191623] UBIFS error (pid 1063): do_readpage: cannot read page 22 of inode 3091, error -22" q/ ?9 F7 K% U5 |3 U% k+ _
[   17.202389] UBIFS error (pid 1063): ubifs_read_node: bad node length 4082, expected 3570
1 V3 ]; x  F' n' c( f[   17.210675] UBIFS error (pid 1063): ubifs_read_node: bad node at LEB 486:101360, LEB mapping status 13 b6 d! h; n& [: L6 B5 R+ f; V3 s4 H
[   17.220069] UBIFS error (pid 1063): do_readpage: cannot read page 22 of inode 3091, error -220 P! r) l! j. i0 n, P# x6 |  x
/etc/rc5.d/S10dropbear: line 70:  1063 Bus error               start-stop-daemon -S -x "$DAEMON" -- $KEY_ARGS -p "$DROPBEAR_PORT" $DROPBEAR_EXTRA_ARGS
1 m8 t% h' P* [+ _Starting telnet daemon.
! a3 P7 M" Q6 d$ U% A6 l
# _+ `) L9 w" Z. R4 q2 C......
5 n# c7 \# B5 \) ]0 ^# `; rStopping Bootlog daemon: bootlogd.
! I0 K' t' y+ r; z. i& F. X4 a
, S/ `' l% y4 `9 u* r: M- u _____                    _____           _         _0 D. I1 ?: Q) E5 m! F
|  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_. p$ ?" m" X- h) p: B: v; t
|     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
: E' m8 I' O1 U/ m|__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|
! Q5 n6 n( N6 ]" T; Z              |___|                    |___|6 I( w) O; ], T; P" g& t

" Z6 p& \9 G, h9 F$ |: r* U+ E7 [Arago Project http://arago-project.org tl ttyS2' Q. C) n0 g1 \8 n- A
( f( w: o$ K( [' s$ p
Arago 2013.06 tl ttyS2: {( U; \* p" q. d& l& _

2 ?1 s/ b$ H3 etl login: root (automatic login)
1 n3 O9 t: I& G/ G
8 t7 ]. s9 I: k2 zroot@tl:~#
" s$ Z. D; }# E4 r+ w2 g
+ h0 _/ j" R  _+ A# d1 [6 f2 O
分享到:  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:548 z9 q' t& G1 T1 }5 v* o
16C554串口芯片是连接在emifa总线,nand flash也是连接emifa总线,有可能被影响了。 ...
+ q; [* E: f% R8 D
会是数据线影响,还是片选之间干扰,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:103 R1 ~& D6 \- o  G+ N
可以参考创龙的多串口模块TL16CP754,就是通过emifa扩展串口,相应的驱动源码,例程都是提供的。 ...

7 E% n- O- N& o# ~EMIF相关配置应该是没问题的,spansion的片子在延长总线时序,增加时钟之后,UBIFS逻辑坏块试了1000次反复满规格擦写不会出现,但是某些核心板还是会出现重启后内核bad crc,一般是在更改系统里文件并reboot之后出现,这时在u-boot中reset,又正常了,但是还是会出现在& g! g# T) C: I$ [6 E
Starting kernel ..." c/ l, H# m  Z4 j5 @/ h$ J: {
Uncompressing Linux... done, booting the kernel.之后卡住的现象!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-10-16 11:42 , Processed in 0.040336 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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