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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 6767|回复: 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错误,掉电重启后可以正常+ d( W. @  S  D
6 m# o& E: r# Y
进系统但是SSH应用程序报ubifs读node错误,这种现象会不会是u-boot的bug, 日志文件如下:4 r- P& Y7 P0 p, i7 u
2 _- @8 o- E. G- V
* {5 X) s* `6 b  l4 h6 r
U-Boot 2012.04.01-00054-g9a6dfff (Nov 04 2014 - 22:07:15), I  [( f4 M" R$ T7 h0 G0 |% q5 l

5 Z- z) x, }2 b3 i) S& FI2C:   ready; l' Y5 S" P' l8 t6 T- h# B
DRAM:  128 MiB5 V" j% P' m' o; ]# c" u% c
WARNING: Caches not enabled
* d6 }, x3 y! N+ Y+ K: ^, g( Z8 [NAND:  512 MiB
! h: k9 C" P' [* o5 G! pMMC:   davinci: 0: x8 O5 n9 t6 K: @3 m2 I
Bad block table not found for chip 0* I8 Q- O6 K* U& C; m  j( `
Bad block table not found for chip 0
1 @- ]4 Q% k, \8 I% p* eBad block table written to 0x00001ffe0000, version 0x01  V/ S% o0 f) X  n% v/ d
Bad block table written to 0x00001ffc0000, version 0x01
2 o5 _; l9 f: A/ R. O0 l  [In:    serial" I% f' w( x8 T
Out:   serial: E" L7 u2 h! N  i( D& `+ n
Err:   serial
) V7 Y6 D( X  k& U) {5 B' o  gDefault using MAC address from environment
1 w3 }1 b& e  Q- s+ f- o, v+ Y- x, }Net:   DaVinci-EMAC
7 p) P1 u3 T" [) E- `Hit any key to stop autoboot:  0
, o3 `) l% h6 K( [3 D9 v- C5 U5 f
* i5 _: {5 J# s- `Loading from nand0, offset 0x120000- N" X2 n. s3 y: W0 u4 d
   Image Name:   Linux-3.3.0. ?( |+ N6 V! ?9 D6 Y
   Image Type:   ARM Linux Kernel Image (uncompressed)3 N+ ^, `) w& B* B# C: a7 u) \% T! f
   Data Size:    2843400 Bytes = 2.7 MiB
3 U; T9 k: `3 `9 J& ^7 C- A   Load Address: c0008000
4 q% i) @( I' T6 X% {" L  T   Entry Point:  c0008000' {% Q0 w! O* h& y: s4 [, m
## Booting kernel from Legacy Image at c0700000 ...  H( b) ^: r& Q' m. J, P7 s
   Image Name:   Linux-3.3.0! ^# s$ ~8 H& x; G. ^4 L
   Image Type:   ARM Linux Kernel Image (uncompressed)
8 R  r1 z0 _) k, V* J2 J' [   Data Size:    2843400 Bytes = 2.7 MiB9 g6 D8 u2 o1 Y! y; s9 A. E
   Load Address: c0008000: ^" y; C0 ?# D1 K# |
   Entry Point:  c0008000
, `* M1 S5 p9 Y' u! Z   Verifying Checksum ... Bad Data CRC. M$ L8 k2 x; H# {( I2 T
ERROR: can't get kernel image!% O! O% |. v5 ]/ ~! w* ~( n
U-Boot > Nand boot...7 U( T. |& o& [. i9 C! K' J

% A% @& m3 n" o1 M% Z$ K
6 D8 j5 {7 y8 f+ s* MU-Boot 2012.04.01-00054-g9a6dfff (Nov 04 2014 - 22:07:15)# S  i# g9 w9 i

, ], k5 q; e7 h& \0 A7 XI2C:   ready
' j  b! X, B, p. kDRAM:  128 MiB- v  Z& w; ?" r- t# V7 ~
WARNING: Caches not enabled3 _* r9 z, r6 `' O6 T# ?
NAND:  512 MiB
7 ~  R; N9 w3 r) W2 o# T% [MMC:   davinci: 05 C. h8 n% I" r
Bad block table not found for chip 0
/ t" f" U. ^5 G3 S# pBad block table not found for chip 0
8 V  _3 Z7 _2 t0 s+ f# B5 Z7 Q* {Bad block table written to 0x00001ffe0000, version 0x01; g* \5 R. c+ ?+ N, j/ x  k! o$ H' V
Bad block table written to 0x00001ffc0000, version 0x01% G# [$ z# l5 d* F1 D0 [6 Q9 ^
In:    serial. e! ~/ J% G7 I# v7 j1 A) F% k  D7 E' e
Out:   serial
* Q1 M$ K# B$ F; V9 I& x! NErr:   serial
. k8 j0 h1 n+ H7 M' pDefault using MAC address from environment
- l: h" ^% Q% X& g* _- {& v6 vNet:   DaVinci-EMAC7 B2 M" [, f* \! ^4 y
Hit any key to stop autoboot:  07 X' \) U  {0 }, j" }9 \% U" G: a+ j: y% D

$ N8 W! F; a7 L: a8 pLoading from nand0, offset 0x120000& `/ q8 ~( f4 h/ R  z
   Image Name:   Linux-3.3.0+ Q7 R, T3 q* Y& a7 u$ X
   Image Type:   ARM Linux Kernel Image (uncompressed)
, a% |( y6 g  O& s  k$ L" v   Data Size:    2843400 Bytes = 2.7 MiB
& K0 Z: `" k; N8 W   Load Address: c0008000
7 z. D6 K8 N. g2 T' c* U1 h" I4 e   Entry Point:  c0008000
+ n# @5 k" H  h' B" m4 {## Booting kernel from Legacy Image at c0700000 ...
, E; {  Q2 L$ b2 ]% t0 u   Image Name:   Linux-3.3.0
* a1 ~7 R/ {! _   Image Type:   ARM Linux Kernel Image (uncompressed)) [9 j8 z# i) X; ~5 \
   Data Size:    2843400 Bytes = 2.7 MiB
/ L7 W, t$ Z5 j; g3 r7 A   Load Address: c0008000+ `8 w* n6 H8 c: h: h/ d6 o
   Entry Point:  c0008000
1 E0 }- e% ^7 K8 n% k# A   Verifying Checksum ... OK
9 y9 g% d& F4 x   Loading Kernel Image ... OK7 m; D: {4 J$ `
OK
4 c! i/ `+ r: U, `
8 K5 ]0 a2 b; U# kStarting kernel ...
9 M" I& {- y2 C4 s% S$ }& S: [
% u4 t3 i1 [7 W! s7 f& U4 Q' SUncompressing Linux... done, booting the kernel.
5 s$ x- J1 @% e- b[    0.000000] Booting Linux on physical CPU 0
+ d# P# r* O3 N1 f; [[    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 20158 k- f: H1 g2 Z3 p
[    0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
. w2 [2 d) a/ l$ F; E( b% [[    0.000000] CPU: VIVT data cache, VIVT instruction cache; R* |  l( K: l% c% v- f8 E
[    0.000000] Machine: DaVinci DA850/OMAP-L138/AM18x EVM( W' p( X$ E* k6 k
[    0.000000] Memory policy: ECC disabled, Data cache writeback
6 ]- L/ N, S5 K7 _- ?0 W[    0.000000]  =======> da850_evm_map_io!& Q  C1 P$ c8 M8 ]
[    0.000000] BUG: mapping for 0x80000000 at 0xfffe0000 out of vmalloc space% n/ _7 v4 }. W! m1 O$ R
[    0.000000] DaVinci da850/omap-l138/am18x variant 0x1+ \9 h9 h- W2 f( K' c: l$ K: p

- e( c9 [. i7 C- V; a! I
: U+ }/ m8 p& l0 e
* L( F  S* `! ]  S. P8 L......
! D% `' _! T( _$ u: \, Gtarting Dropbear SSH server: [   17.173901] UBIFS error (pid 1063): ubifs_read_node: bad node length 4082, expected 3570- c" j1 T; }+ l; H- _* e- y1 B
[   17.182220] UBIFS error (pid 1063): ubifs_read_node: bad node at LEB 486:101360, LEB mapping status 1: K$ B0 }- w3 R$ a/ l, f
[   17.191623] UBIFS error (pid 1063): do_readpage: cannot read page 22 of inode 3091, error -22
3 B% A/ O! r6 M1 K3 x! M8 d[   17.202389] UBIFS error (pid 1063): ubifs_read_node: bad node length 4082, expected 3570
3 n; z( s$ v' Y; S[   17.210675] UBIFS error (pid 1063): ubifs_read_node: bad node at LEB 486:101360, LEB mapping status 1
6 b! J. c- p. `8 }1 ][   17.220069] UBIFS error (pid 1063): do_readpage: cannot read page 22 of inode 3091, error -22
* v/ A; R2 M4 `/etc/rc5.d/S10dropbear: line 70:  1063 Bus error               start-stop-daemon -S -x "$DAEMON" -- $KEY_ARGS -p "$DROPBEAR_PORT" $DROPBEAR_EXTRA_ARGS
  B; n; ?* j4 u* {Starting telnet daemon.% y  Z' z) E$ K( |
: I" R; ^) y# o) X
......  V4 R$ S7 @5 }
Stopping Bootlog daemon: bootlogd.; b: s6 z9 u5 y" g( {! M

) @1 h% D7 w& W$ \9 I+ _" d _____                    _____           _         _
0 G3 X0 I) j6 D* h% N& y# h: x|  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_/ q! B' n9 V1 v. S1 r9 K0 G. g% q
|     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
' K1 ^! H' G$ A' K# [+ Y|__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|" `% ~, p# k: B! l( x5 G
              |___|                    |___|! k% ~: H# V; X1 I* y
4 y4 A& z% @& K
Arago Project http://arago-project.org tl ttyS22 k# D5 s+ r, s+ ?+ O! ~# b( Z- H

4 L! Q+ k% y1 |Arago 2013.06 tl ttyS2& b. y9 m0 h% r8 Q1 F. J

, U4 O; m! b& C' Z! E& Stl login: root (automatic login)% G$ ^" {8 d5 B" o' T2 s

2 H, ]0 N, p; a. H6 u* Nroot@tl:~#
' `9 n- z4 `3 f8 }$ R# o) \  ]" X, z# t3 D( n$ p. b& ^- 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- h0 G8 Q6 T: K1 J4 E
16C554串口芯片是连接在emifa总线,nand flash也是连接emifa总线,有可能被影响了。 ...
6 E5 k6 Q0 `5 B% G7 M5 y" C
会是数据线影响,还是片选之间干扰,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:104 F+ F7 F+ f; W, E( N
可以参考创龙的多串口模块TL16CP754,就是通过emifa扩展串口,相应的驱动源码,例程都是提供的。 ...

! B; Y5 x" q, {, A/ b; vEMIF相关配置应该是没问题的,spansion的片子在延长总线时序,增加时钟之后,UBIFS逻辑坏块试了1000次反复满规格擦写不会出现,但是某些核心板还是会出现重启后内核bad crc,一般是在更改系统里文件并reboot之后出现,这时在u-boot中reset,又正常了,但是还是会出现在
* t1 V: p& T4 k; R1 TStarting kernel ...  n4 {4 z6 ?6 t+ M& g
Uncompressing Linux... done, booting the kernel.之后卡住的现象!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-6 03:53 , Processed in 0.041406 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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