[PATCH 0/4] Fixes for omapdrm on OpenPandora and GTA04

STALE3198d

Revision v1 of 4 in this series.

13 messages, 2 authors, 2017-11-09 · open the first message on its own page

[PATCH 0/4] Fixes for omapdrm on OpenPandora and GTA04

From: H. Nikolaus Schaller <hidden>
Date: 2017-11-08 21:11:26

This patch set fixes vendor names of the panels
and fixes a problem on omapdrm with enabling
VDD_DSI for OMAP3 which is needed for displaying
the Red and Green channel on OMAP3530 (Pandora).

H. Nikolaus Schaller (4):
  omapdrm: fix compatible string for td028ttec1
  DTS: GTA04: fix panel compatibility string
  DTS: Pandora: fix panel compatibility string
  omapdss: fix problem enabling VDDS_DSI on OMAP3530 (OpenPandora)

 .../display/panel/{toppoly,td028ttec1.txt => tpo,td028ttec1.txt}      | 4 ++--
 arch/arm/boot/dts/omap3-gta04.dtsi                                    | 2 +-
 arch/arm/boot/dts/omap3-pandora-common.dtsi                           | 2 +-
 drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c               | 4 ++--
 drivers/gpu/drm/omapdrm/dss/dpi.c                                     | 3 +--
 drivers/video/fbdev/omap2/omapfb/displays/panel-tpo-td028ttec1.c      | 4 ++--
 6 files changed, 9 insertions(+), 10 deletions(-)
 rename Documentation/devicetree/bindings/display/panel/{toppoly,td028ttec1.txt => tpo,td028ttec1.txt} (84%)

-- 
2.12.2

[PATCH 1/4] omapdrm: fix compatible string for td028ttec1

From: H. Nikolaus Schaller <hidden>
Date: 2017-11-08 21:10:23

The vendor name was "toppoly" but other panels and the vendor list
have defined it as "tpo". So let's fix it in driver and bindings.

Signed-off-by: H. Nikolaus Schaller <redacted>
---
 .../display/panel/{toppoly,td028ttec1.txt => tpo,td028ttec1.txt}      | 4 ++--
 drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c               | 4 ++--
 drivers/video/fbdev/omap2/omapfb/displays/panel-tpo-td028ttec1.c      | 4 ++--
 3 files changed, 6 insertions(+), 6 deletions(-)
 rename Documentation/devicetree/bindings/display/panel/{toppoly,td028ttec1.txt => tpo,td028ttec1.txt} (84%)
diff --git a/Documentation/devicetree/bindings/display/panel/toppoly,td028ttec1.txt b/Documentation/devicetree/bindings/display/panel/tpo,td028ttec1.txt
similarity index 84%
rename from Documentation/devicetree/bindings/display/panel/toppoly,td028ttec1.txt
rename to Documentation/devicetree/bindings/display/panel/tpo,td028ttec1.txt
index 7175dc3740ac..ed34253d9fb1 100644
--- a/Documentation/devicetree/bindings/display/panel/toppoly,td028ttec1.txt
+++ b/Documentation/devicetree/bindings/display/panel/tpo,td028ttec1.txt
@@ -2,7 +2,7 @@ Toppoly TD028TTEC1 Panel
 ============
 
 Required properties:
-- compatible: "toppoly,td028ttec1"
+- compatible: "tpo,td028ttec1"
 
 Optional properties:
 - label: a symbolic name for the panel
@@ -14,7 +14,7 @@ Example
 -------
 
 lcd-panel: td028ttec1@0 {
-	compatible = "toppoly,td028ttec1";
+	compatible = "tpo,td028ttec1";
 	reg = <0>;
 	spi-max-frequency = <100000>;
 	spi-cpol;
diff --git a/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c b/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c
index 0a38a0e8c925..2dab491478c2 100644
--- a/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c
+++ b/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c
@@ -452,7 +452,7 @@ static int td028ttec1_panel_remove(struct spi_device *spi)
 }
 
 static const struct of_device_id td028ttec1_of_match[] = {
-	{ .compatible = "omapdss,toppoly,td028ttec1", },
+	{ .compatible = "omapdss,tpo,td028ttec1", },
 	{},
 };
 
