Thank you Matthias and Andreas!
Andreas, a combination of $dap_name.memaccess and adapter_khz, allowed
me to work around the problem.
There is a case where memaccess must be set > the 255 maximum.
I have one question on the best way to set an address range for special
read/write processing.
Thank you,
Rick
---
One request (no change involved): Please leave the ability to set
memaccess above the 255 maximum value.
The default max memaccess is 255. This is set in target/arm_dap.c:47
dap_instance_init.
I need memaccess to go above this (up to 400) to work with some adapters
that will not run below 1Mhz.
It is not a problem in that I can set $dap_name.memaccess to any 32 bit
value, the 255 max is not enforced. (arm_adi_v5.c:1593
dap_memaccess_command)
Technically that is a bug. If it is fixed in the future, I will need a
workaround.
---
One question: Is there a way to trigger an event based on address range?
Only one peripheral bus has this delay problem. I need to save and
restore adapter_khz and $dap_name.memaccess on each read and write of a
range of addresses.
I can create some special commands to wrap read and write accesses with
the settings for the slow bus.
The slow bus commands could be responsible to determine which addresses
need timing adjustments.
Is there a better way to define address ranges to adjust timing on all
read/write accesses?
On 08/09/2018 09:29 AM, Andreas Fritiofson wrote:
On Tue, Aug 7, 2018 at 6:58 AM, Rick Foos <[email protected]
<mailto:[email protected]>> wrote:
Looking for ideas on how to read a slow register (250ms) with
openocd Mdw.
You say 250 ms but from the code and the log, OpenOCD attempts the
access for 10*75 ms without success. Typo?
When I try to read one of these slow registers, I hit a WAIT, read
back bus float.
The dap disconnects, reconnects, and the value appears in an
unexpected location.
When OpenOCD does give up it should abort the AP access, which it
apparently doesn't. A line reset doesn't affect the AP state and the
value is for some reason returned in the next unrelated AP access.
When the DAP disconnects, I'm able to read the value in another
return location.
Am I adjusting time correctly? Or does it have to do with dap
resets and not delay time?
How should I handle reading a very slow register on the target.
You could set $dap_name memaccess to a high value and/or lower the
adapter_khz, temporarily around the access.
/Andreas
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
OpenOCD-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openocd-devel