ASR_BASE
Change-Id: Icf3719cc0afe3eeb3edc7fa80a2eb5199ca9dda1
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 0000000..b94992f
--- /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
+@@ -891,15 +891,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