1/*
2 * Copyright 2012-2021 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 *		Alexander von Gluck IV, kallisti5@unixzen.com
8 */
9#ifndef _KERNEL_ARCH_DEBUG_UART_8250_H
10#define _KERNEL_ARCH_DEBUG_UART_8250_H
11
12
13#include <sys/types.h>
14
15#include <SupportDefs.h>
16
17#include "debug_uart.h"
18
19
20#define UART_KIND_8250 "8250"
21
22
23class DebugUART8250 : public DebugUART {
24public:
25							DebugUART8250(addr_t base, int64 clock);
26							~DebugUART8250();
27
28			void			InitEarly();
29			void			Init();
30			void			InitPort(uint32 baud);
31
32			int				PutChar(char c);
33			int				GetChar(bool wait);
34
35			void			FlushTx();
36			void			FlushRx();
37};
38
39
40DebugUART8250* arch_get_uart_8250(addr_t base, int64 clock);
41
42
43#endif /* _KERNEL_ARCH_DEBUG_UART_8250_H */
44