Merge "msm: ipa3: Adding chnages to update event RP from DDR"
This commit is contained in:

committed by
Gerrit - the friendly Code Review server

當前提交
aeea2f09f3
@@ -3654,6 +3654,7 @@ EXPORT_SYMBOL(gsi_query_channel_info);
|
||||
int gsi_is_channel_empty(unsigned long chan_hdl, bool *is_empty)
|
||||
{
|
||||
struct gsi_chan_ctx *ctx;
|
||||
struct gsi_evt_ctx *ev_ctx;
|
||||
spinlock_t *slock;
|
||||
unsigned long flags;
|
||||
uint64_t rp;
|
||||
@@ -3689,8 +3690,11 @@ int gsi_is_channel_empty(unsigned long chan_hdl, bool *is_empty)
|
||||
spin_lock_irqsave(slock, flags);
|
||||
|
||||
if (ctx->props.dir == GSI_CHAN_DIR_FROM_GSI && ctx->evtr) {
|
||||
rp = gsihal_read_reg_nk(GSI_EE_n_EV_CH_k_CNTXT_4,
|
||||
ee, ctx->evtr->id);
|
||||
ev_ctx = &gsi_ctx->evtr[ctx->evtr->id];
|
||||
/* Read the event ring rp from DDR to avoid mismatch */
|
||||
rp = ev_ctx->props.gsi_read_event_ring_rp(&ev_ctx->props,
|
||||
ev_ctx->id, ee);
|
||||
|
||||
rp |= ctx->evtr->ring.rp & GSI_MSB_MASK;
|
||||
ctx->evtr->ring.rp = rp;
|
||||
|
||||
|
Reference in New Issue
Block a user