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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 8303|回复: 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错误,掉电重启后可以正常, H  l  b4 [" Z# M

6 J) S7 Q% x5 g4 y进系统但是SSH应用程序报ubifs读node错误,这种现象会不会是u-boot的bug, 日志文件如下:: K2 W2 s. V, a1 X
6 Q. t2 T* x7 t3 a, f$ P6 Q: Y
) Y7 G& F5 B& n0 _; |2 w% k" r
U-Boot 2012.04.01-00054-g9a6dfff (Nov 04 2014 - 22:07:15)
) Q1 ]/ }- n9 A6 c& X) \1 v8 ]5 `5 L
4 o1 S6 s0 T; S' V& S  ~I2C:   ready% t' r* A- P( s* e
DRAM:  128 MiB
+ _" E% b$ a, s+ NWARNING: Caches not enabled
. w1 w6 D: k# b$ H1 |% S) xNAND:  512 MiB4 ]' |; j2 Z- c6 v4 M: ~! D
MMC:   davinci: 0
8 H, a0 s  q  T1 g% K2 wBad block table not found for chip 0# x! ~& Q; j* R+ W. ~, D7 B
Bad block table not found for chip 0- r5 q. q7 V7 e- V4 q# |# i" l4 |
Bad block table written to 0x00001ffe0000, version 0x01
3 R3 I8 v. Q+ C+ K3 \# }Bad block table written to 0x00001ffc0000, version 0x017 D& \" }& l) ^- I
In:    serial
% N7 {: w# x+ {6 S/ q8 H6 rOut:   serial- f  U3 x9 `' X
Err:   serial
) }  T# ^' i9 g% C& tDefault using MAC address from environment  V% K! z. \4 q& z- q  N6 x8 u
Net:   DaVinci-EMAC
9 m, B8 T* \/ Y& Y* a; M6 lHit any key to stop autoboot:  0
* b' J/ w0 C/ t9 p. c8 d. K/ u: \7 k' p5 Q! V  u
Loading from nand0, offset 0x120000* C7 m+ j0 g& q0 f6 e5 U- G0 p8 H
   Image Name:   Linux-3.3.0/ O5 o; o7 M0 L- K0 S) o  S$ r9 ^
   Image Type:   ARM Linux Kernel Image (uncompressed)
8 Y' [6 v' [' W9 t+ o1 I' k   Data Size:    2843400 Bytes = 2.7 MiB! Q2 \5 \1 `' s8 s) ^$ _
   Load Address: c0008000
8 V- ^, x5 P5 H6 ^; R   Entry Point:  c0008000
" A2 p; S% ]& e+ h## Booting kernel from Legacy Image at c0700000 ...
" N6 J8 A" l4 |5 U. W# |6 L   Image Name:   Linux-3.3.03 R( W  C9 q/ H0 X' ~: N# r+ Q
   Image Type:   ARM Linux Kernel Image (uncompressed)8 p& V% C! @0 u$ {: l# e4 E
   Data Size:    2843400 Bytes = 2.7 MiB
+ A2 G. S2 v. ?4 B9 i( h% ?   Load Address: c00080002 K1 s: X7 W0 b* L% E1 M% o0 X
   Entry Point:  c0008000
! c6 K% r0 ?; Y+ \. ^/ _7 n/ N5 Z0 W   Verifying Checksum ... Bad Data CRC
! j# `; z* h1 _6 h; U1 c) CERROR: can't get kernel image!
4 a; Q. n. |2 B; }" UU-Boot > Nand boot...
" A: ^8 K2 l' B
+ ~% a8 I2 U; y) q$ [( O  f0 z0 q7 t! ]0 O
U-Boot 2012.04.01-00054-g9a6dfff (Nov 04 2014 - 22:07:15)
, c: U4 ]. g5 j- y/ v" \1 a2 @9 k' {) r0 \
I2C:   ready
. p6 f  u- r  x/ lDRAM:  128 MiB
6 j8 ~5 `8 d0 ?WARNING: Caches not enabled
$ Q# v. l5 w* ~4 ]5 s$ kNAND:  512 MiB
( v  f2 B9 @" j  F% v; OMMC:   davinci: 0
: a  a& r& v9 `; @Bad block table not found for chip 0
5 f) U# C- Y9 S& b6 p5 B' ]& IBad block table not found for chip 0
* J0 b, T6 [4 w5 ?! w2 ABad block table written to 0x00001ffe0000, version 0x016 S& a3 k2 P" c
Bad block table written to 0x00001ffc0000, version 0x015 w/ Z, X+ ]# G$ f7 Y
In:    serial
  b- }; X  x! M: t; WOut:   serial( H' I' S0 Y* R# W, p& c2 V
Err:   serial. M! A0 H8 e) c2 \, A6 j
Default using MAC address from environment9 G2 L3 O: X$ d; c
Net:   DaVinci-EMAC
) s% p! f0 _- D5 u0 M* {' ]2 b, }Hit any key to stop autoboot:  0- z, ^6 N. T! k8 r, p
9 A7 ]0 m) O# J7 d
Loading from nand0, offset 0x120000+ @3 N/ V8 I5 f9 }8 {3 ]) J
   Image Name:   Linux-3.3.0
