[PATCH v4 05/25] drm/tilcdc: Convert legacy panel binding via DT overlay at boot time
Luca Ceresoli
luca.ceresoli at bootlin.com
Mon Jan 19 08:18:12 PST 2026
On Fri Jan 16, 2026 at 6:02 PM CET, Kory Maincent (TI.com) wrote:
> To maintain backward compatibility while removing the deprecated
> tilcdc_panel driver, add a tilcdc_panel_legacy subdriver that converts
> the legacy "ti,tilcdc,panel" devicetree binding to the standard
> panel-dpi binding at early boot.
>
> The conversion uses an embedded device tree overlay that is applied and
> modified during subsys_initcall. The process:
>
> - Apply embedded overlay to create a tilcdc-panel-dpi node with
> port/endpoint connections to the LCDC
> - Copy all properties from the legacy panel node to the new
> tilcdc-panel-dpi node
> - Copy display-timings from the legacy panel
> - Convert legacy panel-info properties (invert-pxl-clk, sync-edge) to
> standard display timing properties (pixelclk-active, syncclk-active)
> - Disable the legacy panel by removing its compatible property to
> prevent the deprecated driver from binding
>
> The result is a standard tilcdc-panel-dpi node with proper endpoints and
> timing properties, allowing the DRM panel infrastructure to work with
> legacy devicetrees without modification.
>
> Other legacy panel-info properties are not migrated as they consistently
> use default values across all mainline devicetrees and can be hardcoded
> in the tilcdc driver.
>
> This feature is optional via CONFIG_DRM_TILCDC_PANEL_LEGACY and should
> only be enabled for systems with legacy devicetrees containing
> "ti,tilcdc,panel" nodes.
>
> Suggested-by: Tomi Valkeinen <tomi.valkeinen at ideasonboard.com>
> Link: https://lore.kernel.org/all/1d9a9269-bfda-4d43-938b-2df6b82b9369@ideasonboard.com/
> Signed-off-by: Kory Maincent (TI.com) <kory.maincent at bootlin.com>
> ---
Looks very good now, thanks for the improvements!
Reviewed-by: Luca Ceresoli <luca.ceresoli at bootlin.com>
--
Luca Ceresoli, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
More information about the linux-arm-kernel
mailing list