diff options
Diffstat (limited to 'target/linux/layerscape/patches-5.4/802-can-0017-can-flexcan-flexcan_mailbox_read-make-use-of-flexcan.patch')
-rw-r--r-- | target/linux/layerscape/patches-5.4/802-can-0017-can-flexcan-flexcan_mailbox_read-make-use-of-flexcan.patch | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/target/linux/layerscape/patches-5.4/802-can-0017-can-flexcan-flexcan_mailbox_read-make-use-of-flexcan.patch b/target/linux/layerscape/patches-5.4/802-can-0017-can-flexcan-flexcan_mailbox_read-make-use-of-flexcan.patch new file mode 100644 index 0000000000..37c2ed3cf9 --- /dev/null +++ b/target/linux/layerscape/patches-5.4/802-can-0017-can-flexcan-flexcan_mailbox_read-make-use-of-flexcan.patch @@ -0,0 +1,37 @@ +From 6340760d0671e92b15ff92b7eda41bbdd9702437 Mon Sep 17 00:00:00 2001 +From: Marc Kleine-Budde <mkl@pengutronix.de> +Date: Fri, 1 Mar 2019 16:27:59 +0100 +Subject: [PATCH] can: flexcan: flexcan_mailbox_read() make use of + flexcan_write64() to mark the mailbox as read + +In the previous patch the function flexcan_write64() was introduced. + +This patch replaces the open coded variant in flexcan_mailbox_read() +that marks a mailbox as read, by a single call to flexcan_write64(). + +Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de> +--- + drivers/net/can/flexcan.c | 11 +++-------- + 1 file changed, 3 insertions(+), 8 deletions(-) + +--- a/drivers/net/can/flexcan.c ++++ b/drivers/net/can/flexcan.c +@@ -884,15 +884,10 @@ static struct sk_buff *flexcan_mailbox_r + } + + mark_as_read: +- if (priv->devtype_data->quirks & FLEXCAN_QUIRK_USE_OFF_TIMESTAMP) { +- /* Clear IRQ */ +- if (n < 32) +- priv->write(BIT(n), ®s->iflag1); +- else +- priv->write(BIT(n - 32), ®s->iflag2); +- } else { ++ if (priv->devtype_data->quirks & FLEXCAN_QUIRK_USE_OFF_TIMESTAMP) ++ flexcan_write64(priv, FLEXCAN_IFLAG_MB(n), ®s->iflag1); ++ else + priv->write(FLEXCAN_IFLAG_RX_FIFO_AVAILABLE, ®s->iflag1); +- } + + /* Read the Free Running Timer. It is optional but recommended + * to unlock Mailbox as soon as possible and make it available |