* [PATCH 0/2] drm/panel: Add Raspberry Pi 7" panel
@ 2026-04-20 13:13 Tomi Valkeinen
2026-04-20 13:13 ` [PATCH 1/2] dt-bindings: display: simple: Add Raspberry Pi 7" DSI Display module panel Tomi Valkeinen
2026-04-20 13:13 ` [PATCH 2/2] drm/panel: simple: Add timings for Raspberry Pi 7" panel Tomi Valkeinen
0 siblings, 2 replies; 14+ messages in thread
From: Tomi Valkeinen @ 2026-04-20 13:13 UTC (permalink / raw)
To: Dave Stevenson, Neil Armstrong, Jessica Zhang, David Airlie,
Simona Vetter, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Thierry Reding, Sam Ravnborg
Cc: dri-devel, devicetree, linux-kernel, Tomi Valkeinen
This series adds Raspberry Pi 7" display module's panel to panel-simple.
Tested with BeagleY-AI and v1.1 of the display module.
This series, with
https://lore.kernel.org/all/20260327-tc358762-fixes-v2-0-3589d3c45f4a%40ideasonboard.com/
gives me a perfectly centered display.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
---
Tomi Valkeinen (2):
dt-bindings: display: simple: Add Raspberry Pi 7" DSI Display module panel
drm/panel: simple: Add timings for Raspberry Pi 7" panel
.../bindings/display/panel/panel-simple.yaml | 2 ++
drivers/gpu/drm/panel/panel-simple.c | 32 ++++++++++++++++++++++
2 files changed, 34 insertions(+)
---
base-commit: 028ef9c96e96197026887c0f092424679298aae8
change-id: 20260420-rpi-7inch-c1d83fe13b17
Best regards,
--
Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
^ permalink raw reply [flat|nested] 14+ messages in thread
* [PATCH 1/2] dt-bindings: display: simple: Add Raspberry Pi 7" DSI Display module panel
2026-04-20 13:13 [PATCH 0/2] drm/panel: Add Raspberry Pi 7" panel Tomi Valkeinen
@ 2026-04-20 13:13 ` Tomi Valkeinen
2026-04-20 16:01 ` Conor Dooley
2026-04-20 13:13 ` [PATCH 2/2] drm/panel: simple: Add timings for Raspberry Pi 7" panel Tomi Valkeinen
1 sibling, 1 reply; 14+ messages in thread
From: Tomi Valkeinen @ 2026-04-20 13:13 UTC (permalink / raw)
To: Dave Stevenson, Neil Armstrong, Jessica Zhang, David Airlie,
Simona Vetter, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Thierry Reding, Sam Ravnborg
Cc: dri-devel, devicetree, linux-kernel, Tomi Valkeinen
Add compatible string for panel used in Raspberry Pi 7" DSI Display
module. The different display module versions have panels from multiple
undisclosed vendors.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
---
Documentation/devicetree/bindings/display/panel/panel-simple.yaml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/Documentation/devicetree/bindings/display/panel/panel-simple.yaml b/Documentation/devicetree/bindings/display/panel/panel-simple.yaml
index 868edb04989a..a71578a99ccc 100644
--- a/Documentation/devicetree/bindings/display/panel/panel-simple.yaml
+++ b/Documentation/devicetree/bindings/display/panel/panel-simple.yaml
@@ -274,6 +274,8 @@ properties:
- qiaodian,qd43003c0-40
# Shenzhen QiShenglong Industrialist Co., Ltd. Gopher 2b 4.3" 480(RGB)x272 TFT LCD panel
- qishenglong,gopher2b-lcd
+ # Raspberry Pi 7" DSI Display module panel (multiple undisclosed vendors)
+ - raspberrypi,7inch-dsi
# Raystar Optronics, Inc. RFF500F-AWH-DNN 5.0" TFT 840x480
- raystar,rff500f-awh-dnn
# Rocktech Displays Ltd. RK101II01D-CT 10.1" TFT 1280x800
--
2.43.0
^ permalink raw reply related [flat|nested] 14+ messages in thread
* [PATCH 2/2] drm/panel: simple: Add timings for Raspberry Pi 7" panel
2026-04-20 13:13 [PATCH 0/2] drm/panel: Add Raspberry Pi 7" panel Tomi Valkeinen
2026-04-20 13:13 ` [PATCH 1/2] dt-bindings: display: simple: Add Raspberry Pi 7" DSI Display module panel Tomi Valkeinen
@ 2026-04-20 13:13 ` Tomi Valkeinen
2026-04-22 19:22 ` Dmitry Baryshkov
1 sibling, 1 reply; 14+ messages in thread
From: Tomi Valkeinen @ 2026-04-20 13:13 UTC (permalink / raw)
To: Dave Stevenson, Neil Armstrong, Jessica Zhang, David Airlie,
Simona Vetter, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Thierry Reding, Sam Ravnborg
Cc: dri-devel, devicetree, linux-kernel, Tomi Valkeinen
Add timings for the panel used in Raspberry Pi 7" DSI Display module:
https://www.raspberrypi.com/products/raspberry-pi-touch-display/
This has been tested with version v1.1 of the display module.
The panel is very strict about the back-porch values, they must be
exactly 46 for hbp and 23 for vbp. Other timings can be defined quite
freely.
The panel is exclusive to Raspberry Pi, and different versions of the
display module can have panels from different vendors which are fully
compatible. Also, as the panel vendors are not public, the compatible
string used is "raspberrypi,7inch-dsi".
Note that while the display module has a DSI connector, and the
compatible has "dsi" in it, we use DRM_MODE_CONNECTOR_DPI as the panel
itself is a parallel video panel. The display module (as of v1.1) uses
TC358762 DSI-to-DPI bridge to do the conversion.
We could use DRM_MODE_CONNECTOR_DSI here, which would have the benefit
of showing a "DSI-1" connector to the userspace. However, the panel IS a
DPI panel, and gets its input from a DSI-to-DPI bridge, and the
panel-simple.c behaves differently depending on the connector type used,
so, DRM_MODE_CONNECTOR_DPI it is.
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
---
drivers/gpu/drm/panel/panel-simple.c | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
index 91ab280869ba..e75eb20301f2 100644
--- a/drivers/gpu/drm/panel/panel-simple.c
+++ b/drivers/gpu/drm/panel/panel-simple.c
@@ -4208,6 +4208,35 @@ static const struct panel_desc rocktech_rk043fn48h = {
.connector_type = DRM_MODE_CONNECTOR_DPI,
};
+static const struct display_timing raspberrypi_7inch_timing = {
+ .pixelclock = { 10000000, 30000000, 50000000 },
+ .hactive = { 800, 800, 800 },
+ .hfront_porch = { 16, 72, 354 },
+ .hsync_len = { 1, 32, 40 },
+ .hback_porch = { 46, 46, 46 },
+ .vactive = { 480, 480, 480 },
+ .vfront_porch = { 7, 21, 147 },
+ .vsync_len = { 1, 2, 20 },
+ .vback_porch = { 23, 23, 23 },
+ .flags = DISPLAY_FLAGS_VSYNC_HIGH | DISPLAY_FLAGS_HSYNC_HIGH,
+ /* Note: the rest of the flags are defined below in bus_flags */
+};
+
+static const struct panel_desc raspberrypi_7inch = {
+ .timings = &raspberrypi_7inch_timing,
+ .num_timings = 1,
+ .bpc = 8,
+ .size = {
+ .width = 154,
+ .height = 86,
+ },
+ .bus_format = MEDIA_BUS_FMT_RGB888_1X24,
+ .connector_type = DRM_MODE_CONNECTOR_DPI,
+ .bus_flags = DRM_BUS_FLAG_DE_HIGH |
+ DRM_BUS_FLAG_SYNC_DRIVE_POSEDGE |
+ DRM_BUS_FLAG_PIXDATA_DRIVE_POSEDGE,
+};
+
static const struct display_timing rocktech_rk070er9427_timing = {
.pixelclock = { 26400000, 33300000, 46800000 },
.hactive = { 800, 800, 800 },
@@ -5490,6 +5519,9 @@ static const struct of_device_id platform_of_match[] = {
}, {
.compatible = "qishenglong,gopher2b-lcd",
.data = &qishenglong_gopher2b_lcd,
+ }, {
+ .compatible = "raspberrypi,7inch-dsi",
+ .data = &raspberrypi_7inch,
}, {
.compatible = "raystar,rff500f-awh-dnn",
.data = &raystar_rff500f_awh_dnn,
--
2.43.0
^ permalink raw reply related [flat|nested] 14+ messages in thread
* Re: [PATCH 1/2] dt-bindings: display: simple: Add Raspberry Pi 7" DSI Display module panel
2026-04-20 13:13 ` [PATCH 1/2] dt-bindings: display: simple: Add Raspberry Pi 7" DSI Display module panel Tomi Valkeinen
@ 2026-04-20 16:01 ` Conor Dooley
0 siblings, 0 replies; 14+ messages in thread
From: Conor Dooley @ 2026-04-20 16:01 UTC (permalink / raw)
To: Tomi Valkeinen
Cc: Dave Stevenson, Neil Armstrong, Jessica Zhang, David Airlie,
Simona Vetter, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Thierry Reding, Sam Ravnborg, dri-devel, devicetree, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 385 bytes --]
On Mon, Apr 20, 2026 at 04:13:35PM +0300, Tomi Valkeinen wrote:
> Add compatible string for panel used in Raspberry Pi 7" DSI Display
> module. The different display module versions have panels from multiple
> undisclosed vendors.
>
> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
Acked-by: Conor Dooley <conor.dooley@microchip.com>
pw-bot: not-applicable
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/2] drm/panel: simple: Add timings for Raspberry Pi 7" panel
2026-04-20 13:13 ` [PATCH 2/2] drm/panel: simple: Add timings for Raspberry Pi 7" panel Tomi Valkeinen
@ 2026-04-22 19:22 ` Dmitry Baryshkov
2026-04-23 12:01 ` Tomi Valkeinen
0 siblings, 1 reply; 14+ messages in thread
From: Dmitry Baryshkov @ 2026-04-22 19:22 UTC (permalink / raw)
To: Tomi Valkeinen
Cc: Dave Stevenson, Neil Armstrong, Jessica Zhang, David Airlie,
Simona Vetter, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Thierry Reding, Sam Ravnborg, dri-devel, devicetree, linux-kernel
On Mon, Apr 20, 2026 at 04:13:36PM +0300, Tomi Valkeinen wrote:
> Add timings for the panel used in Raspberry Pi 7" DSI Display module:
> https://www.raspberrypi.com/products/raspberry-pi-touch-display/
>
> This has been tested with version v1.1 of the display module.
>
> The panel is very strict about the back-porch values, they must be
> exactly 46 for hbp and 23 for vbp. Other timings can be defined quite
> freely.
>
> The panel is exclusive to Raspberry Pi, and different versions of the
> display module can have panels from different vendors which are fully
> compatible. Also, as the panel vendors are not public, the compatible
> string used is "raspberrypi,7inch-dsi".
>
> Note that while the display module has a DSI connector, and the
> compatible has "dsi" in it, we use DRM_MODE_CONNECTOR_DPI as the panel
> itself is a parallel video panel. The display module (as of v1.1) uses
> TC358762 DSI-to-DPI bridge to do the conversion.
>
> We could use DRM_MODE_CONNECTOR_DSI here, which would have the benefit
> of showing a "DSI-1" connector to the userspace. However, the panel IS a
> DPI panel, and gets its input from a DSI-to-DPI bridge, and the
> panel-simple.c behaves differently depending on the connector type used,
> so, DRM_MODE_CONNECTOR_DPI it is.
>
> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
> ---
> drivers/gpu/drm/panel/panel-simple.c | 32 ++++++++++++++++++++++++++++++++
> 1 file changed, 32 insertions(+)
>
> diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
> index 91ab280869ba..e75eb20301f2 100644
> --- a/drivers/gpu/drm/panel/panel-simple.c
> +++ b/drivers/gpu/drm/panel/panel-simple.c
> @@ -4208,6 +4208,35 @@ static const struct panel_desc rocktech_rk043fn48h = {
> .connector_type = DRM_MODE_CONNECTOR_DPI,
> };
>
> +static const struct display_timing raspberrypi_7inch_timing = {
> + .pixelclock = { 10000000, 30000000, 50000000 },
> + .hactive = { 800, 800, 800 },
> + .hfront_porch = { 16, 72, 354 },
> + .hsync_len = { 1, 32, 40 },
> + .hback_porch = { 46, 46, 46 },
> + .vactive = { 480, 480, 480 },
> + .vfront_porch = { 7, 21, 147 },
> + .vsync_len = { 1, 2, 20 },
> + .vback_porch = { 23, 23, 23 },
> + .flags = DISPLAY_FLAGS_VSYNC_HIGH | DISPLAY_FLAGS_HSYNC_HIGH,
> + /* Note: the rest of the flags are defined below in bus_flags */
> +};
This looks pretty close to powertip panels that have been used before
hand in those modules. Are you sure that powertip,ph800480t013-idf02
or powertip,ph800480t032-zhc19 don't work for you?
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/2] drm/panel: simple: Add timings for Raspberry Pi 7" panel
2026-04-22 19:22 ` Dmitry Baryshkov
@ 2026-04-23 12:01 ` Tomi Valkeinen
2026-04-23 12:14 ` Maxime Ripard
0 siblings, 1 reply; 14+ messages in thread
From: Tomi Valkeinen @ 2026-04-23 12:01 UTC (permalink / raw)
To: Dmitry Baryshkov
Cc: Dave Stevenson, Neil Armstrong, Jessica Zhang, David Airlie,
Simona Vetter, Maarten Lankhorst, Maxime Ripard,
Thomas Zimmermann, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
Thierry Reding, Sam Ravnborg, dri-devel, devicetree, linux-kernel
Hi,
On 22/04/2026 22:22, Dmitry Baryshkov wrote:
> On Mon, Apr 20, 2026 at 04:13:36PM +0300, Tomi Valkeinen wrote:
>> Add timings for the panel used in Raspberry Pi 7" DSI Display module:
>> https://www.raspberrypi.com/products/raspberry-pi-touch-display/
>>
>> This has been tested with version v1.1 of the display module.
>>
>> The panel is very strict about the back-porch values, they must be
>> exactly 46 for hbp and 23 for vbp. Other timings can be defined quite
>> freely.
>>
>> The panel is exclusive to Raspberry Pi, and different versions of the
>> display module can have panels from different vendors which are fully
>> compatible. Also, as the panel vendors are not public, the compatible
>> string used is "raspberrypi,7inch-dsi".
>>
>> Note that while the display module has a DSI connector, and the
>> compatible has "dsi" in it, we use DRM_MODE_CONNECTOR_DPI as the panel
>> itself is a parallel video panel. The display module (as of v1.1) uses
>> TC358762 DSI-to-DPI bridge to do the conversion.
>>
>> We could use DRM_MODE_CONNECTOR_DSI here, which would have the benefit
>> of showing a "DSI-1" connector to the userspace. However, the panel IS a
>> DPI panel, and gets its input from a DSI-to-DPI bridge, and the
>> panel-simple.c behaves differently depending on the connector type used,
>> so, DRM_MODE_CONNECTOR_DPI it is.
>>
>> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
>> ---
>> drivers/gpu/drm/panel/panel-simple.c | 32 ++++++++++++++++++++++++++++++++
>> 1 file changed, 32 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
>> index 91ab280869ba..e75eb20301f2 100644
>> --- a/drivers/gpu/drm/panel/panel-simple.c
>> +++ b/drivers/gpu/drm/panel/panel-simple.c
>> @@ -4208,6 +4208,35 @@ static const struct panel_desc rocktech_rk043fn48h = {
>> .connector_type = DRM_MODE_CONNECTOR_DPI,
>> };
>>
>> +static const struct display_timing raspberrypi_7inch_timing = {
>> + .pixelclock = { 10000000, 30000000, 50000000 },
>> + .hactive = { 800, 800, 800 },
>> + .hfront_porch = { 16, 72, 354 },
>> + .hsync_len = { 1, 32, 40 },
>> + .hback_porch = { 46, 46, 46 },
>> + .vactive = { 480, 480, 480 },
>> + .vfront_porch = { 7, 21, 147 },
>> + .vsync_len = { 1, 2, 20 },
>> + .vback_porch = { 23, 23, 23 },
>> + .flags = DISPLAY_FLAGS_VSYNC_HIGH | DISPLAY_FLAGS_HSYNC_HIGH,
>> + /* Note: the rest of the flags are defined below in bus_flags */
>> +};
>
> This looks pretty close to powertip panels that have been used before
> hand in those modules. Are you sure that powertip,ph800480t013-idf02
> or powertip,ph800480t032-zhc19 don't work for you?
I haven't tested those, but the hbp and vbp do not seem to be the same.
For me, they had to be exactly as they are here. This was also confirmed
from Raspberry Pi, the panel datasheet had min/typ/max values (i.e. not
ranges) of 46 and 23 for back porches.
Where did the information come from that powertip,ph800480t013-idf02 or
powertip,ph800480t032-zhc19 are used in the display modules? Or did you
mean that while those models are not used in the Raspberry display
module, people have used them successfully?
Tomi
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/2] drm/panel: simple: Add timings for Raspberry Pi 7" panel
2026-04-23 12:01 ` Tomi Valkeinen
@ 2026-04-23 12:14 ` Maxime Ripard
2026-04-23 12:28 ` Tomi Valkeinen
0 siblings, 1 reply; 14+ messages in thread
From: Maxime Ripard @ 2026-04-23 12:14 UTC (permalink / raw)
To: Tomi Valkeinen
Cc: Dmitry Baryshkov, Dave Stevenson, Neil Armstrong, Jessica Zhang,
David Airlie, Simona Vetter, Maarten Lankhorst, Thomas Zimmermann,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Thierry Reding,
Sam Ravnborg, dri-devel, devicetree, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 3740 bytes --]
Hi,
On Thu, Apr 23, 2026 at 03:01:51PM +0300, Tomi Valkeinen wrote:
> On 22/04/2026 22:22, Dmitry Baryshkov wrote:
> > On Mon, Apr 20, 2026 at 04:13:36PM +0300, Tomi Valkeinen wrote:
> > > Add timings for the panel used in Raspberry Pi 7" DSI Display module:
> > > https://www.raspberrypi.com/products/raspberry-pi-touch-display/
> > >
> > > This has been tested with version v1.1 of the display module.
> > >
> > > The panel is very strict about the back-porch values, they must be
> > > exactly 46 for hbp and 23 for vbp. Other timings can be defined quite
> > > freely.
> > >
> > > The panel is exclusive to Raspberry Pi, and different versions of the
> > > display module can have panels from different vendors which are fully
> > > compatible. Also, as the panel vendors are not public, the compatible
> > > string used is "raspberrypi,7inch-dsi".
> > >
> > > Note that while the display module has a DSI connector, and the
> > > compatible has "dsi" in it, we use DRM_MODE_CONNECTOR_DPI as the panel
> > > itself is a parallel video panel. The display module (as of v1.1) uses
> > > TC358762 DSI-to-DPI bridge to do the conversion.
> > >
> > > We could use DRM_MODE_CONNECTOR_DSI here, which would have the benefit
> > > of showing a "DSI-1" connector to the userspace. However, the panel IS a
> > > DPI panel, and gets its input from a DSI-to-DPI bridge, and the
> > > panel-simple.c behaves differently depending on the connector type used,
> > > so, DRM_MODE_CONNECTOR_DPI it is.
> > >
> > > Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
> > > ---
> > > drivers/gpu/drm/panel/panel-simple.c | 32 ++++++++++++++++++++++++++++++++
> > > 1 file changed, 32 insertions(+)
> > >
> > > diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
> > > index 91ab280869ba..e75eb20301f2 100644
> > > --- a/drivers/gpu/drm/panel/panel-simple.c
> > > +++ b/drivers/gpu/drm/panel/panel-simple.c
> > > @@ -4208,6 +4208,35 @@ static const struct panel_desc rocktech_rk043fn48h = {
> > > .connector_type = DRM_MODE_CONNECTOR_DPI,
> > > };
> > > +static const struct display_timing raspberrypi_7inch_timing = {
> > > + .pixelclock = { 10000000, 30000000, 50000000 },
> > > + .hactive = { 800, 800, 800 },
> > > + .hfront_porch = { 16, 72, 354 },
> > > + .hsync_len = { 1, 32, 40 },
> > > + .hback_porch = { 46, 46, 46 },
> > > + .vactive = { 480, 480, 480 },
> > > + .vfront_porch = { 7, 21, 147 },
> > > + .vsync_len = { 1, 2, 20 },
> > > + .vback_porch = { 23, 23, 23 },
> > > + .flags = DISPLAY_FLAGS_VSYNC_HIGH | DISPLAY_FLAGS_HSYNC_HIGH,
> > > + /* Note: the rest of the flags are defined below in bus_flags */
> > > +};
> >
> > This looks pretty close to powertip panels that have been used before
> > hand in those modules. Are you sure that powertip,ph800480t013-idf02
> > or powertip,ph800480t032-zhc19 don't work for you?
>
> I haven't tested those, but the hbp and vbp do not seem to be the same. For
> me, they had to be exactly as they are here. This was also confirmed from
> Raspberry Pi, the panel datasheet had min/typ/max values (i.e. not ranges)
> of 46 and 23 for back porches.
>
> Where did the information come from that powertip,ph800480t013-idf02 or
> powertip,ph800480t032-zhc19 are used in the display modules? Or did you mean
> that while those models are not used in the Raspberry display module, people
> have used them successfully?
It also looks like we have panel-raspberrypi-touchscreen.c and raspberrypi,dsi-7inch in
panel-ilitek-ili9881c.c.
There's clearly more than one "7-inch rpi panel" so clarifying how it
compares to the other two drivers would help.
Maxime
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 273 bytes --]
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/2] drm/panel: simple: Add timings for Raspberry Pi 7" panel
2026-04-23 12:14 ` Maxime Ripard
@ 2026-04-23 12:28 ` Tomi Valkeinen
2026-04-23 12:33 ` Dmitry Baryshkov
0 siblings, 1 reply; 14+ messages in thread
From: Tomi Valkeinen @ 2026-04-23 12:28 UTC (permalink / raw)
To: Maxime Ripard
Cc: Dmitry Baryshkov, Dave Stevenson, Neil Armstrong, Jessica Zhang,
David Airlie, Simona Vetter, Maarten Lankhorst, Thomas Zimmermann,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Thierry Reding,
Sam Ravnborg, dri-devel, devicetree, linux-kernel
Hi,
On 23/04/2026 15:14, Maxime Ripard wrote:
> Hi,
>
> On Thu, Apr 23, 2026 at 03:01:51PM +0300, Tomi Valkeinen wrote:
>> On 22/04/2026 22:22, Dmitry Baryshkov wrote:
>>> On Mon, Apr 20, 2026 at 04:13:36PM +0300, Tomi Valkeinen wrote:
>>>> Add timings for the panel used in Raspberry Pi 7" DSI Display module:
>>>> https://www.raspberrypi.com/products/raspberry-pi-touch-display/
>>>>
>>>> This has been tested with version v1.1 of the display module.
>>>>
>>>> The panel is very strict about the back-porch values, they must be
>>>> exactly 46 for hbp and 23 for vbp. Other timings can be defined quite
>>>> freely.
>>>>
>>>> The panel is exclusive to Raspberry Pi, and different versions of the
>>>> display module can have panels from different vendors which are fully
>>>> compatible. Also, as the panel vendors are not public, the compatible
>>>> string used is "raspberrypi,7inch-dsi".
>>>>
>>>> Note that while the display module has a DSI connector, and the
>>>> compatible has "dsi" in it, we use DRM_MODE_CONNECTOR_DPI as the panel
>>>> itself is a parallel video panel. The display module (as of v1.1) uses
>>>> TC358762 DSI-to-DPI bridge to do the conversion.
>>>>
>>>> We could use DRM_MODE_CONNECTOR_DSI here, which would have the benefit
>>>> of showing a "DSI-1" connector to the userspace. However, the panel IS a
>>>> DPI panel, and gets its input from a DSI-to-DPI bridge, and the
>>>> panel-simple.c behaves differently depending on the connector type used,
>>>> so, DRM_MODE_CONNECTOR_DPI it is.
>>>>
>>>> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
>>>> ---
>>>> drivers/gpu/drm/panel/panel-simple.c | 32 ++++++++++++++++++++++++++++++++
>>>> 1 file changed, 32 insertions(+)
>>>>
>>>> diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
>>>> index 91ab280869ba..e75eb20301f2 100644
>>>> --- a/drivers/gpu/drm/panel/panel-simple.c
>>>> +++ b/drivers/gpu/drm/panel/panel-simple.c
>>>> @@ -4208,6 +4208,35 @@ static const struct panel_desc rocktech_rk043fn48h = {
>>>> .connector_type = DRM_MODE_CONNECTOR_DPI,
>>>> };
>>>> +static const struct display_timing raspberrypi_7inch_timing = {
>>>> + .pixelclock = { 10000000, 30000000, 50000000 },
>>>> + .hactive = { 800, 800, 800 },
>>>> + .hfront_porch = { 16, 72, 354 },
>>>> + .hsync_len = { 1, 32, 40 },
>>>> + .hback_porch = { 46, 46, 46 },
>>>> + .vactive = { 480, 480, 480 },
>>>> + .vfront_porch = { 7, 21, 147 },
>>>> + .vsync_len = { 1, 2, 20 },
>>>> + .vback_porch = { 23, 23, 23 },
>>>> + .flags = DISPLAY_FLAGS_VSYNC_HIGH | DISPLAY_FLAGS_HSYNC_HIGH,
>>>> + /* Note: the rest of the flags are defined below in bus_flags */
>>>> +};
>>>
>>> This looks pretty close to powertip panels that have been used before
>>> hand in those modules. Are you sure that powertip,ph800480t013-idf02
>>> or powertip,ph800480t032-zhc19 don't work for you?
>>
>> I haven't tested those, but the hbp and vbp do not seem to be the same. For
>> me, they had to be exactly as they are here. This was also confirmed from
>> Raspberry Pi, the panel datasheet had min/typ/max values (i.e. not ranges)
>> of 46 and 23 for back porches.
>>
>> Where did the information come from that powertip,ph800480t013-idf02 or
>> powertip,ph800480t032-zhc19 are used in the display modules? Or did you mean
>> that while those models are not used in the Raspberry display module, people
>> have used them successfully?
>
> It also looks like we have panel-raspberrypi-touchscreen.c and raspberrypi,dsi-7inch in
> panel-ilitek-ili9881c.c.
>
> There's clearly more than one "7-inch rpi panel" so clarifying how it
> compares to the other two drivers would help.
Indeed, it's confusing. I'm a bit new to this so I don't know all the
details. From Dave's mail to me about panel-ilitek-ili9881c.c:
"
The two variants listed on
https://www.raspberrypi.com/products/touch-display-2/
5" and 7" panels, both at 720x1280 (portrait), using the ILI9881
display controller and Goodix GT911 touch controller.
"
So that one is a different line of display modules.
panel-raspberrypi-touchscreen.c: this one is interesting, it's some kind
of multi-device driver for the display module, but indeed, it's for the
same module that this patch deals with. In my view that multi-device
driver is deprecated.
I can clarify these, as per my best understanding, on the patch desc.
Tomi
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/2] drm/panel: simple: Add timings for Raspberry Pi 7" panel
2026-04-23 12:28 ` Tomi Valkeinen
@ 2026-04-23 12:33 ` Dmitry Baryshkov
2026-04-23 13:13 ` Tomi Valkeinen
0 siblings, 1 reply; 14+ messages in thread
From: Dmitry Baryshkov @ 2026-04-23 12:33 UTC (permalink / raw)
To: Tomi Valkeinen
Cc: Maxime Ripard, Dave Stevenson, Neil Armstrong, Jessica Zhang,
David Airlie, Simona Vetter, Maarten Lankhorst, Thomas Zimmermann,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Thierry Reding,
Sam Ravnborg, dri-devel, devicetree, linux-kernel
On Thu, 23 Apr 2026 at 15:28, Tomi Valkeinen
<tomi.valkeinen@ideasonboard.com> wrote:
>
> Hi,
>
> On 23/04/2026 15:14, Maxime Ripard wrote:
> > Hi,
> >
> > On Thu, Apr 23, 2026 at 03:01:51PM +0300, Tomi Valkeinen wrote:
> >> On 22/04/2026 22:22, Dmitry Baryshkov wrote:
> >>> On Mon, Apr 20, 2026 at 04:13:36PM +0300, Tomi Valkeinen wrote:
> >>>> Add timings for the panel used in Raspberry Pi 7" DSI Display module:
> >>>> https://www.raspberrypi.com/products/raspberry-pi-touch-display/
> >>>>
> >>>> This has been tested with version v1.1 of the display module.
> >>>>
> >>>> The panel is very strict about the back-porch values, they must be
> >>>> exactly 46 for hbp and 23 for vbp. Other timings can be defined quite
> >>>> freely.
> >>>>
> >>>> The panel is exclusive to Raspberry Pi, and different versions of the
> >>>> display module can have panels from different vendors which are fully
> >>>> compatible. Also, as the panel vendors are not public, the compatible
> >>>> string used is "raspberrypi,7inch-dsi".
> >>>>
> >>>> Note that while the display module has a DSI connector, and the
> >>>> compatible has "dsi" in it, we use DRM_MODE_CONNECTOR_DPI as the panel
> >>>> itself is a parallel video panel. The display module (as of v1.1) uses
> >>>> TC358762 DSI-to-DPI bridge to do the conversion.
> >>>>
> >>>> We could use DRM_MODE_CONNECTOR_DSI here, which would have the benefit
> >>>> of showing a "DSI-1" connector to the userspace. However, the panel IS a
> >>>> DPI panel, and gets its input from a DSI-to-DPI bridge, and the
> >>>> panel-simple.c behaves differently depending on the connector type used,
> >>>> so, DRM_MODE_CONNECTOR_DPI it is.
> >>>>
> >>>> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
> >>>> ---
> >>>> drivers/gpu/drm/panel/panel-simple.c | 32 ++++++++++++++++++++++++++++++++
> >>>> 1 file changed, 32 insertions(+)
> >>>>
> >>>> diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
> >>>> index 91ab280869ba..e75eb20301f2 100644
> >>>> --- a/drivers/gpu/drm/panel/panel-simple.c
> >>>> +++ b/drivers/gpu/drm/panel/panel-simple.c
> >>>> @@ -4208,6 +4208,35 @@ static const struct panel_desc rocktech_rk043fn48h = {
> >>>> .connector_type = DRM_MODE_CONNECTOR_DPI,
> >>>> };
> >>>> +static const struct display_timing raspberrypi_7inch_timing = {
> >>>> + .pixelclock = { 10000000, 30000000, 50000000 },
> >>>> + .hactive = { 800, 800, 800 },
> >>>> + .hfront_porch = { 16, 72, 354 },
> >>>> + .hsync_len = { 1, 32, 40 },
> >>>> + .hback_porch = { 46, 46, 46 },
> >>>> + .vactive = { 480, 480, 480 },
> >>>> + .vfront_porch = { 7, 21, 147 },
> >>>> + .vsync_len = { 1, 2, 20 },
> >>>> + .vback_porch = { 23, 23, 23 },
> >>>> + .flags = DISPLAY_FLAGS_VSYNC_HIGH | DISPLAY_FLAGS_HSYNC_HIGH,
> >>>> + /* Note: the rest of the flags are defined below in bus_flags */
> >>>> +};
> >>>
> >>> This looks pretty close to powertip panels that have been used before
> >>> hand in those modules. Are you sure that powertip,ph800480t013-idf02
> >>> or powertip,ph800480t032-zhc19 don't work for you?
> >>
> >> I haven't tested those, but the hbp and vbp do not seem to be the same. For
> >> me, they had to be exactly as they are here. This was also confirmed from
> >> Raspberry Pi, the panel datasheet had min/typ/max values (i.e. not ranges)
> >> of 46 and 23 for back porches.
> >>
> >> Where did the information come from that powertip,ph800480t013-idf02 or
> >> powertip,ph800480t032-zhc19 are used in the display modules? Or did you mean
> >> that while those models are not used in the Raspberry display module, people
> >> have used them successfully?
For the zhc19 it's a wild guess, but for the idf02 it more of a certainity:
commit d69de69f2be105b2474c05a5ca4827aac3e80ad3
Author: Marek Vasut <marex@denx.de>
Date: Tue Jul 28 14:12:46 2020 +0200
drm/panel: simple: Add Powertip PH800480T013 panel
Add support for Powertip PH800480T013 800x480 parallel LCD, this
one is used in the Raspberry Pi 7" touchscreen display unit.
In the past I used this panel compat instead of the
panel-raspberrypi-touchscreen.c and it worked.
IIRC Marek splitted the multi-function module into a regulator and the
panel description.
> > It also looks like we have panel-raspberrypi-touchscreen.c and raspberrypi,dsi-7inch in
> > panel-ilitek-ili9881c.c.
> >
> > There's clearly more than one "7-inch rpi panel" so clarifying how it
> > compares to the other two drivers would help.
> Indeed, it's confusing. I'm a bit new to this so I don't know all the
> details. From Dave's mail to me about panel-ilitek-ili9881c.c:
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/2] drm/panel: simple: Add timings for Raspberry Pi 7" panel
2026-04-23 12:33 ` Dmitry Baryshkov
@ 2026-04-23 13:13 ` Tomi Valkeinen
2026-04-23 13:16 ` Tomi Valkeinen
0 siblings, 1 reply; 14+ messages in thread
From: Tomi Valkeinen @ 2026-04-23 13:13 UTC (permalink / raw)
To: Dmitry Baryshkov
Cc: Maxime Ripard, Dave Stevenson, Neil Armstrong, Jessica Zhang,
David Airlie, Simona Vetter, Maarten Lankhorst, Thomas Zimmermann,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Thierry Reding,
Sam Ravnborg, dri-devel, devicetree, linux-kernel
Hi,
On 23/04/2026 15:33, Dmitry Baryshkov wrote:
> On Thu, 23 Apr 2026 at 15:28, Tomi Valkeinen
> <tomi.valkeinen@ideasonboard.com> wrote:
>>
>> Hi,
>>
>> On 23/04/2026 15:14, Maxime Ripard wrote:
>>> Hi,
>>>
>>> On Thu, Apr 23, 2026 at 03:01:51PM +0300, Tomi Valkeinen wrote:
>>>> On 22/04/2026 22:22, Dmitry Baryshkov wrote:
>>>>> On Mon, Apr 20, 2026 at 04:13:36PM +0300, Tomi Valkeinen wrote:
>>>>>> Add timings for the panel used in Raspberry Pi 7" DSI Display module:
>>>>>> https://www.raspberrypi.com/products/raspberry-pi-touch-display/
>>>>>>
>>>>>> This has been tested with version v1.1 of the display module.
>>>>>>
>>>>>> The panel is very strict about the back-porch values, they must be
>>>>>> exactly 46 for hbp and 23 for vbp. Other timings can be defined quite
>>>>>> freely.
>>>>>>
>>>>>> The panel is exclusive to Raspberry Pi, and different versions of the
>>>>>> display module can have panels from different vendors which are fully
>>>>>> compatible. Also, as the panel vendors are not public, the compatible
>>>>>> string used is "raspberrypi,7inch-dsi".
>>>>>>
>>>>>> Note that while the display module has a DSI connector, and the
>>>>>> compatible has "dsi" in it, we use DRM_MODE_CONNECTOR_DPI as the panel
>>>>>> itself is a parallel video panel. The display module (as of v1.1) uses
>>>>>> TC358762 DSI-to-DPI bridge to do the conversion.
>>>>>>
>>>>>> We could use DRM_MODE_CONNECTOR_DSI here, which would have the benefit
>>>>>> of showing a "DSI-1" connector to the userspace. However, the panel IS a
>>>>>> DPI panel, and gets its input from a DSI-to-DPI bridge, and the
>>>>>> panel-simple.c behaves differently depending on the connector type used,
>>>>>> so, DRM_MODE_CONNECTOR_DPI it is.
>>>>>>
>>>>>> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
>>>>>> ---
>>>>>> drivers/gpu/drm/panel/panel-simple.c | 32 ++++++++++++++++++++++++++++++++
>>>>>> 1 file changed, 32 insertions(+)
>>>>>>
>>>>>> diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
>>>>>> index 91ab280869ba..e75eb20301f2 100644
>>>>>> --- a/drivers/gpu/drm/panel/panel-simple.c
>>>>>> +++ b/drivers/gpu/drm/panel/panel-simple.c
>>>>>> @@ -4208,6 +4208,35 @@ static const struct panel_desc rocktech_rk043fn48h = {
>>>>>> .connector_type = DRM_MODE_CONNECTOR_DPI,
>>>>>> };
>>>>>> +static const struct display_timing raspberrypi_7inch_timing = {
>>>>>> + .pixelclock = { 10000000, 30000000, 50000000 },
>>>>>> + .hactive = { 800, 800, 800 },
>>>>>> + .hfront_porch = { 16, 72, 354 },
>>>>>> + .hsync_len = { 1, 32, 40 },
>>>>>> + .hback_porch = { 46, 46, 46 },
>>>>>> + .vactive = { 480, 480, 480 },
>>>>>> + .vfront_porch = { 7, 21, 147 },
>>>>>> + .vsync_len = { 1, 2, 20 },
>>>>>> + .vback_porch = { 23, 23, 23 },
>>>>>> + .flags = DISPLAY_FLAGS_VSYNC_HIGH | DISPLAY_FLAGS_HSYNC_HIGH,
>>>>>> + /* Note: the rest of the flags are defined below in bus_flags */
>>>>>> +};
>>>>>
>>>>> This looks pretty close to powertip panels that have been used before
>>>>> hand in those modules. Are you sure that powertip,ph800480t013-idf02
>>>>> or powertip,ph800480t032-zhc19 don't work for you?
>>>>
>>>> I haven't tested those, but the hbp and vbp do not seem to be the same. For
>>>> me, they had to be exactly as they are here. This was also confirmed from
>>>> Raspberry Pi, the panel datasheet had min/typ/max values (i.e. not ranges)
>>>> of 46 and 23 for back porches.
>>>>
>>>> Where did the information come from that powertip,ph800480t013-idf02 or
>>>> powertip,ph800480t032-zhc19 are used in the display modules? Or did you mean
>>>> that while those models are not used in the Raspberry display module, people
>>>> have used them successfully?
>
> For the zhc19 it's a wild guess, but for the idf02 it more of a certainity:
>
> commit d69de69f2be105b2474c05a5ca4827aac3e80ad3
> Author: Marek Vasut <marex@denx.de>
> Date: Tue Jul 28 14:12:46 2020 +0200
>
> drm/panel: simple: Add Powertip PH800480T013 panel
>
> Add support for Powertip PH800480T013 800x480 parallel LCD, this
> one is used in the Raspberry Pi 7" touchscreen display unit.
>
> In the past I used this panel compat instead of the
> panel-raspberrypi-touchscreen.c and it worked.
> IIRC Marek splitted the multi-function module into a regulator and the
> panel description.
Ok... Indeed https://pip.raspberrypi.com/categories/651-pcn lists
PH800480T013 as one of the panels used. Although two variants are
listed, and also a third panel model, possibly from another vendor.
My module is v1.1, and I think it has the PH800480T013-IAC21
D/5624/KIT-LC variant.
Tomi
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/2] drm/panel: simple: Add timings for Raspberry Pi 7" panel
2026-04-23 13:13 ` Tomi Valkeinen
@ 2026-04-23 13:16 ` Tomi Valkeinen
2026-04-23 13:54 ` Marek Vasut
0 siblings, 1 reply; 14+ messages in thread
From: Tomi Valkeinen @ 2026-04-23 13:16 UTC (permalink / raw)
To: Dmitry Baryshkov, Marek Vasut
Cc: Maxime Ripard, Dave Stevenson, Neil Armstrong, Jessica Zhang,
David Airlie, Simona Vetter, Maarten Lankhorst, Thomas Zimmermann,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Thierry Reding,
Sam Ravnborg, dri-devel, devicetree, linux-kernel
Hi Marek,
On 23/04/2026 16:13, Tomi Valkeinen wrote:
> Hi,
>
> On 23/04/2026 15:33, Dmitry Baryshkov wrote:
>> On Thu, 23 Apr 2026 at 15:28, Tomi Valkeinen
>> <tomi.valkeinen@ideasonboard.com> wrote:
>>>
>>> Hi,
>>>
>>> On 23/04/2026 15:14, Maxime Ripard wrote:
>>>> Hi,
>>>>
>>>> On Thu, Apr 23, 2026 at 03:01:51PM +0300, Tomi Valkeinen wrote:
>>>>> On 22/04/2026 22:22, Dmitry Baryshkov wrote:
>>>>>> On Mon, Apr 20, 2026 at 04:13:36PM +0300, Tomi Valkeinen wrote:
>>>>>>> Add timings for the panel used in Raspberry Pi 7" DSI Display
>>>>>>> module:
>>>>>>> https://www.raspberrypi.com/products/raspberry-pi-touch-display/
>>>>>>>
>>>>>>> This has been tested with version v1.1 of the display module.
>>>>>>>
>>>>>>> The panel is very strict about the back-porch values, they must be
>>>>>>> exactly 46 for hbp and 23 for vbp. Other timings can be defined
>>>>>>> quite
>>>>>>> freely.
>>>>>>>
>>>>>>> The panel is exclusive to Raspberry Pi, and different versions of
>>>>>>> the
>>>>>>> display module can have panels from different vendors which are
>>>>>>> fully
>>>>>>> compatible. Also, as the panel vendors are not public, the
>>>>>>> compatible
>>>>>>> string used is "raspberrypi,7inch-dsi".
>>>>>>>
>>>>>>> Note that while the display module has a DSI connector, and the
>>>>>>> compatible has "dsi" in it, we use DRM_MODE_CONNECTOR_DPI as the
>>>>>>> panel
>>>>>>> itself is a parallel video panel. The display module (as of v1.1)
>>>>>>> uses
>>>>>>> TC358762 DSI-to-DPI bridge to do the conversion.
>>>>>>>
>>>>>>> We could use DRM_MODE_CONNECTOR_DSI here, which would have the
>>>>>>> benefit
>>>>>>> of showing a "DSI-1" connector to the userspace. However, the
>>>>>>> panel IS a
>>>>>>> DPI panel, and gets its input from a DSI-to-DPI bridge, and the
>>>>>>> panel-simple.c behaves differently depending on the connector
>>>>>>> type used,
>>>>>>> so, DRM_MODE_CONNECTOR_DPI it is.
>>>>>>>
>>>>>>> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
>>>>>>> ---
>>>>>>> drivers/gpu/drm/panel/panel-simple.c | 32 +++++++++++++++++++
>>>>>>> +++++++++++++
>>>>>>> 1 file changed, 32 insertions(+)
>>>>>>>
>>>>>>> diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/
>>>>>>> drm/panel/panel-simple.c
>>>>>>> index 91ab280869ba..e75eb20301f2 100644
>>>>>>> --- a/drivers/gpu/drm/panel/panel-simple.c
>>>>>>> +++ b/drivers/gpu/drm/panel/panel-simple.c
>>>>>>> @@ -4208,6 +4208,35 @@ static const struct panel_desc
>>>>>>> rocktech_rk043fn48h = {
>>>>>>> .connector_type = DRM_MODE_CONNECTOR_DPI,
>>>>>>> };
>>>>>>> +static const struct display_timing raspberrypi_7inch_timing = {
>>>>>>> + .pixelclock = { 10000000, 30000000, 50000000 },
>>>>>>> + .hactive = { 800, 800, 800 },
>>>>>>> + .hfront_porch = { 16, 72, 354 },
>>>>>>> + .hsync_len = { 1, 32, 40 },
>>>>>>> + .hback_porch = { 46, 46, 46 },
>>>>>>> + .vactive = { 480, 480, 480 },
>>>>>>> + .vfront_porch = { 7, 21, 147 },
>>>>>>> + .vsync_len = { 1, 2, 20 },
>>>>>>> + .vback_porch = { 23, 23, 23 },
>>>>>>> + .flags = DISPLAY_FLAGS_VSYNC_HIGH | DISPLAY_FLAGS_HSYNC_HIGH,
>>>>>>> + /* Note: the rest of the flags are defined below in bus_flags */
>>>>>>> +};
>>>>>>
>>>>>> This looks pretty close to powertip panels that have been used before
>>>>>> hand in those modules. Are you sure that powertip,ph800480t013-idf02
>>>>>> or powertip,ph800480t032-zhc19 don't work for you?
>>>>>
>>>>> I haven't tested those, but the hbp and vbp do not seem to be the
>>>>> same. For
>>>>> me, they had to be exactly as they are here. This was also
>>>>> confirmed from
>>>>> Raspberry Pi, the panel datasheet had min/typ/max values (i.e. not
>>>>> ranges)
>>>>> of 46 and 23 for back porches.
>>>>>
>>>>> Where did the information come from that powertip,ph800480t013-
>>>>> idf02 or
>>>>> powertip,ph800480t032-zhc19 are used in the display modules? Or did
>>>>> you mean
>>>>> that while those models are not used in the Raspberry display
>>>>> module, people
>>>>> have used them successfully?
>>
>> For the zhc19 it's a wild guess, but for the idf02 it more of a
>> certainity:
>>
>> commit d69de69f2be105b2474c05a5ca4827aac3e80ad3
>> Author: Marek Vasut <marex@denx.de>
>> Date: Tue Jul 28 14:12:46 2020 +0200
>>
>> drm/panel: simple: Add Powertip PH800480T013 panel
>>
>> Add support for Powertip PH800480T013 800x480 parallel LCD, this
>> one is used in the Raspberry Pi 7" touchscreen display unit.
>>
>> In the past I used this panel compat instead of the
>> panel-raspberrypi-touchscreen.c and it worked.
>> IIRC Marek splitted the multi-function module into a regulator and the
>> panel description.
> Ok... Indeed https://pip.raspberrypi.com/categories/651-pcn lists
> PH800480T013 as one of the panels used. Although two variants are
> listed, and also a third panel model, possibly from another vendor.
>
> My module is v1.1, and I think it has the PH800480T013-IAC21 D/5624/KIT-
> LC variant.
A question to Marek: Where did you get the timings for PH800480T013? Did
you find a datasheet?
Tomi
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/2] drm/panel: simple: Add timings for Raspberry Pi 7" panel
2026-04-23 13:16 ` Tomi Valkeinen
@ 2026-04-23 13:54 ` Marek Vasut
2026-04-23 14:05 ` Tomi Valkeinen
2026-04-23 15:01 ` Tomi Valkeinen
0 siblings, 2 replies; 14+ messages in thread
From: Marek Vasut @ 2026-04-23 13:54 UTC (permalink / raw)
To: Tomi Valkeinen, Dmitry Baryshkov
Cc: Maxime Ripard, Dave Stevenson, Neil Armstrong, Jessica Zhang,
David Airlie, Simona Vetter, Maarten Lankhorst, Thomas Zimmermann,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Thierry Reding,
Sam Ravnborg, dri-devel, devicetree, linux-kernel
On 4/23/26 3:16 PM, Tomi Valkeinen wrote:
Hello Tomi,
>>> In the past I used this panel compat instead of the
>>> panel-raspberrypi-touchscreen.c and it worked.
>>> IIRC Marek splitted the multi-function module into a regulator and the
>>> panel description.
>> Ok... Indeed https://pip.raspberrypi.com/categories/651-pcn lists
>> PH800480T013 as one of the panels used. Although two variants are
>> listed, and also a third panel model, possibly from another vendor.
>>
>> My module is v1.1, and I think it has the PH800480T013-IAC21 D/5624/
>> KIT- LC variant.
> A question to Marek: Where did you get the timings for PH800480T013? Did
> you find a datasheet?
Search engine first link:
https://mm.digikey.com/Volume0/opasdata/d220001/medias/docus/5337/PH800480T013-IHC09.pdf
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/2] drm/panel: simple: Add timings for Raspberry Pi 7" panel
2026-04-23 13:54 ` Marek Vasut
@ 2026-04-23 14:05 ` Tomi Valkeinen
2026-04-23 15:01 ` Tomi Valkeinen
1 sibling, 0 replies; 14+ messages in thread
From: Tomi Valkeinen @ 2026-04-23 14:05 UTC (permalink / raw)
To: Marek Vasut, Dmitry Baryshkov
Cc: Maxime Ripard, Dave Stevenson, Neil Armstrong, Jessica Zhang,
David Airlie, Simona Vetter, Maarten Lankhorst, Thomas Zimmermann,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Thierry Reding,
Sam Ravnborg, dri-devel, devicetree, linux-kernel
Hi,
On 23/04/2026 16:54, Marek Vasut wrote:
> On 4/23/26 3:16 PM, Tomi Valkeinen wrote:
>
> Hello Tomi,
>
>>>> In the past I used this panel compat instead of the
>>>> panel-raspberrypi-touchscreen.c and it worked.
>>>> IIRC Marek splitted the multi-function module into a regulator and the
>>>> panel description.
>>> Ok... Indeed https://pip.raspberrypi.com/categories/651-pcn lists
>>> PH800480T013 as one of the panels used. Although two variants are
>>> listed, and also a third panel model, possibly from another vendor.
>>>
>>> My module is v1.1, and I think it has the PH800480T013-IAC21 D/5624/
>>> KIT- LC variant.
>> A question to Marek: Where did you get the timings for PH800480T013?
>> Did you find a datasheet?
> Search engine first link:
>
> https://mm.digikey.com/Volume0/opasdata/d220001/medias/docus/5337/
> PH800480T013-IHC09.pdf
Thanks. That's not exactly the same variant, though (IHC09 vs IAC21).
Even so, that datasheet also lists the backporches as 46 and 23, which
are not the same as in d69de69f2be105b2474c05a5ca4827aac3e80ad3.
But oddly the datasheet pic shows that the backporch times would include
the sync time. Taken that way, the commit's hsw=2 and hbp=44 would
match, but the vsw=2 and vbp=22 still wouldn't.
I'll test my HW with the PH800480T013 compatible at some point and see
how it behaves.
Tomi
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH 2/2] drm/panel: simple: Add timings for Raspberry Pi 7" panel
2026-04-23 13:54 ` Marek Vasut
2026-04-23 14:05 ` Tomi Valkeinen
@ 2026-04-23 15:01 ` Tomi Valkeinen
1 sibling, 0 replies; 14+ messages in thread
From: Tomi Valkeinen @ 2026-04-23 15:01 UTC (permalink / raw)
To: Marek Vasut, Dmitry Baryshkov
Cc: Maxime Ripard, Dave Stevenson, Neil Armstrong, Jessica Zhang,
David Airlie, Simona Vetter, Maarten Lankhorst, Thomas Zimmermann,
Rob Herring, Krzysztof Kozlowski, Conor Dooley, Thierry Reding,
Sam Ravnborg, dri-devel, devicetree, linux-kernel
Hi,
On 23/04/2026 16:54, Marek Vasut wrote:
> On 4/23/26 3:16 PM, Tomi Valkeinen wrote:
>
> Hello Tomi,
>
>>>> In the past I used this panel compat instead of the
>>>> panel-raspberrypi-touchscreen.c and it worked.
>>>> IIRC Marek splitted the multi-function module into a regulator and the
>>>> panel description.
>>> Ok... Indeed https://pip.raspberrypi.com/categories/651-pcn lists
>>> PH800480T013 as one of the panels used. Although two variants are
>>> listed, and also a third panel model, possibly from another vendor.
>>>
>>> My module is v1.1, and I think it has the PH800480T013-IAC21 D/5624/
>>> KIT- LC variant.
>> A question to Marek: Where did you get the timings for PH800480T013?
>> Did you find a datasheet?
> Search engine first link:
>
> https://mm.digikey.com/Volume0/opasdata/d220001/medias/docus/5337/
> PH800480T013-IHC09.pdf
I tested the "powertip,ph800480t013-idf02". I'm using BeagleY-AI here,
and it didn't work at all. After some testing, I figured out these:
HSW of 2 is much too small. But this could be an issue on the display
controller or the DSI encoder side. HWS of around 8 starts to work ok.
Below that, I don't get anything on the screen.
The syncs are interesting. I set them to DISPLAY_FLAGS_VSYNC_HIGH |
DISPLAY_FLAGS_HSYNC_HIGH, Marek to DRM_MODE_FLAG_NVSYNC |
DRM_MODE_FLAG_NHSYNC. But I have sent the TC358762 series, which fixes
the syncs that the bridge sends
(20260327-tc358762-fixes-v2-0-3589d3c45f4a@ideasonboard.com).
Flipping the syncs might explain why I used 46 and 23 as the
backporches, Marked used 46-hsw and 23-vsw for backporches (well,
Marek's vbp was off by one as I mentioned).
But now I'm getting unsure if my TC358762 fixed the syncs correctly...
I'm pretty sure I measured those with my scope, though.
The fps is different, too. I aimed for 60fps, Marek for 50fps (I think,
it doesn't match exactly).
In any case... I think I have to dig out my scope again and validate
that I see exactly what I have in the driver. Btw, reviews for the
TC358762 series is appreciated!
Tomi
^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2026-04-23 15:02 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-20 13:13 [PATCH 0/2] drm/panel: Add Raspberry Pi 7" panel Tomi Valkeinen
2026-04-20 13:13 ` [PATCH 1/2] dt-bindings: display: simple: Add Raspberry Pi 7" DSI Display module panel Tomi Valkeinen
2026-04-20 16:01 ` Conor Dooley
2026-04-20 13:13 ` [PATCH 2/2] drm/panel: simple: Add timings for Raspberry Pi 7" panel Tomi Valkeinen
2026-04-22 19:22 ` Dmitry Baryshkov
2026-04-23 12:01 ` Tomi Valkeinen
2026-04-23 12:14 ` Maxime Ripard
2026-04-23 12:28 ` Tomi Valkeinen
2026-04-23 12:33 ` Dmitry Baryshkov
2026-04-23 13:13 ` Tomi Valkeinen
2026-04-23 13:16 ` Tomi Valkeinen
2026-04-23 13:54 ` Marek Vasut
2026-04-23 14:05 ` Tomi Valkeinen
2026-04-23 15:01 ` Tomi Valkeinen
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox