Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1313 commits
Select commit Hold shift + click to select a range
77f9da7
flash/nor/kinetis: fix assertion during flash write
tom-van Jan 17, 2025
0b97973
vdebug: Fix socket comparison warning on Windows
MarekVCodasip Jan 13, 2025
778d2dc
helper/options: drop redundant argument checks
en-sc Jan 17, 2025
345473f
helper/options: handle errors in `-l`
en-sc Dec 17, 2024
ac18b8c
configure: make more robust the check for elf 64
borneoa Nov 17, 2024
8038e2f
configure: allow --enable-malloc-logging only with glibc
borneoa Nov 17, 2024
fceccde
helper/log: Fix build using _DEBUG_FREE_SPACE_
borneoa Feb 20, 2024
77c904f
Deprecate jimtcl Git submodule
zapb-0 Jul 2, 2024
a510d51
bootstrap: Do not set up Git submodules by default
zapb-0 Jun 26, 2024
ce38758
rtos: chibios: replace malloc+sprintf with alloc_printf
paulfertser Nov 26, 2024
eb6f274
flash/nor: add DesignWare SPI controller driver
Sep 18, 2024
7f2db80
rtos/hwthread: Use LOG_TARGET_xxx()
zapb-0 Dec 7, 2024
7dd8759
drivers/linuxspidev: fix minor memory leak
tom-van Feb 3, 2025
8227746
drivers/linuxspidev: fix use of uninitialized speed variable
tom-van Feb 3, 2025
d09f53a
driver/linuxspidev: Clear queue on allocation
Jan 30, 2025
73e9b78
github/workflow: build jimtcl from sources
sobuch Feb 11, 2025
6e39af3
rtt: drop useless typedefs
borneoa Jan 10, 2025
3e4512d
openocd: drop useless typedef
borneoa Jan 10, 2025
4140fa2
drivers: rshim: drop useless typedef
borneoa Jan 10, 2025
e325b48
target: esp_algorithm: drop useless typedefs
borneoa Jan 10, 2025
b023c4c
nor: lpc2000: drop useless typedef lpc2000_variant
borneoa Jan 10, 2025
ff5fb8f
target: etm: drop useless typedefs
borneoa Jan 10, 2025
c50b541
target: trace: drop useless typedef trace_status_t
borneoa Jan 10, 2025
894a39e
target_request: drop useless typedef target_req_cmd_t
borneoa Jan 10, 2025
8a5c331
jtag: remote_bitbang: drop useless typedef flush_bool_t
borneoa Jan 10, 2025
54d07de
jtag: bitbang: drop useless typedef bb_value_t
borneoa Jan 10, 2025
0d19325
jtag: openjtag: drop useless typedef openjtag_tap_state_t
borneoa Jan 10, 2025
4895a55
jtag: drop useless typedef tap_state_t
borneoa Jan 10, 2025
9ccd626
checkpatch: enable check for new typedefs
borneoa Jan 10, 2025
9bb0a45
target/arc: add RTT commands
Dec 9, 2024
44e782d
target/arc: allow reading memory while target runs
danieldegrasse Jan 17, 2025
a71f2b7
README: report dependency from libjim
borneoa Jan 25, 2025
4deb76f
options.c: option --help should yield exit code 0
Jan 25, 2025
5e4ad24
configure.ac: show vdebug in the config summary
Jan 25, 2025
dcf02f4
Makefile.am: DISTCHECK_CONFIGURE_FLAGS -> AM_DISTCHECK_CONFIGURE_FLAGS
Jan 25, 2025
71f92c9
target/cortex_m: call adapter_deassert_reset() only if srst is config…
tom-van Jan 28, 2025
ed4e584
jtag/core: fix segfault when adapter driver has no reset method
tom-van Feb 3, 2025
1f3f635
build: drop space after 'angie' folder name
borneoa Feb 6, 2025
5835067
target/adi_v5_swd: drop unused `swd_driver` in `swd_queue_dp_write()`
en-sc Feb 12, 2025
0d7d178
flash/nor/rsl10: drop unused `rsl10_info` in `rsl10_protect_check()`
en-sc Feb 12, 2025
f63b41b
drivers/linuxspidev: fix compilation on Linux older than 3.15
tom-van Feb 15, 2025
297844c
target: Use 'bool' data type in target_{step,resume}
zapb-0 Oct 10, 2024
9470853
jep106: update to revision JEP106BL Feb 2025
borneoa Feb 19, 2025
91c11ea
rtos: Use lower case filenames
zapb-0 Jun 12, 2024
e142584
target: algorithm: change reg_name to const in init_reg_param()
borneoa Feb 26, 2025
c986b4d
tcl/target: add Bouffalo Lab BL602 and BL702L chip series support
gamelaster Nov 23, 2024
accbeae
gdb_server: fix invalid free
jimmeta Feb 21, 2025
d126cdb
drivers/cmsis_dap: fix misleading error selecting not compiled backend
tom-van Feb 17, 2025
a168c63
configure: better differentiate CMSIS-DAP versions
tom-van Feb 18, 2025
7837f50
target: fix wrap-around detection for read_memory/write_memory
aap-sc Nov 8, 2024
953ad9e
rtt: Raise error if control block was not found
zapb-0 Feb 13, 2025
7ec11e5
rtos/rtos: handle OOM in `rtos_thread_packet()`
en-sc Feb 14, 2025
b6b5edf
rtos/linux: handle OOM in `linux_gdb_thread_packet()`
en-sc Feb 14, 2025
8a6f89c
flash/nor: Add basic support for TI's MSPM0L/G family
nmenon Sep 28, 2023
c81cb4a
tcl/target: Add support for TI MSPM0
nmenon Sep 28, 2023
b7ad702
tcl/board: Add MSPM0 Launchpad support
nmenon Sep 28, 2023
b2016dc
target/target: fix RTOS thread awareness support
dgoehring-ampere Mar 5, 2025
f5dd564
target/armv8: fix 128-bit register writes
dgoehring-ampere Mar 6, 2025
5300242
tcl/target/ti_k3: Add AM62L SoC
nmenon Mar 3, 2025
a8555b0
tcl/board: Add TI am62levm config
nmenon Mar 3, 2025
a2c3c79
tcl/target/ti_k3: Add support for system reset using powerAP
shivinti Feb 19, 2025
9e5ffed
tcl/target/ti_k3: Add support for AM263P
shivinti Feb 19, 2025
c002284
tcl/board: Add TI AM263P launchpad config
shivinti Feb 21, 2025
da7e369
tcl/target/ti_k3: Add support for AM261
shivinti Feb 19, 2025
80b1c9a
tcl/board: Add TI AM261 launchpad config
shivinti Feb 21, 2025
d892a4d
target/arm_adiv5: print DAP name if not found
zapb-0 Dec 4, 2024
16c6497
rtos/linux: fix name overwrite in `linux_thread_extra_info()`
en-sc Feb 14, 2025
fdd0c2b
configure.ac: show the JTAG DPI and VPI adapters in the config summary
Feb 16, 2025
a2d4b9b
bcm2835gpio.c: change adapter init order
Nov 3, 2024
e12cedd
helper/log: mark `fmt` argument of `alloc_vprintf()` as format string
en-sc Feb 14, 2025
e4a51b3
doc: drop mention of not implemented SPI transport
borneoa Dec 23, 2024
6beb628
adapter: drop command 'adapter transports'
borneoa Dec 22, 2024
4275280
adapter: simplify command 'adapter list'
borneoa Nov 30, 2024
bb4c7e3
tcl/ngultra: Use newly created armv8r target
Jan 18, 2024
72ff2e2
target/armv8: regularly send keep_alive packet.
Jan 18, 2024
6d13942
helper: command: return correct error on command 'echo'
borneoa Nov 23, 2024
864e134
target: read_memory: drop command name from error messages
borneoa Nov 23, 2024
f55ec6d
target: rewrite command 'write_memory' as COMMAND_HANDLER
borneoa Dec 2, 2023
50c1a15
command: factorize jim_command_mode()
borneoa Dec 2, 2023
98e34fd
flash/stm32l4x: support STM32U5F/U5Gx devices
ahmed-haoues Mar 12, 2025
5773ff9
target/armv8: Handle instruction cache invalidate
Jan 18, 2024
a86fdfc
target: drop last instances of 'target->cmd_name'
borneoa Mar 16, 2025
a9fa339
tcl/target: Add Renesas R-Car Gen4 R8A779G0 V4H and R8A779H0 V4M targets
marex Aug 22, 2024
f885a8d
target/aarch64: Cleanup on exit
Jan 18, 2024
fe3aa0a
target: rewrite command 'get_reg' as COMMAND_HANDLER
borneoa Dec 2, 2023
169d463
tcl/target/nordic/nrf54l: minor corrections
tom-van Feb 11, 2025
04124c7
target: fix memory leak in handle_target_write_memory()
borneoa Mar 29, 2025
c023534
target: use list for target events
borneoa Mar 23, 2025
160f7b3
target: remove events that are set to empty string
borneoa Mar 23, 2025
9eb2426
configure.ac: show the Remote Bitbang driver in the config summary
Mar 23, 2025
e45d66f
configure.ac: show the rshim adapter in the config summary
Mar 22, 2025
6834f02
Makefile.am: Use SOURCE_DATE_EPOCH environment variable
sofianehamam Mar 28, 2025
339763e
command: rewrite command 'command mode' as COMMAND_HANDLER
borneoa Dec 2, 2023
16c5c1b
command: rewrite command 'capture' as COMMAND_HANDLER
borneoa Dec 2, 2023
cfed1f7
list: silent scan-build false positive
borneoa Apr 5, 2025
a1ecf0a
target: don't free working areas during 'configure -chain-position'
borneoa Apr 5, 2025
4a616ca
target: rewrite command 'invoke-event' as COMMAND_HANDLER
borneoa Dec 2, 2023
29e4a36
target: rewrite command 'target create' as COMMAND_HANDLER
borneoa Dec 2, 2023
1d9b34b
target: rewrite commands 'configure' and 'cget' as COMMAND_HANDLER
borneoa Dec 2, 2023
61890e3
target: rewrite function target_configure() as COMMAND_HELPER
borneoa Dec 3, 2023
9a09d38
target: drop unused parameter to target_create()
borneoa Apr 6, 2025
797dc7a
flash/stm32l4x: support STM32C05/09x devices
ahmed-haoues Mar 25, 2025
498e559
tcl/target: Add RCPU support for Spacemit K1
pigmoral Mar 26, 2025
2aa0592
flash: stellaris: fix deprecated command
borneoa Apr 6, 2025
ea775d4
flash/nor/rp2040: add RP2350 support
kilograham Nov 3, 2023
1ed49ad
flash/nor/rp2040: Add RISC-V ROM algorithm batch call support
Wren6991 Jul 14, 2021
eb4a634
flash/nor/rp2040: RP2350 A1 changes
kilograham Mar 24, 2024
2e8e1a3
flash/nor/rp2040: Fix up ROM table lookup for RP2350 A2
Wren6991 Jun 28, 2024
ca966d3
flash/nor/rp2040: Avoid ROM call timeout on long erases by splitting …
Wren6991 Jul 25, 2024
8f92e52
flash/nor/rp2040: Fix incorrect erase bounds calculation
Wren6991 Aug 6, 2024
ba03d13
flash/nor/rp2040: allow flash size override from cfg
tom-van Aug 6, 2024
15d9207
flash/nor/rp2040: allow arbitrary ROM API call from Tcl
tom-van Jul 17, 2024
2e49c99
flash/nor/rp2040: flash bank target switching for RP2350
tom-van Aug 10, 2024
69ee445
tcl/target/rp2350: universal config for any combination of CM/RV cores
tom-van Aug 11, 2024
22dfd0e
tcl/target/rp2350: workarounds for ROM API issues
tom-van Aug 13, 2024
2e1a763
flash/nor/rp2040: detect flash size including SFDP
tom-van Aug 14, 2024
20d1d44
flash/nor/rp2040: add missing TARGET_HALTED checks
tom-van Aug 14, 2024
26729aa
flash/nor/rp2040: improve flash write buffer size computation
tom-van Aug 14, 2024
c914cfc
flash/nor/rp2040: refactor finalizing calls and use them after erase
tom-van Aug 14, 2024
63f94bb
flash/nor/rp2040: refactoring: change rp2040 to rp2xxx
tom-van Aug 14, 2024
9fce121
doc: document changes in rp2xxx flash driver
tom-van Aug 14, 2024
d29c1c6
flash/nor/rp2xxx: minor code improvements
tom-van Aug 14, 2024
a960887
flash/nor/rp2xxx: drop couple of Java-like const
tom-van Aug 16, 2024
f039fe7
flash/nor/rp2xxx: fix endianness error
tom-van Aug 16, 2024
376d11c
tcl/target/rp2040: add flash size override and reset init event
tom-van Aug 17, 2024
5bb7dbc
flash/nor/rp2xxx: fix flash operation after halt in RISC-V bootsel
Wren6991 Dec 13, 2024
bf66d95
flash/nor/rp2xxx: fix LOG_xxx messages
tom-van Mar 21, 2025
4d4c45c
flash/nor/rp2xxx: define macro BOOTROM_MAGIC_MASK
tom-van Mar 21, 2025
cbd7987
target: stm8: drop include file stm8.h
borneoa Apr 19, 2025
c3fae34
adapter: replace 'interface' with 'adapter driver'
borneoa Mar 16, 2025
da50873
adapter: list supported transports beside adapter name
borneoa Jan 4, 2025
9a5de74
transport: deprecate auto-selection of transport
borneoa Jan 4, 2025
236208a
transport: use a bitmask for the transport
borneoa Dec 22, 2024
a500b2c
adapter: use bitmask for driver's transports
borneoa Feb 12, 2025
8485eb1
transport: validate the transport id's from the driver
borneoa Dec 22, 2024
9643379
transport: use helper/list.h for the list of transports
borneoa Dec 31, 2024
98c09dc
transport: store the transports sorted by alphabetic name order
borneoa Dec 31, 2024
c1c4d48
transport: allow transport name jtag/swd for hla and dapdirect
borneoa Feb 12, 2025
ad53fe6
tcl: convert transport select to jtag and swd
borneoa Dec 23, 2024
420f637
stlink: simplify the use of deprecated HLA transport
borneoa Dec 23, 2024
d8a2f6d
configure.ac: show the Amontec JTAG-Accelerator driver in the config …
Apr 11, 2025
fdd76c8
configure.ac: show the sysfsgpio adapter in the config summary
Apr 10, 2025
639b743
tcl/board: Add config for NUCLEO-U083RC
zapb-0 Dec 13, 2024
98c95df
doc/openocd: Fix Tcl spelling
zapb-0 Apr 14, 2025
efafdd3
doc/manual: Fix Tcl spelling
zapb-0 Apr 14, 2025
d567824
doc/manual: Add guideline for configuration files
zapb-0 Aug 17, 2024
afbd01b
github/workflow: fix warnings for github actions
sobuch Feb 13, 2025
b3b790e
rtos: rework rtos_create()
borneoa Dec 3, 2023
3a879c7
rtos: rework rtos_types[] and rtos_try_next()
borneoa Apr 18, 2025
3954896
rtos/FreeRTOS: fix next pointer member offset in FreeRTOS lists
ivq Apr 8, 2025
d71ed4f
target: armv7a: drop command 'cache_config l2x'
borneoa Apr 19, 2025
06c8277
target: armv7a: use proper type for struct armv7a_cache_common::outer…
borneoa Apr 19, 2025
00f5b7e
transport: fix incorrect statement
borneoa May 1, 2025
618e447
tcl: board: convert transport select dapdirect_swd to swd
borneoa May 1, 2025
d6c54b9
target: cget command fix for result output
dgoehring-ampere May 1, 2025
8c09cc2
target: improve error messaging in `target create`
en-sc Apr 28, 2025
f42540c
target: improve error reporting for `-event` option
en-sc Apr 28, 2025
1b2a2b8
testing/tcl_commands: test `target create`, `cget`, `configure`
en-sc Nov 29, 2024
744955e
LICENSES: add dual/CC-BY-4.0
borneoa May 5, 2025
e30828a
helper: add bitfield helper macros
709924470 Mar 4, 2024
6a3abda
helper: add base64 encoding/decoding helpers from FreeBSD
berolinux May 5, 2025
532db01
cortex-a: fix single-step on infinite loop
borneoa May 2, 2025
1aef2ae
target: arm_dap: rewrite commands 'dap create' as COMMAND_HANDLER
borneoa Dec 4, 2023
c8979f6
target: arm_cti: rewrite commands 'cti create' as COMMAND_HANDLER
borneoa Dec 5, 2023
1143852
target/arm_tpiu_swo: rewrite command 'swo create' as COMMAND_HANDLER
borneoa May 26, 2024
e9c7851
target/arm_tpiu_swo: rewrite commands 'configure' and 'cget' as COMMA…
borneoa Dec 16, 2023
6cec672
command: drop Jim Command handler, at last
borneoa Dec 16, 2023
3c7725e
checkpatch: drop camelcase symbols not used anymore
borneoa Dec 22, 2022
4c1e210
target: drop struct target_type::target_jim_commands()
borneoa May 10, 2025
8b47a07
target: arm_cti: fix return values in handle_cti_dump()
borneoa May 10, 2025
9b30e05
flash, target: avoid logging of numeric target state
tom-van May 18, 2025
bde7e86
server/gdb_server: do not discard Ctrl-C if _DEBUG_GDB_IO_
tom-van May 18, 2025
4fe57a0
server: gdb_server: use a macro for CTRL-C value
borneoa May 19, 2025
92287c1
target: Add TARGET_UNAVAILABLE state
timsifive Oct 27, 2022
98ed83e
rtos/hwthread: Hide unavailable targets from thread list.
timsifive Sep 7, 2022
7f57e72
gdb_server: Operate on available targets.
timsifive Oct 27, 2022
6975baa
doc: list target unavailable state
tom-van May 19, 2025
330b06b
rtos/hwthread: Nicer debug message in hwthread_update_threads()
timsifive May 18, 2025
c545b9c
rtos/hwthread: use printf format specifier
tom-van May 19, 2025
25b99ae
cortex_a: Use endianness for soft breakpoints
LucienDufour May 15, 2025
b1c1dd1
tcl/target: Add support for TMS570LS1xxx
LucienDufour May 20, 2025
b06212b
startup.tcl: extend the file search in vendor folders
borneoa May 21, 2025
152becc
tcl/target: Move nordic configuration files
zapb-0 May 12, 2025
83c1546
tcl/target: Deprecate old nordic configuration files
zapb-0 May 12, 2025
fbdb86a
tcl/board: Use moved nordic target files
zapb-0 May 12, 2025
1ee7c09
tcl/board: Move nordic configuration files
zapb-0 May 12, 2025
84f6c56
tcl/board: Deprecate old nordic configuration files
zapb-0 May 12, 2025
895dfb5
tcl/board: Deprecate nordic_nrf52_ftx232.cfg
zapb-0 Apr 21, 2025
20d7e83
tcl/board: Add config for nRF9160 development kit
zapb-0 Apr 24, 2025
3fbca95
tcl/board: Add config for nRF5340 development kit
zapb-0 Apr 24, 2025
40e6c98
helper: configuration: check for empty search dirs
borneoa May 22, 2025
125d4f1
flash/nor/spi: add puya p25q flash devices
m-byte Apr 25, 2024
db8db90
tcl/target/stm32f4x: Enable the trace port clock
zapb-0 Apr 1, 2025
2065bac
jtag/vdebug: implement a polling mechanism
jacekmw8 Apr 24, 2024
6a40fe6
flash/nor/tcl: Add 'read_memory' command
zapb-0 Nov 23, 2024
7abc0f9
doc: bcm2835gpio: remove broken link and clarify usage
P33M May 21, 2025
e23a6bb
tcl: fix broken Raspberry Pi website links
P33M May 21, 2025
d9b614a
target/armv8: Handle modeswitch for aarch32 secure EL3
kyangk Oct 12, 2020
1347b69
configure: fix for missing include files on Linux
borneoa May 28, 2025
4732e40
configure: hide build issue of amt_jtagaccel driver by disabling it
borneoa Jun 3, 2025
990ee1b
flash/bluenrg-x: Add blueNRG alternate names
ahmed-haoues May 27, 2025
0644a88
flash/bluenrg-x: Support STM32WB09 AKA BlueNRG-LPF device
ahmed-haoues May 27, 2025
37a0f01
flash/bluenrg-x: fix programming for devices with 512k flash
ahmed-haoues May 29, 2025
2da332f
flash/bluenrg-x: support programming without loader
ahmed-haoues May 27, 2025
e171959
target: add support for Allwinner H618 SoC
electricworry May 29, 2025
fa83ca0
tcl/board/orange_pi_zero_3: Add Orange Pi Zero 3 board
electricworry May 29, 2025
c77ba0c
HACKING: describe keeping the 'Change-Id' on new patch versions
borneoa Jun 3, 2025
88aec4b
adapter: Deprecate Amontec JTAG Accelerator driver
zapb-0 Oct 9, 2024
207ecaa
adapter: Deprecate Gateworks GW16012 driver
zapb-0 Oct 9, 2024
8046f2a
cmsis-dap: Fix freeing pending transfers on close
kryvosheiaivan May 28, 2025
9a7c85b
configure.ac: remove usage of obsolete Automake macro AM_PROG_CC_C_O
Jun 8, 2025
1ebff3a
jep106: update to revision JEP106BM Jun 2025
borneoa Jun 14, 2025
33ebae9
target/armv8: update MPIDR decoding
dgoehring-ampere Jan 18, 2022
9e4b6b9
configure.ac: show 5 ARM adapters in config summary
Jun 8, 2025
82dc399
target/cortex_m: fix debug reason after reset halt
tom-van Jun 14, 2025
1afa120
doc: Fix 'add_script_search_dir' usage
zapb-0 Jun 15, 2025
06a0b84
doc: Fix 'find' and 'ocd_find' usage
zapb-0 Jun 16, 2025
99d642c
doc: Fix 'add_help_text' and 'add_usage_text' usage
zapb-0 Jun 19, 2025
1040bde
jlink: add nickname support
vit9696 May 18, 2025
a9015ba
tcl/target/lsch3_common: Remove 'mem2array'
zapb-0 Jun 19, 2025
a64ae96
flash: nor: sort the drivers by alphabetic order
borneoa Jun 14, 2025
fa0fa25
flash: nor: use array size to constraint the loop
borneoa Jun 14, 2025
6ab6d34
flash: nand: sort the drivers by alphabetic order
borneoa Jun 14, 2025
5d192a9
flash: nand: use array size to constraint the loop
borneoa Jun 14, 2025
c92cf66
jtag: interfaces: sort the drivers by alphabetic order
borneoa Jun 14, 2025
cd74941
target: sort the targets by alphabetic order
borneoa Jun 14, 2025
df52529
target: use array size to constraint the loop
borneoa Jun 14, 2025
9b660bb
rtos: sort the rtos by alphabetic order
borneoa Jun 14, 2025
46aa9c0
openocd.c: 'init' should fail if GDB service cannot be created
JanMatCodasip Jun 17, 2025
4d56d58
target/arm_dpm: Use LOG_TARGET_xxx()
zapb-0 Jun 20, 2025
d008a02
target/armv7a: Hide multiprocessing support message
zapb-0 Jun 20, 2025
7fa8a5c
target/armv7a: Use LOG_TARGET_xxx()
zapb-0 Jun 20, 2025
56c24b9
target/armv4: Use LOG_TARGET_xxx()
zapb-0 Jun 20, 2025
c6f1863
target/armv4: Use command_print() instead of LOG_ERROR()
zapb-0 Jun 20, 2025
8194fc4
tcl/board: Add config for TMS570LS12x development kit
zapb-0 Jun 20, 2025
6631419
jtag: drivers: xlnx-pcie-xvc: use correct TMS polarity during pathmove
henrikbrixandersen Dec 11, 2024
13b74c3
helper: types: fix proper return type in example of ARRAY_SIZE()
borneoa Jun 21, 2025
ce3bf66
configure.ac: rename M4 macro 'adapter' to prevent accidental conflicts
Jun 21, 2025
f547e55
target/cortex_m: introduce security manipulation routines
tom-van Jun 17, 2025
c4fb64e
flash/nor/rp2xxx: save security state over target algo
tom-van Jun 18, 2025
f9077f3
flash/nor/rp2xxx: save ACCESSCTRL over ROM API calls
tom-van Jun 18, 2025
e8dca11
doc: fix bp usage
tom-van May 26, 2025
ff27412
gdb_server: Improve info message.
timsifive Nov 10, 2022
7f1f183
jtag/drivers: dmem: fix build on Linux 32 bits
borneoa Jun 22, 2025
04d5172
configure.ac: show the dmem adapter in the config summary
Jun 21, 2025
537d907
tcl/board/ti_*_swd_native.cfg: Add explicit transport info
nmenon Jun 23, 2025
f71b0bb
jtag/swd: extend ap_delay_hint parameter comments
tom-van Jan 3, 2025
09a54c3
target/arm_adi: add URLs of latest ARM ADI spec
tom-van Jan 3, 2025
e374e3b
Merge remote-tracking branch 'openocd-org/master' into merge-openocd
dbrand666 Jul 3, 2025
4ab7211
Fix compiler warning
dbrand666 Jul 3, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
28 changes: 28 additions & 0 deletions .checkpatch.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# SPDX-License-Identifier: GPL-2.0-or-later

--max-line-length=120
--tab-size=4
--show-types
--strict

--typedefsfile tools/scripts/typedefs.txt

--ignore AVOID_EXTERNS
--ignore BLOCK_COMMENT_STYLE
--ignore COMPLEX_MACRO
--ignore CONST_STRUCT
--ignore ENOSYS
--ignore FILE_PATH_CHANGES
--ignore GERRIT_CHANGE_ID
--ignore LINE_SPACING
--ignore LOGICAL_CONTINUATIONS
--ignore MACRO_WITH_FLOW_CONTROL
--ignore PARENTHESIS_ALIGNMENT
--ignore PREFER_DEFINED_ATTRIBUTE_MACRO
--ignore PREFER_FALLTHROUGH
--ignore PREFER_KERNEL_TYPES
--ignore SPLIT_STRING
--ignore SSCANF_TO_KSTRTO
--ignore SWITCH_CASE_INDENT_LEVEL
--ignore TRACING_LOGGING
--ignore VOLATILE
21 changes: 17 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@
*.la
*.in

# generated source files
src/jtag/minidriver_imp.h
src/jtag/jtag_minidriver.h
# coverage files (gcov)
*.gcda
*.gcno

# OpenULINK driver files generated by SDCC
src/jtag/drivers/OpenULINK/*.rel
Expand Down Expand Up @@ -68,7 +68,6 @@ doxygen
doxygen.log
Doxyfile
libtool
*-libtool
Makefile
!contrib/loaders/**/Makefile
stamp-h1
Expand All @@ -85,6 +84,9 @@ patches
.cproject
.settings

