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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 8150|回复: 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) x3 Y5 z: y# y* z

" x3 C9 v, z8 K5 q进系统但是SSH应用程序报ubifs读node错误,这种现象会不会是u-boot的bug, 日志文件如下:
* {1 [/ d* i& i9 @: @# F+ H- n  M2 ~( \/ o; F# e: C
6 w( S/ h" Q3 z' W, l
U-Boot 2012.04.01-00054-g9a6dfff (Nov 04 2014 - 22:07:15)
( X8 W9 c- T( y. m& ?4 K7 p6 U5 @8 `- I7 Y: B* \6 t8 Z  B
I2C:   ready" E/ g3 x( ]+ w/ A
DRAM:  128 MiB
) C$ X# ?7 p. ]& b- h* N; ~' yWARNING: Caches not enabled
; E9 d9 u, D* e6 j6 W3 ]NAND:  512 MiB9 d( Z" U7 s0 {3 N, S9 u5 z5 v' i
MMC:   davinci: 0
. {8 z, Z! k5 @8 @- O5 LBad block table not found for chip 02 R; `+ Q$ N# W: }$ C; {" N
Bad block table not found for chip 0
1 y: Q# [- g3 h( k# |( aBad block table written to 0x00001ffe0000, version 0x01
% B& v# }! N$ y0 U" [Bad block table written to 0x00001ffc0000, version 0x01
6 q" w0 x; }" K% aIn:    serial. U' Y& a2 P6 [0 ?4 `& X% |! e
Out:   serial) s3 M$ {1 W5 N& k* W( y
Err:   serial( E3 K+ C, C/ |/ i; I4 F, W
Default using MAC address from environment1 }. v; ~1 p# m: _' r
Net:   DaVinci-EMAC6 P9 J' {: s+ `% _
Hit any key to stop autoboot:  0
$ t3 F/ w/ T; `/ x5 y. y" Y* _( U- j3 O. B) M4 d- z
Loading from nand0, offset 0x120000( ^% N9 b* t* R3 l( _- S
   Image Name:   Linux-3.3.09 _) M' O/ m8 N' A0 L
   Image Type:   ARM Linux Kernel Image (uncompressed)
% R) T" [+ W7 L* v   Data Size:    2843400 Bytes = 2.7 MiB
% o- `2 r; h) `$ \- V+ F9 D& p' ~   Load Address: c0008000
, b* o8 Q9 [6 Q8 o   Entry Point:  c0008000$ Y4 k5 W0 ?$ ^  [' f% p
## Booting kernel from Legacy Image at c0700000 ...& m8 D4 P9 S: w- u
   Image Name:   Linux-3.3.09 T' D4 O& ?+ n# _2 a9 N- P. D
   Image Type:   ARM Linux Kernel Image (uncompressed)
6 M% w- Z# a$ q   Data Size:    2843400 Bytes = 2.7 MiB) }( k7 _8 o; w2 P) A+ s+ `
   Load Address: c0008000" U  L# a" A$ C7 V# C
   Entry Point:  c00080005 t$ L  U( I$ H* N
   Verifying Checksum ... Bad Data CRC- i8 L% Y* k. Y: L% b1 |0 q5 [
ERROR: can't get kernel image!
7 _: W. M) h" a, f+ xU-Boot > Nand boot...2 h$ i+ G+ g; {* W4 v3 w# u7 s

' I  p4 n  C, F$ D* ^
' m0 u$ ]5 J1 \6 \* aU-Boot 2012.04.01-00054-g9a6dfff (Nov 04 2014 - 22:07:15): T9 `* [: d/ R5 R% r7 m

% |5 L7 {) u9 d/ hI2C:   ready* o  ]0 j0 S! N" @/ T! ?* F- H
DRAM:  128 MiB6 u& ~. Q7 U4 l9 V7 V- w. p
WARNING: Caches not enabled
! e# e1 `5 t: D! p9 B) HNAND:  512 MiB& v4 K" i$ y3 O! j1 j
MMC:   davinci: 0$ y; @) \& E$ q& n
Bad block table not found for chip 0
# o4 U4 R2 ~! D+ o5 T  XBad block table not found for chip 0
  M. L+ Z* w8 {Bad block table written to 0x00001ffe0000, version 0x01" z- W$ ^' `4 i) t* X2 k. R
Bad block table written to 0x00001ffc0000, version 0x01' Y$ O7 t  W$ U2 U4 h) A
In:    serial  Y4 F9 w, n. t; c6 H6 H9 ]
Out:   serial
* _% w$ @' o9 n7 I( zErr:   serial
  u8 G0 x2 }4 J" HDefault using MAC address from environment
8 c- W: C* P! f# ^  mNet:   DaVinci-EMAC
3 F$ Z' r9 P  J5 b& u. O  F8 cHit any key to stop autoboot:  0
4 y1 ~& x$ T! @% `1 k" d7 R( @# q9 N3 L4 ]% n" a+ J
Loading from nand0, offset 0x120000( b4 o" d: l* @8 v" B% f
   Image Name:   Linux-3.3.09 L3 K/ d) M. Y4 r7 z" t  M4 _
   Image Type:   ARM Linux Kernel Image (uncompressed)3 }2 E9 S  H9 a6 o( j) z( O  _$ ^' V
   Data Size:    2843400 Bytes = 2.7 MiB. q) u4 v- j, r2 e) P
   Load Address: c0008000
$ J% ]! S8 u: f. u   Entry Point:  c0008000
3 t) u" m, N- `" @) K: I/ X## Booting kernel from Legacy Image at c0700000 ...
5 {( @% u5 L: l3 ^: q/ r9 I, r   Image Name:   Linux-3.3.0
1 S" t! I" h' W( k# E# Q4 q   Image Type:   ARM Linux Kernel Image (uncompressed), S4 n4 i/ c; k, O' U% Q6 h/ e& |! j
   Data Size:    2843400 Bytes = 2.7 MiB
- Q; s1 d* b2 e4 Y4 O4 ^   Load Address: c0008000
& ~5 Y7 p* y) R& ]   Entry Point:  c0008000
. e1 _% {$ G$ @" M, H7 e7 k1 N   Verifying Checksum ... OK
" V5 g" ?0 |4 J* Z' C% v' z* D1 @# b   Loading Kernel Image ... OK
: t, a' C5 ?( _& d+ AOK% `3 c8 ?, F+ @! t- w* e' E

" K! K$ v) `' O5 a8 _, uStarting kernel ...# o2 ~9 P7 |+ c4 z0 _7 |* G. Y6 O

' g+ S9 n. ?1 w3 }# w2 uUncompressing Linux... done, booting the kernel.
. `+ C" n4 N1 q[    0.000000] Booting Linux on physical CPU 0
7 z8 S6 w0 t9 W& c  b[    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
6 P* n* T* ^. V# w* C7 i* @& [, q[    0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=000531776 ~2 D# E& N8 x5 p4 g( \
[    0.000000] CPU: VIVT data cache, VIVT instruction cache
5 k; W7 b9 Y) J' U" W9 x1 p[    0.000000] Machine: DaVinci DA850/OMAP-L138/AM18x EVM9 T: v( K( r/ m5 Y
[    0.000000] Memory policy: ECC disabled, Data cache writeback) u) e# q: q( y9 N4 z1 ]7 [- X. g
[    0.000000]  =======> da850_evm_map_io!5 B7 M$ r, R% e6 j# ]! k
[    0.000000] BUG: mapping for 0x80000000 at 0xfffe0000 out of vmalloc space' X) ~9 h/ \, C4 n
[    0.000000] DaVinci da850/omap-l138/am18x variant 0x1+ ^" S$ X$ i/ L

# ~/ p/ _" o4 B+ z, r/ _$ p4 ~
: v* H. \- M3 Z2 U
5 ?. \( B- y4 x- A/ B, P  e......& i( U. L+ M& ~/ z% j8 H
tarting Dropbear SSH server: [   17.173901] UBIFS error (pid 1063): ubifs_read_node: bad node length 4082, expected 3570* n7 y6 W" U+ Q, j3 f0 v
[   17.182220] UBIFS error (pid 1063): ubifs_read_node: bad node at LEB 486:101360, LEB mapping status 1
3 L; c5 h. a1 B8 `: A, H* ~" X  I[   17.191623] UBIFS error (pid 1063): do_readpage: cannot read page 22 of inode 3091, error -22& \& O7 H) C: c" X( V: N! z4 t* N
[   17.202389] UBIFS error (pid 1063): ubifs_read_node: bad node length 4082, expected 3570
, W0 |( j; R" Y7 A, w# |9 r3 c[   17.210675] UBIFS error (pid 1063): ubifs_read_node: bad node at LEB 486:101360, LEB mapping status 1
$ q2 y& m. s8 p7 D) \5 c2 c( z[   17.220069] UBIFS error (pid 1063): do_readpage: cannot read page 22 of inode 3091, error -22  L+ k8 c& @+ C
/etc/rc5.d/S10dropbear: line 70:  1063 Bus error               start-stop-daemon -S -x "$DAEMON" -- $KEY_ARGS -p "$DROPBEAR_PORT" $DROPBEAR_EXTRA_ARGS
" d8 D$ r& h4 P1 t8 O# w3 kStarting telnet daemon.# _2 P0 P3 j' u( k' l( B9 ?5 ?
) J9 u; D2 x- Z( S8 h3 g# Z% A0 v
......
. ^3 h, F) C7 D, m8 n" r' PStopping Bootlog daemon: bootlogd.
3 {8 y3 a5 @  C
6 s2 _3 N6 z. N; C8 G3 ?0 { _____                    _____           _         _3 e) j" }! p- h  }" `
|  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_
4 o7 h" f' S! C9 D: S9 C|     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|2 {$ z& _5 P; B$ e- j# j. {
|__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|
7 K( M- t; ]) N+ N/ o9 P  @              |___|                    |___|4 v  w& R! L, r1 H9 m8 g9 Z" J( i
( U5 Q5 E+ ~0 j0 L' M% Q& M% L
Arago Project http://arago-project.org tl ttyS2' `6 Y* R4 P6 I% \8 W' S* {
  ^4 M$ J* v. j' q- C
Arago 2013.06 tl ttyS2
* `# G2 N3 v# A. [8 E2 k7 @
  @% \0 o( c' A! }- O. @& b3 y: W$ Jtl login: root (automatic login)9 b* O1 c3 j: U! a* a# N
8 k. [" c& U- A4 f: @( T! ^, v
root@tl:~#
* @  Y7 ~1 ?$ x1 b0 w2 n! _/ x5 Q6 J. l9 o6 e+ \
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

89

主题

104

帖子

391

积分

中级会员

Rank: 3Rank: 3

积分
391
6#
 楼主| 发表于 2015-8-12 10:20:09 | 只看该作者
teddy 发表于 2015-7-27 15:10
) d& s% R. H% t可以参考创龙的多串口模块TL16CP754,就是通过emifa扩展串口,相应的驱动源码,例程都是提供的。 ...
) [# Y( v/ `. D, S
EMIF相关配置应该是没问题的,spansion的片子在延长总线时序,增加时钟之后,UBIFS逻辑坏块试了1000次反复满规格擦写不会出现,但是某些核心板还是会出现重启后内核bad crc,一般是在更改系统里文件并reboot之后出现,这时在u-boot中reset,又正常了,但是还是会出现在
; h1 G$ Y& n0 N' |' s2 ]& j3 a3 v+ \6 ^Starting kernel ...! \7 Y! L) M) N5 c, w. _/ \
Uncompressing 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:549 m$ Z2 T* p  ?) i4 {  w- F1 c
16C554串口芯片是连接在emifa总线,nand flash也是连接emifa总线,有可能被影响了。 ...

# N6 X5 ]* f" q& B9 M会是数据线影响,还是片选之间干扰,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 08:38 , Processed in 0.042928 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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