All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] staging: fix parallel display regressions
@ 2013-05-17  9:19 Markus Niebel
  2013-05-17  9:19 ` [PATCH 1/3] staging: drm/imx: set correct sync pins for parallel display Markus Niebel
                   ` (4 more replies)
  0 siblings, 5 replies; 10+ messages in thread
From: Markus Niebel @ 2013-05-17  9:19 UTC (permalink / raw)
  To: linux-arm-kernel

From: Markus Niebel <Markus.Niebel@tqs.de>

Support for VGA via TVE on iMX53 causes  regression, which prevents
parallel display from working. This series brings the parallel display
functionality back.

Tested on a modified v3.9 with TQMa53 module and compile tested with
v3.10-rc1.

Markus Niebel (3):
  staging: drm/imx: set correct sync pins for parallel display
  staging: drm/imx: fix spelling error for vsync flag config
  staging: drm/imx: revert vsync_cnt for di->id 1

 drivers/staging/imx-drm/ipu-v3/ipu-di.c    |   13 +++++++++----
 drivers/staging/imx-drm/parallel-display.c |    4 ++--
 2 files changed, 11 insertions(+), 6 deletions(-)

-- 
1.7.9.5

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

* [PATCH 1/3] staging: drm/imx: set correct sync pins for parallel display
  2013-05-17  9:19 [PATCH 0/3] staging: fix parallel display regressions Markus Niebel
@ 2013-05-17  9:19 ` Markus Niebel
  2013-05-17 10:50   ` Philipp Zabel
  2013-05-17  9:19 ` [PATCH 2/3] staging: drm/imx: fix spelling error for vsync flag config Markus Niebel
                   ` (3 subsequent siblings)
  4 siblings, 1 reply; 10+ messages in thread
From: Markus Niebel @ 2013-05-17  9:19 UTC (permalink / raw)
  To: linux-arm-kernel

From: Markus Niebel <Markus.Niebel@tqs.de>

partial fix of changes from
"staging: drm/imx: Add support for VGA via TVE on i.MX53"

Have to call imx_drm_crtc_panel_format_pins with the correct pins instead of (0, 0)
This enables configuration of correct waveforms for vsync / hsync

TODO: configure pins via device tree

Signed-off-by: Markus Niebel <Markus.Niebel@tqs.de>
---
 drivers/staging/imx-drm/parallel-display.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/imx-drm/parallel-display.c b/drivers/staging/imx-drm/parallel-display.c
index e7fba62..e49a906 100644
--- a/drivers/staging/imx-drm/parallel-display.c
+++ b/drivers/staging/imx-drm/parallel-display.c
@@ -114,8 +114,8 @@ static void imx_pd_encoder_prepare(struct drm_encoder *encoder)
 {
 	struct imx_parallel_display *imxpd = enc_to_imxpd(encoder);
 
-	imx_drm_crtc_panel_format(encoder->crtc, DRM_MODE_ENCODER_NONE,
-			imxpd->interface_pix_fmt);
+	imx_drm_crtc_panel_format_pins(encoder->crtc, DRM_MODE_ENCODER_NONE,
+			imxpd->interface_pix_fmt, 2, 3);
 }
 
 static void imx_pd_encoder_commit(struct drm_encoder *encoder)
-- 
1.7.9.5

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

* [PATCH 2/3] staging: drm/imx: fix spelling error for vsync flag config
  2013-05-17  9:19 [PATCH 0/3] staging: fix parallel display regressions Markus Niebel
  2013-05-17  9:19 ` [PATCH 1/3] staging: drm/imx: set correct sync pins for parallel display Markus Niebel
@ 2013-05-17  9:19 ` Markus Niebel
  2013-05-17 10:51   ` Philipp Zabel
  2013-05-17  9:19 ` [PATCH 3/3] staging: drm/imx: revert vsync_cnt for di->id 1 Markus Niebel
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 10+ messages in thread
From: Markus Niebel @ 2013-05-17  9:19 UTC (permalink / raw)
  To: linux-arm-kernel

From: Markus Niebel <Markus.Niebel@tqs.de>

partial fix of changes from
"staging: drm/imx: Add support for VGA via TVE on i.MX53"

Have to check for vsync_pin instead of hsync_pin to set Vsync_pol.

