adi_v5_dapdirect: add support for adapter drivers that provide DAP API
authorAntonio Borneo <borneo.antonio@gmail.com>
Wed, 23 Jan 2019 09:52:28 +0000 (10:52 +0100)
committerTomas Vanek <vanekt@fbl.cz>
Tue, 14 Jan 2020 11:40:25 +0000 (11:40 +0000)
commita61ec3c1d73dc0c9915662f7b9383b6f786a5fea
tree7063e960dae4db6977b77620a50aa1c6cc1ae389
parentc6b6fdeb2c4c644addf7b2e1d8c5f0b800d359b7
adi_v5_dapdirect: add support for adapter drivers that provide DAP API

Some high level adapters, like STLINK-V3 and new firmware for
ST-Link/V2, provide API to directly access the DAP registers
hiding the details of the physical transport JTAG or SWD.
OpenOCD has already the intermediate API in struct dap_ops that
are suitable for such adapters, but are not exposed to the
adapter drivers.

Add in struct adapter_driver two independent struct dap_ops for
the cases of physical JTAG and SWD transport.
Add new transport names "dapdirect_jtag" and "dapdirect_swd", to
be used by the drivers that provide one or both DAP API.
Add the necessarily glue in target/adi_v5_dapdirect.c

Change-Id: I2bb8e3a80fba750f2c218d877cfa5888428e3c28
Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com>
Reviewed-on: http://openocd.zylin.com/4903
Tested-by: jenkins
Reviewed-by: Tomas Vanek <vanekt@fbl.cz>
src/jtag/core.c
src/jtag/interface.h
src/target/Makefile.am
src/target/adi_v5_dapdirect.c [new file with mode: 0644]
src/target/arm_dap.c
src/transport/transport.h