aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/exynos
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2015-02-11 00:33:02 -0500
committerDave Airlie <airlied@redhat.com>2015-02-11 00:33:02 -0500
commitae6d57d12ab3bc833a1a9ca252cc49280713181b (patch)
tree110434c4eb0720ab6e20b563c13309415cec20ca /drivers/gpu/drm/exynos
parent2f8997902e64951228385ca1cebb0d2f16f99a23 (diff)
parent335f1a62c5a6334c4fc92c3c448d7648408d9b83 (diff)
Merge tag 'topic/drm-misc-2015-02-06' of git://anongit.freedesktop.org/drm-intel into drm-next
Flushing out my drm-misc queue with a few oddball things all over. * tag 'topic/drm-misc-2015-02-06' of git://anongit.freedesktop.org/drm-intel: drm: Use static attribute groups for managing connector sysfs entries drm: remove DRM_FORMAT_NV12MT drm/modes: Print the mode status in human readable form drm/irq: Don't disable vblank interrupts when already disabled
Diffstat (limited to 'drivers/gpu/drm/exynos')
-rw-r--r--drivers/gpu/drm/exynos/exynos_drm_fimc.c14
-rw-r--r--drivers/gpu/drm/exynos/exynos_drm_gsc.c6
-rw-r--r--drivers/gpu/drm/exynos/exynos_drm_plane.c1
-rw-r--r--drivers/gpu/drm/exynos/exynos_mixer.c2
4 files changed, 2 insertions, 21 deletions
diff --git a/drivers/gpu/drm/exynos/exynos_drm_fimc.c b/drivers/gpu/drm/exynos/exynos_drm_fimc.c
index 835b6af00970..842d6b8dc3c4 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_fimc.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_fimc.c
@@ -461,7 +461,6 @@ static int fimc_src_set_fmt_order(struct fimc_context *ctx, u32 fmt)
461 cfg |= EXYNOS_MSCTRL_C_INT_IN_3PLANE; 461 cfg |= EXYNOS_MSCTRL_C_INT_IN_3PLANE;
462 break; 462 break;
463 case DRM_FORMAT_NV12: 463 case DRM_FORMAT_NV12:
464 case DRM_FORMAT_NV12MT:
465 case DRM_FORMAT_NV16: 464 case DRM_FORMAT_NV16:
466 cfg |= (EXYNOS_MSCTRL_ORDER2P_LSB_CBCR | 465 cfg |= (EXYNOS_MSCTRL_ORDER2P_LSB_CBCR |
467 EXYNOS_MSCTRL_C_INT_IN_2PLANE); 466 EXYNOS_MSCTRL_C_INT_IN_2PLANE);
@@ -511,7 +510,6 @@ static int fimc_src_set_fmt(struct device *dev, u32 fmt)
511 case DRM_FORMAT_YVU420: 510 case DRM_FORMAT_YVU420:
512 case DRM_FORMAT_NV12: 511 case DRM_FORMAT_NV12:
513 case DRM_FORMAT_NV21: 512 case DRM_FORMAT_NV21:
514 case DRM_FORMAT_NV12MT:
515 cfg |= EXYNOS_MSCTRL_INFORMAT_YCBCR420; 513 cfg |= EXYNOS_MSCTRL_INFORMAT_YCBCR420;
516 break; 514 break;
517 default: 515 default:
@@ -524,10 +522,7 @@ static int fimc_src_set_fmt(struct device *dev, u32 fmt)
524 cfg = fimc_read(ctx, EXYNOS_CIDMAPARAM); 522 cfg = fimc_read(ctx, EXYNOS_CIDMAPARAM);
525 cfg &= ~EXYNOS_CIDMAPARAM_R_MODE_MASK; 523 cfg &= ~EXYNOS_CIDMAPARAM_R_MODE_MASK;
526 524
527 if (fmt == DRM_FORMAT_NV12MT) 525 cfg |= EXYNOS_CIDMAPARAM_R_MODE_LINEAR;
528 cfg |= EXYNOS_CIDMAPARAM_R_MODE_64X32;
529 else
530 cfg |= EXYNOS_CIDMAPARAM_R_MODE_LINEAR;
531 526
532 fimc_write(ctx, cfg, EXYNOS_CIDMAPARAM); 527 fimc_write(ctx, cfg, EXYNOS_CIDMAPARAM);
533 528
@@ -812,7 +807,6 @@ static int fimc_dst_set_fmt_order(struct fimc_context *ctx, u32 fmt)
812 cfg |= EXYNOS_CIOCTRL_YCBCR_3PLANE; 807 cfg |= EXYNOS_CIOCTRL_YCBCR_3PLANE;
813 break; 808 break;
814 case DRM_FORMAT_NV12: 809 case DRM_FORMAT_NV12:
815 case DRM_FORMAT_NV12MT:
816 case DRM_FORMAT_NV16: 810 case DRM_FORMAT_NV16:
817 cfg |= EXYNOS_CIOCTRL_ORDER2P_LSB_CBCR; 811 cfg |= EXYNOS_CIOCTRL_ORDER2P_LSB_CBCR;
818 cfg |= EXYNOS_CIOCTRL_YCBCR_2PLANE; 812 cfg |= EXYNOS_CIOCTRL_YCBCR_2PLANE;
@@ -867,7 +861,6 @@ static int fimc_dst_set_fmt(struct device *dev, u32 fmt)
867 case DRM_FORMAT_YUV420: 861 case DRM_FORMAT_YUV420:
868 case DRM_FORMAT_YVU420: 862 case DRM_FORMAT_YVU420:
869 case DRM_FORMAT_NV12: 863 case DRM_FORMAT_NV12:
870 case DRM_FORMAT_NV12MT:
871 case DRM_FORMAT_NV21: 864 case DRM_FORMAT_NV21:
872 cfg |= EXYNOS_CITRGFMT_OUTFORMAT_YCBCR420; 865 cfg |= EXYNOS_CITRGFMT_OUTFORMAT_YCBCR420;
873 break; 866 break;
@@ -883,10 +876,7 @@ static int fimc_dst_set_fmt(struct device *dev, u32 fmt)
883 cfg = fimc_read(ctx, EXYNOS_CIDMAPARAM); 876 cfg = fimc_read(ctx, EXYNOS_CIDMAPARAM);
884 cfg &= ~EXYNOS_CIDMAPARAM_W_MODE_MASK; 877 cfg &= ~EXYNOS_CIDMAPARAM_W_MODE_MASK;
885 878
886 if (fmt == DRM_FORMAT_NV12MT) 879 cfg |= EXYNOS_CIDMAPARAM_W_MODE_LINEAR;
887 cfg |= EXYNOS_CIDMAPARAM_W_MODE_64X32;
888 else
889 cfg |= EXYNOS_CIDMAPARAM_W_MODE_LINEAR;
890 880
891 fimc_write(ctx, cfg, EXYNOS_CIDMAPARAM); 881 fimc_write(ctx, cfg, EXYNOS_CIDMAPARAM);
892 882
diff --git a/drivers/gpu/drm/exynos/exynos_drm_gsc.c b/drivers/gpu/drm/exynos/exynos_drm_gsc.c
index 0261468c8019..8040ed2a831f 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_gsc.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_gsc.c
@@ -542,9 +542,6 @@ static int gsc_src_set_fmt(struct device *dev, u32 fmt)
542 cfg |= (GSC_IN_CHROMA_ORDER_CBCR | 542 cfg |= (GSC_IN_CHROMA_ORDER_CBCR |
543 GSC_IN_YUV420_2P); 543 GSC_IN_YUV420_2P);
544 break; 544 break;
545 case DRM_FORMAT_NV12MT:
546 cfg |= (GSC_IN_TILE_C_16x8 | GSC_IN_TILE_MODE);
547 break;
548 default: 545 default:
549 dev_err(ippdrv->dev, "inavlid target yuv order 0x%x.\n", fmt); 546 dev_err(ippdrv->dev, "inavlid target yuv order 0x%x.\n", fmt);
550 return -EINVAL; 547 return -EINVAL;
@@ -809,9 +806,6 @@ static int gsc_dst_set_fmt(struct device *dev, u32 fmt)
809 cfg |= (GSC_OUT_CHROMA_ORDER_CBCR | 806 cfg |= (GSC_OUT_CHROMA_ORDER_CBCR |
810 GSC_OUT_YUV420_2P); 807 GSC_OUT_YUV420_2P);
811 break; 808 break;
812 case DRM_FORMAT_NV12MT:
813 cfg |= (GSC_OUT_TILE_C_16x8 | GSC_OUT_TILE_MODE);
814 break;
815 default: 809 default:
816 dev_err(ippdrv->dev, "inavlid target yuv order 0x%x.\n", fmt); 810 dev_err(ippdrv->dev, "inavlid target yuv order 0x%x.\n", fmt);
817 return -EINVAL; 811 return -EINVAL;
diff --git a/drivers/gpu/drm/exynos/exynos_drm_plane.c b/drivers/gpu/drm/exynos/exynos_drm_plane.c
index 358cff67e5ce..2f43a3c4f7b7 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_plane.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_plane.c
@@ -23,7 +23,6 @@ static const uint32_t formats[] = {
23 DRM_FORMAT_XRGB8888, 23 DRM_FORMAT_XRGB8888,
24 DRM_FORMAT_ARGB8888, 24 DRM_FORMAT_ARGB8888,
25 DRM_FORMAT_NV12, 25 DRM_FORMAT_NV12,
26 DRM_FORMAT_NV12MT,
27}; 26};
28 27
29/* 28/*
diff --git a/drivers/gpu/drm/exynos/exynos_mixer.c b/drivers/gpu/drm/exynos/exynos_mixer.c
index ed44cd4f01f7..2fd2e5d46142 100644
--- a/drivers/gpu/drm/exynos/exynos_mixer.c
+++ b/drivers/gpu/drm/exynos/exynos_mixer.c
@@ -412,8 +412,6 @@ static void vp_video_buffer(struct mixer_context *ctx, int win)
412 win_data = &ctx->win_data[win]; 412 win_data = &ctx->win_data[win];
413 413
414 switch (win_data->pixel_format) { 414 switch (win_data->pixel_format) {
415 case DRM_FORMAT_NV12MT:
416 tiled_mode = true;
417 case DRM_FORMAT_NV12: 415 case DRM_FORMAT_NV12:
418 crcb_mode = false; 416 crcb_mode = false;
419 buf_num = 2; 417 buf_num = 2;