瀏覽代碼

disp: msm: sde: fix invalid dual-display TVM restriction check

Currently, driver enforces that a TUI session is only happening
on a single display using the number of DSI displays. This check
leads to an atomic check failure for the dual-display use case,
since 2 DSI displays are connected at the same time. Instead of
using the number of DSI display, the validation check should use
the number of active displays.

This change modifies the validation check to use cont_splash_enabled
variable, which contains information about the interface state.

Change-Id: Ie820832df812c37ebff67f6083d6922d32cbd98a
Signed-off-by: Amine Najahi <[email protected]>
Amine Najahi 4 年之前
父節點
當前提交
387cda7632
共有 1 個文件被更改,包括 6 次插入6 次删除
  1. 6 6
      msm/sde/sde_kms.c

+ 6 - 6
msm/sde/sde_kms.c

@@ -4534,12 +4534,6 @@ int sde_kms_vm_trusted_resource_init(struct sde_kms *sde_kms)
 		return -EINVAL;
 	}
 
-	if (sde_kms->dsi_display_count != 1) {
-		SDE_ERROR("no. of displays not supported:%d\n",
-				sde_kms->dsi_display_count);
-		return -EINVAL;
-	}
-
 	dev = sde_kms->dev;
 	priv = dev->dev_private;
 	sde_kms->splash_data.type = SDE_VM_HANDOFF;
@@ -4558,6 +4552,12 @@ int sde_kms_vm_trusted_resource_init(struct sde_kms *sde_kms)
 			dsi_display_set_active_state(display, true);
 	}
 
+	if (sde_kms->splash_data.num_splash_displays != 1) {
+		SDE_ERROR("no. of displays not supported:%d\n",
+				sde_kms->splash_data.num_splash_displays);
+		goto error;
+	}
+
 	ret = sde_kms_cont_splash_config(&sde_kms->base);
 	if (ret) {
 		SDE_ERROR("error in setting handoff configs\n");