# VSCode stuff
.vscode

# Emacs temp files
*~

Expand All @@ -101,3 +103,14 @@ tags
GPATH
GRTAGS
GTAGS

# checkpatch script files
.checkpatch-camelcase.*

# clangd (e.g. for advanced code completion and linting) generates cache files
# into .cache
.cache

# A compile_commands.json can be generated using bear and will help tools such
# as clangd to locate header files and use correct $CFLAGS
compile_commands.json
3 changes: 0 additions & 3 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
[submodule "tools/git2cl"]
path = tools/git2cl
url = https://git.savannah.nongnu.org/git/git2cl.git
[submodule "jimtcl"]
path = jimtcl
url = https://github.com/msteveb/jimtcl.git
Expand Down
2 changes: 1 addition & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# SPDX-License-Identifier: GPL-2.0+
# SPDX-License-Identifier: GPL-2.0-or-later
# Copyright Marek Vasut <marex@denx.de>

# OpenOCD on Travis CI - https://travis-ci.org/
Expand Down
14 changes: 2 additions & 12 deletions AUTHORS
Original file line number Diff line number Diff line change
@@ -1,12 +1,2 @@
Dominic Rath <Dominic.Rath@gmx.de>
Magnus Lundin <lundin@mlu.mine.nu>
Michael Fischer <fischermi@t-online.de>
Spencer Oliver <spen@spen-soft.co.uk>
Carsten Schlote <schlote@vahanus.net>
Øyvind Harboe <oyvind.harboe@zylin.com>
Duane Ellis <openocd@duaneellis.com>
Michael Schwingen <michael@schwingen.org>
Rick Altherr <kc8apf@users.berlios.de>
David Brownell <dbrownell@users.sourceforge.net>
Vincint Palatin <vpalatin@users.berlios.de>
Zachary T Welch <zw@superlucidity.net>
Please check the source code files and/or Git history for a list of all authors
and contributors.
117 changes: 111 additions & 6 deletions HACKING
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,37 @@ patch:
src/openocd -s ../tcl -f /path/to/openocd.cfg
@endcode

