From: Antonin Godard antonin.godard@bootlin.com
[ Upstream commit 6374a1005f20c1c2f7bbcc1bc735c2be4910a685 ]
Add support for the POWERTIP PH128800T004-ZZA01 10.1" (1280x800) LCD-TFT panel. Its panel description is very much like the POWERTIP PH128800T006-ZHC01 configured below this one, only its timings are different.
Signed-off-by: Antonin Godard antonin.godard@bootlin.com Reviewed-by: Dmitry Baryshkov lumag@kernel.org Link: https://patchwork.freedesktop.org/patch/msgid/20250311-add-powertip-ph128800... Signed-off-by: Louis Chauvet louis.chauvet@bootlin.com Signed-off-by: Sasha Levin sashal@kernel.org ---
NO This commit should NOT be backported to stable kernel trees based on the following analysis: **Commit Classification**: This is a new hardware support addition, not a bug fix. **Analysis of the commit**: 1. **Nature of Change**: The commit adds support for a brand new panel variant (POWERTIP PH128800T004-ZZA01) to the panel-simple driver. This is purely additive functionality for new hardware. 2. **Code Changes Review**: - Adds a new `powertip_ph128800t004_zza01_mode` structure with display timing parameters - Adds a new `powertip_ph128800t004_zza01` panel descriptor - Adds a new device tree compatible string entry in the `platform_of_match` table - The changes are isolated and only add new entries without modifying existing functionality 3. **Reference to Similar Commits**: All the provided historical examples of panel additions (Similar Commits #1, #2, #5) were marked as "Backport Status: NO", indicating that new panel support commits are typically not backported. 4. **Stable Tree Criteria Violation**: - This is new feature addition, not a bug fix - It doesn't address any existing user-affecting issues - It enables support for hardware that previously wasn't supported at all - No indication of fixing broken functionality 5. **Exception Analysis**: The only similar commit marked "YES" (Similar Commit #4) was specifically fixing missing display mode flags for an existing panel, which was a clear bug fix with a "Fixes:" tag. This current commit has no such characteristics. 6. **Risk Assessment**: While the change is low-risk and isolated, it doesn't meet the fundamental criteria for stable backporting as it's new hardware enablement rather than fixing existing functionality. The stable tree policy specifically excludes new hardware support unless it fixes existing broken functionality, which this commit does not do.
drivers/gpu/drm/panel/panel-simple.c | 29 ++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+)
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c index cf9ab2d1f1d2a..8fdc0aba82081 100644 --- a/drivers/gpu/drm/panel/panel-simple.c +++ b/drivers/gpu/drm/panel/panel-simple.c @@ -3739,6 +3739,32 @@ static const struct panel_desc pda_91_00156_a0 = { .bus_format = MEDIA_BUS_FMT_RGB888_1X24, };
+static const struct drm_display_mode powertip_ph128800t004_zza01_mode = { + .clock = 71150, + .hdisplay = 1280, + .hsync_start = 1280 + 48, + .hsync_end = 1280 + 48 + 32, + .htotal = 1280 + 48 + 32 + 80, + .vdisplay = 800, + .vsync_start = 800 + 9, + .vsync_end = 800 + 9 + 8, + .vtotal = 800 + 9 + 8 + 6, + .flags = DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_PVSYNC, +}; + +static const struct panel_desc powertip_ph128800t004_zza01 = { + .modes = &powertip_ph128800t004_zza01_mode, + .num_modes = 1, + .bpc = 8, + .size = { + .width = 216, + .height = 135, + }, + .bus_format = MEDIA_BUS_FMT_RGB888_1X7X4_SPWG, + .bus_flags = DRM_BUS_FLAG_DE_HIGH, + .connector_type = DRM_MODE_CONNECTOR_LVDS, +}; + static const struct drm_display_mode powertip_ph128800t006_zhc01_mode = { .clock = 66500, .hdisplay = 1280, @@ -5090,6 +5116,9 @@ static const struct of_device_id platform_of_match[] = { }, { .compatible = "pda,91-00156-a0", .data = &pda_91_00156_a0, + }, { + .compatible = "powertip,ph128800t004-zza01", + .data = &powertip_ph128800t004_zza01, }, { .compatible = "powertip,ph128800t006-zhc01", .data = &powertip_ph128800t006_zhc01,