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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 8305|回复: 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错误,掉电重启后可以正常
( [1 g, A) Y) R  {, x$ U; E
: s/ j' a, T9 O% g, w& [' k进系统但是SSH应用程序报ubifs读node错误,这种现象会不会是u-boot的bug, 日志文件如下:4 @5 J2 J1 A5 G1 t

  ?, v) a: I+ }3 y* g, w7 F; Q3 Z. h4 i  [' z
U-Boot 2012.04.01-00054-g9a6dfff (Nov 04 2014 - 22:07:15)
  {9 G1 _$ O, M8 w; @' k5 O( `, E' D$ R& O' _
I2C:   ready
4 \9 g' N- e1 i5 [DRAM:  128 MiB
2 ?& }$ S7 u/ C; _# ]* E0 NWARNING: Caches not enabled
6 D7 A% M7 K  y- CNAND:  512 MiB
$ K: R! L/ P1 d0 V# pMMC:   davinci: 0
; H" {# N4 @6 b( ]9 Q- @Bad block table not found for chip 0
  Y# l0 |+ g! t5 t- w3 H% EBad block table not found for chip 02 F& L4 P4 M, L. D3 w
Bad block table written to 0x00001ffe0000, version 0x011 }+ Y2 q  p4 ~
Bad block table written to 0x00001ffc0000, version 0x01
: s& Q6 M8 f; q) I( U1 k' l% c  eIn:    serial
. B+ d" M# k2 I6 DOut:   serial+ f0 I4 e' ]' ?0 G- w/ c9 Z0 R: p1 ~6 X
Err:   serial1 f9 y' ^; l* [2 n1 Q) Y9 {9 X: t% P
Default using MAC address from environment
0 X  d3 f9 x6 w6 ?Net:   DaVinci-EMAC
% F5 k+ i2 v5 d2 \* A9 M4 m' w' zHit any key to stop autoboot:  0+ d& h0 _& u: V8 ?: G' T6 h) ?" ?
1 d$ M* Y4 o: {) K: o7 F3 d" f
Loading from nand0, offset 0x120000
( y* s( Q9 }6 }. I   Image Name:   Linux-3.3.0) d) t8 T& t, G
   Image Type:   ARM Linux Kernel Image (uncompressed)
) ^; u$ e, k% ^( ]   Data Size:    2843400 Bytes = 2.7 MiB
7 U5 w4 P+ |( N$ y8 G1 L4 L   Load Address: c0008000+ d/ ?$ F. {3 t6 n! r: F, V
   Entry Point:  c0008000
* v7 |& b0 W* P## Booting kernel from Legacy Image at c0700000 ...
0 z$ t7 ]: s9 h) T. j, b   Image Name:   Linux-3.3.0
: i; P9 @  B& t9 N, _' r" z8 y" Z1 z   Image Type:   ARM Linux Kernel Image (uncompressed)# ]# M: D2 J4 [0 H) f* v
   Data Size:    2843400 Bytes = 2.7 MiB5 O. [1 |  d+ N3 J" k9 s8 M" {
   Load Address: c0008000
7 U/ _2 w: j) J% o) Q# O   Entry Point:  c0008000
' o5 N! \4 G- S3 m) U* m   Verifying Checksum ... Bad Data CRC9 O, e( `( _$ ?# F. `. `, _
ERROR: can't get kernel image!  q' O2 I3 }1 ?
U-Boot > Nand boot...4 w+ ]" v9 D8 M# J+ E0 ]
# Y7 D( e$ H( Q0 {0 G$ R1 I

# ~# X% J2 m8 p) N9 ^9 K7 A( MU-Boot 2012.04.01-00054-g9a6dfff (Nov 04 2014 - 22:07:15)
3 W$ x# K( {% i. S9 \2 x% |+ V5 j
I2C:   ready/ ?) a4 p/ z1 a9 j
DRAM:  128 MiB
  j& a) j3 G# e: M: i4 [1 F) J' U+ ~WARNING: Caches not enabled
