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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 6766|回复: 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错误,掉电重启后可以正常
. C* X4 ^# S( c/ u, f; F! a( ]1 z/ f: o$ ]& ?* |% r, H
进系统但是SSH应用程序报ubifs读node错误,这种现象会不会是u-boot的bug, 日志文件如下:9 T/ S9 n  B1 L: B6 l
- |5 M1 m% B' s, |9 @) S

) E6 ?* R7 f8 ^& tU-Boot 2012.04.01-00054-g9a6dfff (Nov 04 2014 - 22:07:15)4 l; L9 M9 ^/ c2 @

" h0 u2 B3 g; \5 n# q  }4 p7 ^9 w/ {I2C:   ready
- B6 {$ f0 j/ W% @7 M2 V. ODRAM:  128 MiB
, C4 u( j3 M, n4 f2 rWARNING: Caches not enabled: N7 D* c1 Z4 u
NAND:  512 MiB
) @8 I+ b2 b1 CMMC:   davinci: 0
8 W: T5 R& i. L8 y" d) R4 VBad block table not found for chip 0
1 @$ f0 B, U: b) iBad block table not found for chip 0% l+ U' D  z* k8 e- j
Bad block table written to 0x00001ffe0000, version 0x01
+ Q- Q) E- U3 S7 w5 E' s. M$ IBad block table written to 0x00001ffc0000, version 0x01
( U$ e. o$ A1 t* i6 E/ ?4 ^- VIn:    serial
% W! y. g. g+ _  d' \, @  KOut:   serial
0 V# e* c* }9 E/ L' c, ~' MErr:   serial
# V. _# h2 T" A( ~8 V# ZDefault using MAC address from environment
5 o' I) a" ~3 x, w( [Net:   DaVinci-EMAC: l+ h2 W9 f! k8 r; ~. R; S
Hit any key to stop autoboot:  0
1 F, Q% o) B' {$ B7 ^( w# a% ?
  O1 D+ {( t# pLoading from nand0, offset 0x120000
! z7 b' }5 z- U   Image Name:   Linux-3.3.0
- S7 q5 K0 X8 p1 R- v   Image Type:   ARM Linux Kernel Image (uncompressed)8 @: w, r1 ]) l: R. Q! q
   Data Size:    2843400 Bytes = 2.7 MiB" T+ I0 H2 Q% Z7 l8 }( b2 X
   Load Address: c0008000. ~5 @0 f4 N6 p- b! u! R0 v
   Entry Point:  c0008000
