|  | /* | 
|  | * 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(); | 
|  | } | 
|  | } |