- Sparse Static Analyzer

Using this tool allows identifying some bug in C code.
In the future, OpenOCD would use the sparse attribute 'bitwise' to
detect incorrect endianness assignments.

Example usage:
@code
mkdir build-sparse; cd build-sparse
../configure CC=cgcc CFLAGS="-Wsparse-all -Wno-declaration-after-statement \
-Wno-unknown-attribute -Wno-transparent-union -Wno-tautological-compare \
-Wno-vla -Wno-flexible-array-array -D__FLT_EVAL_METHOD__=0"
make
@endcode

- Code coverage analysis

By inspecting the code coverage, you can identify potential gaps in your testing
and use that information to improve your test scenarios.

Example usage:
@code
mkdir build-gcov; cd build-gcov
../configure --enable-gcov [...]
make
# ... Now execute your test scenarios to collect OpenOCD code coverage ...
lcov --capture --directory ./src --output-file openocd-coverage.info
genhtml openocd-coverage.info --output-directory coverage_report
# ... Open coverage_report/index.html in a web browser ...
@endcode

Please consider performing these additional checks where appropriate
(especially Clang Static Analyzer for big portions of new code) and
mention the results (e.g. "Valgrind-clean, no new Clang analyzer
Expand Down Expand Up @@ -138,11 +169,9 @@ git remote add review https://USERNAME:PASSWORD@review.openocd.org/p/openocd.git
Gerrit server, even if you plan to use several local branches for different
topics. It is possible because @c for/master is not a traditional Git
branch.
-# You will need to install this hook, we will look into a better solution:
@code
scp -p -P 29418 USERNAME@review.openocd.org:hooks/commit-msg .git/hooks/
@endcode
Or with http only:
-# You will need to install this hook to automatically add the
field "Change-Id:" in the commit message, as required by Gerrit.
We will look into a better solution:
@code
wget https://review.openocd.org/tools/hooks/commit-msg
mv commit-msg .git/hooks
Expand Down Expand Up @@ -171,6 +200,8 @@ while(!done) {
@endcode
\note use "git add ." before commit to add new files.

\note check @ref checkpatch for hint about checkpatch script

Commit message template, notice the short first line.
The field '<c>specify touched area</c>'
should identify the main part or subsystem the patch touches.
Expand All @@ -179,7 +210,9 @@ specify touched area: short comment
<blank line>
Longer comments over several lines, explaining (where applicable) the
reason for the patch and the general idea the solution is based on,
any major design decisions, etc...
any major design decisions, etc. Limit each comment line's length to 75
characters; since 75 it's too short for a URL, you can put the URL in a
separate line preceded by 'Link: '.
<blank line>
Signed-off-by: ...
@endcode
Expand Down Expand Up @@ -215,6 +248,12 @@ doc: fix typos
@code
git pull --rebase origin master
@endcode

-# When you create a new version of an old patch, check that the new patch
keeps the same 'Change-Id:' field of the old patch.
This allows the Gerrit server to recognize the patch as a new version of
the older one and keeps track of the history and the review process.

-# Send the patches to the Gerrit server for review:
@code
git push review
Expand All @@ -227,6 +266,72 @@ git push review

Further reading: http://www.coreboot.org/Git

@section checkpatch About checkpatch script

OpenOCD source code includes the script checkpatch to let developers to
verify their patches before submitting them for review (see @ref gerrit).

Every patch for OpenOCD project that is submitted for review on Gerrit
is tested by Jenkins. Jenkins will run the checkpatch script to analyze
each patch.
If the script highlights either errors or warnings, Gerrit will add the
score "-1" to the patch and maintainers will probably ignore the patch,
waiting for the developer to send a fixed version.

The script checkpatch verifies the SPDX tag for new files against a very
short list of license tags.
If the license of your contribution is not listed there, but compatible
with OpenOCD license, please alert the maintainers or add the missing
license in the first patch of your patch series.

The script checkpatch has been originally developed for the Linux kernel
source code, thus includes specific tests and checks related to Linux
coding style and to Linux code structure. While the script has been
adapted for OpenOCD specificities, it still includes some Linux related
test. It is then possible that it triggers sometimes some <em>false
positive</em>!

If you think that the error identified by checkpatch is a false
positive, please report it to the openocd-devel mailing list or prepare
a patch for fixing checkpatch and send it to Gerrit for review.

\attention The procedure below is allowed only for <em>exceptional
cases</em>. Do not use it to submit normal patches.

There are <em>exceptional cases</em> in which you need to skip some of
the tests from checkpatch in order to pass the approval from Gerrit.

For example, a patch that modify one line inside a big comment block
will not show the beginning or the end of the comment block. This can
prevent checkpatch to detect the comment block. Checkpatch can wrongly
consider the modified comment line as a code line, triggering a set of
false errors.

Only for <em>exceptional cases</em>, it is allowed to submit patches
to Gerrit with the special field 'Checkpatch-ignore:' in the commit
message. This field will cause checkpatch to ignore the error types
listed in the field, only for the patch itself.
For errors in the commit message, the special field has to be put in
the commit message before the line that produces the error.
The special field must be added <em>before</em> the 'Signed-off-by:'
line, otherwise it is ignored.
To ignore multiple errors, either add multiple lines with the special
field or add multiple error types, separated by space or commas, in a
single line.
The error type is printed by checkpatch on failure.
For example the names of Windows APIs mix lower and upper case chars,
in violation of OpenOCD coding style, triggering a 'CAMELCASE' error:
@code
CHECK:CAMELCASE: Avoid CamelCase: <WSAGetLastError>
#96105: FILE: src/helper/log.c:505:
+ error_code = WSAGetLastError();
@endcode
Adding in the commit message of the patch the line:
@code
Checkpatch-ignore: CAMELCASE
@endcode
will force checkpatch to ignore the CAMELCASE error.

@section timeline When can I expect my contribution to be committed?

The code review is intended to take as long as a week or two to allow
Expand Down
Loading