diff --git a/arch/s390/include/asm/irq.h b/arch/s390/include/asm/irq.h index 082ef0cce287870a6a491b74c99c10035d241ed1..d52533df6ac88e852e4281db9b9f78564b84ba74 100644 --- a/arch/s390/include/asm/irq.h +++ b/arch/s390/include/asm/irq.h @@ -18,6 +18,7 @@ enum interruption_class { IOINT_QAI, IOINT_QDI, IOINT_DAS, + IOINT_C15, NMI_NMI, NR_IRQS, }; diff --git a/arch/s390/kernel/irq.c b/arch/s390/kernel/irq.c index 313fe83a443a49ef832143de2931c658c8fdf021..e7914e4adc48d4b043f19b2d5e5981ced114f9fe 100644 --- a/arch/s390/kernel/irq.c +++ b/arch/s390/kernel/irq.c @@ -35,6 +35,7 @@ static const struct irq_class intrclass_names[] = { {.name = "QAI", .desc = "[I/O] QDIO Adapter Interrupt" }, {.name = "QDI", .desc = "[I/O] QDIO Interrupt" }, {.name = "DAS", .desc = "[I/O] DASD" }, + {.name = "C15", .desc = "[I/O] 3215" }, {.name = "NMI", .desc = "[NMI] Machine Check" }, }; diff --git a/drivers/s390/char/con3215.c b/drivers/s390/char/con3215.c index 59ec073724bff327327d1cc8f27108e14254a572..3fb4335d491d7aaf114769f026d13a4c8cbdcab5 100644 --- a/drivers/s390/char/con3215.c +++ b/drivers/s390/char/con3215.c @@ -9,6 +9,7 @@ * Dan Morrison, IBM Corporation */ +#include #include #include #include @@ -361,6 +362,7 @@ static void raw3215_irq(struct ccw_device *cdev, unsigned long intparm, int cstat, dstat; int count; + kstat_cpu(smp_processor_id()).irqs[IOINT_C15]++; raw = dev_get_drvdata(&cdev->dev); req = (struct raw3215_req *) intparm; cstat = irb->scsw.cmd.cstat;