aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2024-08-25binarybuffer: str_to_buf(): rename buf_len as buf_bitsizeAntonio Borneo2-9/+9
The name 'buf_len' is misleading, as it usually refers to the byte length of a buffer. Here we use it for the length in bits. Rename it as 'buf_bitsize'. While there, fix checkpatch error by changing the index type to 'unsigned int'. Change-Id: I78855ed79a346d996d9c0100d94d14c64a36b228 Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com> Reviewed-on: https://review.openocd.org/c/openocd/+/8395 Tested-by: jenkins Reviewed-by: Jan Matyas <jan.matyas@codasip.com>
2024-08-25binarybuffer: simplify the prototype of str_to_buf()Antonio Borneo3-33/+20
With 'radix' always zero and '_detected_radix' always NULL, drop the two parameters and simplify str_to_buf(). While there: - drop some redundant assert(), - drop the re-check for the base prefix, - simplify str_strip_number_prefix_if_present() and rename it, as the prefix MUST be present, - fix a minor typo, - update the doxygen description of str_to_buf(). Change-Id: I1abdc8ec0587b23881953d3094101c04d5bb1c58 Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com> Reviewed-on: https://review.openocd.org/c/openocd/+/8394 Tested-by: jenkins Reviewed-by: Jan Matyas <jan.matyas@codasip.com>
2024-08-25helper: command: drop radix parameter from command_parse_str_to_buf()Antonio Borneo4-31/+9
Commit 53b94fad58ab ("binarybuffer: Fix str_to_buf() parsing function") introduces the helper command_parse_str_to_buf() to parse as number a string on TCL command-line. The parameter 'radix' can specify the base (decimal, octal, hexadecimal, or auto-detected). TCL is supposed to use decimal numbers by default, while octal and hexadecimal numbers must be prefixed respectively with '0' and '0x' (or '0X'). This would require the helper to always run auto-detection of the base, thus always set the 'radix' parameter to zero. This makes the parameter useless. Keeping the 'radix' parameter can open the door to future abuse of TCL syntax, E.g. a command can require an octal value without the mandatory TCL '0' prefix; the octal value cannot be the result of TCL expression. To prevent any future abuse of the 'radix' parameter, drop it. Change-Id: I88855bd83b4e08e8fdcf86a2fa5ef3269dd4ad57 Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com> Reviewed-on: https://review.openocd.org/c/openocd/+/8393 Tested-by: jenkins Reviewed-by: Jan Matyas <jan.matyas@codasip.com>
2024-08-25doc: document command 'ms'Antonio Borneo1-0/+6
Add documentation for the commands 'ms'. Change-Id: I247adce1c586c4f4cd36d044d48298c370635e67 Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com> Reviewed-on: https://review.openocd.org/c/openocd/+/8432 Tested-by: jenkins
2024-08-21target/riscv: re-apply patch do stop avoid warnings when a non-existent CSR ↵Parshintsev Anatoly1-1/+1
is hidden the original fix was introduced in b201a5db23 but was lost in 3883b03a
2024-08-20fixed compilation failure due to signed/unsigned comparison warningParshintsev Anatoly1-1/+1
the warning is caused by b3d4c97b in upstream OpenOCD
2024-08-20Merge up to ac63cd00d792331914db0b6edd3f427c30eec3fa from upstreamParshintsev Anatoly105-756/+1361
- src/jtag/drivers/ftdi.c: ``` ++<<<<<<< HEAD + int i; + static const uint8_t zero; ++======= + uint8_t zero = 0; ++>>>>>>> ocd_upstream ``` Decided to choose the latter. - src/target/riscv/riscv-013.c: ``` ++<<<<<<< HEAD + int abs_chain_position; + /* The base address to access this DM on DMI */ + uint32_t base; ++======= + unsigned int abs_chain_position; + ++>>>>>>> ocd_upstream ``` Decided to choose the latter (abs_chain_position is unsigned now) - src/target/riscv/batch.c: ``` ++<<<<<<< HEAD ++======= + void dump_field(int idle, const struct scan_field *field) + { ... + } ++>>>>>>> ocd_upstream ``` dump_field function is not needed anymore Signed-off-by: Parshintsev Anatoly <anatoly.parshintsev@syntacore.com>
2024-08-16Merge pull request #1114 from en-sc/en-sc/dup-dtmcontrolEvgeniy Naydanov4-81/+19
target/riscv: remove duplicate `dtmcontrol_scan()`
2024-08-16Merge pull request #1101 from en-sc/en-sc/ref-reg-examineEvgeniy Naydanov7-122/+239
target/riscv: reg cache entry is initialized before access
2024-08-16tcl/interface/raspberrypi5-gpiod: fix string match pattern escapingTomas Vanek1-2/+1
Use correct TCL syntax and save string map operation. Change-Id: Ic2a522bd57cf6610b7df1d9cddd0fbdc2076ed62 Signed-off-by: Tomas Vanek <vanekt@fbl.cz> Reviewed-on: https://review.openocd.org/c/openocd/+/8426 Tested-by: jenkins Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
2024-08-15target/riscv: sys bus v1 fix for sizes greater than 4Parshintsev Anatoly1-4/+7
read_memory_bus_v1 incorrectly copied data to output buffer Signed-off-by: Parshintsev Anatoly <anatoly.parshintsev@syntacore.com>
2024-08-14target/riscv: restrict BSCAN-related commands to before-`init`Evgeniy Naydanov3-32/+36
Logically, BSCAN tunneling is used to establish a connection, therefore it should be set up before the communication starts (i.e. before `init`). Moreover, current implementation does not support changing `bscan_tunnel_ir_width` after `init`. This is evident by RISC-V handler of the `init` itself. Link: https://github.com/riscv-collab/riscv-openocd/blob/9a23c9e67978f77d9166102cefc7b537b714b561/src/target/riscv/riscv.c#L467-L481 Change-Id: I817c6a996f7f7171b2286e181daf1092bd358f69 Signed-off-by: Evgeniy Naydanov <evgeniy.naydanov@syntacore.com>
2024-08-14target/riscv: remove duplicate `dtmcontrol_scan()`Evgeniy Naydanov4-81/+19
Also avoid receiving data if the value is discarded on the call-site. Change-Id: Ied87b551536a00d9fad469b9843cccae1976e6b6 Signed-off-by: Evgeniy Naydanov <evgeniy.naydanov@syntacore.com>
2024-08-14target/riscv: reg cache entry is initialized before accessEvgeniy Naydanov7-122/+239
* Register file examination is separated. * Allow to access registers through cache as early as possible to re-use general register access interface and propely track state of the register. * Reduces the number of operations: S0 and S1 are saved/restored only when needed (targets without abstract CSR access). Change-Id: I2e205ae4e88733a5c792f8a35cf30325c68d96b2 Signed-off-by: Evgeniy Naydanov <evgeniy.naydanov@syntacore.com>
2024-08-08Merge pull request #1104 from TommyMurphyTM1234/fix-include-guardsEvgeniy Naydanov12-26/+35
Align include guards with OpenOCD coding guidelines
2024-08-06server/telnet: Always allow 'exit' commandMarc Schink1-1/+1
The telnet 'exit' command is only available in the execution phase of OpenOCD. Thus, a telnet session cannot be closed via 'exit' if OpenOCD is started with 'noinit'. Make the 'exit' command always available. Change-Id: I14447ecde63e579f1c523d606f048ad29cc84a35 Signed-off-by: Marc Schink <dev@zapb.de> Reviewed-on: https://review.openocd.org/c/openocd/+/8379 Reviewed-by: Tomas Vanek <vanekt@fbl.cz> Tested-by: jenkins
2024-08-02transport: Remove echo in transport selectionMarc Schink2-11/+7
Do not echo the selected transport to avoid stray and confusing messages in the output of OpenOCD. For example, the "swd" line here: Open On-Chip Debugger 0.12.0+dev-00559-ge02f6c1b9-dirty Licensed under GNU GPL v2 For bug reports, read http://openocd.org/doc/doxygen/bugs.html swd Info : Listening on port 6666 for tcl connections Info : Listening on port 4444 for telnet connections While at it, fix some small documentation style issues. Change-Id: Ie85426c441289bbaa35615dbb7b53f0b5c46cfc0 Signed-off-by: Marc Schink <dev@zapb.de> Reviewed-on: https://review.openocd.org/c/openocd/+/8217 Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com> Tested-by: jenkins
2024-08-02target/breakpoints: Fix 'orig_instr' outputMarc Schink1-1/+1
The 'orig_instr' information of software breakpoints is incorrect because buf_to_hex_str() expects the length of the buffer to be converted in bits and not bytes. Change-Id: I9a9ed383a8c25200d461b899749d5259ee4c6e3d Signed-off-by: Marc Schink <dev@zapb.de> Reviewed-on: https://review.openocd.org/c/openocd/+/8218 Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com> Tested-by: jenkins
2024-08-02doc: Add 'jlink targetpower' commandMarc Schink1-0/+5
Change-Id: I7e6c9e75f3c70675a3ea55fd5f0d7de1a35f2c4b Signed-off-by: Marc Schink <dev@zapb.de> Reviewed-on: https://review.openocd.org/c/openocd/+/8418 Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com> Tested-by: jenkins
2024-08-02adapter/jlink: Allow to determine the target power stateMarc Schink1-2/+16
Change-Id: I0b4f543e0ba0e48c43f78e32e4fa41d7dec9d7b8 Signed-off-by: Marc Schink <dev@zapb.de> Reviewed-on: https://review.openocd.org/c/openocd/+/8417 Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com> Tested-by: jenkins
2024-08-02adapter/jlink: Use COMMAND_PARSE_* instead of sscanf()Marc Schink1-52/+31
While at it, apply some coding style fixes. Change-Id: I77a6917a045af733ebe9211ca338952dbd49c89b Signed-off-by: Marc Schink <dev@zapb.de> Reviewed-on: https://review.openocd.org/c/openocd/+/8416 Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com> Tested-by: jenkins
2024-08-02jtag: Use 'unsigned int' data typeMarc Schink6-62/+60
This patch modifies as little code as possible in order to simplify the review. Data types that are affected by these changes will be addresses in following patches. While at it, apply coding style fixes if these are not too extensive. Change-Id: I364467b88f193f8387623a19e6994ef77899d117 Signed-off-by: Marc Schink <dev@zapb.de> Reviewed-on: https://review.openocd.org/c/openocd/+/8414 Tested-by: jenkins Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
2024-08-02jtag: Use 'unsigned int' for 'scan_field.num_bits'Marc Schink10-21/+20
This patch modifies as little code as possible in order to simplify the review. Data types that are affected by these changes will be addresses in following patches. While at it, apply coding style fixes if these are not too extensive. Change-Id: Idcbbbbbea2705512201eb326c3e6cef110dbc674 Signed-off-by: Marc Schink <dev@zapb.de> Reviewed-on: https://review.openocd.org/c/openocd/+/8413 Tested-by: jenkins Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
2024-08-02target/avrt: Remove unused parameter 'rti'Marc Schink1-12/+12
Change-Id: Ib6957b89190188f5c15fadc3d4036709f19a6cea Signed-off-by: Marc Schink <dev@zapb.de> Reviewed-on: https://review.openocd.org/c/openocd/+/8412 Tested-by: jenkins Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
2024-08-02jtag/commands: Use 'unsigned int' data typeMarc Schink31-239/+201
This patch modifies as little code as possible in order to simplify the review. Data types that are affected by these changes will be addresses in following patches. While at it, apply coding style fixes if these are not too extensive. Change-Id: Ie048b3d472f546fecb6733f17f9d0f17fda40187 Signed-off-by: Marc Schink <dev@zapb.de> Reviewed-on: https://review.openocd.org/c/openocd/+/8404 Tested-by: jenkins Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
2024-08-02jtag: Use 'unsigned int' for 'ir_length'Marc Schink5-12/+12
This patch modifies as little code as possible in order to simplify the review. Data types that are affected by these changes will be modified in following patches. Change-Id: I83921d70e017095d63547e0bc9fe61779191d9d0 Signed-off-by: Marc Schink <dev@zapb.de> Reviewed-on: https://review.openocd.org/c/openocd/+/8403 Tested-by: jenkins Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
2024-08-02jtag: Use 'unsigned int' for 'abs_chain_position'Marc Schink5-8/+8
Change-Id: I1ac0a6a86f820b051619aa132754a69b8f8e0ab9 Signed-off-by: Marc Schink <dev@zapb.de> Reviewed-on: https://review.openocd.org/c/openocd/+/8402 Tested-by: jenkins Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
2024-08-02jtag: Use bool data type for 'jtag_verify'Marc Schink1-1/+1
Change-Id: Iae46e45c7523252eee44224e6b9b3b1484aaeb35 Signed-off-by: Marc Schink <dev@zapb.de> Reviewed-on: https://review.openocd.org/c/openocd/+/8401 Tested-by: jenkins Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
2024-08-02uncrustify.cfg: add SPDX licenseAntonio Borneo1-0/+2
Add the SPDX tag line. Change-Id: I701580948a0cacdb7fe31d91ed730e848da9b0ba Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com> Reviewed-on: https://review.openocd.org/c/openocd/+/8411 Reviewed-by: zapb <dev@zapb.de> Tested-by: jenkins
2024-08-02doc: Makefile.am: add SPDX licenseAntonio Borneo1-0/+2
Add the SPDX tag line. Change-Id: Iffe73faaf20614f9e5237b7afba3c580dfa03a9e Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com> Reviewed-on: https://review.openocd.org/c/openocd/+/8410 Tested-by: jenkins
2024-08-02tcl: fix minor typos and repeated wordsAntonio Borneo5-6/+6
Detected with checkpatch. Change-Id: Id306928496cf70bbe7ff065bf726bc7dceadce26 Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com> Reviewed-on: https://review.openocd.org/c/openocd/+/8409 Tested-by: jenkins Reviewed-by: zapb <dev@zapb.de>
2024-08-02checkpatch: extend checks to TCL, Makefile.am and configure.ac filesAntonio Borneo1-0/+4
The script, originally written for Linux code, skips several tests on files whose name's extension is not in Perl list '(h|c|s|S|sh|dtsi|dts)$'. This causes such tests to not be executed on OpenOCD TCL files and on Makefile.am and configure.ac. Modify the script to include the OpenOCD files in the list. Change-Id: I17c96bf32ee40d9390e60996e176e4e927c00197 Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com> Reviewed-on: https://review.openocd.org/c/openocd/+/8408 Reviewed-by: Marek Kraus <gamelaster@outlook.com> Tested-by: jenkins
2024-08-02tcl/target: add initial Bouffalo Lab BL702 chip series supportMarek Kraus1-0/+60
Adds initial support for the BL702 series of chips, BL702, BL704 and BL706. No flash bank support yet. File name bl702.tcl was chosen over bl70x.tcl, because Bouffalo Lab uses bl702 to mark the whole series in many of their tools. The ndmreset bit in the RISC-V Debug Module isn't implemented correctly, so it doesn't trigger a system reset as it should. To solve this problem, the software reset is implemented in the reset-assert-pre hook, which uses best reset method I could find. What is not reset is the GLB core, which handles GPIOs, pinmux, etc. The reset mechanism has been extensively tested, and works correctly for both "reset run" and "reset halt", which the latter halts very early in the BootROM. Change-Id: I5ced6eb3902d1b9d9c1bba56f817ec5dc3493cb0 Signed-off-by: Marek Kraus <gamelaster@outlook.com> Reviewed-on: https://review.openocd.org/c/openocd/+/8407 Tested-by: jenkins Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
2024-08-02configure: Use pkg-config for jimtclMarc Schink3-0/+16
The jimtcl project supports pkg-config, use it for a simpler configuration of compiler and linker flags and to enforce the minimum required package version. Since the jimtcl pkg-config file is not available on all systems, use AC_CHECK_HEADER() as fallback. Change-Id: I6fdcc818a8fdd205a126b0a46356434dbe890226 Signed-off-by: Marc Schink <dev@zapb.de> Reviewed-on: https://review.openocd.org/c/openocd/+/8383 Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com> Tested-by: jenkins
2024-07-28flash/startup.tcl: Tidy flash program preverify documentationGrant Ramsay1-3/+3
Remove the hyphen from "pre-verify" in usage text. Add preverify to the help text and procedure comment Change-Id: I6d96e78ca84d99929300d461e435f5b4ce07b5db Signed-off-by: Grant Ramsay <grant.ramsay@hotmail.com> Reviewed-on: https://review.openocd.org/c/openocd/+/8376 Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com> Tested-by: jenkins
2024-07-28jep106: update to revision JEP106BJ.01 July 2024Antonio Borneo1-6/+31
Change-Id: Iebab3f6a3b1f6d82f955997fd4e691c55d01c767 Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com> Reviewed-on: https://review.openocd.org/c/openocd/+/8406 Tested-by: jenkins
2024-07-28doc: fix makeinfo warningAntonio Borneo1-1/+1
Build returns a makeinfo warning: openocd.texi:5201: warning: `.' or `,' must follow @xref, not f Add a dummy ',' after '@xref{..}' to silent the warning. Fixes: 44cfdef0a40d ("server/gdb: Restructure commands") Change-Id: Ic0bff8fc9b54942ebb72762816686ea7c7881345 Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com> Reviewed-on: https://review.openocd.org/c/openocd/+/8392 Tested-by: jenkins Reviewed-by: zapb <dev@zapb.de>
2024-07-28cortex_m: fix scan-build false positiveAntonio Borneo4-6/+7
Scan-build is unable to detect that 'target->dbg_msg_enabled' does not change across the function cortex_m_fast_read_all_regs(). It incorrectly assumes that it can be false at the first check (so 'dcrdr' get not assigned) and it is true later on (when 'dcrdr' get used). This triggers a false positive: src/target/cortex_m.c:338:12: warning: 3rd function call argument is an uninitialized value [core.CallAndMessage] retval = mem_ap_write_atomic_u32(armv7m->debug_ap, DCB_DCRDR, dcrdr); Use a local variable for 'target->dbg_msg_enabled' so scan-build can track it as not modified. While there, change the type of 'target->dbg_msg_enabled' to boolean as there is no reason to use uint32_t. Change-Id: Icaf1a1b2dea8bc55108182ea440708ab76396cd7 Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com> Reviewed-on: https://review.openocd.org/c/openocd/+/8391 Tested-by: jenkins Reviewed-by: Tomas Vanek <vanekt@fbl.cz>
2024-07-25flash/stm32l4x: support STM32U53/U54x devicesTarek BOCHKATI2-3/+31
STM32U53/U54x devices are similar to U57/U58x devices with 2 flash banks up to 256 KB each Change-Id: I774ef0df4dddac5f06bbfc2e6c3fc2e628d2249e Signed-off-by: FBOSTM <fedi.bouzazi@st.com> Signed-off-by: Tarek BOCHKATI <tarek.bouchkati@st.com> Reviewed-on: https://review.openocd.org/c/openocd/+/7515 Tested-by: jenkins Reviewed-by: Tomas Vanek <vanekt@fbl.cz>
2024-07-18Merge pull request #1100 from en-sc/en-sc/single-as-batchEvgeniy Naydanov5-272/+74
target/riscv: single DMI accesses via batch
2024-07-18flash/stm32l4x: support STM32U59/U5Ax devicesTarek BOCHKATI2-3/+27
STM32U59/U5Ax devices are similar to U57/U58x devices with 2 flash banks up to 2 MB each while at there update STM32U57x/U58x revisions Change-Id: I7e5c1700acf8c9fda34f660c9274bfd8bcb1381b Signed-off-by: Tarek BOCHKATI <tarek.bouchkati@gmail.com> Reviewed-on: https://review.openocd.org/c/openocd/+/6875 Tested-by: jenkins Reviewed-by: Tomas Vanek <vanekt@fbl.cz>
2024-07-16target/riscv: single DMI accesses via batchEvgeniy Naydanov5-272/+74
* Eliminates the use of VLA, which is prohibited by `doc/manual /style.txt`: Link: https://github.com/riscv-collab/riscv-openocd/blob/c6bb902629924eb66aae2a08c0ab8654261c9d71/doc/manual/style.txt#L164-L166 * Unifies DMI access interface. * Reduces code duplication. Change-Id: I2d7b0595f171e21062049ff61f76fb5a3c992d11 Signed-off-by: Evgeniy Naydanov <evgeniy.naydanov@syntacore.com>
2024-07-13rtos/hwthread: derive threadid from SMP indexEvgeniy Naydanov1-23/+30
As defined in `target/target.h`, `coreid` is the index of the target on the TAP, so, if an SMP group includes targets from multiple TAPs, it can not be used as the base for `threadid`. Change-Id: Ied7cfa42197aaf4908ef6628c6436f28d4856ebe Signed-off-by: Evgeniy Naydanov <evgeniy.naydanov@syntacore.com> Reviewed-on: https://review.openocd.org/c/openocd/+/7957 Tested-by: jenkins Reviewed-by: Mark Zhuang <mark.zhuang@spacemit.com> Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
2024-07-13tcl/board: Add am62p/am62a7/j722s native swd configurationNishanth Menon4-0/+77
Direct memory driver swd native configuration for am62a7, am62p and J722S SoCs. All three share common memory map for the debug address map, so there is a strong reuse. However, introduce board file specific to the board to allow users to directly get started. Change-Id: I5609925a2e9918fd4c91d9fd40fbee98de27fdbc Signed-off-by: Nishanth Menon <nm@ti.com> Reviewed-on: https://review.openocd.org/c/openocd/+/8283 Tested-by: jenkins Reviewed-by: Vaishnav M A <vaishnav@beagleboard.org> Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com> Reviewed-by: Oleksij Rempel <linux@rempel-privat.de>
2024-07-13tcl: Replace 'tcl_' prefix with 'tcl' command groupMarc Schink2-2/+2
Change-Id: Iee1e84a87d07172aa6b0adfb7b85fb465cefb979 Signed-off-by: Marc Schink <dev@zapb.de> Reviewed-on: https://review.openocd.org/c/openocd/+/8345 Tested-by: jenkins Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
2024-07-13server/tcl: Restructure commandsMarc Schink3-9/+38
Use a command group 'tcl' with subcommands instead of individual commands with 'tcl_' prefix. The old commands are still available to ensure backwards compatibility, but are marked as deprecated. Change-Id: I1efd8a0e2c1403833f8cb656510a54d5ab0b2740 Signed-off-by: Marc Schink <dev@zapb.de> Reviewed-on: https://review.openocd.org/c/openocd/+/8344 Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com> Tested-by: jenkins
2024-07-13tcl: Replace 'gdb_' prefix with 'gdb' command groupMarc Schink13-14/+14
Change-Id: I0490b4c112c1a922bf77a4b37df2a630a8f6cea1 Signed-off-by: Marc Schink <dev@zapb.de> Reviewed-on: https://review.openocd.org/c/openocd/+/8337 Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com> Tested-by: jenkins
2024-07-13server/gdb: Restructure commandsMarc Schink6-46/+109
Use a command group 'gdb' with subcommands instead of individual commands with 'gdb_' prefix. The old commands are still available to ensure backwards compatibility, but are marked as deprecated. Change-Id: I037dc58554e589d5710cf46924e0a00f863aa300 Signed-off-by: Marc Schink <dev@zapb.de> Reviewed-on: https://review.openocd.org/c/openocd/+/8336 Tested-by: jenkins Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
2024-07-13jtag/drivers/mpsse: Added FT4232HAJonathan Forrest3-0/+25
Added FT4232HA varianet of FTDI's FT4232H which has a different bcd. Also added default PID/VID for the FT4243HA to contrib/60-openocd.rules. And added default PID/VIDs for FTDI's HP ICs to contrib/60-openocd.rules as this wasn't done previously. BugLink: https://sourceforge.net/p/openocd/tickets/410/ Change-Id: Ia84b566aa004332d3f7815a3d22ac37eee4f522a Signed-off-by: Jonathan Forrest <jonyscathe@gmail.com> Reviewed-on: https://review.openocd.org/c/openocd/+/8225 Tested-by: jenkins Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
2024-07-13binarybuffer: Fix str_to_buf() parsing functionJan Matyas6-81/+216
The function str_to_buf() was too benevolent and did not perform sufficient error checking on the input string being parsed. Especially: - Invalid numbers were silently ignored. - Out-of-range numbers were silently truncated. The following commands that use str_to_buf() were affected: - reg (when writing a register value) - set_reg - jtag drscan This pull request fixes that by: - Rewriting str_to_buf() to add the missing checks. - Adding function command_parse_str_to_buf() which can be used in command handlers. It parses the input numbers and provides user-readable error messages in case of parsing errors. Examples: jtag drscan 10 huh10 - Old behavior: The string "huh10" is silently converted to 10 and the command is then executed. No warning error or warning is shown to the user. - New behavior: Error message is shown: "'huh10' is not a valid number" reg pc 0x123456789 Assuming the "pc" is 32 bits wide: - Old behavior: The register value is silently truncated to 0x23456789 and the command is performed. - New behavior: Error message is shown to the user: "Number 0x123456789 exceeds 32 bits" Change-Id: I079e19cd153aec853a3c2eb66953024b8542d0f4 Signed-off-by: Jan Matyas <jan.matyas@codasip.com> Reviewed-on: https://review.openocd.org/c/openocd/+/8315 Tested-by: jenkins Reviewed-by: Marek Vrbka <marek.vrbka@codasip.com> Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>