فهرست منبع

disp: msm: sde: correct the sde vm release sequence

IRQ release needs to be done before mem release as
there can be cases in current implementation where
irq can come just after mem release casuing register
access abort.

Change-Id: If35eef9ae01d5bd3d270aba0bf4f2b8753254a15
Signed-off-by: Raviteja Tamatam <[email protected]>
Raviteja Tamatam 3 سال پیش
والد
کامیت
7fa611f44f
1فایلهای تغییر یافته به همراه5 افزوده شده و 4 حذف شده
  1. 5 4
      msm/sde/sde_vm_trusted.c

+ 5 - 4
msm/sde/sde_vm_trusted.c

@@ -1,5 +1,6 @@
 // SPDX-License-Identifier: GPL-2.0-only
 /*
+ * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
  * Copyright (c) 2020-2021, The Linux Foundation. All rights reserved.
  */
 
@@ -177,16 +178,16 @@ static int _sde_vm_release(struct sde_kms *kms)
 
 	sde_kms_vm_trusted_resource_deinit(kms);
 
+	rc = _sde_vm_release_irq(kms->vm);
+	if (rc)
+		SDE_ERROR("irq_release failed, rc = %d\n", rc);
+
 	rc = _sde_vm_release_mem(kms->vm);
 	if (rc) {
 		SDE_ERROR("mem_release failed, rc = %d\n", rc);
 		goto end;
 	}
 
-	rc = _sde_vm_release_irq(kms->vm);
-	if (rc)
-		SDE_ERROR("irq_release failed, rc = %d\n", rc);
-
 end:
 	return rc;
 }