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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 8151|回复: 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错误,掉电重启后可以正常  w- r. i  G! P4 \, l" D
( y* P5 B, |' z9 S  y
进系统但是SSH应用程序报ubifs读node错误,这种现象会不会是u-boot的bug, 日志文件如下:
" A2 K* w+ G" i4 K. T6 Z4 Q& H- Y* A1 J5 p; `% k
1 y. C8 ~- G! M% r; r) ?
U-Boot 2012.04.01-00054-g9a6dfff (Nov 04 2014 - 22:07:15), V% [: N( D( p
  _' n2 r. h5 i  a  j
I2C:   ready8 ~! m$ ?: J2 x2 P5 ?
DRAM:  128 MiB0 O6 l8 o" |6 [, }
WARNING: Caches not enabled
1 \- S- E1 ?- p! NNAND:  512 MiB
, J' V1 k! ?, J- a2 @5 sMMC:   davinci: 0  l! o- u# h% ?4 w+ Y8 f, m
Bad block table not found for chip 04 T; F6 N2 U* K- k) c/ E
Bad block table not found for chip 04 \* j# D8 Q$ j, C! w: N
Bad block table written to 0x00001ffe0000, version 0x01% Q7 X; f1 r$ A4 \1 o! r. G7 {& i
Bad block table written to 0x00001ffc0000, version 0x01
7 B' u+ ?* \& [, L: yIn:    serial
/ x7 B% ]* c1 K2 ]/ a$ O; ?Out:   serial* H7 O0 N: S& K0 ?  W8 W6 O
Err:   serial
/ F+ r% |/ R' SDefault using MAC address from environment+ ?% |; h; |$ D7 ]+ E
Net:   DaVinci-EMAC4 l2 _% h$ ?+ S- J! b7 v. s
Hit any key to stop autoboot:  0. u* }2 h% E; E6 h' B0 ]

+ W& e5 G$ g3 }/ J% bLoading from nand0, offset 0x120000
. D( a4 c5 f4 `; {. T2 U; \2 Q7 s   Image Name:   Linux-3.3.0. Q! S) L8 b* `( u' @
   Image Type:   ARM Linux Kernel Image (uncompressed)
2 b  f' w8 M  t& f& J0 C; x   Data Size:    2843400 Bytes = 2.7 MiB0 U3 J7 U; l% E" r( L( k
   Load Address: c0008000
/ \- c& [$ m9 l   Entry Point:  c00080006 M1 {: b; [# r9 l/ ?) ^! j
## Booting kernel from Legacy Image at c0700000 ...
+ k. S5 A) N( T0 r( @   Image Name:   Linux-3.3.02 n# n& m+ ^! d2 v4 N' m
   Image Type:   ARM Linux Kernel Image (uncompressed)
/ R# K- V+ A* G( j# b, b   Data Size:    2843400 Bytes = 2.7 MiB
) y4 X$ _+ I! B3 h# e( K, W   Load Address: c0008000
+ \: T9 M6 X' g7 {   Entry Point:  c0008000! ^9 Z, I+ \% R3 h, A/ x6 q
   Verifying Checksum ... Bad Data CRC* `: Z7 B" @- w7 J/ q( b2 ^
ERROR: can't get kernel image!, a: R# y( k2 D3 z9 g. r& H/ W$ u
U-Boot > Nand boot...
' m+ g0 h/ Z6 r4 q( f: m6 B
0 b# Z4 P+ P/ U
; Y% m# i3 j" F: o/ V- ?U-Boot 2012.04.01-00054-g9a6dfff (Nov 04 2014 - 22:07:15)
- ?9 r% w; N$ [5 O% i8 P) [8 ]) p3 t) I. X& T, ]
I2C:   ready; k/ X$ O& {! d1 l9 l0 @$ h
DRAM:  128 MiB
3 v' w6 b5 `: h6 A3 LWARNING: Caches not enabled
/ C2 `1 b/ E3 S% ]NAND:  512 MiB* n" K& H4 U' r+ Q/ Y# ]
MMC:   davinci: 0
& \, J+ t3 |. H1 n# bBad block table not found for chip 05 F' o% ]- g; O. Z5 A. F
Bad block table not found for chip 0
/ b  t/ R; n+ i8 q. n0 hBad block table written to 0x00001ffe0000, version 0x01
& I5 T5 g% W& u8 N! ~: h9 o  B1 g! {Bad block table written to 0x00001ffc0000, version 0x01
$ ^5 u0 U% d: VIn:    serial3 o* w" E8 E# x" D
Out:   serial8 m0 {* n* y. p& C' k
Err:   serial; \7 ~. G+ Z% [' W
Default using MAC address from environment1 |# _; C8 J/ ^- G$ l: E/ ?6 w3 K; Y
Net:   DaVinci-EMAC$ I. `( [4 C$ A3 @' y
Hit any key to stop autoboot:  0
. e& d# a1 B' L
5 h- w3 u4 c7 m$ x* P% {& t% [Loading from nand0, offset 0x120000
5 e1 ?" Y! b) `5 _% g   Image Name:   Linux-3.3.0- q6 W1 Z/ f) @
   Image Type:   ARM Linux Kernel Image (uncompressed)- L1 D9 `: h! `! @/ R
   Data Size:    2843400 Bytes = 2.7 MiB
" S: X+ G6 y0 [) T+ ^# K; w! E   Load Address: c00080004 l2 I. p$ Y0 j* {0 Y7 T& ~
   Entry Point:  c0008000
: Q/ p$ N: E. o; m- C* n## Booting kernel from Legacy Image at c0700000 ...
; Q; q  m: w6 f* Y! f! P' m( M   Image Name:   Linux-3.3.0
  T/ n- n0 m$ a( _0 j" Z1 h   Image Type:   ARM Linux Kernel Image (uncompressed)5 A" H2 f3 y4 k8 i0 r
   Data Size:    2843400 Bytes = 2.7 MiB. |( }% y0 \; l
   Load Address: c0008000
3 ]+ P5 k' _7 o  |. U  W5 }   Entry Point:  c00080001 y& N0 E- q8 k1 |4 ]
   Verifying Checksum ... OK; N9 c' f7 Y$ D& a
   Loading Kernel Image ... OK0 \0 s+ u& k! ]( F/ \! f2 F
OK
+ q" X: `4 n$ g# F
8 C0 @2 J1 T0 U! y" c# mStarting kernel ...
' w6 s% J( a4 t2 U. v: E* p* g, Z5 k8 V' j# I) O
Uncompressing Linux... done, booting the kernel.
: m/ b% O7 w# d. O0 P% {6 J8 r4 a+ M- a[    0.000000] Booting Linux on physical CPU 0% t: c2 O$ p% _
[    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; |+ m, G8 D: _* e1 F
[    0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
# x; m7 [' w9 @! Y. c- `[    0.000000] CPU: VIVT data cache, VIVT instruction cache
4 J8 i. p2 \0 Q[    0.000000] Machine: DaVinci DA850/OMAP-L138/AM18x EVM! y7 E& d1 u6 U3 [/ U9 ~) G% d) R4 J
[    0.000000] Memory policy: ECC disabled, Data cache writeback& A/ j# O% S( T6 x* a# d! G: i
[    0.000000]  =======> da850_evm_map_io!
3 K- {7 C/ u1 B[    0.000000] BUG: mapping for 0x80000000 at 0xfffe0000 out of vmalloc space% Y; R8 X9 R7 }+ Y7 j+ V8 n# d( j
[    0.000000] DaVinci da850/omap-l138/am18x variant 0x1
) V3 }) o& Z. n. d) C6 r0 o  h' w& V, \0 }8 g7 y  n

: P0 l/ Z; I! f$ G3 o. f0 ^" k0 m  ]2 h7 J1 ?
......
$ H/ z# _( V% O( b) p. ]: H5 ltarting Dropbear SSH server: [   17.173901] UBIFS error (pid 1063): ubifs_read_node: bad node length 4082, expected 3570
4 u  e7 D8 B0 c6 u  f[   17.182220] UBIFS error (pid 1063): ubifs_read_node: bad node at LEB 486:101360, LEB mapping status 1( b! g! q9 H4 P, L! l2 P
[   17.191623] UBIFS error (pid 1063): do_readpage: cannot read page 22 of inode 3091, error -22
: y! \  A( [! I" D- p& W[   17.202389] UBIFS error (pid 1063): ubifs_read_node: bad node length 4082, expected 3570
/ v. y! w  D% _3 v3 i1 l& F) ^6 C[   17.210675] UBIFS error (pid 1063): ubifs_read_node: bad node at LEB 486:101360, LEB mapping status 1
$ j3 s9 P# I$ ]& J* n0 E$ m[   17.220069] UBIFS error (pid 1063): do_readpage: cannot read page 22 of inode 3091, error -22! B7 O. ~" \1 s* e$ }* m8 X
/etc/rc5.d/S10dropbear: line 70:  1063 Bus error               start-stop-daemon -S -x "$DAEMON" -- $KEY_ARGS -p "$DROPBEAR_PORT" $DROPBEAR_EXTRA_ARGS
& u2 T: T7 _4 tStarting telnet daemon.
$ P6 ?8 l. J* {- R4 o+ i+ R: t0 [
4 F; K# F% K% J( R  v& X* c' _: a......* n# ^0 k1 U! D% i! l. s
Stopping Bootlog daemon: bootlogd.- W4 p* W$ F" ]3 |4 L4 Q
. O( l/ r8 r$ j$ P5 o, B# t9 g6 T
_____                    _____           _         _
9 ?- }# _- \$ d: A/ j|  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_
4 t, V/ w  H/ Z% d' w3 \9 p|     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
, [; }& k2 H5 S; k1 z% ~|__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|# C4 W  y2 u9 Y$ S( {* M2 v
              |___|                    |___|
# c; J& c, e" r
- t, f; h# ~/ H" U& {Arago Project http://arago-project.org tl ttyS21 H7 W' W$ u2 d
7 t  S; q) P/ }5 s, e
Arago 2013.06 tl ttyS2( I0 x9 h# n& {& `

: a0 X1 \8 U% {5 c; mtl login: root (automatic login)
: R  J1 M3 F1 w% |7 C
: ]% _0 ^3 Y* N+ B" z" u7 troot@tl:~#+ F( @: m5 L3 T3 p4 e2 t: ~: C" ]

+ l  p1 Q! W2 F: r/ H/ O7 \
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

89

主题

104

帖子

391

积分

中级会员

Rank: 3Rank: 3

积分
391
6#
 楼主| 发表于 2015-8-12 10:20:09 | 只看该作者
teddy 发表于 2015-7-27 15:10" l( }8 s) H" Q% x& T* ]
可以参考创龙的多串口模块TL16CP754,就是通过emifa扩展串口,相应的驱动源码,例程都是提供的。 ...
5 W! E: k+ x/ l2 Y# i
EMIF相关配置应该是没问题的,spansion的片子在延长总线时序,增加时钟之后,UBIFS逻辑坏块试了1000次反复满规格擦写不会出现,但是某些核心板还是会出现重启后内核bad crc,一般是在更改系统里文件并reboot之后出现,这时在u-boot中reset,又正常了,但是还是会出现在+ _" d" v+ Q4 E) I6 ^  o, ]6 X, A
Starting kernel ...
* d) P( }+ G, a% z" z, }' V. v) _/ SUncompressing Linux... done, booting the kernel.之后卡住的现象!
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
5#
发表于 2015-7-27 15:10:34 | 只看该作者
可以参考创龙的多串口模块TL16CP754,就是通过emifa扩展串口,相应的驱动源码,例程都是提供的。
回复 支持 反对

使用道具 举报

89

主题

104

帖子

391

积分

中级会员

Rank: 3Rank: 3

积分
391
地板
 楼主| 发表于 2015-7-21 14:52:25 | 只看该作者
有没有可能EMIF哪个寄存器设置不妥当产生这种影响。
回复 支持 反对

使用道具 举报

89

主题

104

帖子

391

积分

中级会员

Rank: 3Rank: 3

积分
391
板凳
 楼主| 发表于 2015-7-21 14:51:04 | 只看该作者
teddy 发表于 2015-7-21 13:54; z* @: n; Z1 o, g( H
16C554串口芯片是连接在emifa总线,nand flash也是连接emifa总线,有可能被影响了。 ...

; C3 V# V8 M" y) J3 s1 S5 D会是数据线影响,还是片选之间干扰,16c554 是一上电就复位的。
回复 支持 反对

使用道具 举报

0

主题

161

帖子

1093

积分

创龙

Rank: 8Rank: 8

积分
1093
沙发
发表于 2015-7-21 13:54:08 | 只看该作者
16C554串口芯片是连接在emifa总线,nand flash也是连接emifa总线,有可能被影响了。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2026-1-16 09:32 , Processed in 0.059030 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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