diff options
Diffstat (limited to 'drivers/s390/char/con3270.c')
-rw-r--r-- | drivers/s390/char/con3270.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/s390/char/con3270.c b/drivers/s390/char/con3270.c index fc7a213e591f..c570a9f6ce9c 100644 --- a/drivers/s390/char/con3270.c +++ b/drivers/s390/char/con3270.c | |||
@@ -213,6 +213,9 @@ con3270_update(struct con3270 *cp) | |||
213 | struct string *s, *n; | 213 | struct string *s, *n; |
214 | int rc; | 214 | int rc; |
215 | 215 | ||
216 | if (cp->view.dev) | ||
217 | raw3270_activate_view(&cp->view); | ||
218 | |||
216 | wrq = xchg(&cp->write, 0); | 219 | wrq = xchg(&cp->write, 0); |
217 | if (!wrq) { | 220 | if (!wrq) { |
218 | con3270_set_timer(cp, 1); | 221 | con3270_set_timer(cp, 1); |
@@ -489,8 +492,6 @@ con3270_write(struct console *co, const char *str, unsigned int count) | |||
489 | unsigned char c; | 492 | unsigned char c; |
490 | 493 | ||
491 | cp = condev; | 494 | cp = condev; |
492 | if (cp->view.dev) | ||
493 | raw3270_activate_view(&cp->view); | ||
494 | spin_lock_irqsave(&cp->view.lock, flags); | 495 | spin_lock_irqsave(&cp->view.lock, flags); |
495 | while (count-- > 0) { | 496 | while (count-- > 0) { |
496 | c = *str++; | 497 | c = *str++; |
@@ -620,7 +621,7 @@ con3270_init(void) | |||
620 | (void (*)(unsigned long)) con3270_read_tasklet, | 621 | (void (*)(unsigned long)) con3270_read_tasklet, |
621 | (unsigned long) condev->read); | 622 | (unsigned long) condev->read); |
622 | 623 | ||
623 | raw3270_add_view(&condev->view, &con3270_fn, 0); | 624 | raw3270_add_view(&condev->view, &con3270_fn, 1); |
624 | 625 | ||
625 | INIT_LIST_HEAD(&condev->freemem); | 626 | INIT_LIST_HEAD(&condev->freemem); |
626 | for (i = 0; i < CON3270_STRING_PAGES; i++) { | 627 | for (i = 0; i < CON3270_STRING_PAGES; i++) { |