Changeset 973be64e in mainline for arch/mips32/src/console.c
- Timestamp:
- 2005-12-10T00:19:57Z (20 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- fcfac420
- Parents:
- 705b4149
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
arch/mips32/src/console.c
r705b4149 r973be64e 27 27 */ 28 28 29 #include <putchar.h> 30 #include <arch/types.h> 31 #include <arch/cp0.h> 29 #include <console/console.h> 32 30 #include <arch/console.h> 33 #include <arch.h>34 31 #include <arch/drivers/arc.h> 35 #include <arch/arch.h> 36 37 /** Putchar that works with MSIM & gxemul */ 38 static void cons_putchar(const char ch) 39 { 40 *((char *) VIDEORAM) = ch; 41 } 42 43 /** Putchar that works with simics */ 44 static void serial_putchar(const char ch) 45 { 46 int i; 47 48 if (ch=='\n') 49 putchar('\r'); 50 51 /* Wait until transmit buffer empty */ 52 while (! ((*SERIAL_LSR) & (1<<TRANSMIT_EMPTY_BIT))) 53 ; 54 *(SERIAL_PORT_BASE) = ch; 55 } 56 57 static void (*putchar_func)(const char ch) = cons_putchar; 32 #include <arch/drivers/serial.h> 33 #include <arch/drivers/msim.h> 58 34 59 35 void console_init(void) 60 36 { 61 if (arc_enabled()) 62 putchar_func = arc_putchar; 63 /* The LSR on the start usually contains this value */ 64 else if (*SERIAL_LSR == 0x60) 65 putchar_func = serial_putchar; 66 else 67 putchar_func = cons_putchar; 37 chardev_t *console; 38 39 if (arc_enabled()) { 40 console = arc_console(); 41 } else if (serial_init()) { 42 console = serial_console(); 43 } else 44 console = msim_console(); 45 46 stdin = console; 47 stdout = console; 68 48 } 69 70 void putchar(const char ch)71 {72 putchar_func(ch);73 }
Note:
See TracChangeset
for help on using the changeset viewer.