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_OMAP_H
10#define _KERNEL_ARCH_DEBUG_UART_8250_OMAP_H
11
12
13#include <sys/types.h>
14
15#include <SupportDefs.h>
16#include <arch/generic/debug_uart_8250.h>
17#include <arch/generic/debug_uart.h>
18
19
20#define UART_KIND_8250_OMAP "8250-omap"
21
22
23class ArchUART8250Omap : public DebugUART8250 {
24public:
25							ArchUART8250Omap(addr_t base, int64 clock);
26							~ArchUART8250Omap();
27	void					InitEarly();
28
29	// ARM MMIO: on ARM the UART regs are aligned on 32bit
30	virtual void			Out8(int reg, uint8 value);
31	virtual uint8			In8(int reg);
32};
33
34
35DebugUART8250* arch_get_uart_8250_omap(addr_t base, int64 clock);
36
37
38#endif /* _KERNEL_ARCH_DEBUG_UART_8250_OMAP_H */
39