SOS,从NAND启动,uboot加载linux 内核报 bad data crc错 - OMAP-L138 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站
点击跳转“创龙科技服务通”

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 8308|回复: 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错误,掉电重启后可以正常
/ K( R/ c0 m/ m
* S5 y/ B* O8 B进系统但是SSH应用程序报ubifs读node错误,这种现象会不会是u-boot的bug, 日志文件如下:" H1 r3 v' C4 |; c

+ C1 h" Q# A7 Q" A
: E: Y5 F1 h3 S" b: _0 T$ w9 Q7 EU-Boot 2012.04.01-00054-g9a6dfff (Nov 04 2014 - 22:07:15)0 W% t, X7 A) @+ B- ]" \
" o# J7 R4 X/ S  I3 b+ F% M
I2C:   ready
) |! I  i! [5 \DRAM:  128 MiB  _7 ]$ |$ E3 \
WARNING: Caches not enabled
- j/ u# r% T6 g1 G. c* f9 y, rNAND:  512 MiB. {: w: I6 w& s2 l+ V/ @/ s
MMC:   davinci: 0+ L, C$ q% M3 I# i. E5 b/ i
Bad block table not found for chip 0! w" |" h( g: B6 y: y
Bad block table not found for chip 0
; v' M& G- h& p! TBad block table written to 0x00001ffe0000, version 0x01
. @: n% g% e1 |2 I# H, |, {Bad block table written to 0x00001ffc0000, version 0x01+ X4 z1 f' B+ y8 G! V8 {& K
In:    serial/ j4 l, T: y2 Y5 Y: p
Out:   serial$ g  Q0 h4 o) }* u
Err:   serial
" x5 p& x+ d& d2 V  h6 tDefault using MAC address from environment
4 Y- ~$ `$ i8 J$ P# i6 QNet:   DaVinci-EMAC4 c( |. ^* S/ u- T5 w# P
Hit any key to stop autoboot:  00 ?% g" q" ]' z& O3 H0 r

% J! c: e" T  `5 \Loading from nand0, offset 0x120000
* D) G1 P2 V/ Y$ V   Image Name:   Linux-3.3.0
: q9 N- a7 q% z" }   Image Type:   ARM Linux Kernel Image (uncompressed)
, P3 {1 Y& G& O" a- F  s& V   Data Size:    2843400 Bytes = 2.7 MiB
. R/ `, Y3 _; T, V6 I   Load Address: c0008000
; [1 U  R4 C8 w! ^! S1 q) f   Entry Point:  c0008000, V# @/ Q1 N1 k
## Booting kernel from Legacy Image at c0700000 ...0 C8 \# d/ M* {* ^6 h
   Image Name:   Linux-3.3.0
4 Y, k9 b4 {- D* B   Image Type:   ARM Linux Kernel Image (uncompressed)
$ p+ o2 p$ U1 X3 @0 s4 l. y( `   Data Size:    2843400 Bytes = 2.7 MiB: M; `3 C' N  Z8 J6 l* d: g
   Load Address: c0008000$ k5 O6 K; U6 A, O# h
   Entry Point:  c0008000, L3 d" b' }3 m
   Verifying Checksum ... Bad Data CRC) Y. [4 Q; R  Y2 A' e
ERROR: can't get kernel image!
1 p+ @6 i/ S# F7 gU-Boot > Nand boot...
- w$ J& y! r+ v7 a+ v$ J/ I- r8 U+ s' n
# P+ E7 v# n, ]/ c
0 U; T9 }) [/ ]' HU-Boot 2012.04.01-00054-g9a6dfff (Nov 04 2014 - 22:07:15)
; b* Q, |2 K: P' u  @! J' X, t( s7 t9 H' a( @# {+ {9 n* A
I2C:   ready6 p* b- y6 Y$ y6 T) B
DRAM:  128 MiB
  h( i" h- G8 vWARNING: Caches not enabled7 ~; j' A5 t- j# C/ \  \
NAND:  512 MiB3 B1 j7 b5 w, X  N( L7 s4 y5 E
MMC:   davinci: 0
/ e3 A4 o0 F+ r* W3 xBad block table not found for chip 0
. ?6 I, }1 H' i" C' M$ I7 hBad block table not found for chip 0- c/ U' e9 ?) i/ l
Bad block table written to 0x00001ffe0000, version 0x01
( n( B# b( L+ l# p% @4 tBad block table written to 0x00001ffc0000, version 0x01: [7 x* V4 k' I) ?5 y& ~
In:    serial
9 O& p- w9 u! v' J5 N. `Out:   serial
5 H/ l( k) V& c7 i, W% i0 yErr:   serial
& w0 h) Z" O% i6 Q3 }% c9 W/ _1 lDefault using MAC address from environment
0 }: d! }7 W' h+ MNet:   DaVinci-EMAC2 |9 J4 v6 M6 r& J( \* k6 ?" ~
Hit any key to stop autoboot:  0
/ Q& U) |, q9 G. ?( F# b5 Z2 k6 K
3 O* O! ]: x3 u; ILoading from nand0, offset 0x120000
5 }4 d9 o4 T9 v   Image Name:   Linux-3.3.0
7 c# b, d$ {8 u8 K- M   Image Type:   ARM Linux Kernel Image (uncompressed)
+ a* n! u( u4 {  @0 J   Data Size:    2843400 Bytes = 2.7 MiB
, R( D6 g' y( V! M7 P   Load Address: c0008000  U; `8 i; A4 {! t
   Entry Point:  c0008000& x! O6 j2 [) ?! t# ~) i8 a
## Booting kernel from Legacy Image at c0700000 ...: l5 G& e; ^6 a# C" b- a  Z
   Image Name:   Linux-3.3.0
: y" p: |4 A% ~) t   Image Type:   ARM Linux Kernel Image (uncompressed), o* U% S2 R! ^8 v  {* V8 \+ u
   Data Size:    2843400 Bytes = 2.7 MiB& j: X: @( K3 m) _# s5 n
   Load Address: c0008000" l9 X' s. B0 m
   Entry Point:  c0008000
) H& S7 J6 }7 ^' p( ?0 P; ?) |, i9 x   Verifying Checksum ... OK3 Y7 `: X+ r- C; `3 j+ O% b9 m7 H
   Loading Kernel Image ... OK! W& A5 B5 G7 b: o
OK
6 p9 c$ g6 i+ }! z' N/ Z7 l- \0 f& v* V* R6 q! k8 v0 e$ N
Starting kernel ...3 K& l% B5 y3 f( C0 E4 Z. z" e/ r
& z) \9 W  G. j8 T. q4 _
Uncompressing Linux... done, booting the kernel.
/ q% i* N8 h( |2 b& p1 o[    0.000000] Booting Linux on physical CPU 0
) _0 _( D* H0 x[    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
1 _" H0 V& j3 G( Y8 Q$ c[    0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
1 \/ B  z( ^. T  B9 O2 E& m[    0.000000] CPU: VIVT data cache, VIVT instruction cache3 J, M- [2 r! x$ [$ g& |
[    0.000000] Machine: DaVinci DA850/OMAP-L138/AM18x EVM4 ]( _" C0 ~' U, p
[    0.000000] Memory policy: ECC disabled, Data cache writeback4 C  R% C0 G- ~4 s3 F: _! k( W* K* Z
[    0.000000]  =======> da850_evm_map_io!
" v; W; W8 d1 i' _" X[    0.000000] BUG: mapping for 0x80000000 at 0xfffe0000 out of vmalloc space
% D9 Z) ]/ ~# G5 {+ {3 k' H( f3 M[    0.000000] DaVinci da850/omap-l138/am18x variant 0x1
. a4 ^  f7 V8 K
' M& H8 R, |; |1 F; S4 Z5 |! g2 _( R! }1 Q: r( n' T' K' R
/ n& U9 X5 _( W8 H
......
4 m# L2 i' w9 T+ v5 H* ?tarting Dropbear SSH server: [   17.173901] UBIFS error (pid 1063): ubifs_read_node: bad node length 4082, expected 3570
3 _. ^( j: a# \[   17.182220] UBIFS error (pid 1063): ubifs_read_node: bad node at LEB 486:101360, LEB mapping status 1/ Z2 [0 F# A% N! Y4 g4 `
[   17.191623] UBIFS error (pid 1063): do_readpage: cannot read page 22 of inode 3091, error -22
* J) V3 C! L# u- ]( p9 _# Z[   17.202389] UBIFS error (pid 1063): ubifs_read_node: bad node length 4082, expected 3570
# e3 V" }  y! n0 ?2 K; i[   17.210675] UBIFS error (pid 1063): ubifs_read_node: bad node at LEB 486:101360, LEB mapping status 1* p' _5 m# D6 V0 g! G) ]
[   17.220069] UBIFS error (pid 1063): do_readpage: cannot read page 22 of inode 3091, error -22
: [2 R$ N( D% i* ?/etc/rc5.d/S10dropbear: line 70:  1063 Bus error               start-stop-daemon -S -x "$DAEMON" -- $KEY_ARGS -p "$DROPBEAR_PORT" $DROPBEAR_EXTRA_ARGS7 s) K7 B; l  ?8 j
Starting telnet daemon.! x/ e+ R) V+ d/ R2 Z6 m! N- d
2 Q* L+ R6 ?3 W8 Y% S5 r
......- g1 M0 S5 E5 y7 \2 C
Stopping Bootlog daemon: bootlogd.
) A! V7 h# g7 r! K# I
/ N0 K4 o- f; ]' k  E$ k5 I* E _____                    _____           _         _
# E+ d3 h, N* _; ||  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_7 {1 O: M. ?8 w
|     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|5 z" v% U8 ~" Q  a
|__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|9 O: q$ j" I( _4 }
              |___|                    |___|; H; w( h0 ^& h4 j, T8 d, g

( R) O% v! g) h4 w+ ~" `) KArago Project http://arago-project.org tl ttyS2& i, M$ R$ G9 F5 ~" ~7 R

# {' G9 u. H! x0 p" `+ a$ p) {Arago 2013.06 tl ttyS23 \2 g! ]4 l3 v1 Z5 |. l) T

- T& d! N1 f% q1 a. W- y9 W0 ^* Q- Mtl login: root (automatic login)
% a9 K$ E" N& d  P9 S* z- ]( R
% M% @) ?- W) k; b% Eroot@tl:~#: r1 Q) Y: Y) n

: [5 t" A* ~7 B2 `$ J+ F
分享到:  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
) d  a; A- m7 ]16C554串口芯片是连接在emifa总线,nand flash也是连接emifa总线,有可能被影响了。 ...
  [) B% o4 v2 W" f
会是数据线影响,还是片选之间干扰,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: S, U6 Q- q# q: {# w3 }, I
可以参考创龙的多串口模块TL16CP754,就是通过emifa扩展串口,相应的驱动源码,例程都是提供的。 ...
; l* t- y+ _6 Y  ^" Q
EMIF相关配置应该是没问题的,spansion的片子在延长总线时序,增加时钟之后,UBIFS逻辑坏块试了1000次反复满规格擦写不会出现,但是某些核心板还是会出现重启后内核bad crc,一般是在更改系统里文件并reboot之后出现,这时在u-boot中reset,又正常了,但是还是会出现在9 C; `5 W$ B/ `. [1 j
Starting kernel ...3 z0 @  T3 `% `3 x/ N# F0 A
Uncompressing Linux... done, booting the kernel.之后卡住的现象!
回复 支持 反对

使用道具 举报

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

本版积分规则

点击跳转“创龙科技服务通”

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

GMT+8, 2026-3-17 07:59 , Processed in 0.042309 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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