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

Commit f4afbc8f authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "msm: ipa: do not use delay in SSR"

parents e287b361 c917ed94
Loading
Loading
Loading
Loading
+13 −13
Original line number Diff line number Diff line
@@ -1534,7 +1534,7 @@ static void ipa_free_buffer(void *user1, int user2)
	kfree(user1);
}

static int ipa_q6_pipe_delay(bool zip_pipes)
int ipa_q6_pipe_delay(bool zip_pipes)
{
	u32 reg_val = 0;
	int client_idx;
@@ -1921,14 +1921,14 @@ int ipa_q6_pre_shutdown_cleanup(void)
		BUG();

	IPA_ACTIVE_CLIENTS_INC_SPECIAL("Q6");

	/*
	 * pipe delay and holb discard for ZIP pipes are handled
	 * in post shutdown callback.
	 * Do not delay Q6 pipes here. This may result in IPA reading a
	 * DMA_TASK with lock bit set and then Q6 pipe delay is set. In this
	 * situation IPA will be remain locked as the DMA_TASK with unlock
	 * bit will not be read by IPA as pipe delay is enabled. IPA uC will
	 * wait for pipe to be empty before issuing a BAM pipe reset.
	 */
	if (ipa_q6_pipe_delay(false)) {
		IPAERR("Failed to delay Q6 pipes\n");
		BUG();
	}

	if (ipa_q6_monitor_holb_mitigation(false)) {
		IPAERR("Failed to disable HOLB monitroing on Q6 pipes\n");
@@ -1968,13 +1968,13 @@ int ipa_q6_post_shutdown_cleanup(void)
	int res;

	/*
	 * pipe delay and holb discard for ZIP pipes are handled in
	 * post shutdown.
	 * Do not delay Q6 pipes here. This may result in IPA reading a
	 * DMA_TASK with lock bit set and then Q6 pipe delay is set. In this
	 * situation IPA will be remain locked as the DMA_TASK with unlock
	 * bit will not be read by IPA as pipe delay is enabled. IPA uC will
	 * wait for pipe to be empty before issuing a BAM pipe reset.
	 */
	if (ipa_q6_pipe_delay(true)) {
		IPAERR("Failed to delay Q6 ZIP pipes\n");
		BUG();
	}

	if (ipa_q6_avoid_holb(true)) {
		IPAERR("Failed to set HOLB on Q6 ZIP pipes\n");
		BUG();