.. | .. |
---|
569 | 569 | fsm_addtimer(&ch->timer, CTCM_TIME_5_SEC, CTC_EVENT_TIMER, ch); |
---|
570 | 570 | spin_lock_irqsave(get_ccwdev_lock(ch->cdev), saveflags); |
---|
571 | 571 | ch->prof.send_stamp = jiffies; |
---|
572 | | - rc = ccw_device_start(ch->cdev, &ch->ccw[ccw_idx], |
---|
573 | | - (unsigned long)ch, 0xff, 0); |
---|
| 572 | + rc = ccw_device_start(ch->cdev, &ch->ccw[ccw_idx], 0, 0xff, 0); |
---|
574 | 573 | spin_unlock_irqrestore(get_ccwdev_lock(ch->cdev), saveflags); |
---|
575 | 574 | if (ccw_idx == 3) |
---|
576 | 575 | ch->prof.doios_single++; |
---|
.. | .. |
---|
833 | 832 | |
---|
834 | 833 | spin_lock_irqsave(get_ccwdev_lock(ch->cdev), saveflags); |
---|
835 | 834 | ch->prof.send_stamp = jiffies; |
---|
836 | | - rc = ccw_device_start(ch->cdev, &ch->ccw[ccw_idx], |
---|
837 | | - (unsigned long)ch, 0xff, 0); |
---|
| 835 | + rc = ccw_device_start(ch->cdev, &ch->ccw[ccw_idx], 0, 0xff, 0); |
---|
838 | 836 | spin_unlock_irqrestore(get_ccwdev_lock(ch->cdev), saveflags); |
---|
839 | 837 | if (ccw_idx == 3) |
---|
840 | 838 | ch->prof.doios_single++; |
---|
.. | .. |
---|
867 | 865 | /** |
---|
868 | 866 | * Start transmission of a packet. |
---|
869 | 867 | * Called from generic network device layer. |
---|
870 | | - * |
---|
871 | | - * skb Pointer to buffer containing the packet. |
---|
872 | | - * dev Pointer to interface struct. |
---|
873 | | - * |
---|
874 | | - * returns 0 if packet consumed, !0 if packet rejected. |
---|
875 | | - * Note: If we return !0, then the packet is free'd by |
---|
876 | | - * the generic network layer. |
---|
877 | 868 | */ |
---|
878 | 869 | /* first merge version - leaving both functions separated */ |
---|
879 | | -static int ctcm_tx(struct sk_buff *skb, struct net_device *dev) |
---|
| 870 | +static netdev_tx_t ctcm_tx(struct sk_buff *skb, struct net_device *dev) |
---|
880 | 871 | { |
---|
881 | 872 | struct ctcm_priv *priv = dev->ml_priv; |
---|
882 | 873 | |
---|
.. | .. |
---|
919 | 910 | } |
---|
920 | 911 | |
---|
921 | 912 | /* unmerged MPC variant of ctcm_tx */ |
---|
922 | | -static int ctcmpc_tx(struct sk_buff *skb, struct net_device *dev) |
---|
| 913 | +static netdev_tx_t ctcmpc_tx(struct sk_buff *skb, struct net_device *dev) |
---|
923 | 914 | { |
---|
924 | 915 | int len = 0; |
---|
925 | 916 | struct ctcm_priv *priv = dev->ml_priv; |
---|
.. | .. |
---|
1074 | 1065 | if (grp) { |
---|
1075 | 1066 | if (grp->fsm) |
---|
1076 | 1067 | kfree_fsm(grp->fsm); |
---|
1077 | | - if (grp->xid_skb) |
---|
1078 | | - dev_kfree_skb(grp->xid_skb); |
---|
1079 | | - if (grp->rcvd_xid_skb) |
---|
1080 | | - dev_kfree_skb(grp->rcvd_xid_skb); |
---|
| 1068 | + dev_kfree_skb(grp->xid_skb); |
---|
| 1069 | + dev_kfree_skb(grp->rcvd_xid_skb); |
---|
1081 | 1070 | tasklet_kill(&grp->mpc_tasklet2); |
---|
1082 | 1071 | kfree(grp); |
---|
1083 | 1072 | priv->mpcg = NULL; |
---|
.. | .. |
---|
1702 | 1691 | put_device(&cgdev->dev); |
---|
1703 | 1692 | } |
---|
1704 | 1693 | |
---|
1705 | | -static int ctcm_pm_suspend(struct ccwgroup_device *gdev) |
---|
1706 | | -{ |
---|
1707 | | - struct ctcm_priv *priv = dev_get_drvdata(&gdev->dev); |
---|
1708 | | - |
---|
1709 | | - if (gdev->state == CCWGROUP_OFFLINE) |
---|
1710 | | - return 0; |
---|
1711 | | - netif_device_detach(priv->channel[CTCM_READ]->netdev); |
---|
1712 | | - ctcm_close(priv->channel[CTCM_READ]->netdev); |
---|
1713 | | - if (!wait_event_timeout(priv->fsm->wait_q, |
---|
1714 | | - fsm_getstate(priv->fsm) == DEV_STATE_STOPPED, CTCM_TIME_5_SEC)) { |
---|
1715 | | - netif_device_attach(priv->channel[CTCM_READ]->netdev); |
---|
1716 | | - return -EBUSY; |
---|
1717 | | - } |
---|
1718 | | - ccw_device_set_offline(gdev->cdev[1]); |
---|
1719 | | - ccw_device_set_offline(gdev->cdev[0]); |
---|
1720 | | - return 0; |
---|
1721 | | -} |
---|
1722 | | - |
---|
1723 | | -static int ctcm_pm_resume(struct ccwgroup_device *gdev) |
---|
1724 | | -{ |
---|
1725 | | - struct ctcm_priv *priv = dev_get_drvdata(&gdev->dev); |
---|
1726 | | - int rc; |
---|
1727 | | - |
---|
1728 | | - if (gdev->state == CCWGROUP_OFFLINE) |
---|
1729 | | - return 0; |
---|
1730 | | - rc = ccw_device_set_online(gdev->cdev[1]); |
---|
1731 | | - if (rc) |
---|
1732 | | - goto err_out; |
---|
1733 | | - rc = ccw_device_set_online(gdev->cdev[0]); |
---|
1734 | | - if (rc) |
---|
1735 | | - goto err_out; |
---|
1736 | | - ctcm_open(priv->channel[CTCM_READ]->netdev); |
---|
1737 | | -err_out: |
---|
1738 | | - netif_device_attach(priv->channel[CTCM_READ]->netdev); |
---|
1739 | | - return rc; |
---|
1740 | | -} |
---|
1741 | | - |
---|
1742 | 1694 | static struct ccw_device_id ctcm_ids[] = { |
---|
1743 | 1695 | {CCW_DEVICE(0x3088, 0x08), .driver_info = ctcm_channel_type_parallel}, |
---|
1744 | 1696 | {CCW_DEVICE(0x3088, 0x1e), .driver_info = ctcm_channel_type_ficon}, |
---|
.. | .. |
---|
1768 | 1720 | .remove = ctcm_remove_device, |
---|
1769 | 1721 | .set_online = ctcm_new_device, |
---|
1770 | 1722 | .set_offline = ctcm_shutdown_device, |
---|
1771 | | - .freeze = ctcm_pm_suspend, |
---|
1772 | | - .thaw = ctcm_pm_resume, |
---|
1773 | | - .restore = ctcm_pm_resume, |
---|
1774 | 1723 | }; |
---|
1775 | 1724 | |
---|
1776 | 1725 | static ssize_t group_store(struct device_driver *ddrv, const char *buf, |
---|