Merge tag 'du-next-20190208' of git://linuxtv.org/pinchartl/media into drm-next
authorDave Airlie <airlied@redhat.com>
Mon, 11 Feb 2019 03:17:00 +0000 (13:17 +1000)
committerDave Airlie <airlied@redhat.com>
Mon, 11 Feb 2019 03:17:05 +0000 (13:17 +1000)
Renesas display drivers changes for v5.1 (2nd part):

- R8A7744 LVDS support
- DPAD0 output support on D3/E3

Signed-off-by: Dave Airlie <airlied@redhat.com>
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190208003355.GG10386@pendragon.ideasonboard.com
Documentation/devicetree/bindings/gpu/samsung-rotator.txt
drivers/gpu/drm/exynos/exynos_drm_rotator.c
drivers/gpu/drm/exynos/exynos_drm_scaler.c
drivers/gpu/drm/exynos/regs-scaler.h

index 82cd1ed0be9317cef6b7ca457f5f904d9d0e16d7..3aca2578da0bd7c3aa938df1de046cb95e86905f 100644 (file)
@@ -2,9 +2,10 @@
 
 Required properties:
   - compatible : value should be one of the following:
-       (a) "samsung,exynos4210-rotator" for Rotator IP in Exynos4210
-       (b) "samsung,exynos4212-rotator" for Rotator IP in Exynos4212/4412
-       (c) "samsung,exynos5250-rotator" for Rotator IP in Exynos5250
+       * "samsung,s5pv210-rotator" for Rotator IP in S5PV210
+       * "samsung,exynos4210-rotator" for Rotator IP in Exynos4210
+       * "samsung,exynos4212-rotator" for Rotator IP in Exynos4212/4412
+       * "samsung,exynos5250-rotator" for Rotator IP in Exynos5250
 
   - reg : Physical base address of the IP registers and length of memory
          mapped region.
index 8d67b2a54be3b66f68e008d07a6203140bf2f7f4..05abfed6f7f899d919cd4152c085d33473a154f7 100644 (file)
@@ -356,6 +356,11 @@ static int rotator_runtime_resume(struct device *dev)
 }
 #endif
 
+static const struct drm_exynos_ipp_limit rotator_s5pv210_rbg888_limits[] = {
+       { IPP_SIZE_LIMIT(BUFFER, .h = { 8, SZ_16K }, .v = { 8, SZ_16K }) },
+       { IPP_SIZE_LIMIT(AREA, .h.align = 2, .v.align = 2) },
+};
+
 static const struct drm_exynos_ipp_limit rotator_4210_rbg888_limits[] = {
        { IPP_SIZE_LIMIT(BUFFER, .h = { 8, SZ_16K }, .v = { 8, SZ_16K }) },
        { IPP_SIZE_LIMIT(AREA, .h.align = 4, .v.align = 4) },
@@ -371,6 +376,11 @@ static const struct drm_exynos_ipp_limit rotator_5250_rbg888_limits[] = {
        { IPP_SIZE_LIMIT(AREA, .h.align = 2, .v.align = 2) },
 };
 
+static const struct drm_exynos_ipp_limit rotator_s5pv210_yuv_limits[] = {
+       { IPP_SIZE_LIMIT(BUFFER, .h = { 32, SZ_64K }, .v = { 32, SZ_64K }) },
+       { IPP_SIZE_LIMIT(AREA, .h.align = 8, .v.align = 8) },
+};
+
 static const struct drm_exynos_ipp_limit rotator_4210_yuv_limits[] = {
        { IPP_SIZE_LIMIT(BUFFER, .h = { 32, SZ_64K }, .v = { 32, SZ_64K }) },
        { IPP_SIZE_LIMIT(AREA, .h.align = 8, .v.align = 8) },
@@ -381,6 +391,11 @@ static const struct drm_exynos_ipp_limit rotator_4412_yuv_limits[] = {
        { IPP_SIZE_LIMIT(AREA, .h.align = 8, .v.align = 8) },
 };
 
+static const struct exynos_drm_ipp_formats rotator_s5pv210_formats[] = {
+       { IPP_SRCDST_FORMAT(XRGB8888, rotator_s5pv210_rbg888_limits) },
+       { IPP_SRCDST_FORMAT(NV12, rotator_s5pv210_yuv_limits) },
+};
+
 static const struct exynos_drm_ipp_formats rotator_4210_formats[] = {
        { IPP_SRCDST_FORMAT(XRGB8888, rotator_4210_rbg888_limits) },
        { IPP_SRCDST_FORMAT(NV12, rotator_4210_yuv_limits) },
@@ -396,6 +411,11 @@ static const struct exynos_drm_ipp_formats rotator_5250_formats[] = {
        { IPP_SRCDST_FORMAT(NV12, rotator_4412_yuv_limits) },
 };
 
+static const struct rot_variant rotator_s5pv210_data = {
+       .formats = rotator_s5pv210_formats,
+       .num_formats = ARRAY_SIZE(rotator_s5pv210_formats),
+};
+
 static const struct rot_variant rotator_4210_data = {
        .formats = rotator_4210_formats,
        .num_formats = ARRAY_SIZE(rotator_4210_formats),
@@ -413,6 +433,9 @@ static const struct rot_variant rotator_5250_data = {
 
 static const struct of_device_id exynos_rotator_match[] = {
        {
+               .compatible = "samsung,s5pv210-rotator",
+               .data = &rotator_s5pv210_data,
+       }, {
                .compatible = "samsung,exynos4210-rotator",
                .data = &rotator_4210_data,
        }, {
index 71270efa64f3f35e7d983488b13202192936b245..ed1dd1aec902ae8200484eda7a2a53fbe6531e06 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * Copyright (C) 2017 Samsung Electronics Co.Ltd
  * Author:
- *     Andrzej Pietrasiewicz <andrzej.p@samsung.com>
+ *     Andrzej Pietrasiewicz <andrzejtp2010@gmail.com>
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License version 2 as
index fc7ccad75e74ace8402cad50d47fc14928e466c3..512a2baced11650acec70d4e8393929b0e77722b 100644 (file)
@@ -2,7 +2,7 @@
  *
  * Copyright (c) 2017 Samsung Electronics Co., Ltd.
  *             http://www.samsung.com/
- * Author: Andrzej Pietrasiewicz <andrzej.p@samsung.com>
+ * Author: Andrzej Pietrasiewicz <andrzejtp2010@gmail.com>
  *
  * Register definition file for Samsung scaler driver
  *