@@ -471,7 +471,7 @@ static struct spi_driver td028ttec1_spi_driver = {
 
 module_spi_driver(td028ttec1_spi_driver);
 
-MODULE_ALIAS("spi:toppoly,td028ttec1");
+MODULE_ALIAS("spi:tpo,td028ttec1");
 MODULE_AUTHOR("H. Nikolaus Schaller <hns@goldelico.com>");
 MODULE_DESCRIPTION("Toppoly TD028TTEC1 panel driver");
 MODULE_LICENSE("GPL");
diff --git a/drivers/video/fbdev/omap2/omapfb/displays/panel-tpo-td028ttec1.c b/drivers/video/fbdev/omap2/omapfb/displays/panel-tpo-td028ttec1.c
index 57e9e146ff74..39e1754746d2 100644
--- a/drivers/video/fbdev/omap2/omapfb/displays/panel-tpo-td028ttec1.c
+++ b/drivers/video/fbdev/omap2/omapfb/displays/panel-tpo-td028ttec1.c
@@ -455,7 +455,7 @@ static int td028ttec1_panel_remove(struct spi_device *spi)
 }
 
 static const struct of_device_id td028ttec1_of_match[] = {
-	{ .compatible = "omapdss,toppoly,td028ttec1", },
+	{ .compatible = "omapdss,tpo,td028ttec1", },
 	{},
 };
 
