Merge branch 'master' into upstream-fixes
[deliverable/linux.git] / drivers / net / sky2.c
index 36db93811ac74c850f5b50f5080239dfe171c648..67b0eab16589e57e96f473c11937b63a97e31556 100644 (file)
@@ -99,8 +99,6 @@ MODULE_PARM_DESC(disable_msi, "Disable Message Signaled Interrupt (MSI)");
 static const struct pci_device_id sky2_id_table[] = {
        { PCI_DEVICE(PCI_VENDOR_ID_SYSKONNECT, 0x9000) },
        { PCI_DEVICE(PCI_VENDOR_ID_SYSKONNECT, 0x9E00) },
-       { PCI_DEVICE(PCI_VENDOR_ID_DLINK, 0x4b00) },
-       { PCI_DEVICE(PCI_VENDOR_ID_DLINK, 0x4b01) },
        { PCI_DEVICE(PCI_VENDOR_ID_MARVELL, 0x4340) },
        { PCI_DEVICE(PCI_VENDOR_ID_MARVELL, 0x4341) },
        { PCI_DEVICE(PCI_VENDOR_ID_MARVELL, 0x4342) },
@@ -579,8 +577,8 @@ static void sky2_mac_init(struct sky2_hw *hw, unsigned port)
        reg = gma_read16(hw, port, GM_PHY_ADDR);
        gma_write16(hw, port, GM_PHY_ADDR, reg | GM_PAR_MIB_CLR);
 
-       for (i = 0; i < GM_MIB_CNT_SIZE; i++)
-               gma_read16(hw, port, GM_MIB_CNT_BASE + 8 * i);
+       for (i = GM_MIB_CNT_BASE; i <= GM_MIB_CNT_END; i += 4)
+               gma_read16(hw, port, i);
        gma_write16(hw, port, GM_PHY_ADDR, reg);
 
        /* transmit control */
@@ -1175,7 +1173,7 @@ static int sky2_xmit_frame(struct sk_buff *skb, struct net_device *dev)
                /* just drop the packet if non-linear expansion fails */
                if (skb_header_cloned(skb) &&
                    pskb_expand_head(skb, 0, 0, GFP_ATOMIC)) {
-                       dev_kfree_skb_any(skb);
+                       dev_kfree_skb(skb);
                        goto out_unlock;
                }
 
@@ -1324,7 +1322,7 @@ static void sky2_tx_complete(struct sky2_port *sky2, u16 done)
                                       PCI_DMA_TODEVICE);
                }
 
-               dev_kfree_skb_any(skb);
+               dev_kfree_skb(skb);
        }
 
        sky2->tx_cons = put;
@@ -2484,7 +2482,7 @@ static const struct sky2_stat {
        { "single_collisions", GM_TXF_SNG_COL },
        { "multi_collisions", GM_TXF_MUL_COL },
 
-       { "rx_short",      GM_RXE_SHT },
+       { "rx_short",      GM_RXF_SHT },
        { "rx_runt",       GM_RXE_FRAG },
        { "rx_64_byte_packets", GM_RXF_64B },
        { "rx_65_to_127_byte_packets", GM_RXF_127B },
@@ -2607,7 +2605,7 @@ static struct net_device_stats *sky2_get_stats(struct net_device *dev)
        sky2->net_stats.rx_bytes = data[1];
        sky2->net_stats.tx_packets = data[2] + data[4] + data[6];
        sky2->net_stats.rx_packets = data[3] + data[5] + data[7];
-       sky2->net_stats.multicast = data[5] + data[7];
+       sky2->net_stats.multicast = data[3] + data[5];
        sky2->net_stats.collisions = data[10];
        sky2->net_stats.tx_aborted_errors = data[12];
 
This page took 0.024473 seconds and 5 git commands to generate.