Signed-off-by: Markus Niebel <Markus.Niebel@tqs.de>
---
 drivers/staging/imx-drm/ipu-v3/ipu-di.c |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/staging/imx-drm/ipu-v3/ipu-di.c b/drivers/staging/imx-drm/ipu-v3/ipu-di.c
index 19d777e..e7b9c98 100644
--- a/drivers/staging/imx-drm/ipu-v3/ipu-di.c
+++ b/drivers/staging/imx-drm/ipu-v3/ipu-di.c
@@ -614,11 +614,11 @@ int ipu_di_init_sync_panel(struct ipu_di *di, struct ipu_di_signal_cfg *sig)
 				di_gen |= DI_GEN_POLARITY_7;
 		}
 		if (sig->Vsync_pol) {
-			if (sig->hsync_pin == 3)
+			if (sig->vsync_pin == 3)
 				di_gen |= DI_GEN_POLARITY_3;
-			else if (sig->hsync_pin == 6)
+			else if (sig->vsync_pin == 6)
 				di_gen |= DI_GEN_POLARITY_6;
-			else if (sig->hsync_pin == 8)
+			else if (sig->vsync_pin == 8)
 				di_gen |= DI_GEN_POLARITY_8;
 		}
 	}
-- 
1.7.9.5

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

* [PATCH 3/3] staging: drm/imx: revert vsync_cnt for di->id 1
  2013-05-17  9:19 [PATCH 0/3] staging: fix parallel display regressions Markus Niebel
  2013-05-17  9:19 ` [PATCH 1/3] staging: drm/imx: set correct sync pins for parallel display Markus Niebel
  2013-05-17  9:19 ` [PATCH 2/3] staging: drm/imx: fix spelling error for vsync flag config Markus Niebel
@ 2013-05-17  9:19 ` Markus Niebel
  2013-05-17 10:52   ` Philipp Zabel
  2013-05-17 10:50 ` [PATCH 0/3] staging: fix parallel display regressions Philipp Zabel
  2013-05-23 18:00 ` Fabio Estevam
  4 siblings, 1 reply; 10+ messages in thread
From: Markus Niebel @ 2013-05-17  9:19 UTC (permalink / raw)
  To: linux-arm-kernel

From: Markus Niebel <Markus.Niebel@tqs.de>

partial fix of changes from
"staging: drm/imx: Add support for VGA via TVE on i.MX53"

parallel display support / DVI needs the original setting to work

Signed-off-by: Markus Niebel <Markus.Niebel@tqs.de>
---
 drivers/staging/imx-drm/ipu-v3/ipu-di.c |    7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/staging/imx-drm/ipu-v3/ipu-di.c b/drivers/staging/imx-drm/ipu-v3/ipu-di.c
index e7b9c98..0b6806e 100644
--- a/drivers/staging/imx-drm/ipu-v3/ipu-di.c
+++ b/drivers/staging/imx-drm/ipu-v3/ipu-di.c
@@ -603,7 +603,12 @@ int ipu_di_init_sync_panel(struct ipu_di *di, struct ipu_di_signal_cfg *sig)
 
 		vsync_cnt = 3;
 		if (di->id == 1)
