diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/video/omap2/dss/display.c | 2 | ||||
-rw-r--r-- | drivers/video/omap2/dss/dss_features.c | 2 | ||||
-rw-r--r-- | drivers/video/omap2/dss/manager.c | 9 | ||||
-rw-r--r-- | drivers/video/omap2/dss/overlay.c | 6 |
4 files changed, 14 insertions, 5 deletions
diff --git a/drivers/video/omap2/dss/display.c b/drivers/video/omap2/dss/display.c index 7d96b724c992..c40bcbd2e140 100644 --- a/drivers/video/omap2/dss/display.c +++ b/drivers/video/omap2/dss/display.c | |||
@@ -342,6 +342,7 @@ int omapdss_default_get_recommended_bpp(struct omap_dss_device *dssdev) | |||
342 | return 16; | 342 | return 16; |
343 | case OMAP_DISPLAY_TYPE_VENC: | 343 | case OMAP_DISPLAY_TYPE_VENC: |
344 | case OMAP_DISPLAY_TYPE_SDI: | 344 | case OMAP_DISPLAY_TYPE_SDI: |
345 | case OMAP_DISPLAY_TYPE_HDMI: | ||
345 | return 24; | 346 | return 24; |
346 | default: | 347 | default: |
347 | BUG(); | 348 | BUG(); |
@@ -368,6 +369,7 @@ bool dss_use_replication(struct omap_dss_device *dssdev, | |||
368 | case OMAP_DISPLAY_TYPE_DPI: | 369 | case OMAP_DISPLAY_TYPE_DPI: |
369 | bpp = dssdev->phy.dpi.data_lines; | 370 | bpp = dssdev->phy.dpi.data_lines; |
370 | break; | 371 | break; |
372 | case OMAP_DISPLAY_TYPE_HDMI: | ||
371 | case OMAP_DISPLAY_TYPE_VENC: | 373 | case OMAP_DISPLAY_TYPE_VENC: |
372 | case OMAP_DISPLAY_TYPE_SDI: | 374 | case OMAP_DISPLAY_TYPE_SDI: |
373 | bpp = 24; | 375 | bpp = 24; |
diff --git a/drivers/video/omap2/dss/dss_features.c b/drivers/video/omap2/dss/dss_features.c index 06b18f73449b..aa1622241d0d 100644 --- a/drivers/video/omap2/dss/dss_features.c +++ b/drivers/video/omap2/dss/dss_features.c | |||
@@ -130,7 +130,7 @@ static const enum omap_display_type omap4_dss_supported_displays[] = { | |||
130 | OMAP_DISPLAY_TYPE_DBI | OMAP_DISPLAY_TYPE_DSI, | 130 | OMAP_DISPLAY_TYPE_DBI | OMAP_DISPLAY_TYPE_DSI, |
131 | 131 | ||
132 | /* OMAP_DSS_CHANNEL_DIGIT */ | 132 | /* OMAP_DSS_CHANNEL_DIGIT */ |
133 | OMAP_DISPLAY_TYPE_VENC, | 133 | OMAP_DISPLAY_TYPE_VENC | OMAP_DISPLAY_TYPE_HDMI, |
134 | 134 | ||
135 | /* OMAP_DSS_CHANNEL_LCD2 */ | 135 | /* OMAP_DSS_CHANNEL_LCD2 */ |
136 | OMAP_DISPLAY_TYPE_DPI | OMAP_DISPLAY_TYPE_DBI | | 136 | OMAP_DISPLAY_TYPE_DPI | OMAP_DISPLAY_TYPE_DBI | |
diff --git a/drivers/video/omap2/dss/manager.c b/drivers/video/omap2/dss/manager.c index 1f53bf20b6cb..bcd37ec86952 100644 --- a/drivers/video/omap2/dss/manager.c +++ b/drivers/video/omap2/dss/manager.c | |||
@@ -515,6 +515,8 @@ static int dss_mgr_wait_for_vsync(struct omap_overlay_manager *mgr) | |||
515 | 515 | ||
516 | if (mgr->device->type == OMAP_DISPLAY_TYPE_VENC) { | 516 | if (mgr->device->type == OMAP_DISPLAY_TYPE_VENC) { |
517 | irq = DISPC_IRQ_EVSYNC_ODD; | 517 | irq = DISPC_IRQ_EVSYNC_ODD; |
518 | } else if (mgr->device->type == OMAP_DISPLAY_TYPE_HDMI) { | ||
519 | irq = DISPC_IRQ_EVSYNC_EVEN; | ||
518 | } else { | 520 | } else { |
519 | if (mgr->id == OMAP_DSS_CHANNEL_LCD) | 521 | if (mgr->id == OMAP_DSS_CHANNEL_LCD) |
520 | irq = DISPC_IRQ_VSYNC; | 522 | irq = DISPC_IRQ_VSYNC; |
@@ -536,7 +538,8 @@ static int dss_mgr_wait_for_go(struct omap_overlay_manager *mgr) | |||
536 | if (!dssdev || dssdev->state != OMAP_DSS_DISPLAY_ACTIVE) | 538 | if (!dssdev || dssdev->state != OMAP_DSS_DISPLAY_ACTIVE) |
537 | return 0; | 539 | return 0; |
538 | 540 | ||
539 | if (dssdev->type == OMAP_DISPLAY_TYPE_VENC) { | 541 | if (dssdev->type == OMAP_DISPLAY_TYPE_VENC |
542 | || dssdev->type == OMAP_DISPLAY_TYPE_HDMI) { | ||
540 | irq = DISPC_IRQ_EVSYNC_ODD | DISPC_IRQ_EVSYNC_EVEN; | 543 | irq = DISPC_IRQ_EVSYNC_ODD | DISPC_IRQ_EVSYNC_EVEN; |
541 | } else { | 544 | } else { |
542 | if (dssdev->caps & OMAP_DSS_DISPLAY_CAP_MANUAL_UPDATE) { | 545 | if (dssdev->caps & OMAP_DSS_DISPLAY_CAP_MANUAL_UPDATE) { |
@@ -613,7 +616,8 @@ int dss_mgr_wait_for_go_ovl(struct omap_overlay *ovl) | |||
613 | if (!dssdev || dssdev->state != OMAP_DSS_DISPLAY_ACTIVE) | 616 | if (!dssdev || dssdev->state != OMAP_DSS_DISPLAY_ACTIVE) |
614 | return 0; | 617 | return 0; |
615 | 618 | ||
616 | if (dssdev->type == OMAP_DISPLAY_TYPE_VENC) { | 619 | if (dssdev->type == OMAP_DISPLAY_TYPE_VENC |
620 | || dssdev->type == OMAP_DISPLAY_TYPE_HDMI) { | ||
617 | irq = DISPC_IRQ_EVSYNC_ODD | DISPC_IRQ_EVSYNC_EVEN; | 621 | irq = DISPC_IRQ_EVSYNC_ODD | DISPC_IRQ_EVSYNC_EVEN; |
618 | } else { | 622 | } else { |
619 | if (dssdev->caps & OMAP_DSS_DISPLAY_CAP_MANUAL_UPDATE) { | 623 | if (dssdev->caps & OMAP_DSS_DISPLAY_CAP_MANUAL_UPDATE) { |
@@ -1377,6 +1381,7 @@ static int omap_dss_mgr_apply(struct omap_overlay_manager *mgr) | |||
1377 | case OMAP_DISPLAY_TYPE_DBI: | 1381 | case OMAP_DISPLAY_TYPE_DBI: |
1378 | case OMAP_DISPLAY_TYPE_SDI: | 1382 | case OMAP_DISPLAY_TYPE_SDI: |
1379 | case OMAP_DISPLAY_TYPE_VENC: | 1383 | case OMAP_DISPLAY_TYPE_VENC: |
1384 | case OMAP_DISPLAY_TYPE_HDMI: | ||
1380 | default_get_overlay_fifo_thresholds(ovl->id, size, | 1385 | default_get_overlay_fifo_thresholds(ovl->id, size, |
1381 | &oc->burst_size, &oc->fifo_low, | 1386 | &oc->burst_size, &oc->fifo_low, |
1382 | &oc->fifo_high); | 1387 | &oc->fifo_high); |
diff --git a/drivers/video/omap2/dss/overlay.c b/drivers/video/omap2/dss/overlay.c index 996e9a4f6771..f1aca6d04011 100644 --- a/drivers/video/omap2/dss/overlay.c +++ b/drivers/video/omap2/dss/overlay.c | |||
@@ -679,7 +679,8 @@ void dss_recheck_connections(struct omap_dss_device *dssdev, bool force) | |||
679 | lcd2_mgr->set_device(lcd2_mgr, dssdev); | 679 | lcd2_mgr->set_device(lcd2_mgr, dssdev); |
680 | mgr = lcd2_mgr; | 680 | mgr = lcd2_mgr; |
681 | } | 681 | } |
682 | } else if (dssdev->type != OMAP_DISPLAY_TYPE_VENC) { | 682 | } else if (dssdev->type != OMAP_DISPLAY_TYPE_VENC |
683 | && dssdev->type != OMAP_DISPLAY_TYPE_HDMI) { | ||
683 | if (!lcd_mgr->device || force) { | 684 | if (!lcd_mgr->device || force) { |
684 | if (lcd_mgr->device) | 685 | if (lcd_mgr->device) |
685 | lcd_mgr->unset_device(lcd_mgr); | 686 | lcd_mgr->unset_device(lcd_mgr); |
@@ -688,7 +689,8 @@ void dss_recheck_connections(struct omap_dss_device *dssdev, bool force) | |||
688 | } | 689 | } |
689 | } | 690 | } |
690 | 691 | ||
691 | if (dssdev->type == OMAP_DISPLAY_TYPE_VENC) { | 692 | if (dssdev->type == OMAP_DISPLAY_TYPE_VENC |
693 | || dssdev->type == OMAP_DISPLAY_TYPE_HDMI) { | ||
692 | if (!tv_mgr->device || force) { | 694 | if (!tv_mgr->device || force) { |
693 | if (tv_mgr->device) | 695 | if (tv_mgr->device) |
694 | tv_mgr->unset_device(tv_mgr); | 696 | tv_mgr->unset_device(tv_mgr); |