Merge branch 'for-linus' of git://neil.brown.name/md
[pandora-kernel.git] / drivers / staging / et131x / et131x.c
index 98c6974..0c1c6ca 100644 (file)
@@ -3403,18 +3403,15 @@ static int nic_send_packet(struct et131x_adapter *adapter, struct tcb *tcb)
                         * returned by dma_map_page() is always 32-bit
                         * addressable (as defined by the pci/dma subsystem)
                         */
-                       desc[frag++].addr_lo =
-                           dma_map_page(&adapter->pdev->dev,
-                                        frags[i - 1].page,
-                                        frags[i - 1].page_offset,
-                                        frags[i - 1].size,
-                                        DMA_TO_DEVICE);
+                       desc[frag++].addr_lo = skb_frag_dma_map(
+                                                       &adapter->pdev->dev,
+                                                       &frags[i - 1],
+                                                       0,
+                                                       frags[i - 1].size,
+                                                       DMA_TO_DEVICE);
                }
        }
 
-       if (frag == 0)
-               return -EIO;
-
        if (phydev && phydev->speed == SPEED_1000) {
                if (++adapter->tx_ring.since_irq == PARM_TX_NUM_BUFS_DEF) {
                        /* Last element & Interrupt flag */
@@ -4472,6 +4469,12 @@ static int et131x_resume(struct device *dev)
        return 0;
 }
 
+static SIMPLE_DEV_PM_OPS(et131x_pm_ops, et131x_suspend, et131x_resume);
+#define ET131X_PM_OPS (&et131x_pm_ops)
+#else
+#define ET131X_PM_OPS NULL
+#endif
+
 /* ISR functions */
 
 /**
@@ -5236,7 +5239,7 @@ static const struct net_device_ops et131x_netdev_ops = {
        .ndo_open               = et131x_open,
        .ndo_stop               = et131x_close,
        .ndo_start_xmit         = et131x_tx,
-       .ndo_set_multicast_list = et131x_multicast,
+       .ndo_set_rx_mode        = et131x_multicast,
        .ndo_tx_timeout         = et131x_tx_timeout,
        .ndo_change_mtu         = et131x_change_mtu,
        .ndo_set_mac_address    = et131x_set_mac_addr,
@@ -5473,12 +5476,6 @@ err_out:
        return result;
 }
 
-static SIMPLE_DEV_PM_OPS(et131x_pm_ops, et131x_suspend, et131x_resume);
-#define ET131X_PM_OPS (&et131x_pm_ops)
-#else
-#define ET131X_PM_OPS NULL
-#endif
-
 static DEFINE_PCI_DEVICE_TABLE(et131x_pci_table) = {
        { PCI_VDEVICE(ATT, ET131X_PCI_DEVICE_ID_GIG), 0UL},
        { PCI_VDEVICE(ATT, ET131X_PCI_DEVICE_ID_FAST), 0UL},