linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/6] drm/rockchip: some fixes
@ 2016-07-14  3:31 Mark Yao
  2016-07-14  3:31 ` [PATCH 1/6] drm/rockchip: dw_hdmi: remove unused #include Mark Yao
                   ` (5 more replies)
  0 siblings, 6 replies; 8+ messages in thread
From: Mark Yao @ 2016-07-14  3:31 UTC (permalink / raw)
  To: linux-arm-kernel

Here are some fixes for drm/rockchip:

These following patches were sent to upstream, seems no doubt about them,
I just rebase them to newest Dave's branch and resent.
  drm/rockchip: vop: correct the source size of uv scale factor setting
  drm/rockchip: vop: add uv_vir register field for RK3036 VOP
  drm/rockchip: fix "should it be static?" warnings
  drm/rockchip: fb: add missing header
  drm/rockchip: dw_hdmi: remove unused #include

This patch is new one, only register rename
  drm/rockchip: vop: correct rk3036 register define

John Keeping (3):
  drm/rockchip: dw_hdmi: remove unused #include
  drm/rockchip: fb: add missing header
  drm/rockchip: fix "should it be static?" warnings

Mark Yao (2):
  drm/rockchip: vop: correct the source size of uv scale factor setting
  drm/rockchip: vop: correct rk3036 register define

Yakir Yang (1):
  drm/rockchip: vop: add uv_vir register field for RK3036 VOP

 drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c | 1 -
 drivers/gpu/drm/rockchip/rockchip_drm_drv.c | 2 +-
 drivers/gpu/drm/rockchip/rockchip_drm_fb.c  | 3 ++-
 drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 8 ++++----
 drivers/gpu/drm/rockchip/rockchip_vop_reg.c | 7 ++++---
 5 files changed, 11 insertions(+), 10 deletions(-)

-- 
1.9.1

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH 1/6] drm/rockchip: dw_hdmi: remove unused #include
  2016-07-14  3:31 [PATCH 0/6] drm/rockchip: some fixes Mark Yao
@ 2016-07-14  3:31 ` Mark Yao
  2016-07-14  3:31 ` [PATCH 2/6] drm/rockchip: fb: add missing header Mark Yao
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 8+ messages in thread
From: Mark Yao @ 2016-07-14  3:31 UTC (permalink / raw)
  To: linux-arm-kernel

From: John Keeping <john@metanate.com>

drm_encoder_slave is not used in this file.

Signed-off-by: John Keeping <john@metanate.com>
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
---
 drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
index 801110f..0665fb9 100644
--- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
+++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
@@ -15,7 +15,6 @@
 #include <drm/drmP.h>
 #include <drm/drm_crtc_helper.h>
 #include <drm/drm_edid.h>