@@ -474,7 +474,7 @@ static struct spi_driver td028ttec1_spi_driver = {
 
 module_spi_driver(td028ttec1_spi_driver);
 
-MODULE_ALIAS("spi:toppoly,td028ttec1");
+MODULE_ALIAS("spi:tpo,td028ttec1");
 MODULE_AUTHOR("H. Nikolaus Schaller <hns@goldelico.com>");
 MODULE_DESCRIPTION("Toppoly TD028TTEC1 panel driver");
 MODULE_LICENSE("GPL");
-- 
2.12.2

[PATCH 2/4] DTS: GTA04: fix panel compatibility string

From: H. Nikolaus Schaller <hidden>
Date: 2017-11-08 21:10:26

Vendor string is "tpo" and not "toppoly".

Signed-off-by: H. Nikolaus Schaller <redacted>
---
 arch/arm/boot/dts/omap3-gta04.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/omap3-gta04.dtsi b/arch/arm/boot/dts/omap3-gta04.dtsi
index 4504908c23fe..ec27ed67a22a 100644
--- a/arch/arm/boot/dts/omap3-gta04.dtsi
+++ b/arch/arm/boot/dts/omap3-gta04.dtsi
@@ -86,7 +86,7 @@
 
 		/* lcd panel */
 		lcd: td028ttec1@0 {
-			compatible = "toppoly,td028ttec1";
+			compatible = "tpo,td028ttec1";
 			reg = <0>;
 			spi-max-frequency = <100000>;
 			spi-cpol;
-- 
2.12.2

[PATCH 4/4] omapdss: fix problem enabling VDDS_DSI on OMAP3530 (OpenPandora)

From: H. Nikolaus Schaller <hidden>
Date: 2017-11-08 21:10:27

commit d178e034d565 ("drm: omapdrm: Move FEAT_DPI_USES_VDDS_DSI feature to dpi code")

introduced a new match table which turned out to be wrong, at least
for the 600 MHz OpenPandora using the OMAP3530.

The effect was strange: only the Blue channel of the RGB panel was
driven while Red and Green stayed black. So a coloured picture turned
into blue/black.

The GTA04 with DM3730 didn't show the effect.

It turned out that VDDS_DSI was not properly initialized on OMAP3530,
because the .family string is just "OMAP3" for these processors and
not "OMAP3xxx".

Therefore we match the .machine attribute.

Signed-off-by: H. Nikolaus Schaller <redacted>
---
 drivers/gpu/drm/omapdrm/dss/dpi.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/omapdrm/dss/dpi.c b/drivers/gpu/drm/omapdrm/dss/dpi.c
index 4ed5fde11313..aae3626910bb 100644
--- a/drivers/gpu/drm/omapdrm/dss/dpi.c
+++ b/drivers/gpu/drm/omapdrm/dss/dpi.c
@@ -566,8 +566,7 @@ static int dpi_verify_pll(struct dss_pll *pll)
 }
 
 static const struct soc_device_attribute dpi_soc_devices[] = {
-	{ .family = "OMAP3[456]*" },
-	{ .family = "[AD]M37*" },
+	{ .machine = "OMAP3[456]*" },
 	{ /* sentinel */ }
 };
 
-- 
2.12.2

[PATCH 3/4] DTS: Pandora: fix panel compatibility string

From: H. Nikolaus Schaller <hidden>
Date: 2017-11-08 21:11:24

We can remove the "omapdss," prefix.

Signed-off-by: H. Nikolaus Schaller <redacted>
---
 arch/arm/boot/dts/omap3-pandora-common.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/omap3-pandora-common.dtsi b/arch/arm/boot/dts/omap3-pandora-common.dtsi
index 53e007abdc71..64d967ec8c58 100644
--- a/arch/arm/boot/dts/omap3-pandora-common.dtsi
+++ b/arch/arm/boot/dts/omap3-pandora-common.dtsi
@@ -626,7 +626,7 @@
 
 	lcd: lcd@1 {
 		reg = <1>;	/* CS1 */
-		compatible =	"omapdss,tpo,td043mtea1";
+		compatible =	"tpo,td043mtea1";
 		spi-max-frequency = <100000>;
 		spi-cpol;
 		spi-cpha;
-- 
2.12.2

Re: [PATCH 1/4] omapdrm: fix compatible string for td028ttec1

From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Date: 2017-11-09 03:33:38

Hi Nikolaus,

Thank you for the patch.

On Wednesday, 8 November 2017 23:09:29 EET H. Nikolaus Schaller wrote:
quoted hunk
The vendor name was "toppoly" but other panels and the vendor list
have defined it as "tpo". So let's fix it in driver and bindings.

Signed-off-by: H. Nikolaus Schaller <redacted>
---
 .../display/panel/{toppoly,td028ttec1.txt => tpo,td028ttec1.txt} | 4 ++--
drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c           | 4 ++--
drivers/video/fbdev/omap2/omapfb/displays/panel-tpo-td028ttec1.c  | 4 ++--
3 files changed, 6 insertions(+), 6 deletions(-)
 rename
Documentation/devicetree/bindings/display/panel/{toppoly,td028ttec1.txt =>
tpo,td028ttec1.txt} (84%)

diff --git
a/Documentation/devicetree/bindings/display/panel/toppoly,td028ttec1.txt
b/Documentation/devicetree/bindings/display/panel/tpo,td028ttec1.txt
similarity index 84%
rename from
Documentation/devicetree/bindings/display/panel/toppoly,td028ttec1.txt
rename to
Documentation/devicetree/bindings/display/panel/tpo,td028ttec1.txt index
7175dc3740ac..ed34253d9fb1 100644
--- a/Documentation/devicetree/bindings/display/panel/toppoly,td028ttec1.txt
+++ b/Documentation/devicetree/bindings/display/panel/tpo,td028ttec1.txt @@
-2,7 +2,7 @@ Toppoly TD028TTEC1 Panel
 ============

 Required properties:
-- compatible: "toppoly,td028ttec1"
+- compatible: "tpo,td028ttec1"

 Optional properties:
 - label: a symbolic name for the panel
@@ -14,7 +14,7 @@ Example
 -------

 lcd-panel: td028ttec1@0 {
-	compatible = "toppoly,td028ttec1";
+	compatible = "tpo,td028ttec1";
 	reg = <0>;
 	spi-max-frequency = <100000>;
 	spi-cpol;
diff --git a/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c
b/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c index
0a38a0e8c925..2dab491478c2 100644
--- a/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c
+++ b/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c
@@ -452,7 +452,7 @@ static int td028ttec1_panel_remove(struct spi_device
*spi) }

 static const struct of_device_id td028ttec1_of_match[] = {
-	{ .compatible = "omapdss,toppoly,td028ttec1", },
+	{ .compatible = "omapdss,tpo,td028ttec1", },
Doesn't this break backward compatibility with existing DT ?
quoted hunk
 	{},
 };
@@ -471,7 +471,7 @@ static struct spi_driver td028ttec1_spi_driver = {

 module_spi_driver(td028ttec1_spi_driver);

-MODULE_ALIAS("spi:toppoly,td028ttec1");
+MODULE_ALIAS("spi:tpo,td028ttec1");
 MODULE_AUTHOR("H. Nikolaus Schaller <hns@goldelico.com>");
 MODULE_DESCRIPTION("Toppoly TD028TTEC1 panel driver");
 MODULE_LICENSE("GPL");
diff --git
a/drivers/video/fbdev/omap2/omapfb/displays/panel-tpo-td028ttec1.c
b/drivers/video/fbdev/omap2/omapfb/displays/panel-tpo-td028ttec1.c index
57e9e146ff74..39e1754746d2 100644
--- a/drivers/video/fbdev/omap2/omapfb/displays/panel-tpo-td028ttec1.c
+++ b/drivers/video/fbdev/omap2/omapfb/displays/panel-tpo-td028ttec1.c
@@ -455,7 +455,7 @@ static int td028ttec1_panel_remove(struct spi_device
*spi) }

 static const struct of_device_id td028ttec1_of_match[] = {
-	{ .compatible = "omapdss,toppoly,td028ttec1", },
+	{ .compatible = "omapdss,tpo,td028ttec1", },
 	{},
 };
@@ -474,7 +474,7 @@ static struct spi_driver td028ttec1_spi_driver = {

 module_spi_driver(td028ttec1_spi_driver);

-MODULE_ALIAS("spi:toppoly,td028ttec1");
+MODULE_ALIAS("spi:tpo,td028ttec1");
 MODULE_AUTHOR("H. Nikolaus Schaller <hns@goldelico.com>");
 MODULE_DESCRIPTION("Toppoly TD028TTEC1 panel driver");
 MODULE_LICENSE("GPL");

-- 
Regards,

Laurent Pinchart

Re: [PATCH 3/4] DTS: Pandora: fix panel compatibility string

From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Date: 2017-11-09 03:36:20

Hi Nikolaus,

Thank you for the patch.

On Wednesday, 8 November 2017 23:09:31 EET H. Nikolaus Schaller wrote:
We can remove the "omapdss," prefix.
I agree but you should explain why.
quoted hunk
Signed-off-by: H. Nikolaus Schaller <redacted>
---
 arch/arm/boot/dts/omap3-pandora-common.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/omap3-pandora-common.dtsi
b/arch/arm/boot/dts/omap3-pandora-common.dtsi index
53e007abdc71..64d967ec8c58 100644
--- a/arch/arm/boot/dts/omap3-pandora-common.dtsi
+++ b/arch/arm/boot/dts/omap3-pandora-common.dtsi
@@ -626,7 +626,7 @@

 	lcd: lcd@1 {
 		reg = <1>;	/* CS1 */
-		compatible =	"omapdss,tpo,td043mtea1";
+		compatible =	"tpo,td043mtea1";
 		spi-max-frequency = <100000>;
 		spi-cpol;
 		spi-cpha;

-- 
Regards,

Laurent Pinchart

Re: [PATCH 4/4] omapdss: fix problem enabling VDDS_DSI on OMAP3530 (OpenPandora)

From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Date: 2017-11-09 03:45:50

Hi Nikolaus,

Thank you for the patch.

On Wednesday, 8 November 2017 23:09:32 EET H. Nikolaus Schaller wrote:
commit d178e034d565 ("drm: omapdrm: Move FEAT_DPI_USES_VDDS_DSI feature to
dpi code")

introduced a new match table which turned out to be wrong, at least
for the 600 MHz OpenPandora using the OMAP3530.

The effect was strange: only the Blue channel of the RGB panel was
driven while Red and Green stayed black. So a coloured picture turned
into blue/black.

The GTA04 with DM3730 didn't show the effect.

It turned out that VDDS_DSI was not properly initialized on OMAP3530,
because the .family string is just "OMAP3" for these processors and
not "OMAP3xxx".

Therefore we match the .machine attribute.

Signed-off-by: H. Nikolaus Schaller <redacted>
I've already submitted a similar patch (but without the problem pointed out 
below) in the mail thread where we discussed the issue. It is customary to use 
the first patch posted (unless it is utterly broken of course). Could you thus 
please include it in this series in replacement of this patch ?
quoted hunk
---
 drivers/gpu/drm/omapdrm/dss/dpi.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/omapdrm/dss/dpi.c
b/drivers/gpu/drm/omapdrm/dss/dpi.c index 4ed5fde11313..aae3626910bb 100644
--- a/drivers/gpu/drm/omapdrm/dss/dpi.c
+++ b/drivers/gpu/drm/omapdrm/dss/dpi.c
@@ -566,8 +566,7 @@ static int dpi_verify_pll(struct dss_pll *pll)
 }

 static const struct soc_device_attribute dpi_soc_devices[] = {
-	{ .family = "OMAP3[456]*" },
-	{ .family = "[AD]M37*" },
+	{ .machine = "OMAP3[456]*" },
You also need 

	{ .machine = "[AD]M37*" },

otherwise there will be no match for the OMAP3-like AM37xx and DM37xx SoCs.

Another option would be to match on { .family = "OMAP3*" } but there could be 
spurious matches, even though I haven't identified any.
 	{ /* sentinel */ }
 };
-- 
Regards,

Laurent Pinchart

Re: [PATCH 1/4] omapdrm: fix compatible string for td028ttec1

From: H. Nikolaus Schaller <hidden>
Date: 2017-11-09 06:05:56

Hi Laurent,
Am 09.11.2017 um 04:33 schrieb Laurent Pinchart [off-list ref]:

Hi Nikolaus,

Thank you for the patch.

On Wednesday, 8 November 2017 23:09:29 EET H. Nikolaus Schaller wrote:
quoted
The vendor name was "toppoly" but other panels and the vendor list
have defined it as "tpo". So let's fix it in driver and bindings.

Signed-off-by: H. Nikolaus Schaller <redacted>
---
.../display/panel/{toppoly,td028ttec1.txt => tpo,td028ttec1.txt} | 4 ++--
drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c           | 4 ++--
drivers/video/fbdev/omap2/omapfb/displays/panel-tpo-td028ttec1.c  | 4 ++--
3 files changed, 6 insertions(+), 6 deletions(-)
rename
Documentation/devicetree/bindings/display/panel/{toppoly,td028ttec1.txt =>
tpo,td028ttec1.txt} (84%)

diff --git
a/Documentation/devicetree/bindings/display/panel/toppoly,td028ttec1.txt
b/Documentation/devicetree/bindings/display/panel/tpo,td028ttec1.txt
similarity index 84%
rename from
Documentation/devicetree/bindings/display/panel/toppoly,td028ttec1.txt
rename to
Documentation/devicetree/bindings/display/panel/tpo,td028ttec1.txt index
7175dc3740ac..ed34253d9fb1 100644
--- a/Documentation/devicetree/bindings/display/panel/toppoly,td028ttec1.txt
+++ b/Documentation/devicetree/bindings/display/panel/tpo,td028ttec1.txt @@
-2,7 +2,7 @@ Toppoly TD028TTEC1 Panel
========================

Required properties:
-- compatible: "toppoly,td028ttec1"
+- compatible: "tpo,td028ttec1"

Optional properties:
- label: a symbolic name for the panel
@@ -14,7 +14,7 @@ Example
-------
lcd-panel: td028ttec1@0 {
-	compatible = "toppoly,td028ttec1";
+	compatible = "tpo,td028ttec1";
	reg = <0>;
	spi-max-frequency = <100000>;
	spi-cpol;
diff --git a/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c
b/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c index
0a38a0e8c925..2dab491478c2 100644
--- a/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c
+++ b/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c
@@ -452,7 +452,7 @@ static int td028ttec1_panel_remove(struct spi_device
*spi) }

static const struct of_device_id td028ttec1_of_match[] = {
-	{ .compatible = "omapdss,toppoly,td028ttec1", },
+	{ .compatible = "omapdss,tpo,td028ttec1", },
Doesn't this break backward compatibility with existing DT ?
Yes, it does. But I am only aware of the GTA04 which uses it and
there is a separate fix).
quoted
	{},
};
@@ -471,7 +471,7 @@ static struct spi_driver td028ttec1_spi_driver = {
module_spi_driver(td028ttec1_spi_driver);

-MODULE_ALIAS("spi:toppoly,td028ttec1");
+MODULE_ALIAS("spi:tpo,td028ttec1");
MODULE_AUTHOR("H. Nikolaus Schaller [off-list ref]");
MODULE_DESCRIPTION("Toppoly TD028TTEC1 panel driver");
MODULE_LICENSE("GPL");
diff --git
a/drivers/video/fbdev/omap2/omapfb/displays/panel-tpo-td028ttec1.c
b/drivers/video/fbdev/omap2/omapfb/displays/panel-tpo-td028ttec1.c index
57e9e146ff74..39e1754746d2 100644
--- a/drivers/video/fbdev/omap2/omapfb/displays/panel-tpo-td028ttec1.c
+++ b/drivers/video/fbdev/omap2/omapfb/displays/panel-tpo-td028ttec1.c
@@ -455,7 +455,7 @@ static int td028ttec1_panel_remove(struct spi_device
*spi) }

static const struct of_device_id td028ttec1_of_match[] = {
-	{ .compatible = "omapdss,toppoly,td028ttec1", },
+	{ .compatible = "omapdss,tpo,td028ttec1", },
	{},
};
@@ -474,7 +474,7 @@ static struct spi_driver td028ttec1_spi_driver = {
module_spi_driver(td028ttec1_spi_driver);

-MODULE_ALIAS("spi:toppoly,td028ttec1");
+MODULE_ALIAS("spi:tpo,td028ttec1");
MODULE_AUTHOR("H. Nikolaus Schaller [off-list ref]");
MODULE_DESCRIPTION("Toppoly TD028TTEC1 panel driver");
MODULE_LICENSE("GPL");

-- 
Regards,

Laurent Pinchart

Re: [PATCH 3/4] DTS: Pandora: fix panel compatibility string

From: H. Nikolaus Schaller <hidden>
Date: 2017-11-09 06:07:09

Am 09.11.2017 um 04:36 schrieb Laurent Pinchart [off-list ref]:

Hi Nikolaus,

Thank you for the patch.

On Wednesday, 8 November 2017 23:09:31 EET H. Nikolaus Schaller wrote:
quoted
We can remove the "omapdss," prefix.
I agree but you should explain why.
I can add a sentence if someone helps me to formulate it correctly.
Or Tomi, please add when accepting the patch.
quoted
Signed-off-by: H. Nikolaus Schaller <redacted>
---
arch/arm/boot/dts/omap3-pandora-common.dtsi | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/omap3-pandora-common.dtsi
b/arch/arm/boot/dts/omap3-pandora-common.dtsi index
53e007abdc71..64d967ec8c58 100644
--- a/arch/arm/boot/dts/omap3-pandora-common.dtsi
+++ b/arch/arm/boot/dts/omap3-pandora-common.dtsi
@@ -626,7 +626,7 @@
	lcd: lcd@1 {
		reg = <1>;	/* CS1 */
-		compatible =	"omapdss,tpo,td043mtea1";
+		compatible =	"tpo,td043mtea1";
		spi-max-frequency = <100000>;
		spi-cpol;
		spi-cpha;

-- 
Regards,

Laurent Pinchart

Re: [PATCH 4/4] omapdss: fix problem enabling VDDS_DSI on OMAP3530 (OpenPandora)

From: H. Nikolaus Schaller <hidden>
Date: 2017-11-09 06:13:03

Hi Laurent,
Am 09.11.2017 um 04:45 schrieb Laurent Pinchart [off-list ref]:

Hi Nikolaus,

Thank you for the patch.

On Wednesday, 8 November 2017 23:09:32 EET H. Nikolaus Schaller wrote:
quoted
commit d178e034d565 ("drm: omapdrm: Move FEAT_DPI_USES_VDDS_DSI feature to
dpi code")

introduced a new match table which turned out to be wrong, at least
for the 600 MHz OpenPandora using the OMAP3530.

The effect was strange: only the Blue channel of the RGB panel was
driven while Red and Green stayed black. So a coloured picture turned
into blue/black.

The GTA04 with DM3730 didn't show the effect.

It turned out that VDDS_DSI was not properly initialized on OMAP3530,
because the .family string is just "OMAP3" for these processors and
not "OMAP3xxx".

Therefore we match the .machine attribute.

Signed-off-by: H. Nikolaus Schaller <redacted>
I've already submitted a similar patch (but without the problem pointed out 
below) in the mail thread where we discussed the issue. It is customary to use 
the first patch posted (unless it is utterly broken of course).
Ah sorry. My workflow isn't well prepared for that and I already had committed
something to my private branch...
Could you thus 
please include it in this series in replacement of this patch ?
Well, you can as well reject my patch (it is just a proposal) and take yours
as a replacement. Especially as you better understand all the potential values
for .family and .machine than me.

Should be less work for both of us.
quoted
---
drivers/gpu/drm/omapdrm/dss/dpi.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/omapdrm/dss/dpi.c
b/drivers/gpu/drm/omapdrm/dss/dpi.c index 4ed5fde11313..aae3626910bb 100644
--- a/drivers/gpu/drm/omapdrm/dss/dpi.c
+++ b/drivers/gpu/drm/omapdrm/dss/dpi.c
@@ -566,8 +566,7 @@ static int dpi_verify_pll(struct dss_pll *pll)
}

static const struct soc_device_attribute dpi_soc_devices[] = {
-	{ .family = "OMAP3[456]*" },
-	{ .family = "[AD]M37*" },
+	{ .machine = "OMAP3[456]*" },
You also need 

	{ .machine = "[AD]M37*" },

otherwise there will be no match for the OMAP3-like AM37xx and DM37xx SoCs.
Ah, ok. I wasn't aware that there are some AM37 and DM37 chips with and
some without OMAP3 prefix.
Another option would be to match on { .family = "OMAP3*" } but there could be 
spurious matches, even though I haven't identified any.
quoted
	{ /* sentinel */ }
};
BR and thanks,
Nikolaus Schaller

Re: [PATCH 1/4] omapdrm: fix compatible string for td028ttec1

From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Date: 2017-11-09 06:35:08

Hi Nikolaus,

On Thursday, 9 November 2017 08:05:15 EET H. Nikolaus Schaller wrote:
quoted
Am 09.11.2017 um 04:33 schrieb Laurent Pinchart:
On Wednesday, 8 November 2017 23:09:29 EET H. Nikolaus Schaller wrote:
quoted
The vendor name was "toppoly" but other panels and the vendor list
have defined it as "tpo". So let's fix it in driver and bindings.

Signed-off-by: H. Nikolaus Schaller <redacted>
---
.../display/panel/{toppoly,td028ttec1.txt => tpo,td028ttec1.txt} | 4 ++--
drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c           | 4
++--
drivers/video/fbdev/omap2/omapfb/displays/panel-tpo-td028ttec1.c  | 4
++--
3 files changed, 6 insertions(+), 6 deletions(-)
rename
Documentation/devicetree/bindings/display/panel/{toppoly,td028ttec1.txt
=>
tpo,td028ttec1.txt} (84%)

diff --git
a/Documentation/devicetree/bindings/display/panel/toppoly,td028ttec1.txt
b/Documentation/devicetree/bindings/display/panel/tpo,td028ttec1.txt
similarity index 84%
rename from
Documentation/devicetree/bindings/display/panel/toppoly,td028ttec1.txt
rename to
Documentation/devicetree/bindings/display/panel/tpo,td028ttec1.txt index
7175dc3740ac..ed34253d9fb1 100644
---
a/Documentation/devicetree/bindings/display/panel/toppoly,td028ttec1.txt
+++ b/Documentation/devicetree/bindings/display/panel/tpo,td028ttec1.txt
@@ -2,7 +2,7 @@ Toppoly TD028TTEC1 Panel
============

Required properties:
-- compatible: "toppoly,td028ttec1"
+- compatible: "tpo,td028ttec1"

Optional properties:
- label: a symbolic name for the panel
@@ -14,7 +14,7 @@ Example
-------
lcd-panel: td028ttec1@0 {
-	compatible = "toppoly,td028ttec1";
+	compatible = "tpo,td028ttec1";

	reg = <0>;
	spi-max-frequency = <100000>;
	spi-cpol;
diff --git a/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c
b/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c index
0a38a0e8c925..2dab491478c2 100644
--- a/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c
+++ b/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c
@@ -452,7 +452,7 @@ static int td028ttec1_panel_remove(struct spi_device
*spi)
}

static const struct of_device_id td028ttec1_of_match[] = {
-	{ .compatible = "omapdss,toppoly,td028ttec1", },
+	{ .compatible = "omapdss,tpo,td028ttec1", },
Doesn't this break backward compatibility with existing DT ?
Yes, it does. But I am only aware of the GTA04 which uses it and
there is a separate fix).
DT is supposed to be an ABI. In theory at least, one could boot a GTA04 with 
an existing DT and a new kernel, and no regression should be noticed. There 
could also be other devices using this panel that you are not aware of.

For how to apply the theory to real life, I'll defer to Tomi :-)
quoted
quoted
	{},
};
[snip]

-- 
Regards,

Laurent Pinchart

Re: [PATCH 1/4] omapdrm: fix compatible string for td028ttec1

From: H. Nikolaus Schaller <hidden>
Date: 2017-11-09 06:48:42

Hi Laurent,
Am 09.11.2017 um 07:35 schrieb Laurent Pinchart [off-list ref]:

Hi Nikolaus,

On Thursday, 9 November 2017 08:05:15 EET H. Nikolaus Schaller wrote:
quoted
quoted
Am 09.11.2017 um 04:33 schrieb Laurent Pinchart:
On Wednesday, 8 November 2017 23:09:29 EET H. Nikolaus Schaller wrote:
quoted
The vendor name was "toppoly" but other panels and the vendor list
have defined it as "tpo". So let's fix it in driver and bindings.

Signed-off-by: H. Nikolaus Schaller <redacted>
---
.../display/panel/{toppoly,td028ttec1.txt => tpo,td028ttec1.txt} | 4 ++--
drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c           | 4
++--
drivers/video/fbdev/omap2/omapfb/displays/panel-tpo-td028ttec1.c  | 4
++--
3 files changed, 6 insertions(+), 6 deletions(-)
rename
Documentation/devicetree/bindings/display/panel/{toppoly,td028ttec1.txt
=>
tpo,td028ttec1.txt} (84%)

diff --git
a/Documentation/devicetree/bindings/display/panel/toppoly,td028ttec1.txt
b/Documentation/devicetree/bindings/display/panel/tpo,td028ttec1.txt
similarity index 84%
rename from
Documentation/devicetree/bindings/display/panel/toppoly,td028ttec1.txt
rename to
Documentation/devicetree/bindings/display/panel/tpo,td028ttec1.txt index
7175dc3740ac..ed34253d9fb1 100644
---
a/Documentation/devicetree/bindings/display/panel/toppoly,td028ttec1.txt
+++ b/Documentation/devicetree/bindings/display/panel/tpo,td028ttec1.txt
@@ -2,7 +2,7 @@ Toppoly TD028TTEC1 Panel
========================

Required properties:
-- compatible: "toppoly,td028ttec1"
+- compatible: "tpo,td028ttec1"

Optional properties:
- label: a symbolic name for the panel
@@ -14,7 +14,7 @@ Example
-------
lcd-panel: td028ttec1@0 {
-	compatible = "toppoly,td028ttec1";
+	compatible = "tpo,td028ttec1";

	reg = <0>;
	spi-max-frequency = <100000>;
	spi-cpol;
diff --git a/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c
b/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c index
0a38a0e8c925..2dab491478c2 100644
--- a/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c
+++ b/drivers/gpu/drm/omapdrm/displays/panel-tpo-td028ttec1.c
@@ -452,7 +452,7 @@ static int td028ttec1_panel_remove(struct spi_device
*spi)
}

static const struct of_device_id td028ttec1_of_match[] = {
-	{ .compatible = "omapdss,toppoly,td028ttec1", },
+	{ .compatible = "omapdss,tpo,td028ttec1", },
Doesn't this break backward compatibility with existing DT ?
Yes, it does. But I am only aware of the GTA04 which uses it and
there is a separate fix).
DT is supposed to be an ABI. In theory at least, one could boot a GTA04 with 
an existing DT and a new kernel, and no regression should be noticed.
Yes, indeed...
There 
could also be other devices using this panel that you are not aware of.

For how to apply the theory to real life, I'll defer to Tomi :-)
Yes, Tomi should decide if we should keep the old compatible string in
the driver (in second place so to avoid a speed penalty)...

BR and thanks,
Nikolaus Schaller
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help