diff mbox

drm/panel: Add display timing for Okaya RS800480T-7X0GP

Message ID 1432827466-8104-1-git-send-email-gary.bisson@boundarydevices.com (mailing list archive)
State Superseded
Headers show

Commit Message

Gary Bisson May 28, 2015, 3:37 p.m. UTC
Add support for the Okaya RS800480T-7X0GP to the DRM simple panel
driver.

The RS800480T-7X0GP is a WVGA (800x480) panel with an 18-bit parallel
LCD interface. It supports pixel clocks in the range of 30-40 MHz.

This panel details can be found at:
http://boundarydevices.com/product/7-800x480-display/

Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
---
Hi all,

This patch is the follow-up of a request from Philipp to add the Okaya display
to the simple panel driver.
http://lists.infradead.org/pipermail/linux-arm-kernel/2015-May/346657.html

Regards,
Gary
---
 .../bindings/panel/okaya,rs800480t_7x0gp.txt       |  7 ++++++
 .../devicetree/bindings/vendor-prefixes.txt        |  1 +
 drivers/gpu/drm/panel/panel-simple.c               | 27 ++++++++++++++++++++++
 3 files changed, 35 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt

Comments

Thierry Reding June 5, 2015, 12:28 p.m. UTC | #1
On Thu, May 28, 2015 at 05:37:46PM +0200, Gary Bisson wrote:
> Add support for the Okaya RS800480T-7X0GP to the DRM simple panel
> driver.
> 
> The RS800480T-7X0GP is a WVGA (800x480) panel with an 18-bit parallel
> LCD interface. It supports pixel clocks in the range of 30-40 MHz.
> 
> This panel details can be found at:
> http://boundarydevices.com/product/7-800x480-display/
> 
> Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
> ---
> Hi all,
> 
> This patch is the follow-up of a request from Philipp to add the Okaya display
> to the simple panel driver.
> http://lists.infradead.org/pipermail/linux-arm-kernel/2015-May/346657.html
> 
> Regards,
> Gary
> ---
>  .../bindings/panel/okaya,rs800480t_7x0gp.txt       |  7 ++++++
>  .../devicetree/bindings/vendor-prefixes.txt        |  1 +
>  drivers/gpu/drm/panel/panel-simple.c               | 27 ++++++++++++++++++++++
>  3 files changed, 35 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt
> 
> diff --git a/Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt b/Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt
> new file mode 100644
> index 0000000..f7c729d
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt
> @@ -0,0 +1,7 @@
> +OKAYA Electric America, Inc. RS800480T-7X0GP 7" WVGA LCD panel
> +
> +Required properties:
> +- compatible: should be "okaya,rs800480t_7x0gp"
> +
> +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 4f35a00..06ce91c 100644
> --- a/Documentation/devicetree/bindings/vendor-prefixes.txt
> +++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
> @@ -145,6 +145,7 @@ nintendo	Nintendo
>  nokia	Nokia
>  nvidia	NVIDIA
>  nxp	NXP Semiconductors
> +okaya	OKAYA Electric America, Inc.
>  onnn	ON Semiconductor Corp.
>  opencores	OpenCores.org
>  ortustech	Ortus Technology Co., Ltd.

Can you split this change into a separate patch? It needs an Acked-by
from one of the device tree binding maintainers, so make sure to Cc them
when you repost. scripts/get_maintainer.pl will list them for you.

> +static const struct display_timing okaya_rs800480t_7x0gp_timing = {
> +	.pixelclock = { 30000000, 30000000, 40000000 },
> +	.hactive = { 800, 800, 800 },
> +	.hfront_porch = { 40, 40, 40 },
> +	.hback_porch = { 40, 40, 40 },
> +	.hsync_len = { 1, 48, 48 },
> +	.vactive = { 480, 480, 480 },
> +	.vfront_porch = { 13, 13, 13 },
> +	.vback_porch = { 29, 29, 29 },
> +	.vsync_len = { 3, 3, 3 },

It strikes me as odd that the porches and VSYNC width should be fixed
for the panel. Is this really the case?

Thierry
Gary Bisson June 6, 2015, 9 p.m. UTC | #2
Thierry, All,

On Fri, Jun 5, 2015 at 2:28 PM, Thierry Reding <thierry.reding@gmail.com> wrote:
> On Thu, May 28, 2015 at 05:37:46PM +0200, Gary Bisson wrote:
>> Add support for the Okaya RS800480T-7X0GP to the DRM simple panel
>> driver.
>>
>> The RS800480T-7X0GP is a WVGA (800x480) panel with an 18-bit parallel
>> LCD interface. It supports pixel clocks in the range of 30-40 MHz.
>>
>> This panel details can be found at:
>> http://boundarydevices.com/product/7-800x480-display/
>>
>> Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
>> ---
>> Hi all,
>>
>> This patch is the follow-up of a request from Philipp to add the Okaya display
>> to the simple panel driver.
>> http://lists.infradead.org/pipermail/linux-arm-kernel/2015-May/346657.html
>>
>> Regards,
>> Gary
>> ---
>>  .../bindings/panel/okaya,rs800480t_7x0gp.txt       |  7 ++++++
>>  .../devicetree/bindings/vendor-prefixes.txt        |  1 +
>>  drivers/gpu/drm/panel/panel-simple.c               | 27 ++++++++++++++++++++++
>>  3 files changed, 35 insertions(+)
>>  create mode 100644 Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt
>>
>> diff --git a/Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt b/Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt
>> new file mode 100644
>> index 0000000..f7c729d
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt
>> @@ -0,0 +1,7 @@
>> +OKAYA Electric America, Inc. RS800480T-7X0GP 7" WVGA LCD panel
>> +
>> +Required properties:
>> +- compatible: should be "okaya,rs800480t_7x0gp"
>> +
>> +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 4f35a00..06ce91c 100644
>> --- a/Documentation/devicetree/bindings/vendor-prefixes.txt
>> +++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
>> @@ -145,6 +145,7 @@ nintendo  Nintendo
>>  nokia        Nokia
>>  nvidia       NVIDIA
>>  nxp  NXP Semiconductors
>> +okaya        OKAYA Electric America, Inc.
>>  onnn ON Semiconductor Corp.
>>  opencores    OpenCores.org
>>  ortustech    Ortus Technology Co., Ltd.
>
> Can you split this change into a separate patch? It needs an Acked-by
> from one of the device tree binding maintainers, so make sure to Cc them
> when you repost. scripts/get_maintainer.pl will list them for you.

Sure, will do.

>> +static const struct display_timing okaya_rs800480t_7x0gp_timing = {
>> +     .pixelclock = { 30000000, 30000000, 40000000 },
>> +     .hactive = { 800, 800, 800 },
>> +     .hfront_porch = { 40, 40, 40 },
>> +     .hback_porch = { 40, 40, 40 },
>> +     .hsync_len = { 1, 48, 48 },
>> +     .vactive = { 480, 480, 480 },
>> +     .vfront_porch = { 13, 13, 13 },
>> +     .vback_porch = { 29, 29, 29 },
>> +     .vsync_len = { 3, 3, 3 },
>
> It strikes me as odd that the porches and VSYNC width should be fixed
> for the panel. Is this really the case?

Well this is the values provided by Okaya. Here is a link to the
datasheet, details are located in page 8:
http://boundarydevices.com/datasheets/RS800480T-7X0GP-A.pdf

Thanks for the feedback,
Gary
Thierry Reding June 9, 2015, 7:22 a.m. UTC | #3
On Sat, Jun 06, 2015 at 11:00:21PM +0200, Gary Bisson wrote:
> Thierry, All,
> 
> On Fri, Jun 5, 2015 at 2:28 PM, Thierry Reding <thierry.reding@gmail.com> wrote:
> > On Thu, May 28, 2015 at 05:37:46PM +0200, Gary Bisson wrote:
> >> Add support for the Okaya RS800480T-7X0GP to the DRM simple panel
> >> driver.
> >>
> >> The RS800480T-7X0GP is a WVGA (800x480) panel with an 18-bit parallel
> >> LCD interface. It supports pixel clocks in the range of 30-40 MHz.
> >>
> >> This panel details can be found at:
> >> http://boundarydevices.com/product/7-800x480-display/
> >>
> >> Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
> >> ---
> >> Hi all,
> >>
> >> This patch is the follow-up of a request from Philipp to add the Okaya display
> >> to the simple panel driver.
> >> http://lists.infradead.org/pipermail/linux-arm-kernel/2015-May/346657.html
> >>
> >> Regards,
> >> Gary
> >> ---
> >>  .../bindings/panel/okaya,rs800480t_7x0gp.txt       |  7 ++++++
> >>  .../devicetree/bindings/vendor-prefixes.txt        |  1 +
> >>  drivers/gpu/drm/panel/panel-simple.c               | 27 ++++++++++++++++++++++
> >>  3 files changed, 35 insertions(+)
> >>  create mode 100644 Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt
> >>
> >> diff --git a/Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt b/Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt
> >> new file mode 100644
> >> index 0000000..f7c729d
> >> --- /dev/null
> >> +++ b/Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt
> >> @@ -0,0 +1,7 @@
> >> +OKAYA Electric America, Inc. RS800480T-7X0GP 7" WVGA LCD panel
> >> +
> >> +Required properties:
> >> +- compatible: should be "okaya,rs800480t_7x0gp"
> >> +
> >> +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 4f35a00..06ce91c 100644
> >> --- a/Documentation/devicetree/bindings/vendor-prefixes.txt
> >> +++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
> >> @@ -145,6 +145,7 @@ nintendo  Nintendo
> >>  nokia        Nokia
> >>  nvidia       NVIDIA
> >>  nxp  NXP Semiconductors
> >> +okaya        OKAYA Electric America, Inc.
> >>  onnn ON Semiconductor Corp.
> >>  opencores    OpenCores.org
> >>  ortustech    Ortus Technology Co., Ltd.
> >
> > Can you split this change into a separate patch? It needs an Acked-by
> > from one of the device tree binding maintainers, so make sure to Cc them
> > when you repost. scripts/get_maintainer.pl will list them for you.
> 
> Sure, will do.
> 
> >> +static const struct display_timing okaya_rs800480t_7x0gp_timing = {
> >> +     .pixelclock = { 30000000, 30000000, 40000000 },
> >> +     .hactive = { 800, 800, 800 },
> >> +     .hfront_porch = { 40, 40, 40 },
> >> +     .hback_porch = { 40, 40, 40 },
> >> +     .hsync_len = { 1, 48, 48 },
> >> +     .vactive = { 480, 480, 480 },
> >> +     .vfront_porch = { 13, 13, 13 },
> >> +     .vback_porch = { 29, 29, 29 },
> >> +     .vsync_len = { 3, 3, 3 },
> >
> > It strikes me as odd that the porches and VSYNC width should be fixed
> > for the panel. Is this really the case?
> 
> Well this is the values provided by Okaya. Here is a link to the
> datasheet, details are located in page 8:
> http://boundarydevices.com/datasheets/RS800480T-7X0GP-A.pdf

The way I read this the cells marked with - don't specify that a value
is the same as typical but rather that nobody determined that value.
It's unfortunate because it doesn't give us a good specification of the
timings, but I would suspect that the panel operates perfectly fine if
you use porches and sync pulse widths outside of the above range.

That said, I think it's fine to go with the above until we encounter
display hardware that can't match these constraints.

Thierry
Gary Bisson June 9, 2015, 3:59 p.m. UTC | #4
Hi all,

This patch is the follow-up of a request from Philipp to add the Okaya display
to the simple panel driver.
http://lists.infradead.org/pipermail/linux-arm-kernel/2015-May/346657.html

v2:
- split into 2 patches, adding Okaya to the vendor prefixes should be its own
patch as suggested by Thierry
https://patchwork.kernel.org/patch/6503261/

Regards,
Gary

Gary Bisson (2):
  of: add Okaya Electric America vendor prefix
  drm/panel: Add display timing for Okaya RS800480T-7X0GP

 .../bindings/panel/okaya,rs800480t_7x0gp.txt       |  7 ++++++
 .../devicetree/bindings/vendor-prefixes.txt        |  1 +
 drivers/gpu/drm/panel/panel-simple.c               | 27 ++++++++++++++++++++++
 3 files changed, 35 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt
Philipp Zabel June 9, 2015, 5:39 p.m. UTC | #5
Hi Gary,

Am Dienstag, den 09.06.2015, 17:59 +0200 schrieb Gary Bisson:
> Add support for the Okaya RS800480T-7X0GP to the DRM simple panel
> driver.
> 
> The RS800480T-7X0GP is a WVGA (800x480) panel with an 18-bit parallel
> LCD interface. It supports pixel clocks in the range of 30-40 MHz.
> 
> This panel details can be found at:
> http://boundarydevices.com/product/7-800x480-display/
> 
> Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
> ---
>  .../bindings/panel/okaya,rs800480t_7x0gp.txt       |  7 ++++++
>  drivers/gpu/drm/panel/panel-simple.c               | 27 ++++++++++++++++++++++
>  2 files changed, 34 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt
> 
> diff --git a/Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt b/Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt
> new file mode 100644
> index 0000000..f7c729d
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt
> @@ -0,0 +1,7 @@
> +OKAYA Electric America, Inc. RS800480T-7X0GP 7" WVGA LCD panel
> +
> +Required properties:
> +- compatible: should be "okaya,rs800480t_7x0gp"
> +
> +This binding is compatible with the simple-panel binding, which is specified
> +in simple-panel.txt in this directory.
> diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
> index 97b66b8..e511a22 100644
> --- a/drivers/gpu/drm/panel/panel-simple.c
> +++ b/drivers/gpu/drm/panel/panel-simple.c
> @@ -942,6 +942,30 @@ static const struct panel_desc lg_lp129qe = {
>  	},
>  };
>  
> +static const struct display_timing okaya_rs800480t_7x0gp_timing = {
> +	.pixelclock = { 30000000, 30000000, 40000000 },
> +	.hactive = { 800, 800, 800 },
> +	.hfront_porch = { 40, 40, 40 },
> +	.hback_porch = { 40, 40, 40 },
> +	.hsync_len = { 1, 48, 48 },
> +	.vactive = { 480, 480, 480 },
> +	.vfront_porch = { 13, 13, 13 },
> +	.vback_porch = { 29, 29, 29 },
> +	.vsync_len = { 3, 3, 3 },
> +	.flags = DISPLAY_FLAGS_DE_HIGH,
> +};
> +
> +static const struct panel_desc okaya_rs800480t_7x0gp = {
> +	.timings = &okaya_rs800480t_7x0gp_timing,
> +	.num_timings = 1,
> +	.bpc = 6,
> +	.size = {
> +		.width = 154,
> +		.height = 87,
> +	},

Are there any poweron/poweroff sequencing delays in the datasheet that
should be met? Parallel displays often specify a few ms delay after the
voltage supply is stable and before pixel data should be driven on the
bus (.delay.prepare), as well as afterwards, before activating the
backlight (.delay.enable).

regards
Philipp
Gary Bisson June 10, 2015, 8:05 a.m. UTC | #6
Hi Philipp,

On Tue, Jun 9, 2015 at 7:39 PM, Philipp Zabel <p.zabel@pengutronix.de> wrote:
> Hi Gary,
>
> Am Dienstag, den 09.06.2015, 17:59 +0200 schrieb Gary Bisson:
>> Add support for the Okaya RS800480T-7X0GP to the DRM simple panel
>> driver.
>>
>> The RS800480T-7X0GP is a WVGA (800x480) panel with an 18-bit parallel
>> LCD interface. It supports pixel clocks in the range of 30-40 MHz.
>>
>> This panel details can be found at:
>> http://boundarydevices.com/product/7-800x480-display/
>>
>> Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
>> ---
>>  .../bindings/panel/okaya,rs800480t_7x0gp.txt       |  7 ++++++
>>  drivers/gpu/drm/panel/panel-simple.c               | 27 ++++++++++++++++++++++
>>  2 files changed, 34 insertions(+)
>>  create mode 100644 Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt
>>
>> diff --git a/Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt b/Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt
>> new file mode 100644
>> index 0000000..f7c729d
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt
>> @@ -0,0 +1,7 @@
>> +OKAYA Electric America, Inc. RS800480T-7X0GP 7" WVGA LCD panel
>> +
>> +Required properties:
>> +- compatible: should be "okaya,rs800480t_7x0gp"
>> +
>> +This binding is compatible with the simple-panel binding, which is specified
>> +in simple-panel.txt in this directory.
>> diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
>> index 97b66b8..e511a22 100644
>> --- a/drivers/gpu/drm/panel/panel-simple.c
>> +++ b/drivers/gpu/drm/panel/panel-simple.c
>> @@ -942,6 +942,30 @@ static const struct panel_desc lg_lp129qe = {
>>       },
>>  };
>>
>> +static const struct display_timing okaya_rs800480t_7x0gp_timing = {
>> +     .pixelclock = { 30000000, 30000000, 40000000 },
>> +     .hactive = { 800, 800, 800 },
>> +     .hfront_porch = { 40, 40, 40 },
>> +     .hback_porch = { 40, 40, 40 },
>> +     .hsync_len = { 1, 48, 48 },
>> +     .vactive = { 480, 480, 480 },
>> +     .vfront_porch = { 13, 13, 13 },
>> +     .vback_porch = { 29, 29, 29 },
>> +     .vsync_len = { 3, 3, 3 },
>> +     .flags = DISPLAY_FLAGS_DE_HIGH,
>> +};
>> +
>> +static const struct panel_desc okaya_rs800480t_7x0gp = {
>> +     .timings = &okaya_rs800480t_7x0gp_timing,
>> +     .num_timings = 1,
>> +     .bpc = 6,
>> +     .size = {
>> +             .width = 154,
>> +             .height = 87,
>> +     },
>
> Are there any poweron/poweroff sequencing delays in the datasheet that
> should be met? Parallel displays often specify a few ms delay after the
> voltage supply is stable and before pixel data should be driven on the
> bus (.delay.prepare), as well as afterwards, before activating the
> backlight (.delay.enable).

You are right I forgot to add those delays. I will submit a v3.

That gives prepare = unprepare = 40.5ms (rounded up to 41) and enable
= disable = 50ms based on the values provided at page 6/20 of the
following doc:
http://boundarydevices.com/datasheets/RS800480T-7X0GP-A.pdf

Regards,
Gary
Gary Bisson June 10, 2015, 4:44 p.m. UTC | #7
Hi all,

This patch is the follow-up of a request from Philipp to add the Okaya display
to the simple panel driver.
http://lists.infradead.org/pipermail/linux-arm-kernel/2015-May/346657.html

v2:
- split into 2 patches, adding Okaya to the vendor prefixes should be its own
patch as suggested by Thierry
https://patchwork.kernel.org/patch/6503261/

v3:
- add poweron/poweroff sequencing delays as suggested by Philipp. Values are
based on datasheet available at:
http://boundarydevices.com/datasheets/RS800480T-7X0GP-A.pdf

Regards,
Gary

Gary Bisson (2):
  of: add Okaya Electric America vendor prefix
  drm/panel: Add display timing for Okaya RS800480T-7X0GP

 .../bindings/panel/okaya,rs800480t_7x0gp.txt       |  7 +++++
 .../devicetree/bindings/vendor-prefixes.txt        |  1 +
 drivers/gpu/drm/panel/panel-simple.c               | 33 ++++++++++++++++++++++
 3 files changed, 41 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt
Gary Bisson Aug. 5, 2015, 8:42 a.m. UTC | #8
Hi all,

On Wed, Jun 10, 2015 at 6:44 PM, Gary Bisson
<gary.bisson@boundarydevices.com> wrote:
> Hi all,
>
> This patch is the follow-up of a request from Philipp to add the Okaya display
> to the simple panel driver.
> http://lists.infradead.org/pipermail/linux-arm-kernel/2015-May/346657.html
>
> v2:
> - split into 2 patches, adding Okaya to the vendor prefixes should be its own
> patch as suggested by Thierry
> https://patchwork.kernel.org/patch/6503261/
>
> v3:
> - add poweron/poweroff sequencing delays as suggested by Philipp. Values are
> based on datasheet available at:
> http://boundarydevices.com/datasheets/RS800480T-7X0GP-A.pdf

Now that Philipp's change that fixes the drm_panel support in the
parallel-display has been merged, would it be ok to merge the okaya
timings?
http://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=553a59fc

Regards,
Gary
diff mbox

Patch

diff --git a/Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt b/Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt
new file mode 100644
index 0000000..f7c729d
--- /dev/null
+++ b/Documentation/devicetree/bindings/panel/okaya,rs800480t_7x0gp.txt
@@ -0,0 +1,7 @@ 
+OKAYA Electric America, Inc. RS800480T-7X0GP 7" WVGA LCD panel
+
+Required properties:
+- compatible: should be "okaya,rs800480t_7x0gp"
+
+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 4f35a00..06ce91c 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.txt
+++ b/Documentation/devicetree/bindings/vendor-prefixes.txt
@@ -145,6 +145,7 @@  nintendo	Nintendo
 nokia	Nokia
 nvidia	NVIDIA
 nxp	NXP Semiconductors
+okaya	OKAYA Electric America, Inc.
 onnn	ON Semiconductor Corp.
 opencores	OpenCores.org
 ortustech	Ortus Technology Co., Ltd.
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
index 97b66b8..e511a22 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -942,6 +942,30 @@  static const struct panel_desc lg_lp129qe = {
 	},
 };
 
+static const struct display_timing okaya_rs800480t_7x0gp_timing = {
+	.pixelclock = { 30000000, 30000000, 40000000 },
+	.hactive = { 800, 800, 800 },
+	.hfront_porch = { 40, 40, 40 },
+	.hback_porch = { 40, 40, 40 },
+	.hsync_len = { 1, 48, 48 },
+	.vactive = { 480, 480, 480 },
+	.vfront_porch = { 13, 13, 13 },
+	.vback_porch = { 29, 29, 29 },
+	.vsync_len = { 3, 3, 3 },
+	.flags = DISPLAY_FLAGS_DE_HIGH,
+};
+
+static const struct panel_desc okaya_rs800480t_7x0gp = {
+	.timings = &okaya_rs800480t_7x0gp_timing,
+	.num_timings = 1,
+	.bpc = 6,
+	.size = {
+		.width = 154,
+		.height = 87,
+	},
+	.bus_format = MEDIA_BUS_FMT_RGB666_1X18,
+};
+
 static const struct drm_display_mode ortustech_com43h4m85ulc_mode  = {
 	.clock = 25000,
 	.hdisplay = 480,
@@ -1112,6 +1136,9 @@  static const struct of_device_id platform_of_match[] = {
 		.compatible = "lg,lp129qe",
 		.data = &lg_lp129qe,
 	}, {
+		.compatible = "okaya,rs800480t_7x0gp",
+		.data = &okaya_rs800480t_7x0gp,
+	}, {
 		.compatible = "ortustech,com43h4m85ulc",
 		.data = &ortustech_com43h4m85ulc,
 	}, {