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

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

Merge "mmc: Enable clock gating for cmdq"

parents be2bfede 6dbd8ebf
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -2797,7 +2797,9 @@ static void mmc_blk_cmdq_reset(struct mmc_host *host, bool clear_all)
		mmc_cmdq_discard_queue(host, 0);
reset:
	mmc_hw_reset(host);
	mmc_host_clk_hold(host);
	host->cmdq_ops->reset(host, true);
	mmc_host_clk_release(host);
	clear_bit(CMDQ_STATE_HALT, &host->cmdq_ctx.curr_state);
}

@@ -2988,6 +2990,7 @@ void mmc_blk_cmdq_req_done(struct mmc_request *mrq)
{
	struct request *req = mrq->req;

	mmc_host_clk_release(mrq->host);
	blk_complete_request(req);
}
EXPORT_SYMBOL(mmc_blk_cmdq_req_done);
+3 −3
Original line number Diff line number Diff line
@@ -1147,7 +1147,6 @@ void mmc_cmdq_post_req(struct mmc_host *host, struct mmc_request *mrq, int err)
{
	if (likely(host->cmdq_ops->post_req))
		host->cmdq_ops->post_req(host, mrq, err);
	mmc_host_clk_release(host);
}
EXPORT_SYMBOL(mmc_cmdq_post_req);

@@ -1169,7 +1168,7 @@ int mmc_cmdq_halt(struct mmc_host *host, bool halt)
	if ((halt && mmc_host_halt(host)) ||
	    (!halt && !mmc_host_halt(host)))
		return -EINVAL;

	mmc_host_clk_hold(host);
	if (host->cmdq_ops->halt) {
		err = host->cmdq_ops->halt(host, halt);
		if (!err && halt)
@@ -1179,7 +1178,7 @@ int mmc_cmdq_halt(struct mmc_host *host, bool halt)
	} else {
		err = -ENOSYS;
	}

	mmc_host_clk_release(host);
	return err;
}
EXPORT_SYMBOL(mmc_cmdq_halt);
@@ -1200,6 +1199,7 @@ EXPORT_SYMBOL(mmc_cmdq_start_req);

static void mmc_cmdq_dcmd_req_done(struct mmc_request *mrq)
{
	mmc_host_clk_release(mrq->host);
	complete(&mrq->completion);
}