aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char/rocket.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/char/rocket.c')
-rw-r--r--drivers/char/rocket.c13
1 files changed, 3 insertions, 10 deletions
diff --git a/drivers/char/rocket.c b/drivers/char/rocket.c
index e94a62e30fc4..76357c855ce3 100644
--- a/drivers/char/rocket.c
+++ b/drivers/char/rocket.c
@@ -106,6 +106,8 @@
106 106
107/****** RocketPort Local Variables ******/ 107/****** RocketPort Local Variables ******/
108 108
109static void rp_do_poll(unsigned long dummy);
110
109static struct tty_driver *rocket_driver; 111static struct tty_driver *rocket_driver;
110 112
111static struct rocket_version driver_version = { 113static struct rocket_version driver_version = {
@@ -116,7 +118,7 @@ static struct r_port *rp_table[MAX_RP_PORTS]; /* The main repository of
116static unsigned int xmit_flags[NUM_BOARDS]; /* Bit significant, indicates port had data to transmit. */ 118static unsigned int xmit_flags[NUM_BOARDS]; /* Bit significant, indicates port had data to transmit. */
117 /* eg. Bit 0 indicates port 0 has xmit data, ... */ 119 /* eg. Bit 0 indicates port 0 has xmit data, ... */
118static atomic_t rp_num_ports_open; /* Number of serial ports open */ 120static atomic_t rp_num_ports_open; /* Number of serial ports open */
119static struct timer_list rocket_timer; 121static DEFINE_TIMER(rocket_timer, rp_do_poll, 0, 0);
120 122
121static unsigned long board1; /* ISA addresses, retrieved from rocketport.conf */ 123static unsigned long board1; /* ISA addresses, retrieved from rocketport.conf */
122static unsigned long board2; 124static unsigned long board2;
@@ -474,7 +476,6 @@ static void rp_do_transmit(struct r_port *info)
474 476
475 if (info->xmit_cnt < WAKEUP_CHARS) { 477 if (info->xmit_cnt < WAKEUP_CHARS) {
476 tty_wakeup(tty); 478 tty_wakeup(tty);
477 wake_up_interruptible(&tty->write_wait);
478#ifdef ROCKETPORT_HAVE_POLL_WAIT 479#ifdef ROCKETPORT_HAVE_POLL_WAIT
479 wake_up_interruptible(&tty->poll_wait); 480 wake_up_interruptible(&tty->poll_wait);
480#endif 481#endif
@@ -1772,7 +1773,6 @@ static int rp_write(struct tty_struct *tty,
1772end: 1773end:
1773 if (info->xmit_cnt < WAKEUP_CHARS) { 1774 if (info->xmit_cnt < WAKEUP_CHARS) {
1774 tty_wakeup(tty); 1775 tty_wakeup(tty);
1775 wake_up_interruptible(&tty->write_wait);
1776#ifdef ROCKETPORT_HAVE_POLL_WAIT 1776#ifdef ROCKETPORT_HAVE_POLL_WAIT
1777 wake_up_interruptible(&tty->poll_wait); 1777 wake_up_interruptible(&tty->poll_wait);
1778#endif 1778#endif
@@ -1841,7 +1841,6 @@ static void rp_flush_buffer(struct tty_struct *tty)
1841 info->xmit_cnt = info->xmit_head = info->xmit_tail = 0; 1841 info->xmit_cnt = info->xmit_head = info->xmit_tail = 0;
1842 spin_unlock_irqrestore(&info->slock, flags); 1842 spin_unlock_irqrestore(&info->slock, flags);
1843 1843
1844 wake_up_interruptible(&tty->write_wait);
1845#ifdef ROCKETPORT_HAVE_POLL_WAIT 1844#ifdef ROCKETPORT_HAVE_POLL_WAIT
1846 wake_up_interruptible(&tty->poll_wait); 1845 wake_up_interruptible(&tty->poll_wait);
1847#endif 1846#endif
@@ -2371,12 +2370,6 @@ static int __init rp_init(void)
2371 return -ENOMEM; 2370 return -ENOMEM;
2372 2371
2373 /* 2372 /*
2374 * Set up the timer channel.
2375 */
2376 init_timer(&rocket_timer);
2377 rocket_timer.function = rp_do_poll;
2378
2379 /*
2380 * Initialize the array of pointers to our own internal state 2373 * Initialize the array of pointers to our own internal state
2381 * structures. 2374 * structures.
2382 */ 2375 */