From 2d939b3f40ec46c90918ac348830395a8f8ca586 Mon Sep 17 00:00:00 2001 From: Martin Schwidefsky Date: Sat, 3 Sep 2005 15:58:06 -0700 Subject: [PATCH] --- yaml --- r: 7055 b: refs/heads/master c: 3863e72414fa2ebf5f3b615d1bf99de32e59980a h: refs/heads/master i: 7053: 795946f66d93b686a3f49e33b5455a99cf83068d 7051: 24cba24bde5a554bcc28bf2686dc07716fa41e81 7047: 9f98532d7ea3f6829cc5b5964b2f181a014b0f2c 7039: ab37f6a4bb4463ff0ed15d79f10570678d38ff23 v: v3 --- [refs] | 2 +- trunk/drivers/s390/char/raw3270.c | 16 +++++++++++----- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/[refs] b/[refs] index 3521d4b27799..fec5f5f6dff9 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 9513e5e3f5a6b429da8a9fd4330f71f1e547c8e0 +refs/heads/master: 3863e72414fa2ebf5f3b615d1bf99de32e59980a diff --git a/trunk/drivers/s390/char/raw3270.c b/trunk/drivers/s390/char/raw3270.c index d5eefeaba50c..328d9cbc56a3 100644 --- a/trunk/drivers/s390/char/raw3270.c +++ b/trunk/drivers/s390/char/raw3270.c @@ -632,12 +632,9 @@ __raw3270_size_device(struct raw3270 *rp) raw3270_init_request.ccw.cda = (__u32) __pa(raw3270_init_data); rc = raw3270_start_init(rp, &raw3270_init_view, &raw3270_init_request); - if (rc) { + if (rc) /* Check error cases: -ERESTARTSYS, -EIO and -EOPNOTSUPP */ - if (rc == -EOPNOTSUPP && MACHINE_IS_VM) - return __raw3270_size_device_vm(rp); return rc; - } /* Wait for attention interrupt. */ #ifdef CONFIG_TN3270_CONSOLE @@ -695,7 +692,10 @@ raw3270_size_device(struct raw3270 *rp) down(&raw3270_init_sem); rp->view = &raw3270_init_view; raw3270_init_view.dev = rp; - rc = __raw3270_size_device(rp); + if (MACHINE_IS_VM) + rc = __raw3270_size_device_vm(rp); + else + rc = __raw3270_size_device(rp); raw3270_init_view.dev = 0; rp->view = 0; up(&raw3270_init_sem); @@ -710,6 +710,12 @@ raw3270_size_device(struct raw3270 *rp) rp->model = 4; if (rp->rows == 27 && rp->cols == 132) rp->model = 5; + } else { + /* Couldn't detect size. Use default model 2. */ + rp->model = 2; + rp->rows = 24; + rp->cols = 80; + return 0; } return rc; }