diff options
author | Denis 'GNUtoo' Carikli <GNUtoo@no-log.org> | 2012-06-22 15:56:37 +0200 |
---|---|---|
committer | Stefan Reinauer <stefan.reinauer@coreboot.org> | 2012-06-23 07:50:07 +0200 |
commit | e4cece0d6f3bfa7254600e6fd4b5245733a02d44 (patch) | |
tree | 12151bc7cdddf1ba79f2f1e3b5f1d2f5fd257228 | |
parent | bf00abf2adb4d91c190ab20925533879eaab9453 (diff) | |
download | coreboot-e4cece0d6f3bfa7254600e6fd4b5245733a02d44.tar.xz |
Add an option for Waiting for gdb connection if the gdb stub configuration is chosen.
Here's a quick demonstration on how to use it(tested on M4A785T-M).
(gdb) file ./build/cbfs/fallback/coreboot_ram.debug
Reading symbols from [...]/build/cbfs/fallback/coreboot_ram.debug...done.
(gdb) set remotebaud 115200
(gdb) target remote /dev/ttyUSB0
Remote debugging using /dev/ttyUSB0
_text () at src/arch/x86/lib/c_start.S:85
85 call hardwaremain
Change-Id: Ia49cbecc41deb061433bc39f5b81715da49edc98
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@no-log.org>
Reviewed-on: http://review.coreboot.org/1134
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
-rw-r--r-- | src/Kconfig | 7 | ||||
-rw-r--r-- | src/arch/x86/lib/c_start.S | 5 |
2 files changed, 11 insertions, 1 deletions
diff --git a/src/Kconfig b/src/Kconfig index 717146d4d9..3453614d1f 100644 --- a/src/Kconfig +++ b/src/Kconfig @@ -779,6 +779,13 @@ config GDB_STUB If enabled, you will be able to set breakpoints for gdb debugging. See src/arch/x86/lib/c_start.S for details. +config GDB_WAIT + bool "Wait for a GDB connection" + default n + depends on GDB_STUB + help + If enabled, coreboot will wait for a GDB connection. + config DEBUG_CBFS bool "Output verbose CBFS debug messages" default n diff --git a/src/arch/x86/lib/c_start.S b/src/arch/x86/lib/c_start.S index 005ac33ee9..fd9dce78c5 100644 --- a/src/arch/x86/lib/c_start.S +++ b/src/arch/x86/lib/c_start.S @@ -78,6 +78,9 @@ _start: /* Restore the stack location */ movl %ebp, %esp +#if CONFIG_GDB_WAIT == 1 + call gdb_stub_breakpoint +#endif /* The boot_complete flag has already been pushed */ call hardwaremain /* NOTREACHED */ @@ -228,7 +231,7 @@ int_hand: iret -#if CONFIG_GDB_STUB == 1 +#if CONFIG_GDB_WAIT == 1 .globl gdb_stub_breakpoint gdb_stub_breakpoint: |