summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVishal Mahaveer2018-02-27 16:06:18 -0600
committerVishal Mahaveer2018-02-27 16:08:03 -0600
commit86fef9cbae90ea05f7551e407cc0bcbb17f767a1 (patch)
tree7cea26c05f59c3ea62250c9e5ea40c32017a2581
parent4960a2dec45964011a59ca492e7fd52723713f52 (diff)
downloadhardware-ti-dra7xx-d-oreo-mr1-release.tar.gz
hardware-ti-dra7xx-d-oreo-mr1-release.tar.xz
hardware-ti-dra7xx-d-oreo-mr1-release.zip
hwc: Handle HDMI hotplug disconnect correctlyd-oreo-mr1-release
This change propagates correct state information on HDMI hotplug disconnect event. Change-Id: I4791fa7f4f61328a4831e416763f648a577dbc3c Signed-off-by: Vishal Mahaveer <vishalm@ti.com> Signed-off-by: Gowtham Tammana <g-tammana@ti.com>
-rw-r--r--hwcomposer/hwc.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/hwcomposer/hwc.c b/hwcomposer/hwc.c
index a7f0200..9b7ebd6 100644
--- a/hwcomposer/hwc.c
+++ b/hwcomposer/hwc.c
@@ -485,7 +485,6 @@ static void handle_hotplug(omap_hwc_device_t *hwc_dev)
485 } 485 }
486 486
487 bool state = hwc_dev->ext_disp_state; 487 bool state = hwc_dev->ext_disp_state;
488 bool hotplug = false;
489 488
490 pthread_mutex_lock(&hwc_dev->ctx_mutex); 489 pthread_mutex_lock(&hwc_dev->ctx_mutex);
491 490
@@ -497,7 +496,6 @@ static void handle_hotplug(omap_hwc_device_t *hwc_dev)
497 pthread_mutex_unlock(&hwc_dev->ctx_mutex); 496 pthread_mutex_unlock(&hwc_dev->ctx_mutex);
498 return; 497 return;
499 } 498 }
500 hotplug = true;
501 } else 499 } else
502 remove_external_hdmi_display(hwc_dev); 500 remove_external_hdmi_display(hwc_dev);
503 501
@@ -513,7 +511,7 @@ static void handle_hotplug(omap_hwc_device_t *hwc_dev)
513 * still a race condition where a hotplug event might occur after the open 511 * still a race condition where a hotplug event might occur after the open
514 * but before the procs are registered. */ 512 * but before the procs are registered. */
515 if (hwc_dev->cb_procs) { 513 if (hwc_dev->cb_procs) {
516 if (hotplug && hwc_dev->cb_procs->hotplug) { 514 if (hwc_dev->cb_procs->hotplug) {
517 hwc_dev->cb_procs->hotplug(hwc_dev->cb_procs, HWC_DISPLAY_EXTERNAL, state); 515 hwc_dev->cb_procs->hotplug(hwc_dev->cb_procs, HWC_DISPLAY_EXTERNAL, state);
518 } else { 516 } else {
519 if (hwc_dev->cb_procs->invalidate) 517 if (hwc_dev->cb_procs->invalidate)