[PATCH 00/21] Clean and update tilcdc driver to support DRM_BRIDGE_ATTACH_NO_CONNECTOR

Kory Maincent (TI.com) posted 21 patches 5 days, 4 hours ago
.../devicetree/bindings/display/tilcdc/panel.txt   |  66 ---
.../devicetree/bindings/display/tilcdc/tilcdc.txt  |  82 ----
.../devicetree/bindings/display/tilcdc/tilcdc.yaml | 103 +++++
arch/arm/boot/dts/ti/davinci/da850-evm.dts         |  26 +-
arch/arm/boot/dts/ti/omap/am335x-guardian.dts      |  25 +-
arch/arm/boot/dts/ti/omap/am335x-pdu001.dts        |  21 +-
arch/arm/boot/dts/ti/omap/am335x-pepper.dts        |  22 +-
arch/arm/boot/dts/ti/omap/am335x-sbc-t335.dts      |  25 +-
arch/arm/boot/dts/ti/omap/am335x-sl50.dts          |  25 +-
drivers/gpu/drm/bridge/tda998x_drv.c               | 251 ++++++------
drivers/gpu/drm/tilcdc/Makefile                    |   3 +-
drivers/gpu/drm/tilcdc/tilcdc_crtc.c               | 117 ++----
drivers/gpu/drm/tilcdc/tilcdc_drv.c                | 456 +++++++--------------
drivers/gpu/drm/tilcdc/tilcdc_drv.h                |  88 +---
drivers/gpu/drm/tilcdc/tilcdc_encoder.c            |  93 +++++
.../tilcdc/{tilcdc_external.h => tilcdc_encoder.h} |   5 +-
drivers/gpu/drm/tilcdc/tilcdc_external.c           | 179 --------
drivers/gpu/drm/tilcdc/tilcdc_panel.c              | 408 ------------------
drivers/gpu/drm/tilcdc/tilcdc_panel.h              |  15 -
drivers/gpu/drm/tilcdc/tilcdc_plane.c              |   2 +-
drivers/gpu/drm/tilcdc/tilcdc_regs.h               |   8 +-
21 files changed, 589 insertions(+), 1431 deletions(-)
[PATCH 00/21] Clean and update tilcdc driver to support DRM_BRIDGE_ATTACH_NO_CONNECTOR
Posted by Kory Maincent (TI.com) 5 days, 4 hours ago
The starting point for this work was adding support for the HDMI cape:
https://www.seeedstudio.com/Seeed-Studio-BeagleBone-Green-HDMI-Cape.html
This will be sent in a later series.

Initially, Miguel proposed modifying the ite-it66121 bridge to support
the legacy behavior without the DRM_BRIDGE_ATTACH_NO_CONNECTOR flag:
https://lore.kernel.org/lkml/20250909-it66121-fix-v1-1-bc79ca83df17@bootlin.com/
This patch was NAK'd as we don't want to add more legacy code. Maxime
requested that the tilcdc driver be updated to use
DRM_BRIDGE_ATTACH_NO_CONNECTOR instead.

While working on this update, I discovered that the tilcdc driver
contained significant amounts of legacy code that needed cleaning.
Since this driver was developed alongside the tda998x driver for
several AM335x boards, the tda998x driver also required cleanup and
support for the DRM_BRIDGE_ATTACH_NO_CONNECTOR flag.

This series is based on the tilcdc fix sent to mainline:
https://lore.kernel.org/lkml/20251125090546.137193-1-kory.maincent@bootlin.com/

Patch 1-7: Convert tilcdc binding to YAML and remove the ti,tilcdc,panel
	   sub-binding and driver
Patch 8-16: Clean up tilcdc driver
Patch 17-19: Clean up tda998x driver
Patch 20: Add DRM_BRIDGE_ATTACH_NO_CONNECTOR support to tda998x
Patch 21: Add DRM_BRIDGE_ATTACH_NO_CONNECTOR support to tilcdc