-#include <drm/drm_encoder_slave.h>
 #include <drm/bridge/dw_hdmi.h>
 
 #include "rockchip_drm_drv.h"
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 2/6] drm/rockchip: fb: add missing header
  2016-07-14  3:31 [PATCH 0/6] drm/rockchip: some fixes Mark Yao
  2016-07-14  3:31 ` [PATCH 1/6] drm/rockchip: dw_hdmi: remove unused #include Mark Yao
@ 2016-07-14  3:31 ` Mark Yao
  2016-07-14  3:31 ` [PATCH 3/6] drm/rockchip: fix "should it be static?" warnings Mark Yao
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 8+ messages in thread
From: Mark Yao @ 2016-07-14  3:31 UTC (permalink / raw)
  To: linux-arm-kernel

From: John Keeping <john@metanate.com>

This fixes the following sparse warnings:

drivers/gpu/drm/rockchip/rockchip_drm_fb.c:32:23: warning: symbol 'rockchip_fb_get_gem_obj' was not declared. Should it be static?
drivers/gpu/drm/rockchip/rockchip_drm_fb.c:315:24: warning: symbol 'rockchip_drm_framebuffer_init' was not declared. Should it be static?
drivers/gpu/drm/rockchip/rockchip_drm_fb.c:329:6: warning: symbol 'rockchip_drm_mode_config_init' was not declared. Should it be static?

Signed-off-by: John Keeping <john@metanate.com>
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
---
 drivers/gpu/drm/rockchip/rockchip_drm_fb.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_fb.c b/drivers/gpu/drm/rockchip/rockchip_drm_fb.c
index 20f12bc..4fe2ab3 100644
--- a/drivers/gpu/drm/rockchip/rockchip_drm_fb.c
+++ b/drivers/gpu/drm/rockchip/rockchip_drm_fb.c
@@ -20,6 +20,7 @@
 #include <drm/drm_crtc_helper.h>
 
 #include "rockchip_drm_drv.h"
+#include "rockchip_drm_fb.h"
 #include "rockchip_drm_gem.h"
 
 #define to_rockchip_fb(x) container_of(x, struct rockchip_drm_fb, fb)
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 3/6] drm/rockchip: fix "should it be static?" warnings
  2016-07-14  3:31 [PATCH 0/6] drm/rockchip: some fixes Mark Yao
  2016-07-14  3:31 ` [PATCH 1/6] drm/rockchip: dw_hdmi: remove unused #include Mark Yao
  2016-07-14  3:31 ` [PATCH 2/6] drm/rockchip: fb: add missing header Mark Yao
@ 2016-07-14  3:31 ` Mark Yao
  2016-07-14  3:31 ` [PATCH 4/6] drm/rockchip: vop: add uv_vir register field for RK3036 VOP Mark Yao
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 8+ messages in thread
From: Mark Yao @ 2016-07-14  3:31 UTC (permalink / raw)
  To: linux-arm-kernel

From: John Keeping <john@metanate.com>

Combined with the previous commit, this fixes all of the sparse warnings
in drm/rockchip.

Signed-off-by: John Keeping <john@metanate.com>
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
---
 drivers/gpu/drm/rockchip/rockchip_drm_drv.c | 2 +-
 drivers/gpu/drm/rockchip/rockchip_drm_fb.c  | 2 +-
 drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 4 ++--
 drivers/gpu/drm/rockchip/rockchip_vop_reg.c | 2 +-
 4 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_drv.c b/drivers/gpu/drm/rockchip/rockchip_drm_drv.c
index d665fb0..7216180 100644
--- a/drivers/gpu/drm/rockchip/rockchip_drm_drv.c
+++ b/drivers/gpu/drm/rockchip/rockchip_drm_drv.c
@@ -257,7 +257,7 @@ static void rockchip_drm_unbind(struct device *dev)
 	dev_set_drvdata(dev, NULL);
 }
 
-void rockchip_drm_lastclose(struct drm_device *dev)
+static void rockchip_drm_lastclose(struct drm_device *dev)
 {
 	struct rockchip_drm_private *priv = dev->dev_private;
 
diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_fb.c b/drivers/gpu/drm/rockchip/rockchip_drm_fb.c
index 4fe2ab3..b33debc 100644
--- a/drivers/gpu/drm/rockchip/rockchip_drm_fb.c
+++ b/drivers/gpu/drm/rockchip/rockchip_drm_fb.c
@@ -246,7 +246,7 @@ rockchip_atomic_commit_tail(struct drm_atomic_state *state)
 	drm_atomic_helper_cleanup_planes(dev, state);
 }
 
-struct drm_mode_config_helper_funcs rockchip_mode_config_helpers = {
+static struct drm_mode_config_helper_funcs rockchip_mode_config_helpers = {
 	.atomic_commit_tail = rockchip_atomic_commit_tail,
 };
 
diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
index 6255e5b..e01c435 100644
--- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
+++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
@@ -798,7 +798,7 @@ static const struct drm_plane_helper_funcs plane_helper_funcs = {
 	.atomic_disable = vop_plane_atomic_disable,
 };
 
-void vop_atomic_plane_reset(struct drm_plane *plane)
+static void vop_atomic_plane_reset(struct drm_plane *plane)
 {
 	struct vop_plane_state *vop_plane_state =
 					to_vop_plane_state(plane->state);
@@ -815,7 +815,7 @@ void vop_atomic_plane_reset(struct drm_plane *plane)
 	plane->state->plane = plane;
 }
 
-struct drm_plane_state *
+static struct drm_plane_state *
 vop_atomic_plane_duplicate_state(struct drm_plane *plane)
 {
 	struct vop_plane_state *old_vop_plane_state;
diff --git a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c
index 3166b46..52661d1 100644
--- a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c
+++ b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c
@@ -299,7 +299,7 @@ static int vop_remove(struct platform_device *pdev)
 	return 0;
 }
 
-struct platform_driver vop_platform_driver = {
+static struct platform_driver vop_platform_driver = {
 	.probe = vop_probe,
 	.remove = vop_remove,
 	.driver = {
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 4/6] drm/rockchip: vop: add uv_vir register field for RK3036 VOP
  2016-07-14  3:31 [PATCH 0/6] drm/rockchip: some fixes Mark Yao
                   ` (2 preceding siblings ...)
  2016-07-14  3:31 ` [PATCH 3/6] drm/rockchip: fix "should it be static?" warnings Mark Yao
@ 2016-07-14  3:31 ` Mark Yao
  2016-07-14  3:33 ` [PATCH 5/6] drm/rockchip: vop: correct the source size of uv scale factor setting Mark Yao
  2016-07-14  3:33 ` [PATCH 6/6] drm/rockchip: vop: correct rk3036 register define Mark Yao
  5 siblings, 0 replies; 8+ messages in thread
