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

Commit 8c887428 authored by Jilai Wang's avatar Jilai Wang
Browse files

msm: npu: Unvote bandwidth after turning off GDSC



While GDSP is turned off, it requires bandwidth to be voted to
save some information to memory. This change is to move bandwidth
unvoting after turning off GDSC.

Change-Id: I99ac6ce538d643e9f15e0e6e6d3cecad21d504bb
Signed-off-by: default avatarJilai Wang <jilaiw@codeaurora.org>
parent 54ada83a
Loading
Loading
Loading
Loading
+5 −5
Original line number Diff line number Diff line
@@ -394,20 +394,20 @@ int npu_enable_core_power(struct npu_device *npu_dev)
	mutex_lock(&npu_dev->dev_lock);
	NPU_DBG("Enable core power %d\n", pwr->pwr_vote_num);
	if (!pwr->pwr_vote_num) {
		ret = npu_enable_regulators(npu_dev);
		ret = npu_set_bw(npu_dev, 100, 100);
		if (ret)
			goto fail;

		ret = npu_set_bw(npu_dev, 100, 100);
		ret = npu_enable_regulators(npu_dev);
		if (ret) {
			npu_disable_regulators(npu_dev);
			npu_set_bw(npu_dev, 0, 0);
			goto fail;
		}

		ret = npu_enable_core_clocks(npu_dev);
		if (ret) {
			npu_set_bw(npu_dev, 0, 0);
			npu_disable_regulators(npu_dev);
			npu_set_bw(npu_dev, 0, 0);
			goto fail;
		}
		npu_resume_devbw(npu_dev);
@@ -434,8 +434,8 @@ void npu_disable_core_power(struct npu_device *npu_dev)
	if (!pwr->pwr_vote_num) {
		npu_suspend_devbw(npu_dev);
		npu_disable_core_clocks(npu_dev);
		npu_set_bw(npu_dev, 0, 0);
		npu_disable_regulators(npu_dev);
		npu_set_bw(npu_dev, 0, 0);
		pwr->active_pwrlevel = pwr->default_pwrlevel;
		pwr->uc_pwrlevel = pwr->max_pwrlevel;
		pwr->cdsprm_pwrlevel = pwr->max_pwrlevel;