mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-27 07:01:24 +00:00
0c909551f8
The default kgdb functions can be implemented with common U-Boot functions, so rather than force everyone to copy & paste these things, create a set of weak stubs. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
64 lines
1,005 B
C
64 lines
1,005 B
C
/*
|
|
* U-boot - stub functions for common kgdb code,
|
|
* can be overridden in board specific files
|
|
*
|
|
* Copyright 2009 Analog Devices Inc.
|
|
*
|
|
* Licensed under the GPL-2 or later.
|
|
*/
|
|
|
|
#include <common.h>
|
|
#include <kgdb.h>
|
|
|
|
int (*debugger_exception_handler)(struct pt_regs *);
|
|
|
|
__attribute__((weak))
|
|
void kgdb_serial_init(void)
|
|
{
|
|
puts("[on serial] ");
|
|
}
|
|
|
|
__attribute__((weak))
|
|
void putDebugChar(int c)
|
|
{
|
|
serial_putc(c);
|
|
}
|
|
|
|
__attribute__((weak))
|
|
void putDebugStr(const char *str)
|
|
{
|
|
#ifdef DEBUG
|
|
serial_puts(str);
|
|
#endif
|
|
}
|
|
|
|
__attribute__((weak))
|
|
int getDebugChar(void)
|
|
{
|
|
return serial_getc();
|
|
}
|
|
|
|
__attribute__((weak))
|
|
void kgdb_interruptible(int yes)
|
|
{
|
|
return;
|
|
}
|
|
|
|
__attribute__((weak))
|
|
void kgdb_flush_cache_range(void *from, void *to)
|
|
{
|
|
flush_cache((unsigned long)from, (unsigned long)(to - from));
|
|
}
|
|
|
|
__attribute__((weak))
|
|
void kgdb_flush_cache_all(void)
|
|
{
|
|
if (dcache_status()) {
|
|
dcache_disable();
|
|
dcache_enable();
|
|
}
|
|
if (icache_status()) {
|
|
icache_disable();
|
|
icache_enable();
|
|
}
|
|
}
|