2010-02-09 02:41:41     BFin527 Board Reset directly issue.

Document created by Aaronwu Employee on Aug 20, 2013
Version 1Show Document
  • View in full screen mode

2010-02-09 02:41:41     BFin527 Board Reset directly issue.

Xin Xin (CHINA)

Message: 85786   

 

Hi,

 

    We do bt download, the Bfin527 devel-board resets directly. No system crash message, just reset to uboot, and booting.

 

We check the power is ok, and test other programs(disk R/W) well. Is it possible that the kernel writes data to "#define SWRST                0xFFC00100    /* Software Reset Register                    */" by wrong data pointer?

 

   And if so,what is a good way to debug this situation? Because it isn't possibe to get no log, the system resets imediately.

 

 

 

Best Regards

 

Xin

QuoteReplyEditDelete

 

 

2010-02-09 03:25:15     Re: BFin527 Board Reset directly issue.

Yi Li (CHINA)

Message: 85826   

 

Xin,

 

Have you enabled watchdog (blackfin watchdog driver and watchdogd)? You can disable watchdog and see whether system hangs.

 

-Yi

QuoteReplyEditDelete

 

 

2010-02-09 03:50:01     Re: BFin527 Board Reset directly issue.

Vinay Kumar (INDIA)

Message: 85829   

 

What is the size of your image?

QuoteReplyEditDelete

 

 

2010-02-09 10:37:39     Re: BFin527 Board Reset directly issue.

Xin Xin (CHINA)

Message: 85840   

 

Sorry, I am in my vacation. I remeber that I didn't enble the watchdog. And the reset happens at random. So I will confirm after vacation. Thanks

QuoteReplyEditDelete

 

 

2010-02-09 10:39:02     Re: BFin527 Board Reset directly issue.

Xin Xin (CHINA)

Message: 85841   

 

The vmImage's size is 1.7 MBytes. Is there any relationship between them? Thanks

QuoteReplyEditDelete

 

 

2010-02-09 23:51:54     Re: BFin527 Board Reset directly issue.

Vinay Kumar (INDIA)

Message: 85866   

 

I had the same problem,

 

I was trying to download uImage.initramfs directly on to the ram(In BF527 ram size is 64MB) through tftp, I had many options enabled like i enabled tslib, ffmpeg,mplayer,QT application, the total size came up to 14 MB(uImage.initramfs), because of this size the board was resetting, then i had to reduce the size to make it work.

QuoteReplyEditDelete

 

 

2010-02-24 21:18:26     Re: BFin527 Board Reset directly issue.

Yi Li (CHINA)

Message: 86490   

 

Xin,

 

Have you checked you watchdog setting?

 

Also, you can check SWRST register after system reset (using a ICE), to see the reset source.

 

-Yi

QuoteReplyEditDelete

 

 

2010-02-28 23:15:45     Re: BFin527 Board Reset directly issue.

Xin Xin (CHINA)

Message: 86651    Hi, Yi, It is right that reason of reset is watchdogd. Last day I disable it, the system will hangup after few hours, and not any dump messages. Now the only way is to debug by ICE. Best Regards Xin

QuoteReplyEditDelete

 

 

2010-03-01 14:44:06     Re: BFin527 Board Reset directly issue.

Robin Getz (UNITED STATES)

Message: 86682   

 

Xin:

 

I had a patch around - which caused the watchdog to generate an NMI - and then dump the trace and panic. It isn't too difficult to recreate.

 

It would tell you what was the last thing running (so if things hung in a small loop, it was great) - if userspace was just starved and the watchdogd wasn't getting enough time - it doesn't help.

 

-Robin

QuoteReplyEditDelete

 

 

2010-03-01 20:52:34     Re: BFin527 Board Reset directly issue.

Xin Xin (CHINA)

Message: 86686   

 

Hi Robin,

 

      I think it should be that kernel hangs up, because I can't ping it. Where do I get your patch?

 

     Thanks.

 

Xin

QuoteReplyEditDelete

 

 

2010-03-03 23:41:31     Re: BFin527 Board Reset directly issue.

Xin Xin (CHINA)

Message: 86775   

 

Hi Yi, Now I disable watchdog and debug kernel with gnICE, but after ICE runs few hours, met following problem:

 

[test@99 linux-2.6.x]$ bfin-elf-gdb vmlinux

 

GNU gdb 6.6 Copyright (C) 2006 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "--host=i686-pc-linux-gnu --target=bfin-elf"...

 

(gdb) target remote :2000

 

Remote debugging using :2000

 

0x000093a6 in dequeue_task (rq=0x2df670, p=0x3ddf980, sleep=1) at kernel/sched.c:1684 1684 if (sleep && p->se.last_wakeup) {

 

(gdb) c

 

Continuing. (after few hours)

 

Program received signal SIGTRAP, Trace/breakpoint trap. 0xffffffff in ?? ()

 

(gdb) c

 

Continuing.

 

Program received signal SIGTRAP, Trace/breakpoint trap. 0x00000406 in ?? ()

 

(gdb) c

 

Continuing.

 

Program received signal SIGTRAP, Trace/breakpoint trap. 0x00000406 in ?? ()

 

(gdb) c

 

Continuing.

 

Program received signal SIGTRAP, Trace/breakpoint trap. 0x00000406 in ?? ()

 

(gdb) c

 

Continuing.

 

Program received signal SIGTRAP, Trace/breakpoint trap. 0x00000406 in ?? ()

 

(gdb) c

 

Continuing. .... Program received signal SIGTRAP, Trace/breakpoint trap.

 

Why are there continuing SIGRAP? The kernel can't run normaly

 

Best Regards

 

Xin

QuoteReplyEditDelete

 

 

2010-03-04 00:33:39     Re: BFin527 Board Reset directly issue.

Xin Xin (CHINA)

Message: 86776   

 

Hi Yi, Now I disable watchdog and debug kernel with gnICE, but after ICE runs few hours, met following problem:

 

[test@99 linux-2.6.x]$ bfin-elf-gdb vmlinux

 

GNU gdb 6.6 Copyright (C) 2006 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "--host=i686-pc-linux-gnu --target=bfin-elf"...

 

(gdb) target remote :2000

 

Remote debugging using :2000

 

0x000093a6 in dequeue_task (rq=0x2df670, p=0x3ddf980, sleep=1) at kernel/sched.c:1684 1684 if (sleep && p->se.last_wakeup) {

 

(gdb) c

 

Continuing. (after few hours)

 

Program received signal SIGTRAP, Trace/breakpoint trap. 0xffffffff in ?? ()

 

(gdb) c

 

Continuing.

 

Program received signal SIGTRAP, Trace/breakpoint trap. 0x00000406 in ?? ()

 

(gdb) c

 

Continuing.

 

Program received signal SIGTRAP, Trace/breakpoint trap. 0x00000406 in ?? ()

 

(gdb) c

 

Continuing.

 

Program received signal SIGTRAP, Trace/breakpoint trap. 0x00000406 in ?? ()

 

(gdb) c

 

Continuing.

 

Program received signal SIGTRAP, Trace/breakpoint trap. 0x00000406 in ?? ()

 

(gdb) c

 

Continuing. .... Program received signal SIGTRAP, Trace/breakpoint trap.

 

Why are there continuing SIGRAP? The kernel can't run normaly

 

Best Regards

 

Xin

QuoteReplyEditDelete

 

 

2010-03-04 00:46:03     Re: BFin527 Board Reset directly issue.

Xin Xin (CHINA)

Message: 86777   

 

Another Messages, corresponding every SIGTRAP, gdbproxy prints "

fbin: [0] a double fault has occured EMUPC [0xFFFFFFFF]"

 

 

What is the error?

 

Best Regards

 

Xin

QuoteReplyEditDelete

 

 

2010-03-04 07:18:33     Re: BFin527 Board Reset directly issue.

Mike Frysinger (UNITED STATES)

Message: 86803   

 

if your kernel double faults, there's nothing JTAG can do to recover.  dont double fault.

QuoteReplyEditDelete

 

 

2010-03-07 23:00:15     Re: BFin527 Board Reset directly issue.

Xin Xin (CHINA)

Message: 86927   

 

Hi,

 

    I set the Kernel Hack:

 

   [*] Debug Double Faults                                                                     

                            Double Fault Failure Method (Print)  --->

 

  The double fault error doesn't appear util now.

 

    But met another situation. The system still hangup with gnICE debugging, I input "Ctrl-C" at bfin-elf-gdb:

 

(gdb)

Continuing.

^C

Program received signal SIGINT, Interrupt.

Ignoring packet error, continuing...

0xffa00d0e in evt_timer () at /home/test/2.6.28.10/trunk/linux-2.6.x/arch/blackfin/include/asm/atomic.h:141

141

(gdb)

and gdbproxy broken as following:

 

info:      bfin: [0] core is in idle mode

info:      bfin: [0] core is in idle mode

info:      bfin: [0] core is in idle mode

info:      bfin: [0] EMUIN pin was asserted: PC [0xFFA00D0E] FP [0x00D4B480]

gdbproxy: bfin.c:577: part_check_emuready: Assertion `emuready' failed.

Aborted

 

 

Does this mean that Jtag interface died?

 

I use the gdbproxy

 

[root@99 test]# gdbproxy -v

Remote proxy for GDB, version 0.7.2

 

and checkout from blackfin SVN .

 

Best Regards

 

Xin

QuoteReplyEditDelete

 

 

2010-03-07 23:29:55     Re: BFin527 Board Reset directly issue.

Xin Xin (CHINA)

Message: 86928   

 

And when the proxygdb broken, I don't reset blackfin board, and restart the proxygdb as:

 

[root@99 test]# /opt/uClinux/gdbproxy/bin/gdbproxy bfin

 

Remote proxy for GDB, v0.7.2, Copyright (C) 1999 Quality Quorum Inc.

MSP430 adaption Copyright (C) 2002 Chris Liechti and Steve Underwood

Blackfin adaption Copyright (C) 2008 Analog Devices, Inc.

 

GDBproxy comes with ABSOLUTELY NO WARRANTY; for details

use `--warranty' option. This is Open Source software. You are

welcome to redistribute it under certain conditions. Use the

'--copying' option for details.

 

Found USB cable: gnICE

Connected to libftdi driver.

IR length: 5

Chain length: 1

Device Id: 00000010011111100000000011001011 (0x027E00CB)

  Manufacturer: Analog Devices (0x0CB)

  Part(0):      BF527 (0x27E0)

  Stepping:     0

  Filename:     /opt/uClinux/urjtag/share/urjtag/analog/bf527/bf527

warning:   bfin: no board selected, BF527 is detected

notice:    bfin: jc: waiting on TCP port 2001

notice:    gdbproxy: waiting on TCP port 2000

notice:    gdbproxy: connected

info:      [0] emulator not ready: DBGSTAT [0x000A]

info:      Resetting ...

 

How about this resetting?

 

Best Regards

 

Xin

Attachments

    Outcomes