|
@@ -515,6 +515,8 @@ static int dss_mgr_wait_for_vsync(struct omap_overlay_manager *mgr)
|
|
|
|
|
|
if (mgr->device->type == OMAP_DISPLAY_TYPE_VENC) {
|
|
if (mgr->device->type == OMAP_DISPLAY_TYPE_VENC) {
|
|
irq = DISPC_IRQ_EVSYNC_ODD;
|
|
irq = DISPC_IRQ_EVSYNC_ODD;
|
|
|
|
+ } else if (mgr->device->type == OMAP_DISPLAY_TYPE_HDMI) {
|
|
|
|
+ irq = DISPC_IRQ_EVSYNC_EVEN;
|
|
} else {
|
|
} else {
|
|
if (mgr->id == OMAP_DSS_CHANNEL_LCD)
|
|
if (mgr->id == OMAP_DSS_CHANNEL_LCD)
|
|
irq = DISPC_IRQ_VSYNC;
|
|
irq = DISPC_IRQ_VSYNC;
|
|
@@ -536,7 +538,8 @@ static int dss_mgr_wait_for_go(struct omap_overlay_manager *mgr)
|
|
if (!dssdev || dssdev->state != OMAP_DSS_DISPLAY_ACTIVE)
|
|
if (!dssdev || dssdev->state != OMAP_DSS_DISPLAY_ACTIVE)
|
|
return 0;
|
|
return 0;
|
|
|
|
|
|
- if (dssdev->type == OMAP_DISPLAY_TYPE_VENC) {
|
|
|
|
|
|
+ if (dssdev->type == OMAP_DISPLAY_TYPE_VENC
|
|
|
|
+ || dssdev->type == OMAP_DISPLAY_TYPE_HDMI) {
|
|
irq = DISPC_IRQ_EVSYNC_ODD | DISPC_IRQ_EVSYNC_EVEN;
|
|
irq = DISPC_IRQ_EVSYNC_ODD | DISPC_IRQ_EVSYNC_EVEN;
|
|
} else {
|
|
} else {
|
|
if (dssdev->caps & OMAP_DSS_DISPLAY_CAP_MANUAL_UPDATE) {
|
|
if (dssdev->caps & OMAP_DSS_DISPLAY_CAP_MANUAL_UPDATE) {
|
|
@@ -613,7 +616,8 @@ int dss_mgr_wait_for_go_ovl(struct omap_overlay *ovl)
|
|
if (!dssdev || dssdev->state != OMAP_DSS_DISPLAY_ACTIVE)
|
|
if (!dssdev || dssdev->state != OMAP_DSS_DISPLAY_ACTIVE)
|
|
return 0;
|
|
return 0;
|
|
|
|
|
|
- if (dssdev->type == OMAP_DISPLAY_TYPE_VENC) {
|
|
|
|
|
|
+ if (dssdev->type == OMAP_DISPLAY_TYPE_VENC
|
|
|
|
+ || dssdev->type == OMAP_DISPLAY_TYPE_HDMI) {
|
|
irq = DISPC_IRQ_EVSYNC_ODD | DISPC_IRQ_EVSYNC_EVEN;
|
|
irq = DISPC_IRQ_EVSYNC_ODD | DISPC_IRQ_EVSYNC_EVEN;
|
|
} else {
|
|
} else {
|
|
if (dssdev->caps & OMAP_DSS_DISPLAY_CAP_MANUAL_UPDATE) {
|
|
if (dssdev->caps & OMAP_DSS_DISPLAY_CAP_MANUAL_UPDATE) {
|
|
@@ -1377,6 +1381,7 @@ static int omap_dss_mgr_apply(struct omap_overlay_manager *mgr)
|
|
case OMAP_DISPLAY_TYPE_DBI:
|
|
case OMAP_DISPLAY_TYPE_DBI:
|
|
case OMAP_DISPLAY_TYPE_SDI:
|
|
case OMAP_DISPLAY_TYPE_SDI:
|
|
case OMAP_DISPLAY_TYPE_VENC:
|
|
case OMAP_DISPLAY_TYPE_VENC:
|
|
|
|
+ case OMAP_DISPLAY_TYPE_HDMI:
|
|
default_get_overlay_fifo_thresholds(ovl->id, size,
|
|
default_get_overlay_fifo_thresholds(ovl->id, size,
|
|
&oc->burst_size, &oc->fifo_low,
|
|
&oc->burst_size, &oc->fifo_low,
|
|
&oc->fifo_high);
|
|
&oc->fifo_high);
|