diff options
Diffstat (limited to 'drivers/usb/gadget/f_eem.c')
-rw-r--r-- | drivers/usb/gadget/f_eem.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/usb/gadget/f_eem.c b/drivers/usb/gadget/f_eem.c index 0a577d5694fd..38226e9a371d 100644 --- a/drivers/usb/gadget/f_eem.c +++ b/drivers/usb/gadget/f_eem.c | |||
@@ -24,6 +24,7 @@ | |||
24 | #include <linux/device.h> | 24 | #include <linux/device.h> |
25 | #include <linux/etherdevice.h> | 25 | #include <linux/etherdevice.h> |
26 | #include <linux/crc32.h> | 26 | #include <linux/crc32.h> |
27 | #include <linux/slab.h> | ||
27 | 28 | ||
28 | #include "u_ether.h" | 29 | #include "u_ether.h" |
29 | 30 | ||
@@ -358,7 +359,7 @@ done: | |||
358 | * b15: bmType (0 == data) | 359 | * b15: bmType (0 == data) |
359 | */ | 360 | */ |
360 | len = skb->len; | 361 | len = skb->len; |
361 | put_unaligned_le16((len & 0x3FFF) | BIT(14), skb_push(skb, 2)); | 362 | put_unaligned_le16(len & 0x3FFF, skb_push(skb, 2)); |
362 | 363 | ||
363 | /* add a zero-length EEM packet, if needed */ | 364 | /* add a zero-length EEM packet, if needed */ |
364 | if (padlen) | 365 | if (padlen) |
@@ -464,7 +465,6 @@ static int eem_unwrap(struct gether *port, | |||
464 | } | 465 | } |
465 | 466 | ||
466 | /* validate CRC */ | 467 | /* validate CRC */ |
467 | crc = get_unaligned_le32(skb->data + len - ETH_FCS_LEN); | ||
468 | if (header & BIT(14)) { | 468 | if (header & BIT(14)) { |
469 | crc = get_unaligned_le32(skb->data + len | 469 | crc = get_unaligned_le32(skb->data + len |
470 | - ETH_FCS_LEN); | 470 | - ETH_FCS_LEN); |