aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/serial_core.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/serial_core.h')
-rw-r--r--include/linux/serial_core.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/include/linux/serial_core.h b/include/linux/serial_core.h
index 212eb4c67797..758c5b0c6fd3 100644
--- a/include/linux/serial_core.h
+++ b/include/linux/serial_core.h
@@ -95,7 +95,7 @@
95/* PPC CPM type number */ 95/* PPC CPM type number */
96#define PORT_CPM 58 96#define PORT_CPM 58
97 97
98/* MPC52xx type numbers */ 98/* MPC52xx (and MPC512x) type numbers */
99#define PORT_MPC52xx 59 99#define PORT_MPC52xx 59
100 100
101/* IBM icom */ 101/* IBM icom */
@@ -199,6 +199,9 @@
199/* TI OMAP-UART */ 199/* TI OMAP-UART */
200#define PORT_OMAP 96 200#define PORT_OMAP 96
201 201
202/* VIA VT8500 SoC */
203#define PORT_VT8500 97
204
202#ifdef __KERNEL__ 205#ifdef __KERNEL__
203 206
204#include <linux/compiler.h> 207#include <linux/compiler.h>
@@ -209,6 +212,7 @@
209#include <linux/tty.h> 212#include <linux/tty.h>
210#include <linux/mutex.h> 213#include <linux/mutex.h>
211#include <linux/sysrq.h> 214#include <linux/sysrq.h>
215#include <linux/pps_kernel.h>
212 216
213struct uart_port; 217struct uart_port;
214struct serial_struct; 218struct serial_struct;
@@ -311,6 +315,7 @@ struct uart_port {
311#define UPIO_TSI (5) /* Tsi108/109 type IO */ 315#define UPIO_TSI (5) /* Tsi108/109 type IO */
312#define UPIO_DWAPB (6) /* DesignWare APB UART */ 316#define UPIO_DWAPB (6) /* DesignWare APB UART */
313#define UPIO_RM9000 (7) /* RM9000 type IO */ 317#define UPIO_RM9000 (7) /* RM9000 type IO */
318#define UPIO_DWAPB32 (8) /* DesignWare APB UART (32 bit accesses) */
314 319
315 unsigned int read_status_mask; /* driver specific */ 320 unsigned int read_status_mask; /* driver specific */
316 unsigned int ignore_status_mask; /* driver specific */ 321 unsigned int ignore_status_mask; /* driver specific */
@@ -361,6 +366,7 @@ struct uart_port {
361 struct device *dev; /* parent device */ 366 struct device *dev; /* parent device */
362 unsigned char hub6; /* this should be in the 8250 driver */ 367 unsigned char hub6; /* this should be in the 8250 driver */
363 unsigned char suspended; 368 unsigned char suspended;
369 unsigned char irq_wake;
364 unsigned char unused[2]; 370 unsigned char unused[2];
365 void *private_data; /* generic platform data pointer */ 371 void *private_data; /* generic platform data pointer */
366}; 372};
@@ -523,10 +529,10 @@ uart_handle_dcd_change(struct uart_port *uport, unsigned int status)
523 struct uart_state *state = uport->state; 529 struct uart_state *state = uport->state;
524 struct tty_port *port = &state->port; 530 struct tty_port *port = &state->port;
525 struct tty_ldisc *ld = tty_ldisc_ref(port->tty); 531 struct tty_ldisc *ld = tty_ldisc_ref(port->tty);
526 struct timespec ts; 532 struct pps_event_time ts;
527 533
528 if (ld && ld->ops->dcd_change) 534 if (ld && ld->ops->dcd_change)
529 getnstimeofday(&ts); 535 pps_get_ts(&ts);
530 536
531 uport->icount.dcd++; 537 uport->icount.dcd++;
532#ifdef CONFIG_HARD_PPS 538#ifdef CONFIG_HARD_PPS