1 /* 2 * Copyright 2012 Haiku, Inc. All rights reserved. 3 * Distributed under the terms of the MIT License. 4 * 5 * Authors: 6 * François Revol, revol@free.fr 7 */ 8 #ifndef _KERNEL_ARCH_DEBUG_UART_8250_H 9 #define _KERNEL_ARCH_DEBUG_UART_8250_H 10 11 12 #include <sys/types.h> 13 14 #include <SupportDefs.h> 15 16 #include "debug_uart.h" 17 18 19 class DebugUART8250 : public DebugUART { 20 public: 21 DebugUART8250(addr_t base, int64 clock); 22 ~DebugUART8250(); 23 24 void InitEarly(); 25 void Init(); 26 void InitPort(uint32 baud); 27 28 int PutChar(char c); 29 int GetChar(bool wait); 30 31 void FlushTx(); 32 void FlushRx(); 33 }; 34 35 36 extern DebugUART8250 *arch_get_uart_8250(addr_t base, int64 clock); 37 extern DebugUART8250 *arch_get_uart_8250_omap(addr_t base, int64 clock); 38 39 40 #endif /* _KERNEL_ARCH_DEBUG_UART_8250_H */ 41