aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/tty/vt
diff options
context:
space:
mode:
authorJiri Slaby <jslaby@suse.cz>2013-01-03 09:53:07 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-01-16 01:43:15 -0500
commit6732c8bb8671acbdac6cdc93dd72ddd581dd5e25 (patch)
tree6c70977ee03cddd4211b8f775c331b41532ed5da /drivers/tty/vt
parent2e124b4a390ca85325fae75764bef92f0547fa25 (diff)
TTY: switch tty_schedule_flip
Now, we start converting tty buffer functions to actually use tty_port. This will allow us to get rid of the need of tty in many call sites. Only tty_port will needed and hence no more tty_port_tty_get in those paths. This is the last one: tty_schedule_flip Signed-off-by: Jiri Slaby <jslaby@suse.cz> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/tty/vt')
-rw-r--r--drivers/tty/vt/keyboard.c19
-rw-r--r--drivers/tty/vt/vt.c16
2 files changed, 11 insertions, 24 deletions
diff --git a/drivers/tty/vt/keyboard.c b/drivers/tty/vt/keyboard.c
index 5aace4d47cb6..a9af1b9ae160 100644
--- a/drivers/tty/vt/keyboard.c
+++ b/drivers/tty/vt/keyboard.c
@@ -307,26 +307,17 @@ int kbd_rate(struct kbd_repeat *rep)
307 */ 307 */
308static void put_queue(struct vc_data *vc, int ch) 308static void put_queue(struct vc_data *vc, int ch)
309{ 309{
310 struct tty_struct *tty = vc->port.tty;
311
312 tty_insert_flip_char(&vc->port, ch, 0); 310 tty_insert_flip_char(&vc->port, ch, 0);
313 if (tty) { 311 tty_schedule_flip(&vc->port);
314 tty_schedule_flip(tty);
315 }
316} 312}
317 313
318static void puts_queue(struct vc_data *vc, char *cp) 314static void puts_queue(struct vc_data *vc, char *cp)
319{ 315{
320 struct tty_struct *tty = vc->port.tty;
321
322 if (!tty)
323 return;
324
325 while (*cp) { 316 while (*cp) {
326 tty_insert_flip_char(&vc->port, *cp, 0); 317 tty_insert_flip_char(&vc->port, *cp, 0);
327 cp++; 318 cp++;
328 } 319 }
329 tty_schedule_flip(tty); 320 tty_schedule_flip(&vc->port);
330} 321}
331 322
332static void applkey(struct vc_data *vc, int key, char mode) 323static void applkey(struct vc_data *vc, int key, char mode)
@@ -582,12 +573,8 @@ static void fn_inc_console(struct vc_data *vc)
582 573
583static void fn_send_intr(struct vc_data *vc) 574static void fn_send_intr(struct vc_data *vc)
584{ 575{
585 struct tty_struct *tty = vc->port.tty;
586
587 if (!tty)
588 return;
589 tty_insert_flip_char(&vc->port, 0, TTY_BREAK); 576 tty_insert_flip_char(&vc->port, 0, TTY_BREAK);
590 tty_schedule_flip(tty); 577 tty_schedule_flip(&vc->port);
591} 578}
592 579
593static void fn_scroll_forw(struct vc_data *vc) 580static void fn_scroll_forw(struct vc_data *vc)
diff --git a/drivers/tty/vt/vt.c b/drivers/tty/vt/vt.c
index 811f2505e9ee..1a2728034599 100644
--- a/drivers/tty/vt/vt.c
+++ b/drivers/tty/vt/vt.c
@@ -1333,13 +1333,13 @@ static void csi_m(struct vc_data *vc)
1333 update_attr(vc); 1333 update_attr(vc);
1334} 1334}
1335 1335
1336static void respond_string(const char *p, struct tty_struct *tty) 1336static void respond_string(const char *p, struct tty_port *port)
1337{ 1337{
1338 while (*p) { 1338 while (*p) {
1339 tty_insert_flip_char(tty->port, *p, 0); 1339 tty_insert_flip_char(port, *p, 0);
1340 p++; 1340 p++;
1341 } 1341 }
1342 tty_schedule_flip(tty); 1342 tty_schedule_flip(port);
1343} 1343}
1344 1344
1345static void cursor_report(struct vc_data *vc, struct tty_struct *tty) 1345static void cursor_report(struct vc_data *vc, struct tty_struct *tty)
@@ -1347,17 +1347,17 @@ static void cursor_report(struct vc_data *vc, struct tty_struct *tty)
1347 char buf[40]; 1347 char buf[40];
1348 1348
1349 sprintf(buf, "\033[%d;%dR", vc->vc_y + (vc->vc_decom ? vc->vc_top + 1 : 1), vc->vc_x + 1); 1349 sprintf(buf, "\033[%d;%dR", vc->vc_y + (vc->vc_decom ? vc->vc_top + 1 : 1), vc->vc_x + 1);
1350 respond_string(buf, tty); 1350 respond_string(buf, tty->port);
1351} 1351}
1352 1352
1353static inline void status_report(struct tty_struct *tty) 1353static inline void status_report(struct tty_struct *tty)
1354{ 1354{
1355 respond_string("\033[0n", tty); /* Terminal ok */ 1355 respond_string("\033[0n", tty->port); /* Terminal ok */
1356} 1356}
1357 1357
1358static inline void respond_ID(struct tty_struct * tty) 1358static inline void respond_ID(struct tty_struct *tty)
1359{ 1359{
1360 respond_string(VT102ID, tty); 1360 respond_string(VT102ID, tty->port);
1361} 1361}
1362 1362
1363void mouse_report(struct tty_struct *tty, int butt, int mrx, int mry) 1363void mouse_report(struct tty_struct *tty, int butt, int mrx, int mry)
@@ -1366,7 +1366,7 @@ void mouse_report(struct tty_struct *tty, int butt, int mrx, int mry)
1366 1366
1367 sprintf(buf, "\033[M%c%c%c", (char)(' ' + butt), (char)('!' + mrx), 1367 sprintf(buf, "\033[M%c%c%c", (char)(' ' + butt), (char)('!' + mrx),
1368 (char)('!' + mry)); 1368 (char)('!' + mry));
1369 respond_string(buf, tty); 1369 respond_string(buf, tty->port);
1370} 1370}
1371 1371
1372/* invoked via ioctl(TIOCLINUX) and through set_selection */ 1372/* invoked via ioctl(TIOCLINUX) and through set_selection */