From mboxrd@z Thu Jan 1 00:00:00 1970
From: Philipp Zabel
Date: Fri, 20 May 2016 14:31:43 +0000
Subject: Re: [PATCH 2/3] drm/imx: convey the pixelclk-active and de-active flags from DT to the ipu-di driver
Message-Id: <1463754703.4322.42.camel@pengutronix.de>
List-Id:
References: <1463751294-24769-1-git-send-email-LW@KARO-electronics.de>
<1463751294-24769-3-git-send-email-LW@KARO-electronics.de>
In-Reply-To: <1463751294-24769-3-git-send-email-LW@KARO-electronics.de>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit
To: Lothar =?ISO-8859-1?Q?Wa=DFmann?=
Cc: linux-fbdev@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, Russell King - ARM Linux , Tomi Valkeinen , Sascha Hauer , Uwe =?ISO-8859-1?Q?Kleine-K=F6nig?= , Jean-Christophe Plagniol-Villard
Hi Lothar,
Am Freitag, den 20.05.2016, 15:34 +0200 schrieb Lothar Waßmann:
> Currently these flags are lost in the call
> drm_display_mode_from_videomode()
>
> Signed-off-by: Lothar Waßmann
thank you for the patches. The other two look fine to me, could you
rebase this one on top of:
https://patchwork.kernel.org/patch/9113791/ ("drm/imx: use bus_flags for
pixel clock polarity")?
regards
Philipp
> ---
> drivers/gpu/drm/imx/imx-drm-core.c | 12 +++++++----
> drivers/gpu/drm/imx/imx-drm.h | 7 ++++---
> drivers/gpu/drm/imx/imx-ldb.c | 37 ++++++++++++++++++++++++++--------
> drivers/gpu/drm/imx/ipuv3-crtc.c | 7 ++++---
> drivers/gpu/drm/imx/parallel-display.c | 31 ++++++++++++++++++++++++----
> drivers/gpu/ipu-v3/ipu-di.c | 14 +++++++------
> include/video/imx-ipu-v3.h | 5 +----
> 7 files changed, 81 insertions(+), 32 deletions(-)
>
> diff --git a/drivers/gpu/drm/imx/imx-drm-core.c b/drivers/gpu/drm/imx/imx-drm-core.c
> index 2453fb1..51735b1 100644
> --- a/drivers/gpu/drm/imx/imx-drm-core.c
> +++ b/drivers/gpu/drm/imx/imx-drm-core.c
> @@ -96,7 +96,8 @@ static struct imx_drm_crtc *imx_drm_find_crtc(struct drm_crtc *crtc)
> return NULL;
> }
>
> -int imx_drm_set_bus_format_pins(struct drm_encoder *encoder, u32 bus_format,
> +int imx_drm_set_bus_format_pins(struct drm_encoder *encoder,
> + u32 bus_format, u32 bus_flags,
> int hsync_pin, int vsync_pin)
> {
> struct imx_drm_crtc_helper_funcs *helper;
> @@ -109,14 +110,17 @@ int imx_drm_set_bus_format_pins(struct drm_encoder *encoder, u32 bus_format,
> helper = &imx_crtc->imx_drm_helper_funcs;
> if (helper->set_interface_pix_fmt)
> return helper->set_interface_pix_fmt(encoder->crtc,
> - bus_format, hsync_pin, vsync_pin);
> + bus_format, bus_flags,
> + hsync_pin, vsync_pin);
> return 0;
> }
> EXPORT_SYMBOL_GPL(imx_drm_set_bus_format_pins);
>
> -int imx_drm_set_bus_format(struct drm_encoder *encoder, u32 bus_format)
> +int imx_drm_set_bus_format(struct drm_encoder *encoder, u32 bus_format,
> + u32 bus_flags)
> {
> - return imx_drm_set_bus_format_pins(encoder, bus_format, 2, 3);
> + return imx_drm_set_bus_format_pins(encoder, bus_format, bus_flags,
> + 2, 3);
> }
> EXPORT_SYMBOL_GPL(imx_drm_set_bus_format);
>
> diff --git a/drivers/gpu/drm/imx/imx-drm.h b/drivers/gpu/drm/imx/imx-drm.h
> index b0241b9..b74baf7 100644
> --- a/drivers/gpu/drm/imx/imx-drm.h
> +++ b/drivers/gpu/drm/imx/imx-drm.h
> @@ -19,7 +19,8 @@ struct imx_drm_crtc_helper_funcs {
> int (*enable_vblank)(struct drm_crtc *crtc);
> void (*disable_vblank)(struct drm_crtc *crtc);
> int (*set_interface_pix_fmt)(struct drm_crtc *crtc,
> - u32 bus_format, int hsync_pin, int vsync_pin);
> + u32 bus_format, u32 bus_flags,
> + int hsync_pin, int vsync_pin);
> const struct drm_crtc_helper_funcs *crtc_helper_funcs;
> const struct drm_crtc_funcs *crtc_funcs;
> };
> @@ -42,9 +43,9 @@ void imx_drm_mode_config_init(struct drm_device *drm);
> struct drm_gem_cma_object *imx_drm_fb_get_obj(struct drm_framebuffer *fb);
>
> int imx_drm_set_bus_format_pins(struct drm_encoder *encoder,
> - u32 bus_format, int hsync_pin, int vsync_pin);
> + u32 bus_format, u32 bus_flags, int hsync_pin, int vsync_pin);
> int imx_drm_set_bus_format(struct drm_encoder *encoder,
> - u32 bus_format);
> + u32 bus_format, u32 bus_flags);
>
> int imx_drm_encoder_parse_of(struct drm_device *drm,
> struct drm_encoder *encoder, struct device_node *np);
> diff --git a/drivers/gpu/drm/imx/imx-ldb.c b/drivers/gpu/drm/imx/imx-ldb.c
> index b2dc4df..67706eea 100644
> --- a/drivers/gpu/drm/imx/imx-ldb.c
> +++ b/drivers/gpu/drm/imx/imx-ldb.c
> @@ -27,6 +27,7 @@
> #include
> #include