From: Marc Kleine-Budde Date: Wed, 11 Sep 2024 08:09:48 +0000 (+0200) Subject: can: rockchip_canfd: rkcanfd_handle_error_int_reg_ec(): fix decoding of error code... X-Git-Tag: v6.12~507^2~9^2^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a63e10462af67257b99b5330b32d1a47583803e2;p=platform%2Fkernel%2Flinux-amlogic.git can: rockchip_canfd: rkcanfd_handle_error_int_reg_ec(): fix decoding of error code register Probably due to a copy/paste error rkcanfd_handle_error_int_reg_ec() checks twice if the RKCANFD_REG_ERROR_CODE_TX_ACK_EOF bit is set in reg_ec. Keep the correct check for RKCANFD_REG_ERROR_CODE_TX_ACK_EOF and remove the superfluous one. Reported-by: Dan Carpenter Closes: https://patch.msgid.link/9a46d10d-e4e3-40a5-8fb6-f4637959f124@stanley.mountain Fixes: ff60bfbaf67f ("can: rockchip_canfd: add driver for Rockchip CAN-FD controller") Link: https://patch.msgid.link/20240911-can-rockchip_canfd-fixes-v1-2-5ce385b5ab10@pengutronix.de Signed-off-by: Marc Kleine-Budde --- diff --git a/drivers/net/can/rockchip/rockchip_canfd-core.c b/drivers/net/can/rockchip/rockchip_canfd-core.c index 6883153e8fc1..df18c85fc078 100644 --- a/drivers/net/can/rockchip/rockchip_canfd-core.c +++ b/drivers/net/can/rockchip/rockchip_canfd-core.c @@ -491,11 +491,9 @@ rkcanfd_handle_error_int_reg_ec(struct rkcanfd_priv *priv, struct can_frame *cf, else if (reg_ec & RKCANFD_REG_ERROR_CODE_TX_CRC) cf->data[3] = CAN_ERR_PROT_LOC_CRC_SEQ; else if (reg_ec & RKCANFD_REG_ERROR_CODE_TX_ACK_EOF) - cf->data[3] = CAN_ERR_PROT_LOC_ACK; + cf->data[3] = CAN_ERR_PROT_LOC_ACK_DEL; else if (reg_ec & RKCANFD_REG_ERROR_CODE_TX_ACK) cf->data[3] = CAN_ERR_PROT_LOC_ACK; - else if (reg_ec & RKCANFD_REG_ERROR_CODE_TX_ACK_EOF) - cf->data[3] = CAN_ERR_PROT_LOC_ACK_DEL; /* RKCANFD_REG_ERROR_CODE_TX_ERROR */ else if (reg_ec & RKCANFD_REG_ERROR_CODE_TX_OVERLOAD) cf->data[2] |= CAN_ERR_PROT_OVERLOAD;