can: sun4i: fix arbitration lost error reporting
authorGerhard Bertelsmann <info@gerhard-bertelsmann.de>
Fri, 25 Sep 2015 16:58:38 +0000 (18:58 +0200)
committerMarc Kleine-Budde <mkl@pengutronix.de>
Tue, 13 Oct 2015 15:42:33 +0000 (17:42 +0200)
This patch fixes a bug in arbitration error reporting

Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Gerhard Bertelsmann <info@gerhard-bertelsmann.de>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
drivers/net/can/sun4i_can.c

index 10d8497635e872fc808e8e26489a70f788eae073..67bdf6d62c766c93cf24cf7af7337b0fea6ce6f3 100644 (file)
@@ -601,7 +601,7 @@ static int sun4i_can_err(struct net_device *dev, u8 isrc, u8 status)
                stats->tx_errors++;
                if (likely(skb)) {
                        cf->can_id |= CAN_ERR_LOSTARB;
-                       cf->data[0] = (alc & 0x1f) >> 8;
+                       cf->data[0] = (alc >> 8) & 0x1f;
                }
        }