📄 printf.c
字号:
/* $Id: printf.c,v 1.5 1996/04/04 16:31:07 tridge Exp $ * printf.c: Internal prom library printf facility. * * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu) *//* This routine is internal to the prom library, no one else should know * about or use it! It's simple and smelly anyway.... */#include <linux/config.h>#include <linux/kernel.h>#include <asm/openprom.h>#include <asm/oplib.h>#ifdef CONFIG_KGDBextern int kgdb_initialized;#endifstatic char ppbuf[1024];voidprom_printf(char *fmt, ...){ va_list args; char ch, *bptr; int i; va_start(args, fmt);#ifdef CONFIG_KGDB ppbuf[0] = 'O'; i = vsprintf(ppbuf + 1, fmt, args) + 1;#else i = vsprintf(ppbuf, fmt, args);#endif bptr = ppbuf;#if CONFIG_AP1000 ap_write(1,bptr,strlen(bptr));#else#ifdef CONFIG_KGDB if (kgdb_initialized) { printk("kgdb_initialized = %d\n", kgdb_initialized); putpacket(bptr, 1); } else#else while((ch = *(bptr++)) != 0) { if(ch == '\n') prom_putchar('\r'); prom_putchar(ch); }#endif#endif va_end(args); return;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -