diff options
Diffstat (limited to 'drivers/s390/cio/cio.c')
-rw-r--r-- | drivers/s390/cio/cio.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/s390/cio/cio.c b/drivers/s390/cio/cio.c index 0511fe31d049..40b2884126da 100644 --- a/drivers/s390/cio/cio.c +++ b/drivers/s390/cio/cio.c | |||
@@ -128,7 +128,7 @@ cio_tpi(void) | |||
128 | local_bh_disable(); | 128 | local_bh_disable(); |
129 | irq_enter (); | 129 | irq_enter (); |
130 | spin_lock(sch->lock); | 130 | spin_lock(sch->lock); |
131 | memcpy (&sch->schib.scsw, &irb->scsw, sizeof (struct scsw)); | 131 | memcpy(&sch->schib.scsw, &irb->scsw, sizeof(union scsw)); |
132 | if (sch->driver && sch->driver->irq) | 132 | if (sch->driver && sch->driver->irq) |
133 | sch->driver->irq(sch); | 133 | sch->driver->irq(sch); |
134 | spin_unlock(sch->lock); | 134 | spin_unlock(sch->lock); |
@@ -202,7 +202,7 @@ cio_start_key (struct subchannel *sch, /* subchannel structure */ | |||
202 | /* | 202 | /* |
203 | * initialize device status information | 203 | * initialize device status information |
204 | */ | 204 | */ |
205 | sch->schib.scsw.actl |= SCSW_ACTL_START_PEND; | 205 | sch->schib.scsw.cmd.actl |= SCSW_ACTL_START_PEND; |
206 | return 0; | 206 | return 0; |
207 | case 1: /* status pending */ | 207 | case 1: /* status pending */ |
208 | case 2: /* busy */ | 208 | case 2: /* busy */ |
@@ -237,7 +237,7 @@ cio_resume (struct subchannel *sch) | |||
237 | 237 | ||
238 | switch (ccode) { | 238 | switch (ccode) { |
239 | case 0: | 239 | case 0: |
240 | sch->schib.scsw.actl |= SCSW_ACTL_RESUME_PEND; | 240 | sch->schib.scsw.cmd.actl |= SCSW_ACTL_RESUME_PEND; |
241 | return 0; | 241 | return 0; |
242 | case 1: | 242 | case 1: |
243 | return -EBUSY; | 243 | return -EBUSY; |
@@ -277,7 +277,7 @@ cio_halt(struct subchannel *sch) | |||
277 | 277 | ||
278 | switch (ccode) { | 278 | switch (ccode) { |
279 | case 0: | 279 | case 0: |
280 | sch->schib.scsw.actl |= SCSW_ACTL_HALT_PEND; | 280 | sch->schib.scsw.cmd.actl |= SCSW_ACTL_HALT_PEND; |
281 | return 0; | 281 | return 0; |
282 | case 1: /* status pending */ | 282 | case 1: /* status pending */ |
283 | case 2: /* busy */ | 283 | case 2: /* busy */ |
@@ -312,7 +312,7 @@ cio_clear(struct subchannel *sch) | |||
312 | 312 | ||
313 | switch (ccode) { | 313 | switch (ccode) { |
314 | case 0: | 314 | case 0: |
315 | sch->schib.scsw.actl |= SCSW_ACTL_CLEAR_PEND; | 315 | sch->schib.scsw.cmd.actl |= SCSW_ACTL_CLEAR_PEND; |
316 | return 0; | 316 | return 0; |
317 | default: /* device not operational */ | 317 | default: /* device not operational */ |
318 | return -ENODEV; | 318 | return -ENODEV; |
@@ -458,7 +458,7 @@ int cio_disable_subchannel(struct subchannel *sch) | |||
458 | if (ccode == 3) /* Not operational. */ | 458 | if (ccode == 3) /* Not operational. */ |
459 | return -ENODEV; | 459 | return -ENODEV; |
460 | 460 | ||
461 | if (sch->schib.scsw.actl != 0) | 461 | if (scsw_actl(&sch->schib.scsw) != 0) |
462 | /* | 462 | /* |
463 | * the disable function must not be called while there are | 463 | * the disable function must not be called while there are |
464 | * requests pending for completion ! | 464 | * requests pending for completion ! |
@@ -708,7 +708,7 @@ void wait_cons_dev(void) | |||
708 | if (!cio_tpi()) | 708 | if (!cio_tpi()) |
709 | cpu_relax(); | 709 | cpu_relax(); |
710 | spin_lock(console_subchannel.lock); | 710 | spin_lock(console_subchannel.lock); |
711 | } while (console_subchannel.schib.scsw.actl != 0); | 711 | } while (console_subchannel.schib.scsw.cmd.actl != 0); |
712 | /* | 712 | /* |
713 | * restore previous isc value | 713 | * restore previous isc value |
714 | */ | 714 | */ |