提交 3863e724 编写于 作者: M Martin Schwidefsky 提交者: Linus Torvalds

[PATCH] s390: disconnected 3270 console

Fix reboot with a disconnected 3270 console.
Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: NAndrew Morton <akpm@osdl.org>
Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
上级 9513e5e3
......@@ -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;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册