mv64x60_dbg.c
来自「h内核」· C语言 代码 · 共 124 行
C
124 行
/* * arch/ppc/syslib/mv64x60_dbg.c * * KGDB and progress routines for the Marvell/Galileo MV64x60 (Discovery). * * Author: Mark A. Greer <mgreer@mvista.com> * * 2003 (c) MontaVista Software, Inc. This file is licensed under * the terms of the GNU General Public License version 2. This program * is licensed "as is" without any warranty of any kind, whether express * or implied. *//* ***************************************************************************** * * Low-level MPSC/UART I/O routines * ***************************************************************************** */#include <linux/config.h>#include <linux/irq.h>#include <asm/delay.h>#include <asm/mv64x60.h>#if defined(CONFIG_SERIAL_TEXT_DEBUG)#define MPSC_CHR_1 0x000c#define MPSC_CHR_2 0x0010static struct mv64x60_handle mv64x60_dbg_bh;voidmv64x60_progress_init(u32 base){ mv64x60_dbg_bh.v_base = base; return;}static voidmv64x60_polled_putc(int chan, char c){ u32 offset; if (chan == 0) offset = 0x8000; else offset = 0x9000; mv64x60_write(&mv64x60_dbg_bh, offset + MPSC_CHR_1, (u32)c); mv64x60_write(&mv64x60_dbg_bh, offset + MPSC_CHR_2, 0x200); udelay(2000);}voidmv64x60_mpsc_progress(char *s, unsigned short hex){ volatile char c; mv64x60_polled_putc(0, '\r'); while ((c = *s++) != 0) mv64x60_polled_putc(0, c); mv64x60_polled_putc(0, '\n'); mv64x60_polled_putc(0, '\r'); return;}#endif /* CONFIG_SERIAL_TEXT_DEBUG */#if defined(CONFIG_KGDB)#if defined(CONFIG_KGDB_TTYS0)#define KGDB_PORT 0#elif defined(CONFIG_KGDB_TTYS1)#define KGDB_PORT 1#else#error "Invalid kgdb_tty port"#endifvoidputDebugChar(unsigned char c){ mv64x60_polled_putc(KGDB_PORT, (char)c);}intgetDebugChar(void){ unsigned char c; while (!mv64x60_polled_getc(KGDB_PORT, &c)); return (int)c;}voidputDebugString(char* str){ while (*str != '\0') { putDebugChar(*str); str++; } putDebugChar('\r'); return;}voidkgdb_interruptible(int enable){}voidkgdb_map_scc(void){ if (ppc_md.early_serial_map) ppc_md.early_serial_map();}#endif /* CONFIG_KGDB */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?