]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/s390/net/lcs.c
Merge branch 'zero-len' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik...
[linux-2.6-omap-h63xx.git] / drivers / s390 / net / lcs.c
index dd22f4b37037ebaa25e25c49bda17de8670dddd6..6de28385b3546c08cf2899cffab0f2a09ff61bda 100644 (file)
@@ -1327,8 +1327,8 @@ lcs_get_problem(struct ccw_device *cdev, struct irb *irb)
        char *sense;
 
        sense = (char *) irb->ecw;
-       cstat = irb->scsw.cstat;
-       dstat = irb->scsw.dstat;
+       cstat = irb->scsw.cmd.cstat;
+       dstat = irb->scsw.cmd.dstat;
 
        if (cstat & (SCHN_STAT_CHN_CTRL_CHK | SCHN_STAT_INTF_CTRL_CHK |
                     SCHN_STAT_CHN_DATA_CHK | SCHN_STAT_CHAIN_CHECK |
@@ -1388,11 +1388,13 @@ lcs_irq(struct ccw_device *cdev, unsigned long intparm, struct irb *irb)
        else
                channel = &card->write;
 
-       cstat = irb->scsw.cstat;
-       dstat = irb->scsw.dstat;
+       cstat = irb->scsw.cmd.cstat;
+       dstat = irb->scsw.cmd.dstat;
        LCS_DBF_TEXT_(5, trace, "Rint%s",cdev->dev.bus_id);
-       LCS_DBF_TEXT_(5, trace, "%4x%4x",irb->scsw.cstat, irb->scsw.dstat);
-       LCS_DBF_TEXT_(5, trace, "%4x%4x",irb->scsw.fctl, irb->scsw.actl);
+       LCS_DBF_TEXT_(5, trace, "%4x%4x", irb->scsw.cmd.cstat,
+                     irb->scsw.cmd.dstat);
+       LCS_DBF_TEXT_(5, trace, "%4x%4x", irb->scsw.cmd.fctl,
+                     irb->scsw.cmd.actl);
 
        /* Check for channel and device errors presented */
        rc = lcs_get_problem(cdev, irb);
@@ -1410,11 +1412,11 @@ lcs_irq(struct ccw_device *cdev, unsigned long intparm, struct irb *irb)
        }
        /* How far in the ccw chain have we processed? */
        if ((channel->state != LCS_CH_STATE_INIT) &&
-           (irb->scsw.fctl & SCSW_FCTL_START_FUNC)) {
-               index = (struct ccw1 *) __va((addr_t) irb->scsw.cpa)
+           (irb->scsw.cmd.fctl & SCSW_FCTL_START_FUNC)) {
+               index = (struct ccw1 *) __va((addr_t) irb->scsw.cmd.cpa)
                        - channel->ccws;
-               if ((irb->scsw.actl & SCSW_ACTL_SUSPENDED) ||
-                   (irb->scsw.cstat & SCHN_STAT_PCI))
+               if ((irb->scsw.cmd.actl & SCSW_ACTL_SUSPENDED) ||
+                   (irb->scsw.cmd.cstat & SCHN_STAT_PCI))
                        /* Bloody io subsystem tells us lies about cpa... */
                        index = (index - 1) & (LCS_NUM_BUFFS - 1);
                while (channel->io_idx != index) {
@@ -1425,25 +1427,24 @@ lcs_irq(struct ccw_device *cdev, unsigned long intparm, struct irb *irb)
                }
        }
 
-       if ((irb->scsw.dstat & DEV_STAT_DEV_END) ||
-           (irb->scsw.dstat & DEV_STAT_CHN_END) ||
-           (irb->scsw.dstat & DEV_STAT_UNIT_CHECK))
+       if ((irb->scsw.cmd.dstat & DEV_STAT_DEV_END) ||
+           (irb->scsw.cmd.dstat & DEV_STAT_CHN_END) ||
+           (irb->scsw.cmd.dstat & DEV_STAT_UNIT_CHECK))
                /* Mark channel as stopped. */
                channel->state = LCS_CH_STATE_STOPPED;
-       else if (irb->scsw.actl & SCSW_ACTL_SUSPENDED)
+       else if (irb->scsw.cmd.actl & SCSW_ACTL_SUSPENDED)
                /* CCW execution stopped on a suspend bit. */
                channel->state = LCS_CH_STATE_SUSPENDED;
-       if (irb->scsw.fctl & SCSW_FCTL_HALT_FUNC) {
-               if (irb->scsw.cc != 0) {
+       if (irb->scsw.cmd.fctl & SCSW_FCTL_HALT_FUNC) {
+               if (irb->scsw.cmd.cc != 0) {
                        ccw_device_halt(channel->ccwdev, (addr_t) channel);
                        return;
                }
                /* The channel has been stopped by halt_IO. */
                channel->state = LCS_CH_STATE_HALTED;
        }
-       if (irb->scsw.fctl & SCSW_FCTL_CLEAR_FUNC) {
+       if (irb->scsw.cmd.fctl & SCSW_FCTL_CLEAR_FUNC)
                channel->state = LCS_CH_STATE_CLEARED;
-       }
        /* Do the rest in the tasklet. */
        tasklet_schedule(&channel->irq_tasklet);
 }
@@ -1761,7 +1762,7 @@ lcs_get_control(struct lcs_card *card, struct lcs_cmd *cmd)
                                netif_carrier_off(card->dev);
                        break;
                default:
-                       PRINT_INFO("UNRECOGNIZED LGW COMMAND\n");
+                       LCS_DBF_TEXT(5, trace, "noLGWcmd");
                        break;
                }
        } else
@@ -2042,13 +2043,12 @@ lcs_probe_device(struct ccwgroup_device *ccwgdev)
        LCS_DBF_TEXT(2, setup, "add_dev");
         card = lcs_alloc_card();
         if (!card) {
-                PRINT_ERR("Allocation of lcs card failed\n");
+               LCS_DBF_TEXT_(2, setup, "  rc%d", -ENOMEM);
                put_device(&ccwgdev->dev);
                 return -ENOMEM;
         }
        ret = sysfs_create_group(&ccwgdev->dev.kobj, &lcs_attr_group);
        if (ret) {
-                PRINT_ERR("Creating attributes failed");
                lcs_free_card(card);
                put_device(&ccwgdev->dev);
                return ret;
@@ -2140,7 +2140,6 @@ lcs_new_device(struct ccwgroup_device *ccwgdev)
        default:
                LCS_DBF_TEXT(3, setup, "errinit");
                PRINT_ERR("LCS: Initialization failed\n");
-               PRINT_ERR("LCS: No device found!\n");
                goto out;
        }
        if (!dev)
@@ -2269,7 +2268,6 @@ lcs_remove_device(struct ccwgroup_device *ccwgdev)
        if (!card)
                return;
 
-       PRINT_INFO("Removing lcs group device ....\n");
        LCS_DBF_TEXT(3, setup, "remdev");
        LCS_DBF_HEX(3, setup, &card, sizeof(void*));
        if (ccwgdev->state == CCWGROUP_ONLINE) {