This commit add to GDBstup:

1. Multicore suupor
2. Stepping
3. Console output
4. Update example + readme
5. Jumps
This commit is contained in:
Dmitry
2021-06-07 22:54:09 +03:00
parent 3be8ed7c3b
commit a8c3fe56c8
22 changed files with 965 additions and 189 deletions

View File

@@ -1,5 +1,5 @@
/*
* SPDX-FileCopyrightText: 2021 Espressif Systems (Shanghai) CO LTD
* SPDX-FileCopyrightText: 2021-2022 Espressif Systems (Shanghai) CO LTD
*
* SPDX-License-Identifier: Apache-2.0
*/
@@ -68,7 +68,7 @@ void esp_startup_start_app_common(void)
esp_crosscore_int_init();
#ifdef CONFIG_ESP_SYSTEM_GDBSTUB_RUNTIME
#if CONFIG_ESP_SYSTEM_GDBSTUB_RUNTIME && !CONFIG_IDF_TARGET_ESP8684
esp_gdbstub_init();
#endif // CONFIG_ESP_SYSTEM_GDBSTUB_RUNTIME

View File

@@ -25,6 +25,8 @@ The default behaviour is to just exit the interrupt or call the panic handler on
_xt_debugexception:
#if (CONFIG_ESP32_ECO3_CACHE_LOCK_FIX && CONFIG_BTDM_CTRL_HLI)
s32i a0, sp, XT_STK_EXIT
#define XT_DEBUGCAUSE_DI (5)
getcoreid a0
#if (CONFIG_BTDM_CTRL_PINNED_TO_CORE == PRO_CPU_NUM)
@@ -48,7 +50,11 @@ _xt_debugexception:
wsr a0,EPC_1
rsr a0,(EXCSAVE + XCHAL_DEBUGLEVEL)
wsr a0,EXCSAVE_1
#if CONFIG_ESP_SYSTEM_GDBSTUB_RUNTIME
J _xt_panic_gdbstub /* For gdbstub we make jump */
#else
call0 _xt_panic /* does not return */
#endif // CONFIG_ESP_SYSTEM_GDBSTUB_RUNTIME
rfi XCHAL_DEBUGLEVEL
#if (CONFIG_ESP32_ECO3_CACHE_LOCK_FIX && CONFIG_BTDM_CTRL_HLI)

View File

@@ -443,7 +443,7 @@ Debug Exception.
.global xt_debugexception
_DebugExceptionVector:
wsr a0, EXCSAVE+XCHAL_DEBUGLEVEL /* preserve a0 */
call0 xt_debugexception /* load exception handler */
J xt_debugexception /* load exception handler */
.end literal_prefix