2 r  {  R; l/ G9 z  e: |; i- B   Image Type:   ARM Linux Kernel Image (uncompressed)
5 A7 J. I% [& F   Data Size:    2843400 Bytes = 2.7 MiB/ m  A9 ]2 S# `3 J  h
   Load Address: c0008000
" G" u/ C+ Q  Z! c& l# R1 ?- q   Entry Point:  c00080009 Z& P" b# Q0 ^# X- o$ G9 `" i
## Booting kernel from Legacy Image at c0700000 ...- s- ?+ a7 t/ i/ D
   Image Name:   Linux-3.3.03 _9 t4 Q4 t5 a1 G. t: y
   Image Type:   ARM Linux Kernel Image (uncompressed)
; {2 z3 W9 |( W   Data Size:    2843400 Bytes = 2.7 MiB  `9 H5 a0 E! n+ r0 c
   Load Address: c0008000) f( M! D$ ^2 M/ `+ l  t& X
   Entry Point:  c0008000
7 I  y) @% S8 H- {7 N   Verifying Checksum ... OK. j! Q" [) B" d$ f
   Loading Kernel Image ... OK7 b4 V7 `5 ]5 z6 r
OK' X7 X. V6 Y7 x: m# \
, f) W0 L: D, u: |7 C- T3 b
Starting kernel .... n: X5 U4 ?9 i" ^2 H4 F$ `$ f

' u9 m1 Q7 u( SUncompressing Linux... done, booting the kernel.- @- J! ^* R2 b) S0 r1 Z5 n3 f; T
[    0.000000] Booting Linux on physical CPU 0; O7 m. G: x/ t8 {" K8 L
[    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
# x* o* }" {; C9 @0 d# j2 `3 d. f* C[    0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
" l4 K: u2 G$ h[    0.000000] CPU: VIVT data cache, VIVT instruction cache
; S* Q/ T1 x2 |% _6 l# F9 ]7 P[    0.000000] Machine: DaVinci DA850/OMAP-L138/AM18x EVM/ @3 ~5 K( W- a9 a& W3 X* ^8 ^4 L) Z
[    0.000000] Memory policy: ECC disabled, Data cache writeback
& l2 ?3 F6 H* x8 s[    0.000000]  =======> da850_evm_map_io!
7 q* D' t+ l9 M[    0.000000] BUG: mapping for 0x80000000 at 0xfffe0000 out of vmalloc space6 h+ v1 v# h1 i  {
[    0.000000] DaVinci da850/omap-l138/am18x variant 0x1
2 v! V5 I  F$ A1 q1 Y% Q, M9 d& t/ }# X. H' I& P

* }" V4 A. u4 O* h! `- K+ v- p
! X% Y* ]* b2 d......- P  E7 W  F8 W+ F5 a. I% s, u$ |
tarting Dropbear SSH server: [   17.173901] UBIFS error (pid 1063): ubifs_read_node: bad node length 4082, expected 3570, O! X7 n: ^8 S% I* U" T: q
[   17.182220] UBIFS error (pid 1063): ubifs_read_node: bad node at LEB 486:101360, LEB mapping status 1- U/ r7 F8 R& @& g
[   17.191623] UBIFS error (pid 1063): do_readpage: cannot read page 22 of inode 3091, error -22
# e3 O6 ~4 B6 D' z5 C) [[   17.202389] UBIFS error (pid 1063): ubifs_read_node: bad node length 4082, expected 3570, i6 R, l3 P. s" P
[   17.210675] UBIFS error (pid 1063): ubifs_read_node: bad node at LEB 486:101360, LEB mapping status 1
  c0 l7 v4 c( s% F[   17.220069] UBIFS error (pid 1063): do_readpage: cannot read page 22 of inode 3091, error -22
# J3 X5 }' h- `" ]/etc/rc5.d/S10dropbear: line 70:  1063 Bus error               start-stop-daemon -S -x "$DAEMON" -- $KEY_ARGS -p "$DROPBEAR_PORT" $DROPBEAR_EXTRA_ARGS; [& }3 P( d8 D
Starting telnet daemon.+ Y+ O* Q& z0 b; p

- \- ]; z- c; N# j......
# j: i) s. O( P& i1 lStopping Bootlog daemon: bootlogd.
8 S+ X7 F6 w6 c3 F$ G1 F
' P1 V, J. P. ]+ ?) T _____                    _____           _         _
* `" |( p  `2 C|  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_: l( n2 z1 C& F/ b! c2 H% r  e# _. v
|     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|4 B2 i2 Q$ ^$ L6 P1 x1 [  G
|__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|
9 N$ {. L- O% X; y$ t* [- ?              |___|                    |___|% y9 D5 v& i" H! `) H6 n

+ t+ z2 a/ K0 r0 JArago Project http://arago-project.org tl ttyS2, O& e" f5 W. G+ I) A& Y: w% B

: `4 h' p' u+ ]4 e! G: }$ }Arago 2013.06 tl ttyS2
8 ?* n, o" f& Z2 X8 K# Q, c' {/ Y/ \( j( {
tl login: root (automatic login)
/ p8 U; w$ X/ C6 ^; b: Q  ^
' f4 f$ P4 h2 @3 D" C& k* T8 r8 Iroot@tl:~#
, `; N: H8 S# v6 [- h4 K# E! s, L! ]! H+ X; p( a
分享到:  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/ Z" `; n( ]9 x4 E, g- {' f
16C554串口芯片是连接在emifa总线,nand flash也是连接emifa总线,有可能被影响了。 ...
. C5 s6 p5 B6 g* B, J  v
会是数据线影响,还是片选之间干扰,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
( A9 R3 U2 y9 S3 v  a- |. s; y5 g可以参考创龙的多串口模块TL16CP754,就是通过emifa扩展串口,相应的驱动源码,例程都是提供的。 ...

7 Q: l* k) E3 \; t$ XEMIF相关配置应该是没问题的,spansion的片子在延长总线时序,增加时钟之后,UBIFS逻辑坏块试了1000次反复满规格擦写不会出现,但是某些核心板还是会出现重启后内核bad crc,一般是在更改系统里文件并reboot之后出现,这时在u-boot中reset,又正常了,但是还是会出现在- R. j5 ]' G; y0 y. }! @
Starting kernel ...% m4 A* M$ A- Z/ L* w$ c' _
Uncompressing Linux... done, booting the kernel.之后卡住的现象!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2026-3-17 06:19 , Processed in 0.042964 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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