X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=blobdiff_plain;f=TODO;h=ebb6c9980832dd1d76a00d38c6d2e3b18e194dbd;hp=f50af3ec56c38e536554e987702499b56ebbb55c;hb=895d4a599585543155dd4a7559489cf126e02c4c;hpb=0c8ec7c826c60391034fe5f0ea90f8538ac94b38 diff --git a/TODO b/TODO index f50af3ec56..ebb6c99808 100644 --- a/TODO +++ b/TODO @@ -37,11 +37,33 @@ This section provides possible things to improve with OpenOCD's TCL support. - See src/jtag/core.c and src/jtag/tcl.c for an example. - allow some of these TCL command modules to be dynamically loadable? -@section thelistjtag JTAG - -This section list issues that need to be resolved in the JTAG layer. - -@subsection thelistjtagcore JTAG Core +@section thelistadapter Adapter + +This section list issues that need to be resolved in the Adapter layer. + +@subsection thelistadapterrework Code restructuring + +This section lists pending reworks to complete the restructure from the +old JTAG centric implementation to a generic Adapter layer. +This restructuring is very invasive and will prevent the merge of several +changes pending in gerrit. + +- rename folder src/jtag/ to src/adapter/ +- rename var "jtag" to "adapter" in src/jtag/core.c +- split content of src/adapter/ in the different protocols jtag.[ch], + swd.[ch], ... +- wrap the calls to adapter->transport_ops->api() with transport_api() + and reduce the visibility of global var "adapter" +- complete the migration of JTAG-only drivers to adapter->reset() +- try to remove JTAG_SLEEP also from JTAG mode? +- tap_set_state(TAP_RESET) is already done in src/jtag/core.c. No need + to replicate it in the drivers, apart in case the driver sets TRST + independently +- add .hla_ops to "adapter" +- HLA is a API level (.hla_ops). Transport should simply be {jtag,swd}, + not {hla_jtag,hla_swd}. + +@subsection thelistadapterjtagcore JTAG Core The following tasks have been suggested for cleaning up the JTAG layer: @@ -63,9 +85,9 @@ The following tasks have been suggested for adding new core JTAG support: - (ab)use bit-banging JTAG interfaces to emulate SPI/UART - allow SPI to program flash, MCUs, etc. -@subsection thelistjtaginterfaces JTAG Interfaces +@subsection thelistadapterinterfaces Interface drivers -There are some known bugs to fix in JTAG adapter drivers: +There are some known bugs to fix in Interface drivers: - For JTAG_STATEMOVE to TAP_RESET, all drivers must ignore the current recorded state. The tap_get_state() call won't necessarily return @@ -93,9 +115,6 @@ interface support: -# rewrite implementation to use non-blocking I/O - J-Link driver: - fix to work with long scan chains, such as R.Doss's svf test. -- FT2232 (libftdi): - - make performance comparable to alternatives (on Win32, D2XX is faster) - - make usability comparable to alternatives - Autodetect USB based adapters; this should be easy on Linux. If there's more than one, list the options; otherwise, just select that one. @@ -110,10 +129,6 @@ of a minidriver is required to capture all the jtag_add_xxx() fn's at a high enough level and repackage these cmd's as TCP/IP packets handled by the server. -@section thelistswd Serial Wire Debug - -- implement Serial Wire Debug interface - @section thelistbs Boundary Scan Support - add STAPL support? @@ -368,7 +383,6 @@ to complete: - committing to git - Review Users' Guide for documentation errors or omissions - "capture" and "ocd_find" commands - - "ocd_" prefix on various stuff - Update Developer's Manual (doxygen output) - Add documentation describing the architecture of each module - Provide more Technical Primers to bootstrap contributor knowledge @@ -377,4 +391,3 @@ to complete: /** @file This file contains the @ref thelist page. */ -