From 1ccba2103a8b3a1041f261301b08b9e16f76df8a Mon Sep 17 00:00:00 2001 From: Stephane Grosjean Date: Wed, 7 Mar 2012 15:31:30 +0100 Subject: [PATCH] can: peak_usb: PCAN-USB specific part: fix little endian usage That patch fixes some bad usage of two little-endian variables, which lead to some warning/error when building the peak_usb driver. Reported-by: Dan Carpenter Acked-by: Marc Kleine-Budde Signed-off-by: Stephane Grosjean Signed-off-by: Marc Kleine-Budde --- drivers/net/can/usb/peak_usb/pcan_usb.c | 6 ++---- 1 file 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 8a7982e..86f26a1 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, /* can id */ if (cf->can_id & CAN_EFF_FLAG) { - __le32 tmp32 = cpu_to_le32(cf->can_id & CAN_ERR_MASK); + __le32 tmp32 = cpu_to_le32((cf->can_id & CAN_ERR_MASK) << 3); - tmp32 <<= 3; *pc |= PCAN_USB_STATUSLEN_EXT_ID; memcpy(++pc, &tmp32, 4); pc += 4; } else { - __le16 tmp16 = cpu_to_le32(cf->can_id & CAN_ERR_MASK); + __le16 tmp16 = cpu_to_le16((cf->can_id & CAN_ERR_MASK) << 5); - tmp16 <<= 5; memcpy(++pc, &tmp16, 2); pc += 2; } -- 2.7.4