Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 952ccdab authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "msm: ipa3: Queue nop desc again if it fails"

parents 5bf744cc 4c94b16a
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -283,19 +283,21 @@ static void ipa3_send_nop_desc(struct work_struct *work)
		return;
	}
	list_add_tail(&tx_pkt->link, &sys->head_desc_list);
	sys->nop_pending = false;

	memset(&nop_xfer, 0, sizeof(nop_xfer));
	nop_xfer.type = GSI_XFER_ELEM_NOP;
	nop_xfer.flags = GSI_XFER_FLAG_EOT;
	nop_xfer.xfer_user_data = tx_pkt;
	if (gsi_queue_xfer(sys->ep->gsi_chan_hdl, 1, &nop_xfer, true)) {
		list_del(&tx_pkt->link);
		kmem_cache_free(ipa3_ctx->tx_pkt_wrapper_cache, tx_pkt);
		spin_unlock_bh(&sys->spinlock);
		IPAERR("gsi_queue_xfer for ch:%lu failed\n",
			sys->ep->gsi_chan_hdl);
		queue_work(sys->wq, &sys->work);
		return;
	}
	sys->nop_pending = false;
	spin_unlock_bh(&sys->spinlock);

	/* make sure TAG process is sent before clocks are gated */