promcon.c 942 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. /*
  2. * Wrap-around code for a console using the
  3. * SGI PROM io-routines.
  4. *
  5. * Copyright (c) 1999 Ulf Carlsson
  6. *
  7. * Derived from DECstation promcon.c
  8. * Copyright (c) 1998 Harald Koerfgen
  9. */
  10. #include <linux/tty.h>
  11. #include <linux/init.h>
  12. #include <linux/console.h>
  13. static void prom_console_write(struct console *co, const char *s,
  14. unsigned count)
  15. {
  16. extern int CONSOLE_CHANNEL; // The default serial port
  17. unsigned i;
  18. for (i = 0; i < count; i++) {
  19. if (*s == 10)
  20. serial_putc(CONSOLE_CHANNEL, 13);
  21. serial_putc(CONSOLE_CHANNEL, *s++);
  22. }
  23. }
  24. int prom_getchar(void)
  25. {
  26. return 0;
  27. }
  28. static struct console sercons = {
  29. .name = "ttyS",
  30. .write = prom_console_write,
  31. .flags = CON_PRINTBUFFER,
  32. .index = -1,
  33. };
  34. /*
  35. * Register console.
  36. */
  37. static int gal_serial_console_init(void)
  38. {
  39. // serial_init();
  40. //serial_set(115200);
  41. register_console(&sercons);
  42. return 0;
  43. }
  44. console_initcall(gal_serial_console_init);