[#6091] urjtag: exiting emulation mode triggers an assert()

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

[#6091] urjtag: exiting emulation mode triggers an assert()

Submitted By: Mike Frysinger

Open Date

2010-07-05 23:38:05    

Priority:

Medium     Assignee:

Chad Wentworth

Board:

N/A     Silicon Revision:

Resolution:

Assigned (Not Started)     Fixed In Release:

N/A

Processor:

ALL     

Host Operating System:

toolchain rev.:

    kernel rev.:

State:

Open     Found In Release:

2010R1

Is this bug repeatable?:

N/A     

Summary: urjtag: exiting emulation mode triggers an assert()

Details:

 

urjtag's emulation mode crashes when you try to exit it.  fails with both gnICE and the ICE-100B:

jtag> cable probe

Found USB cable: ICE-100B

ICE-100B Firmware Version is 1.0.7

 

jtag> detect

IR length: 5

Chain length: 1

Device Id: 00100010011111001000000011001011 (0x227C80CB)

  Manufacturer: Analog Devices, Inc. (0x0CB)

  Part(0):      BF537 (0x27C8)

  Stepping:     2

  Filename:     /usr/local/src/blackfin/toolchains/20100703/bfin-elf/bin/../share/urjtag/analog/bf537/bf537

/usr/local/src/blackfin/git/toolchain/urjtag/src/bfin/bfin-part-bfin.c:154 bfin_wait_ready() Warning: untested cable or frequency, set wait_clocks to 21

 

jtag> bfin emulation enter

jtag> bfin emulation exit

bfin-jtag: /usr/local/src/blackfin/git/toolchain/urjtag/src/bfin/bfin.c:577: part_check_emuready: Assertion `emuready' failed.

Aborted (core dumped)

 

Follow-ups

 

--- Chad Wentworth                                           2010-07-06 09:11:59

Is this something from the changes for ICE-100b or is it just something that has

popped up recently?  Basically any idea when this started happening?

 

--- Mike Frysinger                                           2010-07-07 21:10:02

hmm, i guess it's the NOP change in rev 4668 that's causing the problem:

 

--- a/urjtag/src/bfin/bfin.c

+++ b/urjtag/src/bfin/bfin.c

@@ -1520,6 +1520,9 @@

     part_dbgctl_bit_clear_emeen (chain, n);

     part_dbgctl_bit_clear_wakeup (chain, n);

     urj_tap_chain_shift_data_registers_mode (chain, 0, 1,

URJ_CHAIN_EXITMODE_IDLE);

+

+    /* get the RTE out of EMUIR so we don't execute it more than once */

+    part_emuir_set (chain, n, INSN_NOP, URJ_CHAIN_EXITMODE_IDLE);

}

 

--- Robin Getz                                               2010-07-08 10:47:47

Chad:

 

So I guess the answer to your question is:

>Is this something from the changes for ICE-100b

 

Yes.

 

-Robin

 

--- Chad Wentworth                                           2010-07-08 11:43:30

Interesting.  I am not sure why executing a NOP would do that but we will take a

look.

 

 

 

    Files

    Changes

    Commits

    Dependencies

    Duplicates

    Associations

    Tags

 

File Name     File Type     File Size     Posted By

No Files Were Found

Attachments

    Outcomes