aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/can/usb/peak_usb/pcan_usb.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/net/can/usb/peak_usb/pcan_usb.c b/drivers/net/can/usb/peak_usb/pcan_usb.c
index 8a7982e18e4..86f26a1ede4 100644
--- a/drivers/net/can/usb/peak_usb/pcan_usb.c
+++ b/drivers/net/can/usb/peak_usb/pcan_usb.c
@@ -741,16 +741,14 @@ static int pcan_usb_encode_msg(struct peak_usb_device *dev, struct sk_buff *skb,
741 741
742 /* can id */ 742 /* can id */
743 if (cf->can_id & CAN_EFF_FLAG) { 743 if (cf->can_id & CAN_EFF_FLAG) {
744 __le32 tmp32 = cpu_to_le32(cf->can_id & CAN_ERR_MASK); 744 __le32 tmp32 = cpu_to_le32((cf->can_id & CAN_ERR_MASK) << 3);
745 745
746 tmp32 <<= 3;
747 *pc |= PCAN_USB_STATUSLEN_EXT_ID; 746 *pc |= PCAN_USB_STATUSLEN_EXT_ID;
748 memcpy(++pc, &tmp32, 4); 747 memcpy(++pc, &tmp32, 4);
749 pc += 4; 748 pc += 4;
750 } else { 749 } else {
751 __le16 tmp16 = cpu_to_le32(cf->can_id & CAN_ERR_MASK); 750 __le16 tmp16 = cpu_to_le16((cf->can_id & CAN_ERR_MASK) << 5);
752 751
753 tmp16 <<= 5;
754 memcpy(++pc, &tmp16, 2); 752 memcpy(++pc, &tmp16, 2);
755 pc += 2; 753 pc += 2;
756 } 754 }