' \' v/ ^- m4 ]/ X; ]& iNAND:  512 MiB$ z! ^: B; r$ Q2 U
MMC:   davinci: 0
+ B( S/ p5 J4 c1 J. ^) {  {' e: B* B1 pBad block table not found for chip 0
' s( o  R4 g. B! B3 ~) n; k; OBad block table not found for chip 0
& h: a' ^( T# X0 a+ ^% R) yBad block table written to 0x00001ffe0000, version 0x01
: L' E5 V* h: g1 i- e) j7 iBad block table written to 0x00001ffc0000, version 0x01
8 |: O* o) v% `' TIn:    serial2 ]! w  z( l  R; W4 E
Out:   serial
; u9 x$ F5 y) |( x9 eErr:   serial
- v! p9 V: d7 e" l' `Default using MAC address from environment" k% W7 w/ k7 C
Net:   DaVinci-EMAC
' n( V% ?* i  w, V+ A; {Hit any key to stop autoboot:  0& q$ b' h5 }# g' `7 e
& U) s5 H/ J1 X5 d9 ?4 s3 X
Loading from nand0, offset 0x120000, q+ C( t4 J; f' [" m6 D
   Image Name:   Linux-3.3.0! T" S7 F: D1 i: N' m3 x
   Image Type:   ARM Linux Kernel Image (uncompressed)
4 b* C; X/ U8 ^' J   Data Size:    2843400 Bytes = 2.7 MiB5 Y+ s% p  S2 k9 B
   Load Address: c0008000
+ o9 _1 g# M0 o% F) j   Entry Point:  c0008000
/ |& F8 e/ S* M% T, A. w## Booting kernel from Legacy Image at c0700000 ...5 X- v: [! B3 a
   Image Name:   Linux-3.3.08 C4 m5 Z8 _- W( G& f
   Image Type:   ARM Linux Kernel Image (uncompressed)
& v- D: o( a0 c   Data Size:    2843400 Bytes = 2.7 MiB* p2 G3 Y- D: P
   Load Address: c0008000
. {( p) w; J/ Y! ^3 r   Entry Point:  c0008000
7 X0 t1 \- R# m/ j0 B2 _2 g0 f   Verifying Checksum ... OK8 M8 l4 z$ D) N; Z" P
   Loading Kernel Image ... OK
/ Y1 z, C9 [: G9 q& \OK% j- `/ w' i8 c' m8 ^
1 Y0 s! k7 l% w" W$ N! ]: C$ p' M
Starting kernel ...
1 u* \5 d! W. ~
# z1 r* Q5 }0 q4 A8 Q. LUncompressing Linux... done, booting the kernel.; b( O4 s4 o- k, I# |- X' J  G
[    0.000000] Booting Linux on physical CPU 0
' {0 D/ _5 t9 e! ~% c. f' s[    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
! z5 e, A2 B2 Z8 L4 C" c8 L% N* T[    0.000000] CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=000531777 E2 @4 W  s  q
[    0.000000] CPU: VIVT data cache, VIVT instruction cache( j+ }$ Q( {" U+ p$ `
[    0.000000] Machine: DaVinci DA850/OMAP-L138/AM18x EVM
  p5 c  i8 P- t! O) G2 V& o[    0.000000] Memory policy: ECC disabled, Data cache writeback
& \% R0 {6 u5 k4 I[    0.000000]  =======> da850_evm_map_io!
& J6 P. n0 L3 N! n[    0.000000] BUG: mapping for 0x80000000 at 0xfffe0000 out of vmalloc space
% F+ \4 T, p, {' `[    0.000000] DaVinci da850/omap-l138/am18x variant 0x1
) ?: I1 V$ _; Y7 J( H+ D* x) j# \/ G0 v) F+ }3 |
5 G. d) j, F8 R, K/ Q9 v

3 c' V. p& U3 ^+ l......
8 @4 P& h' e: K. rtarting Dropbear SSH server: [   17.173901] UBIFS error (pid 1063): ubifs_read_node: bad node length 4082, expected 3570
3 q" E' [% O. `5 o, V2 U" Z& ^[   17.182220] UBIFS error (pid 1063): ubifs_read_node: bad node at LEB 486:101360, LEB mapping status 1% k- P1 m- V4 L/ m  P6 T! ]4 B
[   17.191623] UBIFS error (pid 1063): do_readpage: cannot read page 22 of inode 3091, error -22
4 e4 p9 C1 S1 i. P. C; R% ^[   17.202389] UBIFS error (pid 1063): ubifs_read_node: bad node length 4082, expected 3570" y2 h: ?, j+ A& e; a
[   17.210675] UBIFS error (pid 1063): ubifs_read_node: bad node at LEB 486:101360, LEB mapping status 1
; w- G6 P" f! k5 e[   17.220069] UBIFS error (pid 1063): do_readpage: cannot read page 22 of inode 3091, error -22+ E1 F4 W' U' w) i3 k; v
/etc/rc5.d/S10dropbear: line 70:  1063 Bus error               start-stop-daemon -S -x "$DAEMON" -- $KEY_ARGS -p "$DROPBEAR_PORT" $DROPBEAR_EXTRA_ARGS
; @: K$ w) @, g8 F8 s3 J; YStarting telnet daemon./ S6 O  @' i1 v' Q1 J7 J5 {
# M- W0 ]" ?  }
......
1 @- f% y; r. M; e) yStopping Bootlog daemon: bootlogd.. I& J0 |( d$ r
  t9 K1 j+ r8 x' }' X% U: C
_____                    _____           _         _
) _4 o: v/ n% ~! t|  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_7 x: [: Y( K* }! a" t
|     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
) B- d. z# `  T! v7 ]5 N( z7 d|__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|
1 k  M" h" e0 D/ y# f              |___|                    |___|& N" n9 E. X# F* H: ~/ ~
  u8 E7 t+ \2 }2 N$ v
Arago Project http://arago-project.org tl ttyS2# v( y* U* Z9 c- J8 M1 Z

! A% ^& f& B" a9 t% v- Y  |Arago 2013.06 tl ttyS2& N4 N; B/ n0 S5 N$ M4 s
+ M% R1 ~( k/ m/ I
tl login: root (automatic login)/ H* ]& v% o2 s0 g6 k1 x3 ^
3 p+ x/ v8 i8 E: p3 V9 W" x
root@tl:~#) u0 p6 }' |5 w7 i

! A+ ^  Q9 V4 i, w4 G. g; X
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

89

主题

104

帖子

391

积分

中级会员

Rank: 3Rank: 3

积分
391
6#
 楼主| 发表于 2015-8-12 10:20:09 | 只看该作者
teddy 发表于 2015-7-27 15:107 Y3 y3 e, \6 J4 T1 @2 O1 M- R# Q  x6 H
可以参考创龙的多串口模块TL16CP754,就是通过emifa扩展串口,相应的驱动源码,例程都是提供的。 ...

8 ?& [) \+ S/ s# o8 uEMIF相关配置应该是没问题的,spansion的片子在延长总线时序,增加时钟之后,UBIFS逻辑坏块试了1000次反复满规格擦写不会出现,但是某些核心板还是会出现重启后内核bad crc,一般是在更改系统里文件并reboot之后出现,这时在u-boot中reset,又正常了,但是还是会出现在' S2 L  {: {9 s. N
Starting kernel ...
) a5 y  D. J6 K  c- S; l& nUncompressing 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. E' X8 t7 n. J* ?8 |; ~
16C554串口芯片是连接在emifa总线,nand flash也是连接emifa总线,有可能被影响了。 ...
) `: p) a) L# |% K: K) G
会是数据线影响,还是片选之间干扰,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-3-17 06:26 , Processed in 0.305136 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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