Signed-off-by: Kory Maincent (TI.com) <kory.maincent@bootlin.com>
---
Kory Maincent (TI.com) (21):
      dt-bindings: display: tilcdc: Convert to DT schema
      dt-bindings: display: tilcdc: Add fifo-threshold property
      drm/tilcdc: Remove simulate_vesa_sync flag
      drm/tilcdc: Add support for DRM bus flags and simplify panel config
      ARM: dts: omap: Bind panel to panel-dpi instead of ti,tilcdc,panel driver
      dt-bindings: display: tilcdc: Remove panel binding
      drm/tilcdc: Remove tilcdc panel driver
      drm/tilcdc: Remove component framework support
      drm/tilcdc: Remove tilcdc_panel_info structure
      drm/tilcdc: Remove redundant #endif/#ifdef in debugfs code
      drm/tilcdc: Remove unused encoder and connector tracking arrays
      drm/tilcdc: Rename external_encoder and external_connector to encoder and connector
      drm/tilcdc: Rename tilcdc_external to tilcdc_encoder
      drm/tilcdc: Remove the useless module list support
      drm/tilcdc: Modernize driver initialization and cleanup paths
      drm/tilcdc: Remove the use of drm_device private_data
      drm/bridge: tda998x: Remove component support
      drm/bridge: tda998x: Move tda998x_create/destroy into probe and remove
      drm/bridge: tda998x: Remove useless tda998x_connector_destroy wrapper
      drm/bridge: tda998x: Add support for DRM_BRIDGE_ATTACH_NO_CONNECTOR
      drm/tilcdc: Add support for DRM_BRIDGE_ATTACH_NO_CONNECTOR

 .../devicetree/bindings/display/tilcdc/panel.txt   |  66 ---
 .../devicetree/bindings/display/tilcdc/tilcdc.txt  |  82 ----
 .../devicetree/bindings/display/tilcdc/tilcdc.yaml | 103 +++++
 arch/arm/boot/dts/ti/davinci/da850-evm.dts         |  26 +-
 arch/arm/boot/dts/ti/omap/am335x-guardian.dts      |  25 +-
 arch/arm/boot/dts/ti/omap/am335x-pdu001.dts        |  21 +-
 arch/arm/boot/dts/ti/omap/am335x-pepper.dts        |  22 +-
 arch/arm/boot/dts/ti/omap/am335x-sbc-t335.dts      |  25 +-
 arch/arm/boot/dts/ti/omap/am335x-sl50.dts          |  25 +-
 drivers/gpu/drm/bridge/tda998x_drv.c               | 251 ++++++------
 drivers/gpu/drm/tilcdc/Makefile                    |   3 +-
 drivers/gpu/drm/tilcdc/tilcdc_crtc.c               | 117 ++----
 drivers/gpu/drm/tilcdc/tilcdc_drv.c                | 456 +++++++--------------
 drivers/gpu/drm/tilcdc/tilcdc_drv.h                |  88 +---
 drivers/gpu/drm/tilcdc/tilcdc_encoder.c            |  93 +++++
 .../tilcdc/{tilcdc_external.h => tilcdc_encoder.h} |   5 +-
 drivers/gpu/drm/tilcdc/tilcdc_external.c           | 179 --------
 drivers/gpu/drm/tilcdc/tilcdc_panel.c              | 408 ------------------
 drivers/gpu/drm/tilcdc/tilcdc_panel.h              |  15 -
 drivers/gpu/drm/tilcdc/tilcdc_plane.c              |   2 +-
 drivers/gpu/drm/tilcdc/tilcdc_regs.h               |   8 +-
 21 files changed, 589 insertions(+), 1431 deletions(-)
---
base-commit: 670bacfc7579bdd79a3069cfb5ab60a6a7923003
change-id: 20251014-feature_tilcdc-79cd49e67bf9

Best regards,
-- 
Köry Maincent, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com