. u2 M* C( `  r4 h7 h) @: t## Booting kernel from Legacy Image at c0700000 ...
5 _, `3 T! |' x9 F; @/ p3 [   Image Name:   Linux-3.3.01 d5 B& V- A% M  P
   Image Type:   ARM Linux Kernel Image (uncompressed)
5 _1 o1 F% Y9 a2 I- u   Data Size:    2843400 Bytes = 2.7 MiB
8 `7 J4 t0 d  W$ A   Load Address: c0008000
/ q; b+ ~- X5 R5 D   Entry Point:  c0008000
; E1 i, s) O- k0 m   Verifying Checksum ... Bad Data CRC* A9 ^2 y( p' y; y6 J; o
ERROR: can't get kernel image!
9 R6 p* y8 x) ZU-Boot > Nand boot...8 a5 d6 H9 p: [( x3 C* X/ J
& `* w+ q; @& V6 e3 W% z( f* y

) P- ~# i6 t$ b1 Q: QU-Boot 2012.04.01-00054-g9a6dfff (Nov 04 2014 - 22:07:15)
) @# O1 R' j! J. O8 T# e# F  t1 r& s' W- l8 j
I2C:   ready( b: X) P6 J4 w7 L; N
DRAM:  128 MiB
9 ]/ r2 w0 F: E! r# c( q1 OWARNING: Caches not enabled* B1 T5 `9 y$ |
NAND:  512 MiB" Z/ S6 U, T( X
MMC:   davinci: 0
, }/ C- e6 K; \+ {" OBad block table not found for chip 0
0 a" I; {4 P2 ]+ xBad block table not found for chip 09 Y* e8 T& T( ?' w0 L- [0 T' @
Bad block table written to 0x00001ffe0000, version 0x01
; _# M0 v8 \1 w5 m, oBad block table written to 0x00001ffc0000, version 0x01
" m0 z$ y" q( q7 LIn:    serial
* D! x0 g8 E" ~' s# ]8 V+ O7 T7 vOut:   serial; @3 _" ^1 {6 R: Q2 g# n
Err:   serial0 ?) z1 |( H& |" m0 {
Default using MAC address from environment5 ^7 k& q# B( F! R' c, o$ J
Net:   DaVinci-EMAC
8 u* y6 V/ _* z5 l3 f/ {Hit any key to stop autoboot:  0' d* k) L6 D; \

$ L% ^1 q7 M# \6 cLoading from nand0, offset 0x120000
# x2 I5 l/ ~# F9 Y* a9 r# @8 v   Image Name:   Linux-3.3.0" T, t  S: Z" _
   Image Type:   ARM Linux Kernel Image (uncompressed); G5 |3 W- ~1 g0 d) P- D1 T0 w* \
   Data Size:    2843400 Bytes = 2.7 MiB
7 @2 V- w8 V( P* i   Load Address: c00080004 q1 B! ^, h$ c+ Z. p" q/ K
   Entry Point:  c0008000: R" i7 I, R' Z9 d  ?( _/ {
## Booting kernel from Legacy Image at c0700000 ...
# m/ r! h- S- p  V3 u   Image Name:   Linux-3.3.0
# U8 H4 t! I4 R! Y   Image Type:   ARM Linux Kernel Image (uncompressed)
8 |6 v* B2 [& U& t   Data Size:    2843400 Bytes = 2.7 MiB9 u) }3 _9 r- K  I2 y- V
   Load Address: c00080007 Q# J! G# R, T: m& R' X/ ^5 W, t
   Entry Point:  c0008000
4 \. i7 ~4 u, J- i# k' V" b& K' }   Verifying Checksum ... OK/ N0 N( h& T" d% T% |
   Loading Kernel Image ... OK
* `) r( o) D# F' V* F7 Z6 LOK# G1 k& Q/ ~" ^# C5 _
: Z- _1 o" \7 p: y4 m( ~# J/ I
Starting kernel ...
  ~. P2 G+ H% Y; v9 c
3 y6 A8 i, t& I" iUncompressing Linux... done, booting the kernel.; ~! B8 |$ ^/ x1 b/ f) w; v
[    0.000000] Booting Linux on physical CPU 0" W. U) \+ g: O! F: q3 f3 F1 ?
[    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
) `3 S. g/ K& W& e3 h) `[    0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177  O% y* O  q7 a) e: Y0 O
[    0.000000] CPU: VIVT data cache, VIVT instruction cache% L+ a4 d( v" F  q7 m: _
[    0.000000] Machine: DaVinci DA850/OMAP-L138/AM18x EVM8 V) S- Y3 ]# C5 g8 ~6 M
[    0.000000] Memory policy: ECC disabled, Data cache writeback
: t8 Z: }' l6 r; e1 x! C/ R[    0.000000]  =======> da850_evm_map_io!
* U# S9 Y8 n# m, c7 D[    0.000000] BUG: mapping for 0x80000000 at 0xfffe0000 out of vmalloc space4 m; Q! W0 R0 U  q$ S$ i1 a9 ?6 h
[    0.000000] DaVinci da850/omap-l138/am18x variant 0x1, l. M2 \/ z  U" c

- c; o: K3 n4 {3 A: Q, C: m  O0 q! T
) _1 c" s* r& y. T6 r: e1 w1 `
......
8 O& ?" j; z8 n4 j  W, Y) Otarting Dropbear SSH server: [   17.173901] UBIFS error (pid 1063): ubifs_read_node: bad node length 4082, expected 3570
) y+ E& `. K" n[   17.182220] UBIFS error (pid 1063): ubifs_read_node: bad node at LEB 486:101360, LEB mapping status 1; _! t1 Y6 k. T) ?& H+ H
[   17.191623] UBIFS error (pid 1063): do_readpage: cannot read page 22 of inode 3091, error -22
  S3 g- v. C3 v& Q$ E% h[   17.202389] UBIFS error (pid 1063): ubifs_read_node: bad node length 4082, expected 3570# V3 W$ G, s* F$ J9 Q
[   17.210675] UBIFS error (pid 1063): ubifs_read_node: bad node at LEB 486:101360, LEB mapping status 1
1 o/ M. j. Q/ n* T9 t; X. g& b% T[   17.220069] UBIFS error (pid 1063): do_readpage: cannot read page 22 of inode 3091, error -22
8 d/ |0 Q: c3 i, [1 X+ t& {/etc/rc5.d/S10dropbear: line 70:  1063 Bus error               start-stop-daemon -S -x "$DAEMON" -- $KEY_ARGS -p "$DROPBEAR_PORT" $DROPBEAR_EXTRA_ARGS* p8 M( s- u- t" h. _
Starting telnet daemon.3 I" Z* ^; N0 n, {

5 b6 \, R# v, b. y  p8 }1 ?......3 u7 W3 x6 C8 R. f5 K; O- A# J
Stopping Bootlog daemon: bootlogd.% Z, p# M, r* C" K$ j! ?
2 f+ P' }; e- s5 `; \1 J' P
_____                    _____           _         _. W/ Y- m8 L) L$ A, |, K
|  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_- l  c+ a0 h" f5 I/ V! W6 t
|     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|: ?/ x9 r- |( H3 p/ Y
|__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|
" H0 T9 x5 Q9 k* U* K7 K$ E              |___|                    |___|
" p* g; z" |5 x; M( I
1 H* e9 N8 |' M+ {- t3 i3 jArago Project http://arago-project.org tl ttyS2; F& V# G/ X% u

$ M- z8 y: a' U3 k/ @! aArago 2013.06 tl ttyS22 J+ g7 z9 G+ |+ p7 L  z! a+ x' g
% k5 n* r& N! w+ p
tl login: root (automatic login)
6 `. i7 k, n, l+ d4 i  Y% m9 A2 `  b$ K
root@tl:~#7 r# m& U4 p, K0 n) W- X
' q$ o/ Z8 L- T& m
分享到:  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, a9 Y4 N) U( u5 Y  }
16C554串口芯片是连接在emifa总线,nand flash也是连接emifa总线,有可能被影响了。 ...

4 q4 m9 A& K. j. a会是数据线影响,还是片选之间干扰,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 G( b6 p. q' j" l$ T
可以参考创龙的多串口模块TL16CP754,就是通过emifa扩展串口,相应的驱动源码,例程都是提供的。 ...
: j3 [1 p+ H4 G- p2 w
EMIF相关配置应该是没问题的,spansion的片子在延长总线时序,增加时钟之后,UBIFS逻辑坏块试了1000次反复满规格擦写不会出现,但是某些核心板还是会出现重启后内核bad crc,一般是在更改系统里文件并reboot之后出现,这时在u-boot中reset,又正常了,但是还是会出现在& t4 L6 K  V+ ~- T8 G
Starting kernel ...
9 K  u+ P5 x4 Z8 o) X0 fUncompressing Linux... done, booting the kernel.之后卡住的现象!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-5 05:01 , Processed in 0.041603 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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