From: Mark Yao @ 2016-07-14  3:31 UTC (permalink / raw)
  To: linux-arm-kernel

From: Yakir Yang <ykk@rock-chips.com>

The WIN0 of RK3036 VOP could support YUV data format, but driver
forget to add the uv_vir register field for it.

Signed-off-by: Yakir Yang <ykk@rock-chips.com>
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
---
 drivers/gpu/drm/rockchip/rockchip_vop_reg.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c
index 52661d1..a348a7a 100644
--- a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c
+++ b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c
@@ -210,6 +210,7 @@ static const struct vop_win_phy rk3036_win0_data = {
 	.yrgb_mst = VOP_REG(RK3036_WIN0_YRGB_MST, 0xffffffff, 0),
 	.uv_mst = VOP_REG(RK3036_WIN0_CBR_MST, 0xffffffff, 0),
 	.yrgb_vir = VOP_REG(RK3036_WIN0_VIR, 0xffff, 0),
+	.uv_vir = VOP_REG(RK3036_WIN0_VIR, 0x1fff, 16),
 };
 
 static const struct vop_win_phy rk3036_win1_data = {
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 5/6] drm/rockchip: vop: correct the source size of uv scale factor setting
  2016-07-14  3:31 [PATCH 0/6] drm/rockchip: some fixes Mark Yao
                   ` (3 preceding siblings ...)
  2016-07-14  3:31 ` [PATCH 4/6] drm/rockchip: vop: add uv_vir register field for RK3036 VOP Mark Yao
@ 2016-07-14  3:33 ` Mark Yao
  2016-07-14  3:33 ` [PATCH 6/6] drm/rockchip: vop: correct rk3036 register define Mark Yao
  5 siblings, 0 replies; 8+ messages in thread
From: Mark Yao @ 2016-07-14  3:33 UTC (permalink / raw)
  To: linux-arm-kernel

When the input color format is YUV, we need to do some external scale
for CBCR. Like,
 * In YUV420 data format:
     cbcr_xscale = dst_w / src_w * 2;
     cbcr_yscale = dst_h / src_h * 2;
 * In YUV422 data format:
     cbcr_xscale = dst_w / src_w * 2;
     cbcr_yscale = dst_h / src_h;
 * In YUV444 data format
     cbcr_xscale = dst_w / src_w;
     cbcr_yscale = dst_h / src_h;

Signed-off-by: Yakir Yang <ykk@rock-chips.com>
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
---
 drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
index e01c435..aad105b 100644
--- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
+++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
@@ -328,9 +328,9 @@ static void scl_vop_cal_scl_fac(struct vop *vop, const struct vop_win_data *win,
 			    scl_cal_scale2(src_h, dst_h));
 		if (is_yuv) {
 			VOP_SCL_SET(vop, win, scale_cbcr_x,
-				    scl_cal_scale2(src_w, dst_w));
+				    scl_cal_scale2(cbcr_src_w, dst_w));
 			VOP_SCL_SET(vop, win, scale_cbcr_y,
-				    scl_cal_scale2(src_h, dst_h));
+				    scl_cal_scale2(cbcr_src_h, dst_h));
 		}
 		return;
 	}
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 6/6] drm/rockchip: vop: correct rk3036 register define
  2016-07-14  3:31 [PATCH 0/6] drm/rockchip: some fixes Mark Yao
                   ` (4 preceding siblings ...)
  2016-07-14  3:33 ` [PATCH 5/6] drm/rockchip: vop: correct the source size of uv scale factor setting Mark Yao
@ 2016-07-14  3:33 ` Mark Yao
  2016-07-14 15:36   ` Sean Paul
  5 siblings, 1 reply; 8+ messages in thread
From: Mark Yao @ 2016-07-14  3:33 UTC (permalink / raw)
  To: linux-arm-kernel

Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
Reported-by: Tomasz Figa <tfiga@chromium.org>
---
 drivers/gpu/drm/rockchip/rockchip_vop_reg.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c
index a348a7a..919992c 100644
--- a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c
+++ b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c
@@ -190,7 +190,7 @@ static const struct vop_data rk3288_vop = {
 	.win_size = ARRAY_SIZE(rk3288_vop_win_data),
 };
 
-static const struct vop_scl_regs rk3066_win_scl = {
+static const struct vop_scl_regs rk3036_win_scl = {
 	.scale_yrgb_x = VOP_REG(RK3036_WIN0_SCL_FACTOR_YRGB, 0xffff, 0x0),
 	.scale_yrgb_y = VOP_REG(RK3036_WIN0_SCL_FACTOR_YRGB, 0xffff, 16),
 	.scale_cbcr_x = VOP_REG(RK3036_WIN0_SCL_FACTOR_CBR, 0xffff, 0x0),
@@ -198,7 +198,7 @@ static const struct vop_scl_regs rk3066_win_scl = {
 };
 
 static const struct vop_win_phy rk3036_win0_data = {
-	.scl = &rk3066_win_scl,
+	.scl = &rk3036_win_scl,
 	.data_formats = formats_win_full,
 	.nformats = ARRAY_SIZE(formats_win_full),
 	.enable = VOP_REG(RK3036_SYS_CTRL, 0x1, 0),
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH 6/6] drm/rockchip: vop: correct rk3036 register define
  2016-07-14  3:33 ` [PATCH 6/6] drm/rockchip: vop: correct rk3036 register define Mark Yao
@ 2016-07-14 15:36   ` Sean Paul
  0 siblings, 0 replies; 8+ messages in thread
From: Sean Paul @ 2016-07-14 15:36 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, Jul 13, 2016 at 8:33 PM, Mark Yao <mark.yao@rock-chips.com> wrote:
> Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
> Reported-by: Tomasz Figa <tfiga@chromium.org>

Reviewed-by: Sean Paul <seanpaul@chromium.org>

> ---
>  drivers/gpu/drm/rockchip/rockchip_vop_reg.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c
> index a348a7a..919992c 100644
> --- a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c
> +++ b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c
> @@ -190,7 +190,7 @@ static const struct vop_data rk3288_vop = {
>         .win_size = ARRAY_SIZE(rk3288_vop_win_data),
>  };
>
> -static const struct vop_scl_regs rk3066_win_scl = {
> +static const struct vop_scl_regs rk3036_win_scl = {
>         .scale_yrgb_x = VOP_REG(RK3036_WIN0_SCL_FACTOR_YRGB, 0xffff, 0x0),
>         .scale_yrgb_y = VOP_REG(RK3036_WIN0_SCL_FACTOR_YRGB, 0xffff, 16),
>         .scale_cbcr_x = VOP_REG(RK3036_WIN0_SCL_FACTOR_CBR, 0xffff, 0x0),
> @@ -198,7 +198,7 @@ static const struct vop_scl_regs rk3066_win_scl = {
>  };
>
>  static const struct vop_win_phy rk3036_win0_data = {
> -       .scl = &rk3066_win_scl,
> +       .scl = &rk3036_win_scl,
>         .data_formats = formats_win_full,
>         .nformats = ARRAY_SIZE(formats_win_full),
>         .enable = VOP_REG(RK3036_SYS_CTRL, 0x1, 0),
> --
> 1.9.1
>
>
> _______________________________________________
> dri-devel mailing list
> dri-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2016-07-14 15:36 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-07-14  3:31 [PATCH 0/6] drm/rockchip: some fixes Mark Yao
2016-07-14  3:31 ` [PATCH 1/6] drm/rockchip: dw_hdmi: remove unused #include Mark Yao
2016-07-14  3:31 ` [PATCH 2/6] drm/rockchip: fb: add missing header Mark Yao
2016-07-14  3:31 ` [PATCH 3/6] drm/rockchip: fix "should it be static?" warnings Mark Yao
2016-07-14  3:31 ` [PATCH 4/6] drm/rockchip: vop: add uv_vir register field for RK3036 VOP Mark Yao
2016-07-14  3:33 ` [PATCH 5/6] drm/rockchip: vop: correct the source size of uv scale factor setting Mark Yao
2016-07-14  3:33 ` [PATCH 6/6] drm/rockchip: vop: correct rk3036 register define Mark Yao
2016-07-14 15:36   ` Sean Paul

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).