Loading drivers/platform/msm/gsi/gsi.c +3 −15 Original line number Diff line number Diff line Loading @@ -432,12 +432,8 @@ static void gsi_process_chan(struct gsi_xfer_compl_evt *evt, notify->bytes_xfered = evt->len; if (callback) { if (atomic_read(&ch_ctx->poll_mode)) { /* * This is not expected, HW triggers an interrupt * while interrupts are masked. */ GSIERR("Calling client callback in polling mode\n"); BUG(); WARN_ON(1); } ch_ctx->props.xfer_cb(notify); } Loading Loading @@ -3074,29 +3070,21 @@ int gsi_config_channel_mode(unsigned long chan_hdl, enum gsi_chan_mode mode) curr, chan_hdl); return -GSI_STATUS_UNSUPPORTED_OP; } spin_lock_irqsave(&gsi_ctx->slock, flags); if (curr == GSI_CHAN_MODE_CALLBACK && mode == GSI_CHAN_MODE_POLL) { spin_lock_irqsave(&gsi_ctx->slock, flags); __gsi_config_ieob_irq(gsi_ctx->per.ee, 1 << ctx->evtr->id, 0); spin_unlock_irqrestore(&gsi_ctx->slock, flags); spin_lock_irqsave(&ctx->ring.slock, flags); atomic_set(&ctx->poll_mode, mode); spin_unlock_irqrestore(&ctx->ring.slock, flags); ctx->stats.callback_to_poll++; } if (curr == GSI_CHAN_MODE_POLL && mode == GSI_CHAN_MODE_CALLBACK) { spin_lock_irqsave(&ctx->ring.slock, flags); atomic_set(&ctx->poll_mode, mode); spin_unlock_irqrestore(&ctx->ring.slock, flags); spin_lock_irqsave(&gsi_ctx->slock, flags); __gsi_config_ieob_irq(gsi_ctx->per.ee, 1 << ctx->evtr->id, ~0); spin_unlock_irqrestore(&gsi_ctx->slock, flags); ctx->stats.poll_to_callback++; } spin_unlock_irqrestore(&gsi_ctx->slock, flags); return GSI_STATUS_SUCCESS; } EXPORT_SYMBOL(gsi_config_channel_mode); Loading Loading
drivers/platform/msm/gsi/gsi.c +3 −15 Original line number Diff line number Diff line Loading @@ -432,12 +432,8 @@ static void gsi_process_chan(struct gsi_xfer_compl_evt *evt, notify->bytes_xfered = evt->len; if (callback) { if (atomic_read(&ch_ctx->poll_mode)) { /* * This is not expected, HW triggers an interrupt * while interrupts are masked. */ GSIERR("Calling client callback in polling mode\n"); BUG(); WARN_ON(1); } ch_ctx->props.xfer_cb(notify); } Loading Loading @@ -3074,29 +3070,21 @@ int gsi_config_channel_mode(unsigned long chan_hdl, enum gsi_chan_mode mode) curr, chan_hdl); return -GSI_STATUS_UNSUPPORTED_OP; } spin_lock_irqsave(&gsi_ctx->slock, flags); if (curr == GSI_CHAN_MODE_CALLBACK && mode == GSI_CHAN_MODE_POLL) { spin_lock_irqsave(&gsi_ctx->slock, flags); __gsi_config_ieob_irq(gsi_ctx->per.ee, 1 << ctx->evtr->id, 0); spin_unlock_irqrestore(&gsi_ctx->slock, flags); spin_lock_irqsave(&ctx->ring.slock, flags); atomic_set(&ctx->poll_mode, mode); spin_unlock_irqrestore(&ctx->ring.slock, flags); ctx->stats.callback_to_poll++; } if (curr == GSI_CHAN_MODE_POLL && mode == GSI_CHAN_MODE_CALLBACK) { spin_lock_irqsave(&ctx->ring.slock, flags); atomic_set(&ctx->poll_mode, mode); spin_unlock_irqrestore(&ctx->ring.slock, flags); spin_lock_irqsave(&gsi_ctx->slock, flags); __gsi_config_ieob_irq(gsi_ctx->per.ee, 1 << ctx->evtr->id, ~0); spin_unlock_irqrestore(&gsi_ctx->slock, flags); ctx->stats.poll_to_callback++; } spin_unlock_irqrestore(&gsi_ctx->slock, flags); return GSI_STATUS_SUCCESS; } EXPORT_SYMBOL(gsi_config_channel_mode); Loading