diff options
Diffstat (limited to 'drivers/net/sungem.c')
-rw-r--r-- | drivers/net/sungem.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/net/sungem.c b/drivers/net/sungem.c index 253e96e7ad20..785e4a535f9e 100644 --- a/drivers/net/sungem.c +++ b/drivers/net/sungem.c | |||
@@ -56,6 +56,7 @@ | |||
56 | #include <linux/if_vlan.h> | 56 | #include <linux/if_vlan.h> |
57 | #include <linux/bitops.h> | 57 | #include <linux/bitops.h> |
58 | #include <linux/mutex.h> | 58 | #include <linux/mutex.h> |
59 | #include <linux/mm.h> | ||
59 | 60 | ||
60 | #include <asm/system.h> | 61 | #include <asm/system.h> |
61 | #include <asm/io.h> | 62 | #include <asm/io.h> |
@@ -1030,7 +1031,7 @@ static int gem_start_xmit(struct sk_buff *skb, struct net_device *dev) | |||
1030 | u64 csum_start_off, csum_stuff_off; | 1031 | u64 csum_start_off, csum_stuff_off; |
1031 | 1032 | ||
1032 | csum_start_off = (u64) (skb->h.raw - skb->data); | 1033 | csum_start_off = (u64) (skb->h.raw - skb->data); |
1033 | csum_stuff_off = (u64) ((skb->h.raw + skb->csum) - skb->data); | 1034 | csum_stuff_off = csum_start_off + skb->csum_offset; |
1034 | 1035 | ||
1035 | ctrl = (TXDCTRL_CENAB | | 1036 | ctrl = (TXDCTRL_CENAB | |
1036 | (csum_start_off << 15) | | 1037 | (csum_start_off << 15) | |
@@ -2281,9 +2282,9 @@ static void gem_do_stop(struct net_device *dev, int wol) | |||
2281 | } | 2282 | } |
2282 | } | 2283 | } |
2283 | 2284 | ||
2284 | static void gem_reset_task(void *data) | 2285 | static void gem_reset_task(struct work_struct *work) |
2285 | { | 2286 | { |
2286 | struct gem *gp = (struct gem *) data; | 2287 | struct gem *gp = container_of(work, struct gem, reset_task); |
2287 | 2288 | ||
2288 | mutex_lock(&gp->pm_mutex); | 2289 | mutex_lock(&gp->pm_mutex); |
2289 | 2290 | ||
@@ -3043,7 +3044,7 @@ static int __devinit gem_init_one(struct pci_dev *pdev, | |||
3043 | gp->link_timer.function = gem_link_timer; | 3044 | gp->link_timer.function = gem_link_timer; |
3044 | gp->link_timer.data = (unsigned long) gp; | 3045 | gp->link_timer.data = (unsigned long) gp; |
3045 | 3046 | ||
3046 | INIT_WORK(&gp->reset_task, gem_reset_task, gp); | 3047 | INIT_WORK(&gp->reset_task, gem_reset_task); |
3047 | 3048 | ||
3048 | gp->lstate = link_down; | 3049 | gp->lstate = link_down; |
3049 | gp->timer_ticks = 0; | 3050 | gp->timer_ticks = 0; |