aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/s390/cio/device_fsm.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/s390/cio/device_fsm.c')
-rw-r--r--drivers/s390/cio/device_fsm.c27
1 files changed, 0 insertions, 27 deletions
diff --git a/drivers/s390/cio/device_fsm.c b/drivers/s390/cio/device_fsm.c
index c7439f5500f8..349d8c52c0d0 100644
--- a/drivers/s390/cio/device_fsm.c
+++ b/drivers/s390/cio/device_fsm.c
@@ -771,12 +771,6 @@ ccw_device_w4sense(struct ccw_device *cdev, enum dev_event dev_event)
771 */ 771 */
772 if (scsw_fctl(&irb->scsw) & 772 if (scsw_fctl(&irb->scsw) &
773 (SCSW_FCTL_CLEAR_FUNC | SCSW_FCTL_HALT_FUNC)) { 773 (SCSW_FCTL_CLEAR_FUNC | SCSW_FCTL_HALT_FUNC)) {
774 /* Retry Basic Sense if requested. */
775 if (cdev->private->flags.intretry) {
776 cdev->private->flags.intretry = 0;
777 ccw_device_do_sense(cdev, irb);
778 return;
779 }
780 cdev->private->flags.dosense = 0; 774 cdev->private->flags.dosense = 0;
781 memset(&cdev->private->irb, 0, sizeof(struct irb)); 775 memset(&cdev->private->irb, 0, sizeof(struct irb));
782 ccw_device_accumulate_irb(cdev, irb); 776 ccw_device_accumulate_irb(cdev, irb);
@@ -800,21 +794,6 @@ call_handler:
800} 794}
801 795
802static void 796static void
803ccw_device_clear_verify(struct ccw_device *cdev, enum dev_event dev_event)
804{
805 struct irb *irb;
806
807 irb = (struct irb *) __LC_IRB;
808 /* Accumulate status. We don't do basic sense. */
809 ccw_device_accumulate_irb(cdev, irb);
810 /* Remember to clear irb to avoid residuals. */
811 memset(&cdev->private->irb, 0, sizeof(struct irb));
812 /* Try to start delayed device verification. */
813 ccw_device_online_verify(cdev, 0);
814 /* Note: Don't call handler for cio initiated clear! */
815}
816
817static void
818ccw_device_killing_irq(struct ccw_device *cdev, enum dev_event dev_event) 797ccw_device_killing_irq(struct ccw_device *cdev, enum dev_event dev_event)
819{ 798{
820 struct subchannel *sch; 799 struct subchannel *sch;
@@ -1069,12 +1048,6 @@ fsm_func_t *dev_jumptable[NR_DEV_STATES][NR_DEV_EVENTS] = {
1069 [DEV_EVENT_VERIFY] = ccw_device_nop, 1048 [DEV_EVENT_VERIFY] = ccw_device_nop,
1070 }, 1049 },
1071 /* states to wait for i/o completion before doing something */ 1050 /* states to wait for i/o completion before doing something */
1072 [DEV_STATE_CLEAR_VERIFY] = {
1073 [DEV_EVENT_NOTOPER] = ccw_device_generic_notoper,
1074 [DEV_EVENT_INTERRUPT] = ccw_device_clear_verify,
1075 [DEV_EVENT_TIMEOUT] = ccw_device_nop,
1076 [DEV_EVENT_VERIFY] = ccw_device_nop,
1077 },
1078 [DEV_STATE_TIMEOUT_KILL] = { 1051 [DEV_STATE_TIMEOUT_KILL] = {
1079 [DEV_EVENT_NOTOPER] = ccw_device_generic_notoper, 1052 [DEV_EVENT_NOTOPER] = ccw_device_generic_notoper,
1080 [DEV_EVENT_INTERRUPT] = ccw_device_killing_irq, 1053 [DEV_EVENT_INTERRUPT] = ccw_device_killing_irq,