summaryrefslogtreecommitdiffstats
path: root/kernel/drivers/s390/char/diag_ftp.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/drivers/s390/char/diag_ftp.c')
-rw-r--r--kernel/drivers/s390/char/diag_ftp.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/kernel/drivers/s390/char/diag_ftp.c b/kernel/drivers/s390/char/diag_ftp.c
index 93889632f..a5ccbf6f0 100644
--- a/kernel/drivers/s390/char/diag_ftp.c
+++ b/kernel/drivers/s390/char/diag_ftp.c
@@ -15,6 +15,7 @@
#include <linux/wait.h>
#include <linux/string.h>
#include <asm/ctl_reg.h>
+#include <asm/diag.h>
#include "hmcdrv_ftp.h"
#include "diag_ftp.h"
@@ -102,6 +103,7 @@ static int diag_ftp_2c4(struct diag_ftp_ldfpl *fpl,
{
int rc;
+ diag_stat_inc(DIAG_STAT_X2C4);
asm volatile(
" diag %[addr],%[cmd],0x2c4\n"
"0: j 2f\n"
@@ -223,7 +225,7 @@ int diag_ftp_startup(void)
if (rc)
return rc;
- ctl_set_bit(0, 63 - 22);
+ irq_subclass_register(IRQ_SUBCLASS_SERVICE_SIGNAL);
return 0;
}
@@ -232,6 +234,6 @@ int diag_ftp_startup(void)
*/
void diag_ftp_shutdown(void)
{
- ctl_clear_bit(0, 63 - 22);
+ irq_subclass_unregister(IRQ_SUBCLASS_SERVICE_SIGNAL);
unregister_external_irq(EXT_IRQ_CP_SERVICE, diag_ftp_handler);
}