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

Commit 0a6b0c8f authored by Deepak Kumar's avatar Deepak Kumar
Browse files

msm: kgsl: Clear boot OOB in case GPU start fails



Clear the boot OOB, if GPU start fails after successfully
changing KGSL state to AWARE. This is needed to make sure
GMU stop sequence works fine and recovery can happen.

Change-Id: I98832da9dea429cac3104a859e0d6e6091d959a5
Signed-off-by: default avatarDeepak Kumar <dkumar@codeaurora.org>
parent 8f98759d
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -1872,7 +1872,7 @@ static int _adreno_start(struct adreno_device *adreno_dev)

	status = kgsl_mmu_start(device);
	if (status)
		goto error_pwr_off;
		goto error_boot_oob_clear;

	status = adreno_ocmem_malloc(adreno_dev);
	if (status) {
@@ -2096,6 +2096,11 @@ static int _adreno_start(struct adreno_device *adreno_dev)
error_mmu_off:
	kgsl_mmu_stop(&device->mmu);

error_boot_oob_clear:
	if (GMU_DEV_OP_VALID(gmu_dev_ops, oob_clear) &&
		ADRENO_QUIRK(adreno_dev, ADRENO_QUIRK_HFI_USE_REG))
		gmu_dev_ops->oob_clear(adreno_dev, oob_boot_slumber);

error_pwr_off:
	/* set the state back to original state */
	kgsl_pwrctrl_change_state(device, state);