浏览代码

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 <dan.carpenter@oracle.com>
Acked-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Stephane Grosjean <s.grosjean@peak-system.com>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Stephane Grosjean 13 年之前
父节点
当前提交
1ccba2103a
共有 1 个文件被更改,包括 2 次插入4 次删除
  1. 2 4
      drivers/net/can/usb/peak_usb/pcan_usb.c

+ 2 - 4
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 */
 	/* can id */
 	if (cf->can_id & CAN_EFF_FLAG) {
 	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;
 		*pc |= PCAN_USB_STATUSLEN_EXT_ID;
 		memcpy(++pc, &tmp32, 4);
 		memcpy(++pc, &tmp32, 4);
 		pc += 4;
 		pc += 4;
 	} else {
 	} 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);
 		memcpy(++pc, &tmp16, 2);
 		pc += 2;
 		pc += 2;
 	}
 	}