diff options
Diffstat (limited to 'drivers/s390/char/raw3270.c')
-rw-r--r-- | drivers/s390/char/raw3270.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/drivers/s390/char/raw3270.c b/drivers/s390/char/raw3270.c index 2a4c566456e7..810ac38631c3 100644 --- a/drivers/s390/char/raw3270.c +++ b/drivers/s390/char/raw3270.c | |||
@@ -7,6 +7,7 @@ | |||
7 | * Copyright IBM Corp. 2003, 2009 | 7 | * Copyright IBM Corp. 2003, 2009 |
8 | */ | 8 | */ |
9 | 9 | ||
10 | #include <linux/kernel_stat.h> | ||
10 | #include <linux/module.h> | 11 | #include <linux/module.h> |
11 | #include <linux/err.h> | 12 | #include <linux/err.h> |
12 | #include <linux/init.h> | 13 | #include <linux/init.h> |
@@ -329,6 +330,7 @@ raw3270_irq (struct ccw_device *cdev, unsigned long intparm, struct irb *irb) | |||
329 | struct raw3270_request *rq; | 330 | struct raw3270_request *rq; |
330 | int rc; | 331 | int rc; |
331 | 332 | ||
333 | kstat_cpu(smp_processor_id()).irqs[IOINT_C70]++; | ||
332 | rp = dev_get_drvdata(&cdev->dev); | 334 | rp = dev_get_drvdata(&cdev->dev); |
333 | if (!rp) | 335 | if (!rp) |
334 | return; | 336 | return; |
@@ -596,13 +598,12 @@ __raw3270_size_device(struct raw3270 *rp) | |||
596 | static const unsigned char wbuf[] = | 598 | static const unsigned char wbuf[] = |
597 | { 0x00, 0x07, 0x01, 0xff, 0x03, 0x00, 0x81 }; | 599 | { 0x00, 0x07, 0x01, 0xff, 0x03, 0x00, 0x81 }; |
598 | struct raw3270_ua *uap; | 600 | struct raw3270_ua *uap; |
599 | unsigned short count; | ||
600 | int rc; | 601 | int rc; |
601 | 602 | ||
602 | /* | 603 | /* |
603 | * To determine the size of the 3270 device we need to do: | 604 | * To determine the size of the 3270 device we need to do: |
604 | * 1) send a 'read partition' data stream to the device | 605 | * 1) send a 'read partition' data stream to the device |
605 | * 2) wait for the attn interrupt that preceeds the query reply | 606 | * 2) wait for the attn interrupt that precedes the query reply |
606 | * 3) do a read modified to get the query reply | 607 | * 3) do a read modified to get the query reply |
607 | * To make things worse we have to cope with intervention | 608 | * To make things worse we have to cope with intervention |
608 | * required (3270 device switched to 'stand-by') and command | 609 | * required (3270 device switched to 'stand-by') and command |
@@ -651,7 +652,6 @@ __raw3270_size_device(struct raw3270 *rp) | |||
651 | if (rc) | 652 | if (rc) |
652 | return rc; | 653 | return rc; |
653 | /* Got a Query Reply */ | 654 | /* Got a Query Reply */ |
654 | count = sizeof(rp->init_data) - rp->init_request.rescnt; | ||
655 | uap = (struct raw3270_ua *) (rp->init_data + 1); | 655 | uap = (struct raw3270_ua *) (rp->init_data + 1); |
656 | /* Paranoia check. */ | 656 | /* Paranoia check. */ |
657 | if (rp->init_data[0] != 0x88 || uap->uab.qcode != 0x81) | 657 | if (rp->init_data[0] != 0x88 || uap->uab.qcode != 0x81) |
@@ -1386,8 +1386,10 @@ static struct ccw_device_id raw3270_id[] = { | |||
1386 | }; | 1386 | }; |
1387 | 1387 | ||
1388 | static struct ccw_driver raw3270_ccw_driver = { | 1388 | static struct ccw_driver raw3270_ccw_driver = { |
1389 | .name = "3270", | 1389 | .driver = { |
1390 | .owner = THIS_MODULE, | 1390 | .name = "3270", |
1391 | .owner = THIS_MODULE, | ||
1392 | }, | ||
1391 | .ids = raw3270_id, | 1393 | .ids = raw3270_id, |
1392 | .probe = &raw3270_probe, | 1394 | .probe = &raw3270_probe, |
1393 | .remove = &raw3270_remove, | 1395 | .remove = &raw3270_remove, |