On Fri, Jul 5, 2013 at 3:58 PM, [email protected] <[email protected]>wrote:

> On Fri, Jul 5, 2013 at 9:54 AM, [email protected] <[email protected]>
> wrote:
> > On your commit..
> >
> > $_TARGETNAME configure -work-area-phys 0xA0080000 -work-area-size 4096
> >
> >> mdw 0xa00001c8 200
> >
> > No difference in time, about 20 seconds.
>
>
> I backed up to the commit behind yours, same behavior so it wasn't
> broken by your commit.
>
> Is there a good place in  mips32_pracc_exec() to add a printf() to see
> why it is looping so much?
>
>
Just a thought... Since you're ending up in mips32_pracc_exec it
seems ejtag_info->mode == 0. And grepping on that one gives, in mips32.c:

COMMAND_HANDLER(mips32_handle_scan_delay_command)
{
...
if (ejtag_info->scan_delay >= 2000000) {
ejtag_info->mode = 0;
command_print(CMD_CTX, "running in legacy mode");
} else {
ejtag_info->mode = 1;
command_print(CMD_CTX, "running in fast queued mode");
}
...
}

"Fast queued mode" sounds a lot faster than "legacy mode". Can it be used
on your chip?

Indeed, the mips32_pracc_exec method seems extremely inefficient, as far as
I can tell from a quick glance, executing the JTAG queue at least three
times per pracc access, which in turn are at least three per word read.

/Andreas
------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
_______________________________________________
OpenOCD-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openocd-devel

Reply via email to