@@ -505,6 +505,12 @@ Texas Instruments has an adapter called @b{ICDI}.
505505It is not to be confused with the FTDI based adapters that were originally fitted to their
506506evaluation boards. This is the adapter fitted to the Stellaris LaunchPad.
507507
508+ @section USB Nuvoton Nu-Link
509+ Nuvoton has an adapter called @b {Nu-Link }.
510+ It is available either as stand-alone dongle and embedded on development boards.
511+ It supports SWD, serial port bridge and mass storage for firmware update.
512+ Both Nu-Link v1 and v2 are supported.
513+
508514@section USB CMSIS-DAP based
509515ARM has released a interface standard called CMSIS-DAP that simplifies connecting
510516debuggers to ARM Cortex based targets @url {http://www.keil.com/support/man/docs/dapdebug/dapdebug_introduction.htm }.
@@ -609,6 +615,12 @@ produced, PDF schematics are easily found and it is easy to make.
609615@* A JTAG driver acting as a client for the JTAG VPI server interface.
610616@* Link: @url {http://github.com/fjullien/jtag_vpi }
611617
618+ @item @b {jtag_dpi }
619+ @* A JTAG driver acting as a client for the SystemVerilog Direct Programming
620+ Interface (DPI) for JTAG devices. DPI allows OpenOCD to connect to the JTAG
621+ interface of a hardware model written in SystemVerilog, for example, on an
622+ emulation model of target hardware.
623+
612624@item @b {xlnx_pcie_xvc }
613625@* A JTAG driver exposing Xilinx Virtual Cable over PCI Express to OpenOCD as JTAG/SWD interface.
614626
@@ -712,8 +724,11 @@ Configuration files and scripts are searched for in
712724@item the current directory,
713725@item any search dir specified on the command line using the @option {-s } option,
714726@item any search dir specified using the @command {add_script_search_dir } command,
715- @item @file {$HOME/.openocd } (not on Windows),
716727@item a directory in the @env {OPENOCD_SCRIPTS } environment variable (if set),
728+ @item @file {%APPDATA%/OpenOCD } (only on Windows),
729+ @item @file {$HOME/Library/Preferences/org.openocd } (only on Darwin),
730+ @item @file {$XDG_CONFIG_HOME/openocd } (@env {$XDG_CONFIG_HOME } defaults to @file {$HOME/.config }),
731+ @item @file {$HOME/.openocd },
717732@item the site wide script library @file {$pkgdatadir/site } and
718733@item the OpenOCD-supplied script library @file {$pkgdatadir/scripts }.
719734@end enumerate
@@ -3064,7 +3079,8 @@ This is a driver that supports multiple High Level Adapters.
30643079This type of adapter does not expose some of the lower level api's
30653080that OpenOCD would normally use to access the target.
30663081
3067- Currently supported adapters include the STMicroelectronics ST-LINK and TI ICDI.
3082+ Currently supported adapters include the STMicroelectronics ST-LINK, TI ICDI
3083+ and Nuvoton Nu-Link.
30683084ST-LINK firmware version >= V2.J21.S4 recommended due to issues with earlier
30693085versions of firmware where serial number is reset after first use. Suggest
30703086using ST firmware update utility to upgrade ST-LINK firmware even if current
@@ -3078,7 +3094,7 @@ Currently Not Supported.
30783094Specifies the serial number of the adapter.
30793095@end deffn
30803096
3081- @deffn {Config Command} {hla_layout} ( @option {stlink }| @option {icdi })
3097+ @deffn {Config Command} {hla_layout} ( @option {stlink }| @option {icdi }| @option { nulink } )
30823098Specifies the adapter layout to use.
30833099@end deffn
30843100
@@ -3228,6 +3244,22 @@ This value is only used with the standard variant.
32283244@end deffn
32293245@end deffn
32303246
3247+
3248+ @deffn {Interface Driver} {jtag_dpi}
3249+ SystemVerilog Direct Programming Interface (DPI) compatible driver for
3250+ JTAG devices in emulation. The driver acts as a client for the SystemVerilog
3251+ DPI server interface.
3252+
3253+ @deffn {Config Command} {jtag_dpi_set_port} port
3254+ Specifies the TCP/IP port number of the SystemVerilog DPI server interface.
3255+ @end deffn
3256+
3257+ @deffn {Config Command} {jtag_dpi_set_address} address
3258+ Specifies the TCP/IP address of the SystemVerilog DPI server interface.
3259+ @end deffn
3260+ @end deffn
3261+
3262+
32313263@section Transport Configuration
32323264@cindex Transport
32333265As noted earlier, depending on the version of OpenOCD you use,
@@ -9342,6 +9374,12 @@ target code relies on. In a configuration file, the command would typically be c
93429374However, normally it is not necessary to use the command at all.
93439375@end deffn
93449376
9377+ @deffn Command {aarch64 disassemble} address [count]
9378+ @cindex disassemble
9379+ Disassembles @var {count } instructions starting at @var {address }.
9380+ If @var {count } is not specified, a single instruction is disassembled.
9381+ @end deffn
9382+
93459383@deffn Command {aarch64 smp} [on|off]
93469384Display, enable or disable SMP handling mode. The state of SMP handling influences the way targets in an SMP group
93479385are handled by the run control. With SMP handling enabled, issuing halt or resume to one core will trigger
@@ -9676,8 +9714,31 @@ This is used to access 64-bit floating point registers on 32-bit targets.
96769714@end deffn
96779715
96789716@deffn Command {riscv set_prefer_sba} on|off
9679- When on, prefer to use System Bus Access to access memory. When off, prefer to
9680- use the Program Buffer to access memory.
9717+ When on, prefer to use System Bus Access to access memory. When off (default),
9718+ prefer to use the Program Buffer to access memory.
9719+ @end deffn
9720+
9721+ @deffn Command {riscv set_enable_virtual} on|off
9722+ When on, memory accesses are performed on physical or virtual memory depending
9723+ on the current system configuration. When off (default), all memory accessses are performed
9724+ on physical memory.
9725+ @end deffn
9726+
9727+ @deffn Command {riscv set_enable_virt2phys} on|off
9728+ When on (default), memory accesses are performed on physical or virtual memory
9729+ depending on the current satp configuration. When off, all memory accessses are
9730+ performed on physical memory.
9731+ @end deffn
9732+
9733+ @deffn Command {riscv resume_order} normal|reversed
9734+ Some software assumes all harts are executing nearly continuously. Such
9735+ software may be sensitive to the order that harts are resumed in. On harts
9736+ that don't support hasel, this option allows the user to choose the order the
9737+ harts are resumed in. If you are using this option, it's probably masking a
9738+ race condition problem in your code.
9739+
9740+ Normal order is from lowest hart index to highest. This is the default
9741+ behavior. Reversed order is from highest hart index to lowest.
96819742@end deffn
96829743
96839744@deffn Command {riscv set_ir} ( @option {idcode }| @option {dtmcs }| @option {dmi }) [value]
@@ -9691,6 +9752,26 @@ When utilizing version 0.11 of the RISC-V Debug Specification,
96919752and DBUS registers, respectively.
96929753@end deffn
96939754
9755+ @deffn Command {riscv use_bscan_tunnel} value
9756+ Enable or disable use of a BSCAN tunnel to reach DM. Supply the width of
9757+ the DM transport TAP's instruction register to enable. Supply a value of 0 to disable.
9758+ @end deffn
9759+
9760+ @deffn Command {riscv set_ebreakm} on|off
9761+ Control dcsr.ebreakm. When on (default), M-mode ebreak instructions trap to
9762+ OpenOCD. When off, they generate a breakpoint exception handled internally.
9763+ @end deffn
9764+
9765+ @deffn Command {riscv set_ebreaks} on|off
9766+ Control dcsr.ebreaks. When on (default), S-mode ebreak instructions trap to
9767+ OpenOCD. When off, they generate a breakpoint exception handled internally.
9768+ @end deffn
9769+
9770+ @deffn Command {riscv set_ebreaku} on|off
9771+ Control dcsr.ebreaku. When on (default), U-mode ebreak instructions trap to
9772+ OpenOCD. When off, they generate a breakpoint exception handled internally.
9773+ @end deffn
9774+
96949775@subsection RISC-V Authentication Commands
96959776
96969777The following commands can be used to authenticate to a RISC-V system. Eg. a
@@ -9714,7 +9795,7 @@ Write the 32-bit value to authdata.
97149795The following commands allow direct access to the Debug Module Interface, which
97159796can be used to interact with custom debug features.
97169797
9717- @deffn Command {riscv dmi_read}
9798+ @deffn Command {riscv dmi_read} address
97189799Perform a 32-bit DMI read at address, returning the value.
97199800@end deffn
97209801
0 commit comments