msm: ipa: Use read memory barrier before reading events

Use read memory barrier before reading event from event ring.
Since ring is shared resource between IPA h/w and IPA driver
dma_rmb is used to ensure memory write is complete before
reading from driver.

Change-Id: I295a701b16362f26d47d4efe5a54364a7ee4d5a6
Signed-off-by: Akshay Pandit <pandit@codeaurora.org>
This commit is contained in:
Akshay Pandit 2020-12-02 20:58:23 +05:30
parent ae51a44fde
commit 758cc8b534

View File

@ -595,6 +595,11 @@ static void gsi_process_evt_re(struct gsi_evt_ctx *ctx,
struct gsi_xfer_compl_evt *evt;
struct gsi_chan_ctx *ch_ctx;
/* RMB before reading event ring shared b/w IPA h/w & driver
* ordering between IPA h/w store and CPU load
*/
if (callback)
dma_rmb();
evt = (struct gsi_xfer_compl_evt *)(ctx->ring.base_va +
ctx->ring.rp_local - ctx->ring.base);
gsi_process_chan(evt, notify, callback);