blob: 55b317a89061b58ca673b0fe080ed3a361aecf69 [file] [log] [blame]
Andrew Victor1e6c9c22006-01-10 16:59:27 +00001/*
Andrew Victorafefc412006-06-19 19:53:19 +01002 * linux/include/asm-arm/mach/serial_at91.h
Andrew Victor1e6c9c22006-01-10 16:59:27 +00003 *
4 * Based on serial_sa1100.h by Nicolas Pitre
5 *
6 * Copyright (C) 2002 ATMEL Rousset
7 *
8 * Low level machine dependent UART functions.
9 */
Andrew Victor1e6c9c22006-01-10 16:59:27 +000010
11struct uart_port;
12
13/*
14 * This is a temporary structure for registering these
15 * functions; it is intended to be discarded after boot.
16 */
Haavard Skinnemoen71f2e2b2006-10-04 16:02:07 +020017struct atmel_port_fns {
Andrew Victor1e6c9c22006-01-10 16:59:27 +000018 void (*set_mctrl)(struct uart_port *, u_int);
19 u_int (*get_mctrl)(struct uart_port *);
20 void (*enable_ms)(struct uart_port *);
21 void (*pm)(struct uart_port *, u_int, u_int);
22 int (*set_wake)(struct uart_port *, u_int);
23 int (*open)(struct uart_port *);
24 void (*close)(struct uart_port *);
25};
26
Haavard Skinnemoen749c4e62006-10-04 16:02:02 +020027#if defined(CONFIG_SERIAL_ATMEL)
Haavard Skinnemoen71f2e2b2006-10-04 16:02:07 +020028void atmel_register_uart_fns(struct atmel_port_fns *fns);
Andrew Victor1e6c9c22006-01-10 16:59:27 +000029#else
Haavard Skinnemoen71f2e2b2006-10-04 16:02:07 +020030#define atmel_register_uart_fns(fns) do { } while (0)
Andrew Victor1e6c9c22006-01-10 16:59:27 +000031#endif
32
33