can: etas_es58x: use sizeof and sizeof_field macros instead of constant values
authorVincent Mailhol <mailhol.vincent@wanadoo.fr>
Mon, 28 Jun 2021 15:54:19 +0000 (00:54 +0900)
committerMarc Kleine-Budde <mkl@pengutronix.de>
Sun, 25 Jul 2021 09:36:28 +0000 (11:36 +0200)
Replace two constant values by a call to sizeof{,_field} on the
relevant field to make the logic easier to understand.

Link: https://lore.kernel.org/r/20210628155420.1176217-6-mailhol.vincent@wanadoo.fr
Signed-off-by: Vincent Mailhol <mailhol.vincent@wanadoo.fr>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
drivers/net/can/usb/etas_es58x/es581_4.c
drivers/net/can/usb/etas_es58x/es58x_core.c

index 1985f772fc3c2593a3dde465b90d59a467cc4b7a..88dbfe41ba8582d569956d509273b023213a959d 100644 (file)
@@ -355,7 +355,7 @@ static int es581_4_tx_can_msg(struct es58x_priv *priv,
                return -EMSGSIZE;
 
        if (priv->tx_can_msg_cnt == 0) {
-               msg_len = 1; /* struct es581_4_bulk_tx_can_msg:num_can_msg */
+               msg_len = sizeof(es581_4_urb_cmd->bulk_tx_can_msg.num_can_msg);
                es581_4_fill_urb_header(urb_cmd, ES581_4_CAN_COMMAND_TYPE,
                                        ES581_4_CMD_ID_TX_MSG,
                                        priv->channel_idx, msg_len);
index 126e4d57332e8b298bca795b9fd7f36dbb5eb801..96a13c770e4a18d84905fb0386c074d21d8a2a01 100644 (file)
@@ -70,7 +70,7 @@ MODULE_DEVICE_TABLE(usb, es58x_id_table);
  * bytes (the start of frame) are skipped and the CRC calculation
  * starts on the third byte.
  */
-#define ES58X_CRC_CALC_OFFSET 2
+#define ES58X_CRC_CALC_OFFSET sizeof_field(union es58x_urb_cmd, sof)
 
 /**
  * es58x_calculate_crc() - Compute the crc16 of a given URB.