* [PATCH v2 0/3] staging: drm/imx: parallel-display fixes
@ 2014-11-03 14:54 Markus Pargmann
2014-11-03 14:54 ` [PATCH v2 1/3] staging: drm/imx: parallel-display: Add 24-bit BGR support Markus Pargmann
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Markus Pargmann @ 2014-11-03 14:54 UTC (permalink / raw)
To: linux-arm-kernel
Hi,
Last version of this series did not apply on 3.18-rc1 as it was based on
3.17-rc. I rebased the series and solved the conflict, there are no other
changes to the series. It is now based on v3.18-rc3.
Best Regards,
Markus
Markus Pargmann (1):
imx-drm: parallel-display: Fix dpms mode handling
Philipp Zabel (2):
staging: drm/imx: parallel-display: Add 24-bit BGR support
imx-drm: parallel-display: Fix drm_panel support
.../bindings/staging/imx-drm/fsl-imx-drm.txt | 4 ++--
drivers/staging/imx-drm/parallel-display.c | 24 +++++++++++++++++++---
2 files changed, 23 insertions(+), 5 deletions(-)
--
2.1.1
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v2 1/3] staging: drm/imx: parallel-display: Add 24-bit BGR support
2014-11-03 14:54 [PATCH v2 0/3] staging: drm/imx: parallel-display fixes Markus Pargmann
@ 2014-11-03 14:54 ` Markus Pargmann
2014-11-04 0:15 ` Greg Kroah-Hartman
2014-11-03 14:54 ` [PATCH v2 2/3] imx-drm: parallel-display: Fix drm_panel support Markus Pargmann
2014-11-03 14:54 ` [PATCH v2 3/3] imx-drm: parallel-display: Fix dpms mode handling Markus Pargmann
2 siblings, 1 reply; 7+ messages in thread
From: Markus Pargmann @ 2014-11-03 14:54 UTC (permalink / raw)
To: linux-arm-kernel
From: Philipp Zabel <p.zabel@pengutronix.de>
Add support for the BGR24 format to the IPUv3 parallel display.
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
---
Documentation/devicetree/bindings/staging/imx-drm/fsl-imx-drm.txt | 4 ++--
drivers/staging/imx-drm/parallel-display.c | 2 ++
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/Documentation/devicetree/bindings/staging/imx-drm/fsl-imx-drm.txt b/Documentation/devicetree/bindings/staging/imx-drm/fsl-imx-drm.txt
index e75f0e549fff..f3497037679e 100644
--- a/Documentation/devicetree/bindings/staging/imx-drm/fsl-imx-drm.txt
+++ b/Documentation/devicetree/bindings/staging/imx-drm/fsl-imx-drm.txt
@@ -60,8 +60,8 @@ Required properties:
- compatible: Should be "fsl,imx-parallel-display"
Optional properties:
- interface_pix_fmt: How this display is connected to the
- display interface. Currently supported types: "rgb24", "rgb565", "bgr666"
- and "lvds666".
+ display interface. Currently supported types: "rgb24", "bgr24", "rgb565",
+ "bgr666", and "lvds666".
- edid: verbatim EDID data block describing attached display.
- ddc: phandle describing the i2c bus handling the display data
channel
diff --git a/drivers/staging/imx-drm/parallel-display.c b/drivers/staging/imx-drm/parallel-display.c
index 015a454b87e1..b2719c4a0561 100644
--- a/drivers/staging/imx-drm/parallel-display.c
+++ b/drivers/staging/imx-drm/parallel-display.c
@@ -230,6 +230,8 @@ static int imx_pd_bind(struct device *dev, struct device *master, void *data)
else if (!strcmp(fmt, "lvds666"))
imxpd->interface_pix_fmt =
v4l2_fourcc('L', 'V', 'D', '6');
+ else if (!strcmp(fmt, "bgr24"))
+ imxpd->interface_pix_fmt = V4L2_PIX_FMT_BGR24;
}
panel_node = of_parse_phandle(np, "fsl,panel", 0);
--
2.1.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v2 2/3] imx-drm: parallel-display: Fix drm_panel support
2014-11-03 14:54 [PATCH v2 0/3] staging: drm/imx: parallel-display fixes Markus Pargmann
2014-11-03 14:54 ` [PATCH v2 1/3] staging: drm/imx: parallel-display: Add 24-bit BGR support Markus Pargmann
@ 2014-11-03 14:54 ` Markus Pargmann
2014-11-03 14:54 ` [PATCH v2 3/3] imx-drm: parallel-display: Fix dpms mode handling Markus Pargmann
2 siblings, 0 replies; 7+ messages in thread
From: Markus Pargmann @ 2014-11-03 14:54 UTC (permalink / raw)
To: linux-arm-kernel
From: Philipp Zabel <philipp.zabel@gmail.com>
Call drm_panel_enable/disable in reaction to encoder_commit
and encoder_disable callbacks.
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
---
drivers/staging/imx-drm/parallel-display.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/drivers/staging/imx-drm/parallel-display.c b/drivers/staging/imx-drm/parallel-display.c
index b2719c4a0561..0992bbf01adc 100644
--- a/drivers/staging/imx-drm/parallel-display.c
+++ b/drivers/staging/imx-drm/parallel-display.c
@@ -128,6 +128,10 @@ static void imx_pd_encoder_prepare(struct drm_encoder *encoder)
static void imx_pd_encoder_commit(struct drm_encoder *encoder)
{
+ struct imx_parallel_display *imxpd = enc_to_imxpd(encoder);
+
+ drm_panel_prepare(imxpd->panel);
+ drm_panel_enable(imxpd->panel);
}
static void imx_pd_encoder_mode_set(struct drm_encoder *encoder,
@@ -138,6 +142,10 @@ static void imx_pd_encoder_mode_set(struct drm_encoder *encoder,
static void imx_pd_encoder_disable(struct drm_encoder *encoder)
{
+ struct imx_parallel_display *imxpd = enc_to_imxpd(encoder);
+
+ drm_panel_disable(imxpd->panel);
+ drm_panel_unprepare(imxpd->panel);
}
static struct drm_connector_funcs imx_pd_connector_funcs = {
--
2.1.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v2 3/3] imx-drm: parallel-display: Fix dpms mode handling
2014-11-03 14:54 [PATCH v2 0/3] staging: drm/imx: parallel-display fixes Markus Pargmann
2014-11-03 14:54 ` [PATCH v2 1/3] staging: drm/imx: parallel-display: Add 24-bit BGR support Markus Pargmann
2014-11-03 14:54 ` [PATCH v2 2/3] imx-drm: parallel-display: Fix drm_panel support Markus Pargmann
@ 2014-11-03 14:54 ` Markus Pargmann
2014-11-03 15:19 ` Lucas Stach
2 siblings, 1 reply; 7+ messages in thread
From: Markus Pargmann @ 2014-11-03 14:54 UTC (permalink / raw)
To: linux-arm-kernel
We have to call drm_panel_prepare() and drm_panel_unprepare() when
switching on or off. This patch also replaces the if statement with an
switch statement to only catch ON and OFF modes.
Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
---
drivers/staging/imx-drm/parallel-display.c | 14 +++++++++++---
1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/drivers/staging/imx-drm/parallel-display.c b/drivers/staging/imx-drm/parallel-display.c
index 0992bbf01adc..62788177c9d4 100644
--- a/drivers/staging/imx-drm/parallel-display.c
+++ b/drivers/staging/imx-drm/parallel-display.c
@@ -106,10 +106,18 @@ static void imx_pd_encoder_dpms(struct drm_encoder *encoder, int mode)
{
struct imx_parallel_display *imxpd = enc_to_imxpd(encoder);
- if (mode != DRM_MODE_DPMS_ON)
- drm_panel_disable(imxpd->panel);
- else
+ switch (mode) {
+ case DRM_MODE_DPMS_ON:
+ drm_panel_prepare(imxpd->panel);
drm_panel_enable(imxpd->panel);
+ break;
+ case DRM_MODE_DPMS_OFF:
+ drm_panel_disable(imxpd->panel);
+ drm_panel_unprepare(imxpd->panel);
+ break;
+ default:
+ break;
+ }
}
static bool imx_pd_encoder_mode_fixup(struct drm_encoder *encoder,
--
2.1.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v2 3/3] imx-drm: parallel-display: Fix dpms mode handling
2014-11-03 14:54 ` [PATCH v2 3/3] imx-drm: parallel-display: Fix dpms mode handling Markus Pargmann
@ 2014-11-03 15:19 ` Lucas Stach
2014-11-03 15:28 ` Markus Pargmann
0 siblings, 1 reply; 7+ messages in thread
From: Lucas Stach @ 2014-11-03 15:19 UTC (permalink / raw)
To: linux-arm-kernel
Am Montag, den 03.11.2014, 15:54 +0100 schrieb Markus Pargmann:
> We have to call drm_panel_prepare() and drm_panel_unprepare() when
> switching on or off. This patch also replaces the if statement with an
> switch statement to only catch ON and OFF modes.
... which is wrong. A driver is expected to map all 4 DPMS states to
something sane, so the if statement did exactly the right thing here.
Regards,
Lucas
>
> Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
> ---
> drivers/staging/imx-drm/parallel-display.c | 14 +++++++++++---
> 1 file changed, 11 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/staging/imx-drm/parallel-display.c b/drivers/staging/imx-drm/parallel-display.c
> index 0992bbf01adc..62788177c9d4 100644
> --- a/drivers/staging/imx-drm/parallel-display.c
> +++ b/drivers/staging/imx-drm/parallel-display.c
> @@ -106,10 +106,18 @@ static void imx_pd_encoder_dpms(struct drm_encoder *encoder, int mode)
> {
> struct imx_parallel_display *imxpd = enc_to_imxpd(encoder);
>
> - if (mode != DRM_MODE_DPMS_ON)
> - drm_panel_disable(imxpd->panel);
> - else
> + switch (mode) {
> + case DRM_MODE_DPMS_ON:
> + drm_panel_prepare(imxpd->panel);
> drm_panel_enable(imxpd->panel);
> + break;
> + case DRM_MODE_DPMS_OFF:
> + drm_panel_disable(imxpd->panel);
> + drm_panel_unprepare(imxpd->panel);
> + break;
> + default:
> + break;
> + }
> }
>
> static bool imx_pd_encoder_mode_fixup(struct drm_encoder *encoder,
--
Pengutronix e.K. | Lucas Stach |
Industrial Linux Solutions | http://www.pengutronix.de/ |
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v2 3/3] imx-drm: parallel-display: Fix dpms mode handling
2014-11-03 15:19 ` Lucas Stach
@ 2014-11-03 15:28 ` Markus Pargmann
0 siblings, 0 replies; 7+ messages in thread
From: Markus Pargmann @ 2014-11-03 15:28 UTC (permalink / raw)
To: linux-arm-kernel
On Mon, Nov 03, 2014 at 04:19:15PM +0100, Lucas Stach wrote:
> Am Montag, den 03.11.2014, 15:54 +0100 schrieb Markus Pargmann:
> > We have to call drm_panel_prepare() and drm_panel_unprepare() when
> > switching on or off. This patch also replaces the if statement with an
> > switch statement to only catch ON and OFF modes.
>
> ... which is wrong. A driver is expected to map all 4 DPMS states to
> something sane, so the if statement did exactly the right thing here.
Thanks for the clarification, I will rework this and send a new version.
Best regards,
Markus
>
> Regards,
> Lucas
>
> >
> > Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
> > ---
> > drivers/staging/imx-drm/parallel-display.c | 14 +++++++++++---
> > 1 file changed, 11 insertions(+), 3 deletions(-)
> >
> > diff --git a/drivers/staging/imx-drm/parallel-display.c b/drivers/staging/imx-drm/parallel-display.c
> > index 0992bbf01adc..62788177c9d4 100644
> > --- a/drivers/staging/imx-drm/parallel-display.c
> > +++ b/drivers/staging/imx-drm/parallel-display.c
> > @@ -106,10 +106,18 @@ static void imx_pd_encoder_dpms(struct drm_encoder *encoder, int mode)
> > {
> > struct imx_parallel_display *imxpd = enc_to_imxpd(encoder);
> >
> > - if (mode != DRM_MODE_DPMS_ON)
> > - drm_panel_disable(imxpd->panel);
> > - else
> > + switch (mode) {
> > + case DRM_MODE_DPMS_ON:
> > + drm_panel_prepare(imxpd->panel);
> > drm_panel_enable(imxpd->panel);
> > + break;
> > + case DRM_MODE_DPMS_OFF:
> > + drm_panel_disable(imxpd->panel);
> > + drm_panel_unprepare(imxpd->panel);
> > + break;
> > + default:
> > + break;
> > + }
> > }
> >
> > static bool imx_pd_encoder_mode_fixup(struct drm_encoder *encoder,
>
> --
> Pengutronix e.K. | Lucas Stach |
> Industrial Linux Solutions | http://www.pengutronix.de/ |
>
>
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20141103/8f064600/attachment.sig>
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v2 1/3] staging: drm/imx: parallel-display: Add 24-bit BGR support
2014-11-03 14:54 ` [PATCH v2 1/3] staging: drm/imx: parallel-display: Add 24-bit BGR support Markus Pargmann
@ 2014-11-04 0:15 ` Greg Kroah-Hartman
0 siblings, 0 replies; 7+ messages in thread
From: Greg Kroah-Hartman @ 2014-11-04 0:15 UTC (permalink / raw)
To: linux-arm-kernel
On Mon, Nov 03, 2014 at 03:54:46PM +0100, Markus Pargmann wrote:
> From: Philipp Zabel <p.zabel@pengutronix.de>
>
> Add support for the BGR24 format to the IPUv3 parallel display.
>
> Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
> Signed-off-by: Markus Pargmann <mpa@pengutronix.de>
> ---
> Documentation/devicetree/bindings/staging/imx-drm/fsl-imx-drm.txt | 4 ++--
> drivers/staging/imx-drm/parallel-display.c | 2 ++
> 2 files changed, 4 insertions(+), 2 deletions(-)
Please work to get this driver out of staging instead of adding new
features to it :(
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2014-11-04 0:15 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-11-03 14:54 [PATCH v2 0/3] staging: drm/imx: parallel-display fixes Markus Pargmann
2014-11-03 14:54 ` [PATCH v2 1/3] staging: drm/imx: parallel-display: Add 24-bit BGR support Markus Pargmann
2014-11-04 0:15 ` Greg Kroah-Hartman
2014-11-03 14:54 ` [PATCH v2 2/3] imx-drm: parallel-display: Fix drm_panel support Markus Pargmann
2014-11-03 14:54 ` [PATCH v2 3/3] imx-drm: parallel-display: Fix dpms mode handling Markus Pargmann
2014-11-03 15:19 ` Lucas Stach
2014-11-03 15:28 ` Markus Pargmann
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).