--- a/drivers/net/can/flexcan.c
+++ b/drivers/net/can/flexcan.c
-@@ -783,16 +783,23 @@ static inline struct flexcan_priv *rx_of
+@@ -785,16 +785,23 @@ static inline struct flexcan_priv *rx_of
return container_of(offload, struct flexcan_priv, offload);
}
mb = flexcan_get_mb(priv, n);
if (priv->devtype_data->quirks & FLEXCAN_QUIRK_USE_OFF_TIMESTAMP) {
-@@ -806,7 +813,7 @@ static unsigned int flexcan_mailbox_read
+@@ -808,7 +815,7 @@ static unsigned int flexcan_mailbox_read
code = reg_ctrl & FLEXCAN_MB_CODE_MASK;
if ((code != FLEXCAN_MB_CODE_RX_FULL) &&
(code != FLEXCAN_MB_CODE_RX_OVERRUN))
if (code == FLEXCAN_MB_CODE_RX_OVERRUN) {
/* This MB was overrun, we lost data */
-@@ -816,11 +823,17 @@ static unsigned int flexcan_mailbox_read
+@@ -818,11 +825,17 @@ static unsigned int flexcan_mailbox_read
} else {
reg_iflag1 = priv->read(®s->iflag1);
if (!(reg_iflag1 & FLEXCAN_IFLAG_RX_FIFO_AVAILABLE))
/* increase timstamp to full 32 bit */
*timestamp = reg_ctrl << 16;
-@@ -839,7 +852,7 @@ static unsigned int flexcan_mailbox_read
+@@ -841,7 +854,7 @@ static unsigned int flexcan_mailbox_read
*(__be32 *)(cf->data + i) = data;
}
if (priv->devtype_data->quirks & FLEXCAN_QUIRK_USE_OFF_TIMESTAMP) {
/* Clear IRQ */
if (n < 32)
-@@ -856,7 +869,7 @@ static unsigned int flexcan_mailbox_read
+@@ -858,7 +871,7 @@ static unsigned int flexcan_mailbox_read
*/
priv->read(®s->timer);