* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6: (217 commits)
  net/ieee80211: fix more crypto-related build breakage
  [PATCH] Spidernet: add ethtool -S (show statistics)
  [NET] GT96100: Delete bitrotting ethernet driver
  [PATCH] mv643xx_eth: restrict to 32-bit PPC_MULTIPLATFORM
  [PATCH] Cirrus Logic ep93xx ethernet driver
  r8169: the MMIO region of the 8167 stands behin BAR#1
  e1000, ixgb: Remove pointless wrappers
  [PATCH] Remove powerpc specific parts of 3c509 driver
  [PATCH] s2io: Switch to pci_get_device
  [PATCH] gt96100: move to pci_get_device API
  [PATCH] ehea: bugfix for register access functions
  [PATCH] e1000 disable device on PCI error
  drivers/net/phy/fixed: #if 0 some incomplete code
  drivers/net: const-ify ethtool_ops declarations
  [PATCH] ethtool: allow const ethtool_ops
  [PATCH] sky2: big endian
  [PATCH] sky2: fiber support
  [PATCH] sky2: tx pause bug fix
  drivers/net: Trim trailing whitespace
  [PATCH] ehea: IBM eHEA Ethernet Device Driver
  ...
Manually resolved conflicts in drivers/net/ixgb/ixgb_main.c and
drivers/net/sky2.c related to CHECKSUM_HW/CHECKSUM_PARTIAL changes by
commit 
84fa7933a33f806bbbaae6775e87459b1ec584c0 that just happened to be
next to unrelated changes in this update.
                                                * could do the pseudo myself and return
                                                * CHECKSUM_UNNECESSARY
                                                */
 -                                              skb->ip_summed = CHECKSUM_HW;
 +                                              skb->ip_summed = CHECKSUM_COMPLETE;
                                        }
-                               }       
+                               }
                        }
  #endif  /* RX_CHECKSUM */
  
 
        unsigned int i;
        uint8_t css, cso;
  
 -      if(likely(skb->ip_summed == CHECKSUM_HW)) {
 +      if(likely(skb->ip_summed == CHECKSUM_PARTIAL)) {
+               struct ixgb_buffer *buffer_info;
                css = skb->h.raw - skb->data;
                cso = (skb->h.raw + skb->csum) - skb->data;
  
 
        }
  
        skb_put(skb, len);
-       skb->dev = skge->netdev;
        if (skge->rx_csum) {
                skb->csum = csum;
 -              skb->ip_summed = CHECKSUM_HW;
 +              skb->ip_summed = CHECKSUM_COMPLETE;
        }
  
-       skb->protocol = eth_type_trans(skb, skge->netdev);
+       skb->protocol = eth_type_trans(skb, dev);
  
        return skb;
  error:
 
  #endif
  
        /* Handle TCP checksum offload */
 -      if (skb->ip_summed == CHECKSUM_HW) {
 +      if (skb->ip_summed == CHECKSUM_PARTIAL) {
-               u16 hdr = skb->h.raw - skb->data;
-               u16 offset = hdr + skb->csum;
+               unsigned offset = skb->h.raw - skb->data;
+               u32 tcpsum;
+ 
+               tcpsum = offset << 16;          /* sum start */
+               tcpsum |= offset + skb->csum;   /* sum write */
  
                ctrl = CALSUM | WR_SUM | INIT_SUM | LOCK_SUM;
                if (skb->nh.iph->protocol == IPPROTO_UDP)
  #endif
                case OP_RXCHKS:
                        skb = sky2->rx_ring[sky2->rx_next].skb;
 -                      skb->ip_summed = CHECKSUM_HW;
 +                      skb->ip_summed = CHECKSUM_COMPLETE;
-                       skb->csum = le16_to_cpu(status);
+                       skb->csum = status & 0xffff;
                        break;
  
                case OP_TXINDEXLE: