diff mbox

[RESEND] drm: panel-simple: add URT UMSH-8596MD-xT panel support

Message ID 55E5AD23.8070309@maciej.szmigiero.name
State New, archived
Headers show

Commit Message

Maciej S. Szmigiero Sept. 1, 2015, 1:50 p.m. UTC
This patch adds support for United Radiant Technology
UMSH-8596MD-xT 7.0" WVGA TFT LCD panels
(both LVDS and parallel versions) to DRM
panel-simple driver.

Signed-off-by: Maciej Szmigiero <mail@maciej.szmigiero.name>
---
This is a resend without changes.

Comments

Maciej S. Szmigiero Oct. 2, 2015, 9:40 p.m. UTC | #1
Anybody here?

I've already submitted this patch two times but received no response...

Maciej Szmigiero

On 01.09.2015 15:50, Maciej S. Szmigiero wrote:
> This patch adds support for United Radiant Technology
> UMSH-8596MD-xT 7.0" WVGA TFT LCD panels
> (both LVDS and parallel versions) to DRM
> panel-simple driver.
> 
> Signed-off-by: Maciej Szmigiero <mail@maciej.szmigiero.name>
> ---
> This is a resend without changes.
> 
> diff --git a/Documentation/devicetree/bindings/panel/urt,umsh-8596md.txt b/Documentation/devicetree/bindings/panel/urt,umsh-8596md.txt
> new file mode 100644
> index 0000000..2990e6b
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/panel/urt,umsh-8596md.txt
> @@ -0,0 +1,11 @@
> +United Radiant Technology UMSH-8596MD-xT 7.0" WVGA TFT LCD panel
> +
> +Supported are LVDS versions (-11T, -19T) and parallel ones
> +(-T, -1T, -7T, -20T).
> +
> +Required properties:
> +- compatible: should be "urt,umsh-8596md-lvds" for LVDS versions,
> +  "urt,umsh-8596md-parallel" for parallel ones.
> +
> +This binding is compatible with the simple-panel binding, which is specified
> +in simple-panel.txt in this directory.
> diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
> index 66a33ae..234ce41 100644
> --- a/Documentation/devicetree/bindings/vendor-prefixes.txt
> +++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
> @@ -213,6 +213,7 @@ toshiba	Toshiba Corporation
>  toumaz	Toumaz
>  tplink	TP-LINK Technologies Co., Ltd.
>  truly	Truly Semiconductors Limited
> +urt	United Radiant Technology Corporation
>  usi	Universal Scientific Industrial Co., Ltd.
>  v3	V3 Semiconductor
>  variscite	Variscite Ltd.
> diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
> index f94201b..be47fd7 100644
> --- a/drivers/gpu/drm/panel/panel-simple.c
> +++ b/drivers/gpu/drm/panel/panel-simple.c
> @@ -1036,6 +1036,42 @@ static const struct panel_desc shelly_sca07010_bfn_lnn = {
>  	.bus_format = MEDIA_BUS_FMT_RGB666_1X18,
>  };
>  
> +static const struct display_timing urt_umsh_8596md_timing = {
> +	.pixelclock = { 33260000, 33260000, 33260000 },
> +	.hactive = { 800, 800, 800 },
> +	.hfront_porch = { 41, 41, 41 },
> +	.hback_porch = { 216 - 128, 216 - 128, 216 - 128 },
> +	.hsync_len = { 71, 128, 128 },
> +	.vactive = { 480, 480, 480 },
> +	.vfront_porch = { 10, 10, 10 },
> +	.vback_porch = { 35 - 2, 35 - 2, 35 - 2 },
> +	.vsync_len = { 2, 2, 2 },
> +	.flags = DISPLAY_FLAGS_DE_HIGH | DISPLAY_FLAGS_PIXDATA_NEGEDGE |
> +		DISPLAY_FLAGS_HSYNC_LOW | DISPLAY_FLAGS_VSYNC_LOW,
> +};
> +
> +static const struct panel_desc urt_umsh_8596md_lvds = {
> +	.timings = &urt_umsh_8596md_timing,
> +	.num_timings = 1,
> +	.bpc = 6,
> +	.size = {
> +		.width = 152,
> +		.height = 91,
> +	},
> +	.bus_format = MEDIA_BUS_FMT_RGB666_1X7X3_SPWG,
> +};
> +
> +static const struct panel_desc urt_umsh_8596md_parallel = {
> +	.timings = &urt_umsh_8596md_timing,
> +	.num_timings = 1,
> +	.bpc = 6,
> +	.size = {
> +		.width = 152,
> +		.height = 91,
> +	},
> +	.bus_format = MEDIA_BUS_FMT_RGB666_1X18,
> +};
> +
>  static const struct of_device_id platform_of_match[] = {
>  	{
>  		.compatible = "ampire,am800480r3tmqwa1h",
> @@ -1125,6 +1161,12 @@ static const struct of_device_id platform_of_match[] = {
>  		.compatible = "shelly,sca07010-bfn-lnn",
>  		.data = &shelly_sca07010_bfn_lnn,
>  	}, {
> +		.compatible = "urt,umsh-8596md-lvds",
> +		.data = &urt_umsh_8596md_lvds,
> +	}, {
> +		.compatible = "urt,umsh-8596md-parallel",
> +		.data = &urt_umsh_8596md_parallel,
> +	}, {
>  		/* sentinel */
>  	}
>  };
>
Emil Velikov Oct. 4, 2015, 10:43 a.m. UTC | #2
Hi Maciej,

On 2 October 2015 at 22:40, Maciej S. Szmigiero
<mail@maciej.szmigiero.name> wrote:
> Anybody here?
>
> I've already submitted this patch two times but received no response...
>
Seems that the maintainer (Thierry) isn't Cc'ed. You might want to
split the DT binding and vendor prefix to separate patches.

-Emil
Maciej S. Szmigiero Oct. 4, 2015, 11:33 p.m. UTC | #3
Hi Emil,

Thanks for your response,

On 04.10.2015 12:43, Emil Velikov wrote:
> Hi Maciej,
> 
> On 2 October 2015 at 22:40, Maciej S. Szmigiero
> <mail@maciej.szmigiero.name> wrote:
>> Anybody here?
>>
>> I've already submitted this patch two times but received no response...
>>
> Seems that the maintainer (Thierry) isn't Cc'ed.

Yes, he was Cc'ed - see for example https://patchwork.ozlabs.org/patch/512858/ .

> You might want to
> split the DT binding and vendor prefix to separate patches.

Do you mean to first submit new vendor prefix then panel patch with docs?
Or even docs separately?

> -Emil
> 

Best regards,
Maciej
Thierry Reding Oct. 5, 2015, 10:58 a.m. UTC | #4
On Mon, Oct 05, 2015 at 01:33:49AM +0200, Maciej S. Szmigiero wrote:
> Hi Emil,
> 
> Thanks for your response,
> 
> On 04.10.2015 12:43, Emil Velikov wrote:
> > Hi Maciej,
> > 
> > On 2 October 2015 at 22:40, Maciej S. Szmigiero
> > <mail@maciej.szmigiero.name> wrote:
> >> Anybody here?
> >>
> >> I've already submitted this patch two times but received no response...
> >>
> > Seems that the maintainer (Thierry) isn't Cc'ed.
> 
> Yes, he was Cc'ed - see for example https://patchwork.ozlabs.org/patch/512858/ .

Sorry, I never received any of your earlier patches. It's in none of my
mailboxes nor was it classified as spam. Even searching by message ID
doesn't give me a positive hit.

> > You might want to
> > split the DT binding and vendor prefix to separate patches.
> 
> Do you mean to first submit new vendor prefix then panel patch with docs?
> Or even docs separately?

This should be three patches: the vendor prefix is usually a separate
patch and needs an Acked-by from one of the device tree bindings
maintainers. The binding itself should also be a separate patch and the
driver changes should come last.

Thierry
Thierry Reding Oct. 5, 2015, 11:01 a.m. UTC | #5
On Fri, Oct 02, 2015 at 11:40:16PM +0200, Maciej S. Szmigiero wrote:
> Anybody here?
> 
> I've already submitted this patch two times but received no response...
> 
> Maciej Szmigiero
> 
> On 01.09.2015 15:50, Maciej S. Szmigiero wrote:
> > This patch adds support for United Radiant Technology
> > UMSH-8596MD-xT 7.0" WVGA TFT LCD panels
> > (both LVDS and parallel versions) to DRM
> > panel-simple driver.
> > 
> > Signed-off-by: Maciej Szmigiero <mail@maciej.szmigiero.name>
> > ---
> > This is a resend without changes.
> > 
> > diff --git a/Documentation/devicetree/bindings/panel/urt,umsh-8596md.txt b/Documentation/devicetree/bindings/panel/urt,umsh-8596md.txt
> > new file mode 100644
> > index 0000000..2990e6b
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/panel/urt,umsh-8596md.txt
> > @@ -0,0 +1,11 @@
> > +United Radiant Technology UMSH-8596MD-xT 7.0" WVGA TFT LCD panel
> > +
> > +Supported are LVDS versions (-11T, -19T) and parallel ones
> > +(-T, -1T, -7T, -20T).

Please don't use this kind of wildcard compatible values. If these are
different models then each of them deserves a separate compatible
string.

Thierry
Maciej S. Szmigiero Oct. 5, 2015, 3:25 p.m. UTC | #6
Hi Thierry,

On 05.10.2015 13:01, Thierry Reding wrote:
>> On 01.09.2015 15:50, Maciej S. Szmigiero wrote:
>>> This patch adds support for United Radiant Technology
>>> UMSH-8596MD-xT 7.0" WVGA TFT LCD panels
>>> (both LVDS and parallel versions) to DRM
>>> panel-simple driver.
>>>
>>> Signed-off-by: Maciej Szmigiero <mail@maciej.szmigiero.name>
>>> ---
>>> This is a resend without changes.
>>>
>>> diff --git a/Documentation/devicetree/bindings/panel/urt,umsh-8596md.txt b/Documentation/devicetree/bindings/panel/urt,umsh-8596md.txt
>>> new file mode 100644
>>> index 0000000..2990e6b
>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/panel/urt,umsh-8596md.txt
>>> @@ -0,0 +1,11 @@
>>> +United Radiant Technology UMSH-8596MD-xT 7.0" WVGA TFT LCD panel
>>> +
>>> +Supported are LVDS versions (-11T, -19T) and parallel ones
>>> +(-T, -1T, -7T, -20T).
> 
> Please don't use this kind of wildcard compatible values. If these are
> different models then each of them deserves a separate compatible
> string.

The differences between these revisions are like different maximum backlight
luminance or presence / absence of touch panel.

None of this changes panel timings - should they be split into different
compatible values anyway?

>>> You might want to
>>> split the DT binding and vendor prefix to separate patches.
>>
>> Do you mean to first submit new vendor prefix then panel patch with docs?
>> Or even docs separately?
> 
> This should be three patches: the vendor prefix is usually a separate
> patch and needs an Acked-by from one of the device tree bindings
> maintainers. The binding itself should also be a separate patch and the
> driver changes should come last.

I will split the patch and first submit DT binding docs.

> Thierry

Best regards,
Maciej
Thierry Reding Oct. 6, 2015, 9:10 a.m. UTC | #7
On Mon, Oct 05, 2015 at 05:25:33PM +0200, Maciej S. Szmigiero wrote:
> Hi Thierry,
> 
> On 05.10.2015 13:01, Thierry Reding wrote:
> >> On 01.09.2015 15:50, Maciej S. Szmigiero wrote:
> >>> This patch adds support for United Radiant Technology
> >>> UMSH-8596MD-xT 7.0" WVGA TFT LCD panels
> >>> (both LVDS and parallel versions) to DRM
> >>> panel-simple driver.
> >>>
> >>> Signed-off-by: Maciej Szmigiero <mail@maciej.szmigiero.name>
> >>> ---
> >>> This is a resend without changes.
> >>>
> >>> diff --git a/Documentation/devicetree/bindings/panel/urt,umsh-8596md.txt b/Documentation/devicetree/bindings/panel/urt,umsh-8596md.txt
> >>> new file mode 100644
> >>> index 0000000..2990e6b
> >>> --- /dev/null
> >>> +++ b/Documentation/devicetree/bindings/panel/urt,umsh-8596md.txt
> >>> @@ -0,0 +1,11 @@
> >>> +United Radiant Technology UMSH-8596MD-xT 7.0" WVGA TFT LCD panel
> >>> +
> >>> +Supported are LVDS versions (-11T, -19T) and parallel ones
> >>> +(-T, -1T, -7T, -20T).
> > 
> > Please don't use this kind of wildcard compatible values. If these are
> > different models then each of them deserves a separate compatible
> > string.
> 
> The differences between these revisions are like different maximum backlight
> luminance or presence / absence of touch panel.
> 
> None of this changes panel timings - should they be split into different
> compatible values anyway?

Yes, absolutely. The compatible doesn't only define what the video
timings are, it defines the specific piece of hardware. While it is true
that the panel-simple driver currently doesn't use any other information
the DT compatible value characterizes the full hardware and therefore
should take into account all of the device's properties.

Presence of a touch panel sounds like a very important property and the
maximum backlight brightness might also become important at some ponit.

> >>> You might want to
> >>> split the DT binding and vendor prefix to separate patches.
> >>
> >> Do you mean to first submit new vendor prefix then panel patch with docs?
> >> Or even docs separately?
> > 
> > This should be three patches: the vendor prefix is usually a separate
> > patch and needs an Acked-by from one of the device tree bindings
> > maintainers. The binding itself should also be a separate patch and the
> > driver changes should come last.
> 
> I will split the patch and first submit DT binding docs.

Thanks,
Thierry
diff mbox

Patch

diff --git a/Documentation/devicetree/bindings/panel/urt,umsh-8596md.txt b/Documentation/devicetree/bindings/panel/urt,umsh-8596md.txt
new file mode 100644
index 0000000..2990e6b
--- /dev/null
+++ b/Documentation/devicetree/bindings/panel/urt,umsh-8596md.txt
@@ -0,0 +1,11 @@ 
+United Radiant Technology UMSH-8596MD-xT 7.0" WVGA TFT LCD panel
+
+Supported are LVDS versions (-11T, -19T) and parallel ones
+(-T, -1T, -7T, -20T).
+
+Required properties:
+- compatible: should be "urt,umsh-8596md-lvds" for LVDS versions,
+  "urt,umsh-8596md-parallel" for parallel ones.
+
+This binding is compatible with the simple-panel binding, which is specified
+in simple-panel.txt in this directory.
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt
index 66a33ae..234ce41 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.txt
+++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
@@ -213,6 +213,7 @@  toshiba	Toshiba Corporation
 toumaz	Toumaz
 tplink	TP-LINK Technologies Co., Ltd.
 truly	Truly Semiconductors Limited
+urt	United Radiant Technology Corporation
 usi	Universal Scientific Industrial Co., Ltd.
 v3	V3 Semiconductor
 variscite	Variscite Ltd.
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
index f94201b..be47fd7 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -1036,6 +1036,42 @@  static const struct panel_desc shelly_sca07010_bfn_lnn = {
 	.bus_format = MEDIA_BUS_FMT_RGB666_1X18,
 };
 
+static const struct display_timing urt_umsh_8596md_timing = {
+	.pixelclock = { 33260000, 33260000, 33260000 },
+	.hactive = { 800, 800, 800 },
+	.hfront_porch = { 41, 41, 41 },
+	.hback_porch = { 216 - 128, 216 - 128, 216 - 128 },
+	.hsync_len = { 71, 128, 128 },
+	.vactive = { 480, 480, 480 },
+	.vfront_porch = { 10, 10, 10 },
+	.vback_porch = { 35 - 2, 35 - 2, 35 - 2 },
+	.vsync_len = { 2, 2, 2 },
+	.flags = DISPLAY_FLAGS_DE_HIGH | DISPLAY_FLAGS_PIXDATA_NEGEDGE |
+		DISPLAY_FLAGS_HSYNC_LOW | DISPLAY_FLAGS_VSYNC_LOW,
+};
+
+static const struct panel_desc urt_umsh_8596md_lvds = {
+	.timings = &urt_umsh_8596md_timing,
+	.num_timings = 1,
+	.bpc = 6,
+	.size = {
+		.width = 152,
+		.height = 91,
+	},
+	.bus_format = MEDIA_BUS_FMT_RGB666_1X7X3_SPWG,
+};
+
+static const struct panel_desc urt_umsh_8596md_parallel = {
+	.timings = &urt_umsh_8596md_timing,
+	.num_timings = 1,
+	.bpc = 6,
+	.size = {
+		.width = 152,
+		.height = 91,
+	},
+	.bus_format = MEDIA_BUS_FMT_RGB666_1X18,
+};
+
 static const struct of_device_id platform_of_match[] = {
 	{
 		.compatible = "ampire,am800480r3tmqwa1h",
@@ -1125,6 +1161,12 @@  static const struct of_device_id platform_of_match[] = {
 		.compatible = "shelly,sca07010-bfn-lnn",
 		.data = &shelly_sca07010_bfn_lnn,
 	}, {
+		.compatible = "urt,umsh-8596md-lvds",
+		.data = &urt_umsh_8596md_lvds,
+	}, {
+		.compatible = "urt,umsh-8596md-parallel",
+		.data = &urt_umsh_8596md_parallel,
+	}, {
 		/* sentinel */
 	}
 };