can: ti_hecc: fix invalid error codes
Errors in CAN protocol (location) are reported in data[3] of the can frame instead of data[2]. Cc: linux-stable <stable@vger.kernel.org> Cc: Anant Gole <anantgole@ti.com> Signed-off-by: Olivier Sobrie <olivier@sobrie.be> Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
This commit is contained in:
parent
6ea4588686
commit
71088c4bd9
|
@ -746,12 +746,12 @@ static int ti_hecc_error(struct net_device *ndev, int int_status,
|
||||||
}
|
}
|
||||||
if (err_status & HECC_CANES_CRCE) {
|
if (err_status & HECC_CANES_CRCE) {
|
||||||
hecc_set_bit(priv, HECC_CANES, HECC_CANES_CRCE);
|
hecc_set_bit(priv, HECC_CANES, HECC_CANES_CRCE);
|
||||||
cf->data[2] |= CAN_ERR_PROT_LOC_CRC_SEQ |
|
cf->data[3] |= CAN_ERR_PROT_LOC_CRC_SEQ |
|
||||||
CAN_ERR_PROT_LOC_CRC_DEL;
|
CAN_ERR_PROT_LOC_CRC_DEL;
|
||||||
}
|
}
|
||||||
if (err_status & HECC_CANES_ACKE) {
|
if (err_status & HECC_CANES_ACKE) {
|
||||||
hecc_set_bit(priv, HECC_CANES, HECC_CANES_ACKE);
|
hecc_set_bit(priv, HECC_CANES, HECC_CANES_ACKE);
|
||||||
cf->data[2] |= CAN_ERR_PROT_LOC_ACK |
|
cf->data[3] |= CAN_ERR_PROT_LOC_ACK |
|
||||||
CAN_ERR_PROT_LOC_ACK_DEL;
|
CAN_ERR_PROT_LOC_ACK_DEL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue