Christopher Head
02df0abb54
Cortex-M: fix stale DHCSR cache values
...
In cortex_m_assert_reset, in two locations, DHCSR is written directly
using mem_ap_write_u32. This means that the cached version,
target_to_cm(target)->dcb_dhcsr, is not updated when these writes are
performed, so subsequent writes to DHCSR that use
cortex_m_write_debug_halt_mask will change those bits back to their old
values which, unless modified in that particular invocation, come from
the cache. This causes an actual, observable bug on an STM32F7 in which
running “reset run” immediately after “program” can in some cases result
in execution proceeding with C_MASKINTS set (it is cleared on line 1021
but is then set immediately afterward in cortex_m_clear_halt), causing
failure of the application. Replace these mem_ap_write_u32 calls with
cortex_m_write_debug_halt_mask calls to do the same jobs.
Change-Id: Id35ca7f6057c2df2ba9cd67c53a73b50816d0b71
Signed-off-by: Christopher Head <chead@zaber.com >
Reviewed-on: http://openocd.zylin.com/4239
Tested-by: jenkins
Reviewed-by: Tomas Vanek <vanekt@fbl.cz >
2017-10-27 11:47:16 +01:00
Tim Newsome
1acb128290
Remove unused variables.
...
Change-Id: I678d0a65c22792895375dc6916381f81af8f83e4
2017-10-25 13:37:56 -07:00
Tim Newsome
23bd6d08c9
Remove more unused functionality.
...
Change-Id: I43283b9556c959f891a587fb39bdd1ab9206e8af
2017-10-24 15:11:33 -07:00
Tim Newsome
dbecbfee99
Add a fence after memory writes.
...
Change-Id: I5137479b685f735aa573cec5d40170016c40f597
2017-10-24 12:15:25 -07:00
Tim Newsome
59a0340261
Remove more unused code.
...
Change-Id: I962660f58d948f85df6e073065e15e5d8f4a02b6
2017-10-24 11:38:39 -07:00
Tim Newsome
8432b7cf3d
Remove more unused code.
...
Change-Id: Id91237c163d86e8f4d039503ca33b4ad7571ecd1
2017-10-24 11:34:48 -07:00
Tim Newsome
3ba6d46fc2
Remove unused functionality.
...
Change-Id: Ic70cebd62bbd04f7ae5566504fbb279a11de57f0
2017-10-23 14:45:58 -07:00
Tim Newsome
5425c871c9
Properly fix memory read when encountering busy.
...
Change-Id: I377054495e860076edc2f38d1cc0f11c23f98d3b
2017-10-23 14:13:46 -07:00
Freddie Chopin
079d78f7de
Fix GCC7 warnings about string truncation
...
GCC7 with -Wall warns about possible string truncation with
snprint()-type functions with "directive output may be truncated writing
1 byte into a region of size between 0 and 9
[-Werror=format-truncation=]" + "note: ‘snprintf’ output between 5 and
14 bytes into a destination of size 12" (or similar). Fix this by
increasing sizes of buffers.
See https://gcc.gnu.org/gcc-7/changes.html
Change-Id: Ib848f2a56dd658783534158947ae1be7c0e99d45
Signed-off-by: Freddie Chopin <freddie.chopin@gmail.com >
Reviewed-on: http://openocd.zylin.com/4175
Reviewed-by: Andreas Fritiofson <andreas.fritiofson@gmail.com >
Tested-by: jenkins
Reviewed-by: Andreas Bolsch <hyphen0break@gmail.com >
2017-10-23 10:54:24 +01:00
Freddie Chopin
9364b0dba4
Fix GCC7 warnings about switch-case fallthroughs
...
GCC7 with -Wextra warns about switch-case blocks which fallthrough with
"this statement may fall through [-Werror=implicit-fallthrough=]". This
can be fixed by adding "special" comments: "/* fallthrough */".
See https://gcc.gnu.org/gcc-7/changes.html
Change-Id: Iba0be791dbdd86984489b2d9a0592bb59828da1e
Signed-off-by: Freddie Chopin <freddie.chopin@gmail.com >
Reviewed-on: http://openocd.zylin.com/4174
Tested-by: jenkins
2017-10-23 10:54:16 +01:00
Andreas Fritiofson
ef49b34b2a
arm: semihosting: set command line arguments
...
Add "arm semihosting_cmdline [argv0 argv1 ...]" for setting the
command line arguments for the debuggee.
[andreas.fritiofson@gmail.com ]: Dynamic allocation, empty default
Change-Id: I831ddd161d602f251940e29608a154e9590fdee1
Signed-off-by: Christian Groessler <chris@groessler.org >
Signed-off-by: Andreas Fritiofson <andreas.fritiofson@gmail.com >
Reviewed-on: http://openocd.zylin.com/3106
Tested-by: jenkins
2017-10-22 23:06:09 +01:00
Tim Newsome
a3a137062d
Pay attention to impebreak.
...
This required updating debug_defines.h, which caused a few other small
cleanups as well.
Change-Id: I3c2cb418d7eff3093d7664c5563b2af5e8b530eb
2017-10-18 14:21:23 -07:00
Tim Newsome
85bfab36ad
Remove unused functionality.
...
Change-Id: I0c1464e2e6aa12d0cb1025ed0a7c1c483e7403b7
2017-10-18 12:47:07 -07:00
Tim Newsome
5d3f5c35d2
Still restore registers if an access failed.
...
Change-Id: I11571f0926f69a34f95b4929f633fdecd3a4e810
2017-10-18 12:32:41 -07:00
Tim Newsome
7edd9b1786
Fix FPR access.
...
Change-Id: I1379de87904f1cf40b45d1a5490249e3ba90d7d0
2017-10-18 11:47:15 -07:00
Tim Newsome
1662508911
Differentiate "target not halted" messages.
...
Change-Id: I8728fa007289d7af5c6791142e76eb5777c83ca4
Signed-off-by: Tim Newsome <tim@sifive.com >
Reviewed-on: http://openocd.zylin.com/4244
Tested-by: jenkins
Reviewed-by: Liviu Ionescu <ilg@livius.net >
Reviewed-by: Andreas Fritiofson <andreas.fritiofson@gmail.com >
2017-10-18 08:38:18 +01:00
Tim Newsome
1356be121e
Document struct reg fields.
...
Change-Id: I286316079e2e4d4f09427a4ffbecadb48c5dc9d9
Signed-off-by: Tim Newsome <tim@sifive.com >
Reviewed-on: http://openocd.zylin.com/4250
Tested-by: jenkins
Reviewed-by: Liviu Ionescu <ilg@livius.net >
Reviewed-by: Andreas Fritiofson <andreas.fritiofson@gmail.com >
2017-10-18 08:35:42 +01:00
Tim Newsome
a0623b2fa8
Don't crash when encountering RV64.
...
Change-Id: Ie915ce830c3499919e4918ad443a5e225cf8c4d9
2017-10-17 11:58:51 -07:00
Tim Newsome
65be0776d8
Memory read/write works if the core can keep up.
...
Change-Id: Ieca50ece266fbc9d2ff16a5cc2e6b4b926ad5e6f
2017-10-17 11:52:07 -07:00
Tim Newsome
fbe2980eb7
MemTest64 passes.
...
Change-Id: I75996b71c3f31025c89ef596a08e01d191405336
2017-10-17 11:15:51 -07:00
Tim Newsome
d94b38279a
Memtest{16,32} pass.
...
Change-Id: I15c2a4fd2bb9a7b30762d07f3b3a74d2f477746b
2017-10-16 21:08:59 -07:00
Tim Newsome
7ec7bc32fe
At least some memory writes work.
...
Change-Id: I6fcf261341f10ec34df01bb844744439d02471a8
2017-10-13 12:50:02 -07:00
Tim Newsome
e7bb815e87
Register read/write might be working.
...
Change-Id: I6c51d6157dde56d8cd666b4d30ec7bbc7a4bef9f
2017-10-12 14:38:52 -07:00
Tim Newsome
94e8250713
WIP; doesn't work.
...
Change-Id: Ia407e82ccbd2044ad61e0845d285dd5765154476
2017-10-12 11:45:52 -07:00
Tim Newsome
77802af655
Remove duplicate progbuf size variable.
...
Change-Id: I662ff84d13ecfc7faae51406a4df57a3643116f0
2017-10-10 16:27:51 -07:00
Tim Newsome
24658db50e
Fix compile warnings.
...
Partly fixes #124 .
Change-Id: I3a7fd65c643e40b142709806cb9fb4cc62bb955f
2017-10-04 16:02:30 -07:00
Tim Newsome
abe7eba25a
Merge pull request #118 from riscv/priv
...
Fix priv access
2017-10-04 12:52:21 -07:00
Tim Newsome
a3c26250bf
Merge pull request #116 from riscv/multigdb
...
Fix trigger code to work with multi-gdb mode instead of RTOS mode
2017-10-03 11:53:58 -07:00
Fabio Utzig
e8b6aaa8e5
Add missing break
...
Change-Id: Ie1de679fe6ab5ace05fc3e156c71f34b296b3d3b
Signed-off-by: Fabio Utzig <utzig@apache.org >
Reviewed-on: http://openocd.zylin.com/4200
Tested-by: jenkins
Reviewed-by: Andreas Färber <afaerber@suse.de >
Reviewed-by: Spencer Oliver <spen@spen-soft.co.uk >
Reviewed-by: Esben Haabendal <esbenhaabendal@gmail.com >
2017-10-03 11:19:58 +01:00
Karl Palsson
e78b33e3ca
telnet_server: drop unused options
...
They're never used, so just drop them.
Change-Id: Ie137deed3e7258f9d6af7e0cb508e73df0f53ee0
Signed-off-by: Karl Palsson <karlp@tweak.net.au >
Reviewed-on: http://openocd.zylin.com/4131
Tested-by: jenkins
Reviewed-by: Spencer Oliver <spen@spen-soft.co.uk >
2017-10-03 11:16:36 +01:00
Liviu Ionescu
f9f303923e
target/riscv/asm.h: use tab for indentation
2017-10-03 00:36:22 +03:00
Liviu Ionescu
f5a69e547f
target/riscv/program.c: fix clang warning
...
- I'm not sure I understand the logic behind the original statement,
but on macOS it fails to compile.
2017-10-03 00:23:14 +03:00
Liviu Ionescu
728a617bd4
target/riscv: Silence -Werror=return-type
...
- clang compains about the functions not returning a value
2017-10-03 00:17:57 +03:00
Tim Newsome
12bb3a4fd4
Merge pull request #119 from gnu-mcu-eclipse/riscv-upd
...
Update to master (Aug 10, 2017)
2017-10-02 11:56:19 -07:00
Liviu Ionescu
7dc04d7d0a
Merge commit '7719e9618e753ac41a46a2488dfba549ac578891' into riscv-upd
2017-10-01 01:57:46 +03:00
Tim Newsome
e64bb8c44a
Fix priv access on 0.13.
2017-09-30 14:15:37 -07:00
Tim Newsome
6795270a8e
Make priv readable in 0.11.
2017-09-30 13:31:57 -07:00
Tim Newsome
1083352576
Share register numbers between 0.11 and 0.13.
2017-09-30 13:13:03 -07:00
Tim Newsome
51f73a6769
Fix triggers for multi-gdb mode.
2017-09-26 15:40:49 -07:00
Tim Newsome
744894e965
Better debug messages.
2017-09-26 15:40:41 -07:00
Tim Newsome
f0195868d3
Fall back on ndmreset if hartreset is unsupported.
2017-09-21 14:53:12 -07:00
Tim Newsome
fe36097ff8
Fix reset for multicore.
2017-09-21 12:42:40 -07:00
Tim Newsome
848fe0ffcf
Cleaning up single-hart reset.
2017-09-19 17:41:52 -07:00
Tim Newsome
4e701669b7
Merge pull request #113 from riscv/macos_build
...
Add clang build
2017-09-19 14:11:10 -07:00
Tim Newsome
60354cbea2
clang fix, don't allow unaligned uint64_t pointers
2017-09-18 14:56:46 -07:00
Tim Newsome
ed9a04bde9
Remove unnecessary abs().
2017-09-18 14:35:47 -07:00
Tim Newsome
0abd94b50c
Make constants unsigned for clang.
2017-09-18 14:23:59 -07:00
Tim Newsome
604dfa0dcc
Try to fix some clang warnings.
2017-09-18 14:03:33 -07:00
Tim Newsome
157a67a98a
Be more clear in multi-core systems without -rtos
...
Don't print out there's a hart with XLEN of 0.
2017-09-18 11:29:14 -07:00
Tim Newsome
ce20be3d78
Add support for F extension.
2017-09-14 16:23:47 -07:00