aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLiviu Dudau <Liviu.Dudau@arm.com>2014-07-24 12:21:17 +0100
committerJon Medhurst <tixy@linaro.org>2015-03-04 09:34:20 +0000
commit141a8e462f91415b91650ca1164655b39080e50c (patch)
tree863e8e54eb5254884724436366c119335541897a
parentc0477aa4529e9d8f03e89997ea6c5e1eb88b7ee0 (diff)
mailbox: mhu: Acknowledge the interrupt only after data is pushed
According to the mailbox documentation the controller should ACK the RX only after it has finished pushing the data up the link. Signed-off-by: Punit Agrawal <Punit.Agrawal@arm.com> Signed-off-by: Liviu Dudau <Liviu.Dudau@arm.com> Signed-off-by: Jon Medhurst <tixy@linaro.org>
-rw-r--r--drivers/mailbox/arm_mhu.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/mailbox/arm_mhu.c b/drivers/mailbox/arm_mhu.c
index 6256caae9133..5029af71780d 100644
--- a/drivers/mailbox/arm_mhu.c
+++ b/drivers/mailbox/arm_mhu.c
@@ -130,8 +130,8 @@ static irqreturn_t mbox_handler(int irq, void *p)
memcpy(data->rx_buf, payload + RX_PAYLOAD(idx),
data->rx_size);
chan->data = NULL;
- writel(~0, mbox_base + RX_CLEAR(idx));
mbox_chan_received_data(link, data);
+ writel(~0, mbox_base + RX_CLEAR(idx));
}
return IRQ_HANDLED;