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