On 02/04/2010 12:07 AM, Jie Zhang wrote: > When read memory on Blackfin via JTAG, we shift the following two > instructions into EMUIR register of Blackfin and run the tap state to > Run-Test/Idle to execute them: > > R0 = [P0]; > EMUDAT = R0; > > When these instruction are completed, we shift out EMUDAT, which > contains the data just read back. The problem is instruction execution > needs time. If the instruction in EMUIR has not completed, but we try to > scan out EMUDAT, we would get old data in EMUDAT. That caused a bug in > our daily use. To fix it, we wait some clocks after starting instruction > execution. > > This patch adds a callback in part specific data structure and modifies > code to call it when being Run-Test/Idle. Is it OK? > > > 2010-02-03 Jie Zhang<[email protected]> > > * include/urjtag/part.h (struct URJ_PART_PARAMS): Add wait_ready. > * include/urjtag/bfin.h (bfin_wait_clocks): Declare. > * include/urjtag/chain.h (urj_tap_chain_wait_ready): Declare. > * src/tap/chain.c (urj_tap_chain_wait_ready): New. > * src/tap/tap.c (urj_tap_defer_shift_register): Call > urj_tap_chain_wait_ready if Run-Test/Idle. > * src/bfin/bfin.c (bfin_wait_clocks): Define. > (part_emudat_defer_get): Call chain_wait_ready when Run-Test/Idle. > (part_emudat_get): Likewise. > * src/bfin/bfin-part-bfin.c: Include<sysdep.h>,<urjtag/chain.h>, > <urjtag/cable.h> and<urjtag/log.h>. > (bfin_wait_ready): New. > (bfin_part_init): Init wait_ready. > This patch is not intrusive and I'm confident with it. So I have committed this patch.
Jie ------------------------------------------------------------------------------ The Planet: dedicated and managed hosting, cloud storage, colocation Stay online with enterprise data centers and the best network in the business Choose flexible plans and management services without long-term contracts Personal 24x7 support from experience hosting pros just a phone call away. http://p.sf.net/sfu/theplanet-com _______________________________________________ UrJTAG-development mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/urjtag-development
