common: board_r: drop initr_kgdb wrapper

Add a return value to kgdb_init and use it directly in the post-relocation
init sequence, rather than using a wrapper stub. Also, move the "KGDB"
print message inside kgdb_init().

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
This commit is contained in:
Ovidiu Panait 2022-01-01 19:13:27 +02:00 committed by Tom Rini
parent 485c90c06b
commit 78fc0395c0
3 changed files with 16 additions and 13 deletions

View File

@ -498,15 +498,6 @@ static int initr_ethaddr(void)
} }
#endif /* CONFIG_CMD_NET */ #endif /* CONFIG_CMD_NET */
#ifdef CONFIG_CMD_KGDB
static int initr_kgdb(void)
{
puts("KGDB: ");
kgdb_init();
return 0;
}
#endif
#if defined(CONFIG_LED_STATUS) #if defined(CONFIG_LED_STATUS)
static int initr_status_led(void) static int initr_status_led(void)
{ {
@ -769,7 +760,7 @@ static init_fnc_t init_sequence_r[] = {
#endif #endif
INIT_FUNC_WATCHDOG_RESET INIT_FUNC_WATCHDOG_RESET
#ifdef CONFIG_CMD_KGDB #ifdef CONFIG_CMD_KGDB
initr_kgdb, kgdb_init,
#endif #endif
interrupt_init, interrupt_init,
#if defined(CONFIG_MICROBLAZE) || defined(CONFIG_M68K) #if defined(CONFIG_MICROBLAZE) || defined(CONFIG_M68K)

View File

@ -527,15 +527,18 @@ handle_exception (struct pt_regs *regs)
* kgdb_init must be called *after* the * kgdb_init must be called *after* the
* monitor is relocated into ram * monitor is relocated into ram
*/ */
void int kgdb_init(void)
kgdb_init(void)
{ {
puts("KGDB: ");
kgdb_serial_init(); kgdb_serial_init();
debugger_exception_handler = handle_exception; debugger_exception_handler = handle_exception;
initialized = 1; initialized = 1;
putDebugStr("kgdb ready\n"); putDebugStr("kgdb ready\n");
puts("ready\n"); puts("ready\n");
return 0;
} }
void void

View File

@ -39,7 +39,16 @@ typedef
kgdb_data; kgdb_data;
/* these functions are provided by the generic kgdb support */ /* these functions are provided by the generic kgdb support */
extern void kgdb_init(void); /**
* kgdb_init()
*
* Perform initializations to allow debugging U-Boot with gdb over a serial
* link. It is called during the generic board init sequence.
*
* Return: 0 if OK
*/
int kgdb_init(void);
extern void kgdb_error(int); extern void kgdb_error(int);
extern int kgdb_output_string(const char *, unsigned int); extern int kgdb_output_string(const char *, unsigned int);
extern void breakpoint(void); extern void breakpoint(void);