can: c_can: 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: Bhupesh Sharma <bhupesh.sharma@st.com>
Signed-off-by: Olivier Sobrie <olivier@sobrie.be>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
This commit is contained in:
Olivier Sobrie 2013-01-18 09:32:39 +01:00 коммит произвёл Marc Kleine-Budde
Родитель 5d0feaff23
Коммит 6ea4588686
1 изменённых файлов: 2 добавлений и 2 удалений

Просмотреть файл

@ -960,7 +960,7 @@ static int c_can_handle_bus_err(struct net_device *dev,
break; break;
case LEC_ACK_ERROR: case LEC_ACK_ERROR:
netdev_dbg(dev, "ack error\n"); netdev_dbg(dev, "ack error\n");
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);
break; break;
case LEC_BIT1_ERROR: case LEC_BIT1_ERROR:
@ -973,7 +973,7 @@ static int c_can_handle_bus_err(struct net_device *dev,
break; break;
case LEC_CRC_ERROR: case LEC_CRC_ERROR:
netdev_dbg(dev, "CRC error\n"); netdev_dbg(dev, "CRC error\n");
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);
break; break;
default: default: