Commit 6ef556cc authored by Cornelia Huck's avatar Cornelia Huck Committed by Heiko Carstens

[S390] cio: Use isc_{register,unregister}.

Use the new isc registration functions for all places that need
an I/O interruption subclass.
Signed-off-by: default avatarCornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
parent fcc6ab33
...@@ -786,12 +786,13 @@ cio_probe_console(void) ...@@ -786,12 +786,13 @@ cio_probe_console(void)
/* /*
* enable console I/O-interrupt subclass * enable console I/O-interrupt subclass
*/ */
ctl_set_bit(6, 31 - CONSOLE_ISC); isc_register(CONSOLE_ISC);
console_subchannel.schib.pmcw.isc = CONSOLE_ISC; console_subchannel.schib.pmcw.isc = CONSOLE_ISC;
console_subchannel.schib.pmcw.intparm = console_subchannel.schib.pmcw.intparm =
(u32)(addr_t)&console_subchannel; (u32)(addr_t)&console_subchannel;
ret = cio_modify(&console_subchannel); ret = cio_modify(&console_subchannel);
if (ret) { if (ret) {
isc_unregister(CONSOLE_ISC);
console_subchannel_in_use = 0; console_subchannel_in_use = 0;
return ERR_PTR(ret); return ERR_PTR(ret);
} }
...@@ -803,7 +804,7 @@ cio_release_console(void) ...@@ -803,7 +804,7 @@ cio_release_console(void)
{ {
console_subchannel.schib.pmcw.intparm = 0; console_subchannel.schib.pmcw.intparm = 0;
cio_modify(&console_subchannel); cio_modify(&console_subchannel);
ctl_clear_bit(6, 31 - CONSOLE_ISC); isc_unregister(CONSOLE_ISC);
console_subchannel_in_use = 0; console_subchannel_in_use = 0;
} }
......
...@@ -806,7 +806,7 @@ init_channel_subsystem (void) ...@@ -806,7 +806,7 @@ init_channel_subsystem (void)
css_init_done = 1; css_init_done = 1;
/* Enable default isc for I/O subchannels. */ /* Enable default isc for I/O subchannels. */
ctl_set_bit(6, 31 - IO_SCH_ISC); isc_register(IO_SCH_ISC);
for_each_subchannel(__init_channel_subsystem, NULL); for_each_subchannel(__init_channel_subsystem, NULL);
return 0; return 0;
......
...@@ -3892,6 +3892,7 @@ init_QDIO(void) ...@@ -3892,6 +3892,7 @@ init_QDIO(void)
qdio_mempool_alloc, qdio_mempool_alloc,
qdio_mempool_free, NULL); qdio_mempool_free, NULL);
isc_register(QDIO_AIRQ_ISC);
if (tiqdio_check_chsc_availability()) if (tiqdio_check_chsc_availability())
QDIO_PRINT_ERR("Not all CHSCs supported. Continuing.\n"); QDIO_PRINT_ERR("Not all CHSCs supported. Continuing.\n");
...@@ -3904,6 +3905,7 @@ static void __exit ...@@ -3904,6 +3905,7 @@ static void __exit
cleanup_QDIO(void) cleanup_QDIO(void)
{ {
tiqdio_unregister_thinints(); tiqdio_unregister_thinints();
isc_unregister(QDIO_AIRQ_ISC);
qdio_remove_procfs_entry(); qdio_remove_procfs_entry();
qdio_release_qdio_memory(); qdio_release_qdio_memory();
qdio_unregister_dbf_views(); qdio_unregister_dbf_views();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment