From: "Heiko Stübner" <heiko@sntech.de>
To: Mark Yao <mark.yao@rock-chips.com>
Cc: zwl@rock-chips.com, linux-kernel@vger.kernel.org,
tfiga@chromium.org, linux-rockchip@lists.infradead.org,
dri-devel@lists.freedesktop.org, xw@rock-chips.com,
dkm@rock-chips.com, sandy.huang@rock-chips.com,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v3 6/6] drm/rockchip: vop: support plane scale
Date: Wed, 22 Jul 2015 23:50:58 +0200 [thread overview]
Message-ID: <2669731.iJNoek9ed4@diego> (raw)
In-Reply-To: <1437467332-14006-1-git-send-email-mark.yao@rock-chips.com>
Am Dienstag, 21. Juli 2015, 16:28:52 schrieb Mark Yao:
> Win_full support 1/8 to 8 scale down/up engine, support
> all format scale.
>
> Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
> ---
> Changes in v3:
> Adviced by Tomasz Figa
> - remove unused code and unnecessary scale path.
> - use static inline funcion instead "#define", let gcc check the cast
> - move same call into helper, make code clean.
>
> Changes in v2:
> - Fix scale dest info.
> drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 196
> ++++++++++++++++++++++++++- drivers/gpu/drm/rockchip/rockchip_drm_vop.h |
> 87 ++++++++++++
> 2 files changed, 281 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
> b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c index 4dfad065..8257e98
> 100644
> --- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
> +++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
> @@ -49,6 +49,8 @@
>
> #define VOP_WIN_SET(x, win, name, v) \
> REG_SET(x, win->base, win->phy->name, v, RELAXED)
> +#define VOP_SCL_SET(x, win, name, v) \
> + REG_SET(x, win->base, win->phy->scl->name, v, RELAXED)
> #define VOP_CTRL_SET(x, name, v) \
> REG_SET(x, 0, (x)->data->ctrl->name, v, NORMAL)
>
> @@ -163,7 +165,37 @@ struct vop_ctrl {
> struct vop_reg vpost_st_end;
> };
>
> +struct vop_scl_regs {
> + struct vop_reg cbcr_vsd_mode;
> + struct vop_reg cbcr_vsu_mode;
> + struct vop_reg cbcr_hsd_mode;
> + struct vop_reg cbcr_ver_scl_mode;
> + struct vop_reg cbcr_hor_scl_mode;
> + struct vop_reg yrgb_vsd_mode;
> + struct vop_reg yrgb_vsu_mode;
> + struct vop_reg yrgb_hsd_mode;
> + struct vop_reg yrgb_ver_scl_mode;
> + struct vop_reg yrgb_hor_scl_mode;
> + struct vop_reg line_load_mode;
> + struct vop_reg cbcr_axi_gather_num;
> + struct vop_reg yrgb_axi_gather_num;
> + struct vop_reg vsd_cbcr_gt2;
> + struct vop_reg vsd_cbcr_gt4;
> + struct vop_reg vsd_yrgb_gt2;
> + struct vop_reg vsd_yrgb_gt4;
> + struct vop_reg bic_coe_sel;
> + struct vop_reg cbcr_axi_gather_en;
> + struct vop_reg yrgb_axi_gather_en;
> +
> + struct vop_reg lb_mode;
> + struct vop_reg scale_yrgb_x;
> + struct vop_reg scale_yrgb_y;
> + struct vop_reg scale_cbcr_x;
> + struct vop_reg scale_cbcr_y;
> +};
> +
> struct vop_win_phy {
> + const struct vop_scl_regs *scl;
> const uint32_t *data_formats;
> uint32_t nformats;
>
> @@ -212,7 +244,36 @@ static const uint32_t formats_234[] = {
> DRM_FORMAT_RGB565,
> };
does not apply to what's in mainline, as this patch seems to ignore
85a359f25388 ("drm/rockchip: Add BGR formats to VOP")
from Tomasz
Heiko
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel
WARNING: multiple messages have this Message-ID (diff)
From: heiko@sntech.de (Heiko Stübner)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v3 6/6] drm/rockchip: vop: support plane scale
Date: Wed, 22 Jul 2015 23:50:58 +0200 [thread overview]
Message-ID: <2669731.iJNoek9ed4@diego> (raw)
In-Reply-To: <1437467332-14006-1-git-send-email-mark.yao@rock-chips.com>
Am Dienstag, 21. Juli 2015, 16:28:52 schrieb Mark Yao:
> Win_full support 1/8 to 8 scale down/up engine, support
> all format scale.
>
> Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
> ---
> Changes in v3:
> Adviced by Tomasz Figa
> - remove unused code and unnecessary scale path.
> - use static inline funcion instead "#define", let gcc check the cast
> - move same call into helper, make code clean.
>
> Changes in v2:
> - Fix scale dest info.
> drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 196
> ++++++++++++++++++++++++++- drivers/gpu/drm/rockchip/rockchip_drm_vop.h |
> 87 ++++++++++++
> 2 files changed, 281 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
> b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c index 4dfad065..8257e98
> 100644
> --- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
> +++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
> @@ -49,6 +49,8 @@
>
> #define VOP_WIN_SET(x, win, name, v) \
> REG_SET(x, win->base, win->phy->name, v, RELAXED)
> +#define VOP_SCL_SET(x, win, name, v) \
> + REG_SET(x, win->base, win->phy->scl->name, v, RELAXED)
> #define VOP_CTRL_SET(x, name, v) \
> REG_SET(x, 0, (x)->data->ctrl->name, v, NORMAL)
>
> @@ -163,7 +165,37 @@ struct vop_ctrl {
> struct vop_reg vpost_st_end;
> };
>
> +struct vop_scl_regs {
> + struct vop_reg cbcr_vsd_mode;
> + struct vop_reg cbcr_vsu_mode;
> + struct vop_reg cbcr_hsd_mode;
> + struct vop_reg cbcr_ver_scl_mode;
> + struct vop_reg cbcr_hor_scl_mode;
> + struct vop_reg yrgb_vsd_mode;
> + struct vop_reg yrgb_vsu_mode;
> + struct vop_reg yrgb_hsd_mode;
> + struct vop_reg yrgb_ver_scl_mode;
> + struct vop_reg yrgb_hor_scl_mode;
> + struct vop_reg line_load_mode;
> + struct vop_reg cbcr_axi_gather_num;
> + struct vop_reg yrgb_axi_gather_num;
> + struct vop_reg vsd_cbcr_gt2;
> + struct vop_reg vsd_cbcr_gt4;
> + struct vop_reg vsd_yrgb_gt2;
> + struct vop_reg vsd_yrgb_gt4;
> + struct vop_reg bic_coe_sel;
> + struct vop_reg cbcr_axi_gather_en;
> + struct vop_reg yrgb_axi_gather_en;
> +
> + struct vop_reg lb_mode;
> + struct vop_reg scale_yrgb_x;
> + struct vop_reg scale_yrgb_y;
> + struct vop_reg scale_cbcr_x;
> + struct vop_reg scale_cbcr_y;
> +};
> +
> struct vop_win_phy {
> + const struct vop_scl_regs *scl;
> const uint32_t *data_formats;
> uint32_t nformats;
>
> @@ -212,7 +244,36 @@ static const uint32_t formats_234[] = {
> DRM_FORMAT_RGB565,
> };
does not apply to what's in mainline, as this patch seems to ignore
85a359f25388 ("drm/rockchip: Add BGR formats to VOP")
from Tomasz
Heiko
WARNING: multiple messages have this Message-ID (diff)
From: "Heiko Stübner" <heiko@sntech.de>
To: Mark Yao <mark.yao@rock-chips.com>
Cc: dri-devel@lists.freedesktop.org, David Airlie <airlied@linux.ie>,
Daniel Kurtz <djkurtz@chromium.org>,
Philipp Zabel <p.zabel@pengutronix.de>,
Daniel Vetter <daniel@ffwll.ch>, Rob Clark <robdclark@gmail.com>,
tfiga@chromium.org, linux-arm-kernel@lists.infradead.org,
linux-rockchip@lists.infradead.org, linux-kernel@vger.kernel.org,
sandy.huang@rock-chips.com, dkm@rock-chips.com,
zwl@rock-chips.com, xw@rock-chips.com
Subject: Re: [PATCH v3 6/6] drm/rockchip: vop: support plane scale
Date: Wed, 22 Jul 2015 23:50:58 +0200 [thread overview]
Message-ID: <2669731.iJNoek9ed4@diego> (raw)
In-Reply-To: <1437467332-14006-1-git-send-email-mark.yao@rock-chips.com>
Am Dienstag, 21. Juli 2015, 16:28:52 schrieb Mark Yao:
> Win_full support 1/8 to 8 scale down/up engine, support
> all format scale.
>
> Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
> ---
> Changes in v3:
> Adviced by Tomasz Figa
> - remove unused code and unnecessary scale path.
> - use static inline funcion instead "#define", let gcc check the cast
> - move same call into helper, make code clean.
>
> Changes in v2:
> - Fix scale dest info.
> drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 196
> ++++++++++++++++++++++++++- drivers/gpu/drm/rockchip/rockchip_drm_vop.h |
> 87 ++++++++++++
> 2 files changed, 281 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
> b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c index 4dfad065..8257e98
> 100644
> --- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
> +++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
> @@ -49,6 +49,8 @@
>
> #define VOP_WIN_SET(x, win, name, v) \
> REG_SET(x, win->base, win->phy->name, v, RELAXED)
> +#define VOP_SCL_SET(x, win, name, v) \
> + REG_SET(x, win->base, win->phy->scl->name, v, RELAXED)
> #define VOP_CTRL_SET(x, name, v) \
> REG_SET(x, 0, (x)->data->ctrl->name, v, NORMAL)
>
> @@ -163,7 +165,37 @@ struct vop_ctrl {
> struct vop_reg vpost_st_end;
> };
>
> +struct vop_scl_regs {
> + struct vop_reg cbcr_vsd_mode;
> + struct vop_reg cbcr_vsu_mode;
> + struct vop_reg cbcr_hsd_mode;
> + struct vop_reg cbcr_ver_scl_mode;
> + struct vop_reg cbcr_hor_scl_mode;
> + struct vop_reg yrgb_vsd_mode;
> + struct vop_reg yrgb_vsu_mode;
> + struct vop_reg yrgb_hsd_mode;
> + struct vop_reg yrgb_ver_scl_mode;
> + struct vop_reg yrgb_hor_scl_mode;
> + struct vop_reg line_load_mode;
> + struct vop_reg cbcr_axi_gather_num;
> + struct vop_reg yrgb_axi_gather_num;
> + struct vop_reg vsd_cbcr_gt2;
> + struct vop_reg vsd_cbcr_gt4;
> + struct vop_reg vsd_yrgb_gt2;
> + struct vop_reg vsd_yrgb_gt4;
> + struct vop_reg bic_coe_sel;
> + struct vop_reg cbcr_axi_gather_en;
> + struct vop_reg yrgb_axi_gather_en;
> +
> + struct vop_reg lb_mode;
> + struct vop_reg scale_yrgb_x;
> + struct vop_reg scale_yrgb_y;
> + struct vop_reg scale_cbcr_x;
> + struct vop_reg scale_cbcr_y;
> +};
> +
> struct vop_win_phy {
> + const struct vop_scl_regs *scl;
> const uint32_t *data_formats;
> uint32_t nformats;
>
> @@ -212,7 +244,36 @@ static const uint32_t formats_234[] = {
> DRM_FORMAT_RGB565,
> };
does not apply to what's in mainline, as this patch seems to ignore
85a359f25388 ("drm/rockchip: Add BGR formats to VOP")
from Tomasz
Heiko
next prev parent reply other threads:[~2015-07-22 21:50 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-21 8:20 [PATCH v3 0/6] drm/rockchip: fixes and new features Mark Yao
2015-07-21 8:20 ` Mark Yao
2015-07-21 8:20 ` Mark Yao
2015-07-21 8:20 ` [PATCH v3 1/6] drm/rockchip: vop: Fix virtual stride calculation Mark Yao
2015-07-21 8:20 ` Mark Yao
2015-07-21 8:20 ` Mark Yao
2015-07-21 8:20 ` [PATCH v3 2/6] drm/rockchip: vop: Fix window dest start point Mark Yao
2015-07-21 8:20 ` Mark Yao
2015-07-21 8:20 ` Mark Yao
2015-07-21 8:20 ` [PATCH v3 3/6] drm/rockchip: vop: Add yuv plane support Mark Yao
2015-07-21 8:20 ` Mark Yao
2015-07-21 8:20 ` Mark Yao
2015-07-22 21:51 ` Heiko Stübner
2015-07-22 21:51 ` Heiko Stübner
2015-07-22 21:51 ` Heiko Stübner
2015-07-23 2:01 ` Mark yao
2015-07-23 2:01 ` Mark yao
2015-07-23 2:01 ` Mark yao
2015-07-21 8:25 ` [PATCH v3 4/6] drm/rockchip: vop: Default enable win2/3 area0 bit Mark Yao
2015-07-21 8:25 ` Mark Yao
2015-07-21 8:25 ` Mark Yao
2015-07-22 21:50 ` Heiko Stübner
2015-07-22 21:50 ` Heiko Stübner
2015-07-22 21:50 ` Heiko Stübner
2015-07-21 8:27 ` [PATCH v3 5/6] drm/rockchip: vop: restore vop registers when resume Mark Yao
2015-07-21 8:27 ` Mark Yao
2015-07-21 8:27 ` Mark Yao
2015-07-21 8:28 ` [PATCH v3 6/6] drm/rockchip: vop: support plane scale Mark Yao
2015-07-21 8:28 ` Mark Yao
2015-07-21 8:28 ` Mark Yao
2015-07-22 21:50 ` Heiko Stübner [this message]
2015-07-22 21:50 ` Heiko Stübner
2015-07-22 21:50 ` Heiko Stübner
2015-07-22 21:55 ` [PATCH v3 0/6] drm/rockchip: fixes and new features Heiko Stübner
2015-07-22 21:55 ` Heiko Stübner
2015-07-22 21:55 ` Heiko Stübner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=2669731.iJNoek9ed4@diego \
--to=heiko@sntech.de \
--cc=dkm@rock-chips.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=mark.yao@rock-chips.com \
--cc=sandy.huang@rock-chips.com \
--cc=tfiga@chromium.org \
--cc=xw@rock-chips.com \
--cc=zwl@rock-chips.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.