-			vsync_cnt = 6;
+			/*
+			 * TODO: change only for TVEv2, parallel display
+			 * uses pin 2 / 3
+			 */
+			if (!(sig->hsync_pin == 2 && sig->vsync_pin == 3))
+				vsync_cnt = 6;
 
 		if (sig->Hsync_pol) {
 			if (sig->hsync_pin == 2)
-- 
1.7.9.5

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

* [PATCH 0/3] staging: fix parallel display regressions
  2013-05-17  9:19 [PATCH 0/3] staging: fix parallel display regressions Markus Niebel
                   ` (2 preceding siblings ...)
  2013-05-17  9:19 ` [PATCH 3/3] staging: drm/imx: revert vsync_cnt for di->id 1 Markus Niebel
@ 2013-05-17 10:50 ` Philipp Zabel
  2013-05-23 17:53   ` Rogerio Pimentel
  2013-05-23 18:00 ` Fabio Estevam
  4 siblings, 1 reply; 10+ messages in thread
From: Philipp Zabel @ 2013-05-17 10:50 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Markus,

Am Freitag, den 17.05.2013, 11:19 +0200 schrieb Markus Niebel:
> From: Markus Niebel <Markus.Niebel@tqs.de>
> 
> Support for VGA via TVE on iMX53 causes  regression, which prevents
> parallel display from working. This series brings the parallel display
> functionality back.
> 
> Tested on a modified v3.9 with TQMa53 module and compile tested with
> v3.10-rc1.
> 
> Markus Niebel (3):
>   staging: drm/imx: set correct sync pins for parallel display
>   staging: drm/imx: fix spelling error for vsync flag config
>   staging: drm/imx: revert vsync_cnt for di->id 1
> 
>  drivers/staging/imx-drm/ipu-v3/ipu-di.c    |   13 +++++++++----
>  drivers/staging/imx-drm/parallel-display.c |    4 ++--
>  2 files changed, 11 insertions(+), 6 deletions(-)

thank you for posting the patches! I can confirm that they fix the
issues of incorrect signal generation on IPU display interface 1,
caused by my TVE patch series.

Tested-by: Philipp Zabel <p.zabel@pengutronix.de>

regards
Philipp

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

* [PATCH 1/3] staging: drm/imx: set correct sync pins for parallel display
  2013-05-17  9:19 ` [PATCH 1/3] staging: drm/imx: set correct sync pins for parallel display Markus Niebel
@ 2013-05-17 10:50   ` Philipp Zabel
  0 siblings, 0 replies; 10+ messages in thread
From: Philipp Zabel @ 2013-05-17 10:50 UTC (permalink / raw)
  To: linux-arm-kernel

Am Freitag, den 17.05.2013, 11:19 +0200 schrieb Markus Niebel:
> From: Markus Niebel <Markus.Niebel@tqs.de>
> 
> partial fix of changes from
> "staging: drm/imx: Add support for VGA via TVE on i.MX53"
> 
> Have to call imx_drm_crtc_panel_format_pins with the correct pins instead of (0, 0)
> This enables configuration of correct waveforms for vsync / hsync
> 
> TODO: configure pins via device tree
> 
> Signed-off-by: Markus Niebel <Markus.Niebel@tqs.de>
> ---
>  drivers/staging/imx-drm/parallel-display.c |    4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/staging/imx-drm/parallel-display.c b/drivers/staging/imx-drm/parallel-display.c
> index e7fba62..e49a906 100644
> --- a/drivers/staging/imx-drm/parallel-display.c
> +++ b/drivers/staging/imx-drm/parallel-display.c
> @@ -114,8 +114,8 @@ static void imx_pd_encoder_prepare(struct drm_encoder *encoder)
>  {
>  	struct imx_parallel_display *imxpd = enc_to_imxpd(encoder);
>  
> -	imx_drm_crtc_panel_format(encoder->crtc, DRM_MODE_ENCODER_NONE,
> -			imxpd->interface_pix_fmt);
> +	imx_drm_crtc_panel_format_pins(encoder->crtc, DRM_MODE_ENCODER_NONE,
> +			imxpd->interface_pix_fmt, 2, 3);
>  }
>  
>  static void imx_pd_encoder_commit(struct drm_encoder *encoder)

Rather than putting this here, as long as it is not configurable from
device tree, I'd prefer to use this patch instead:

--- a/drivers/staging/imx-drm/imx-drm-core.c
+++ b/drivers/staging/imx-drm/imx-drm-core.c
@@ -144,7 +144,7 @@ int imx_drm_crtc_panel_format(struct drm_crtc *crtc, u32 encoder_type,
                u32 interface_pix_fmt)
 {
        return imx_drm_crtc_panel_format_pins(crtc, encoder_type,
-                                             interface_pix_fmt, 0, 0);
+                                             interface_pix_fmt, 2, 3);
 }
 EXPORT_SYMBOL_GPL(imx_drm_crtc_panel_format);
 
Because this will fix the same issue also for LDB, HDMI, and MIPI/DSI drivers.

regards
Philipp

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

* [PATCH 2/3] staging: drm/imx: fix spelling error for vsync flag config
  2013-05-17  9:19 ` [PATCH 2/3] staging: drm/imx: fix spelling error for vsync flag config Markus Niebel
@ 2013-05-17 10:51   ` Philipp Zabel
  0 siblings, 0 replies; 10+ messages in thread
From: Philipp Zabel @ 2013-05-17 10:51 UTC (permalink / raw)
  To: linux-arm-kernel

Am Freitag, den 17.05.2013, 11:19 +0200 schrieb Markus Niebel:
> From: Markus Niebel <Markus.Niebel@tqs.de>
> 
> partial fix of changes from
> "staging: drm/imx: Add support for VGA via TVE on i.MX53"
> 
> Have to check for vsync_pin instead of hsync_pin to set Vsync_pol.
> 
> Signed-off-by: Markus Niebel <Markus.Niebel@tqs.de>
> ---
>  drivers/staging/imx-drm/ipu-v3/ipu-di.c |    6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/staging/imx-drm/ipu-v3/ipu-di.c b/drivers/staging/imx-drm/ipu-v3/ipu-di.c
> index 19d777e..e7b9c98 100644
> --- a/drivers/staging/imx-drm/ipu-v3/ipu-di.c
> +++ b/drivers/staging/imx-drm/ipu-v3/ipu-di.c
> @@ -614,11 +614,11 @@ int ipu_di_init_sync_panel(struct ipu_di *di, struct ipu_di_signal_cfg *sig)
>  				di_gen |= DI_GEN_POLARITY_7;
>  		}
>  		if (sig->Vsync_pol) {
> -			if (sig->hsync_pin == 3)
> +			if (sig->vsync_pin == 3)
>  				di_gen |= DI_GEN_POLARITY_3;
> -			else if (sig->hsync_pin == 6)
> +			else if (sig->vsync_pin == 6)
>  				di_gen |= DI_GEN_POLARITY_6;
> -			else if (sig->hsync_pin == 8)
> +			else if (sig->vsync_pin == 8)
>  				di_gen |= DI_GEN_POLARITY_8;
>  		}
>  	}

Acked-by: Philipp Zabel <p.zabel@pengutronix.de>

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

* [PATCH 3/3] staging: drm/imx: revert vsync_cnt for di->id 1
  2013-05-17  9:19 ` [PATCH 3/3] staging: drm/imx: revert vsync_cnt for di->id 1 Markus Niebel
@ 2013-05-17 10:52   ` Philipp Zabel
  0 siblings, 0 replies; 10+ messages in thread
From: Philipp Zabel @ 2013-05-17 10:52 UTC (permalink / raw)
  To: linux-arm-kernel

Am Freitag, den 17.05.2013, 11:19 +0200 schrieb Markus Niebel:
> From: Markus Niebel <Markus.Niebel@tqs.de>
> 
> partial fix of changes from
> "staging: drm/imx: Add support for VGA via TVE on i.MX53"
> 
> parallel display support / DVI needs the original setting to work
> 
> Signed-off-by: Markus Niebel <Markus.Niebel@tqs.de>
> ---
>  drivers/staging/imx-drm/ipu-v3/ipu-di.c |    7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/staging/imx-drm/ipu-v3/ipu-di.c b/drivers/staging/imx-drm/ipu-v3/ipu-di.c
> index e7b9c98..0b6806e 100644
> --- a/drivers/staging/imx-drm/ipu-v3/ipu-di.c
> +++ b/drivers/staging/imx-drm/ipu-v3/ipu-di.c
> @@ -603,7 +603,12 @@ int ipu_di_init_sync_panel(struct ipu_di *di, struct ipu_di_signal_cfg *sig)
>  
>  		vsync_cnt = 3;
>  		if (di->id == 1)
> -			vsync_cnt = 6;
> +			/*
> +			 * TODO: change only for TVEv2, parallel display
> +			 * uses pin 2 / 3
> +			 */
> +			if (!(sig->hsync_pin == 2 && sig->vsync_pin == 3))
> +				vsync_cnt = 6;
>  
>  		if (sig->Hsync_pol) {
>  			if (sig->hsync_pin == 2)

Acked-by: Philipp Zabel <p.zabel@pengutronix.de>

regards
Philipp

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

* [PATCH 0/3] staging: fix parallel display regressions
  2013-05-17 10:50 ` [PATCH 0/3] staging: fix parallel display regressions Philipp Zabel
@ 2013-05-23 17:53   ` Rogerio Pimentel
  0 siblings, 0 replies; 10+ messages in thread
From: Rogerio Pimentel @ 2013-05-23 17:53 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, May 17, 2013 at 7:50 AM, Philipp Zabel <p.zabel@pengutronix.de> wrote:
> Hi Markus,
>
> Am Freitag, den 17.05.2013, 11:19 +0200 schrieb Markus Niebel:
>> From: Markus Niebel <Markus.Niebel@tqs.de>
>>
>> Support for VGA via TVE on iMX53 causes  regression, which prevents
>> parallel display from working. This series brings the parallel display
>> functionality back.
>>
>> Tested on a modified v3.9 with TQMa53 module and compile tested with
>> v3.10-rc1.
>>
>> Markus Niebel (3):
>>   staging: drm/imx: set correct sync pins for parallel display
>>   staging: drm/imx: fix spelling error for vsync flag config
>>   staging: drm/imx: revert vsync_cnt for di->id 1
>>
>>  drivers/staging/imx-drm/ipu-v3/ipu-di.c    |   13 +++++++++----
>>  drivers/staging/imx-drm/parallel-display.c |    4 ++--
>>  2 files changed, 11 insertions(+), 6 deletions(-)
>
> thank you for posting the patches! I can confirm that they fix the
> issues of incorrect signal generation on IPU display interface 1,
> caused by my TVE patch series.
>
> Tested-by: Philipp Zabel <p.zabel@pengutronix.de>
>
> regards
> Philipp
>

With these patches I was able to enable the parallel display on i.MX53 QSB.
It works.

Tested-by: Rogerio Pimentel <rogerio.pimentel@freescale.com>

Rgds
Rogerio Pimentel

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

* [PATCH 0/3] staging: fix parallel display regressions
  2013-05-17  9:19 [PATCH 0/3] staging: fix parallel display regressions Markus Niebel
                   ` (3 preceding siblings ...)
  2013-05-17 10:50 ` [PATCH 0/3] staging: fix parallel display regressions Philipp Zabel
@ 2013-05-23 18:00 ` Fabio Estevam
  4 siblings, 0 replies; 10+ messages in thread
From: Fabio Estevam @ 2013-05-23 18:00 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Markus,

On Fri, May 17, 2013 at 6:19 AM, Markus Niebel
<list-09_linuc_arm@tqsc.de> wrote:
> From: Markus Niebel <Markus.Niebel@tqs.de>
>
> Support for VGA via TVE on iMX53 causes  regression, which prevents
> parallel display from working. This series brings the parallel display
> functionality back.
>
> Tested on a modified v3.9 with TQMa53 module and compile tested with
> v3.10-rc1.
>
> Markus Niebel (3):
>   staging: drm/imx: set correct sync pins for parallel display
>   staging: drm/imx: fix spelling error for vsync flag config
>   staging: drm/imx: revert vsync_cnt for di->id 1
>
>  drivers/staging/imx-drm/ipu-v3/ipu-di.c    |   13 +++++++++----
>  drivers/staging/imx-drm/parallel-display.c |    4 ++--
>  2 files changed, 11 insertions(+), 6 deletions(-)

Greg Kroah-Hartman <gregkh@linuxfoundation.org> is the one that takes
the patches for staging drivers.

Could you resend your series with him in Cc and add the Tested-by from
Philipp and Rogerio?

Thanks,

Fabio Estevam

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

end of thread, other threads:[~2013-05-23 18:00 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-05-17  9:19 [PATCH 0/3] staging: fix parallel display regressions Markus Niebel
2013-05-17  9:19 ` [PATCH 1/3] staging: drm/imx: set correct sync pins for parallel display Markus Niebel
2013-05-17 10:50   ` Philipp Zabel
2013-05-17  9:19 ` [PATCH 2/3] staging: drm/imx: fix spelling error for vsync flag config Markus Niebel
2013-05-17 10:51   ` Philipp Zabel
2013-05-17  9:19 ` [PATCH 3/3] staging: drm/imx: revert vsync_cnt for di->id 1 Markus Niebel
2013-05-17 10:52   ` Philipp Zabel
2013-05-17 10:50 ` [PATCH 0/3] staging: fix parallel display regressions Philipp Zabel
2013-05-23 17:53   ` Rogerio Pimentel
2013-05-23 18:00 ` Fabio Estevam

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.