hi all,
i don't know how much helpful will be what i collected:
- dap is one per cortex soc and is mandatory (a, r or m)
- dap is lite or full (information extractable from dip idr)
- dap idr != idcode
- dap can be version 0 (no dap idr at all), or version 1 (jtag-dp), version 2
(sw{,j}-dp)
- depending on version, there is difference in accesing to ctrlstat register
- dap provides access ports to following:
- ahb (dapsel0)
- apb (dapsel1, dapsel0 in dap-lite implementation)
- axi (through dapbus)
- jtag (dapsel2)
- other non-coresight cores through dapbus (dapsel3)
- dapbus register is implemented in all dap versions
- dap can put soc to integration mode which will allow topology detection
- dap can request power for some components (and list all power domains)
but...
for example TI is member of opencore protocol ip (ocpip.org) consortium and
therefore beaglebone black (am335x target) doesn't have listed any periphery on
apb, because it uses ocp-ip 2.2 l2 and l3 interconnects (see am335x trm from
ti) and ocp2axi axi2ocp bridges.
and on other hand mips (imgtec) JZ4780 trm says it uses ahb/axi buses.
for now i have following devices with jtag accessible, where i play with
openocd (using flyswatter2):
ifc6410 (qcom apq8064 soc)
jetson tk1
beaglebone black
cubieboard (not yet tested, need to complete wiring from microsd jtag breakout
to flyswatter2)
stm32f4discovery (not yet tested, stlink doesn't give me access to dap, need
wire flyswatter2 to available swd pins using resistor hack)
stmf429i-disco (same as above)
i'm still sorting this mess of informations from arm, mips, opencore protocol,
etc sources :)
i hope i will have soon sorted it in head to start work on this topology
detection ;)
regards
jiri
On Fri, 09 Jan 2015 13:49:11 +0200, Olivier Schonken wrote:
> Thanks for all the info Paul. Very insightfull.
>
> One last question. (I think I was poking in the wrong direction referring
> to coreidx as a candidate for the ap passed to dap_get_debugbase, and
> dap_lookup_cs_component)
>
> Preceding the ROM table lookup functions there are two dap_find_ap
> functions that try to find the APB and AHB APs for the target. These
> functions would then put the ap number in armv7a->debug_ap and
> armv7a->memory_ap variables respectively. Would it help solve the dbgbase
> lookup by passing one of these values to the dap_get_debugbase, and
> dap_lookup_cs_component? (I suspect ROM table lookups on targets with
> multiple DAPs might become the issue?)
>
> Regards
>
> Olivier
------------------------------------------------------------------------------
Dive into the World of Parallel Programming! The Go Parallel Website,
sponsored by Intel and developed in partnership with Slashdot Media, is your
hub for all things parallel software development, from weekly thought
leadership blogs to news, videos, case studies, tutorials and more. Take a
look and join the conversation now. http://goparallel.sourceforge.net
_______________________________________________
OpenOCD-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openocd-devel