[PATCH v3 0/6] drm/meson: rework encoders to pass ATTACH_NO_CONNECTOR

Neil Armstrong
2021-10-20T12:40:16Z

This serie finnally reworks the drm/meson driver by extracting the encoders
in their own file and moves to bridge-only callbacks.

This permits passing the ATTACH_NO_CONNECTOR bridge attach flag and finally
use the CVBS & HDMI display-connector driver.

This will ease Martin Blumenstingl writing the HDMI transceiver driver for
the older Meson8/8b SoCs, and sets the proper architecture for the work in
progress MIPI-DSI support.

Finally, this serie will path the way to a removal of the device component
and use the drmm memory management.

Changes since v2 at [2]:
- patch 1: no changes
- patch 2: added martin's ack
- patch 3: moved ->enable & ->disable to atomic, added sam's & martin's acks
- patch 4: added martin's ack
- patch 5: added martin's ack
- patch 6: moved ->enable & ->disable to atomic, added martin's ack

Changes since v1 at [1];
- patch 1: added sam's review tag, fixed include order, fixed doc wording
- patch 2: added sam's ack tag, switched to dev_dbg()
- patch 3: moved mode_set to atomic_enable, removed DRM_DEBUG, fixed include order
- patch 4: added sam's ack tag & applied to drm-misc-next
- patch 5 & 6: added sam's ack tag
- patch 7: added sam's review tag, stopped saving connector, moved mode_set to atomic_enable,
added missing atomic state callbacks, fixed include order, switched to dev_dbg/dev_err

[1] https://lore.kernel.org/r/20211014152606.2289528-1-narmstrong@baylibre.com
[2] https://lore.kernel.org/r/20211015141107.2430800-1-narmstrong@baylibre.com

Neil Armstrong (6):
drm/bridge: display-connector: implement bus fmts callbacks
drm/meson: remove useless recursive components matching
drm/meson: split out encoder from meson_dw_hdmi
drm/meson: encoder_hdmi: switch to bridge
DRM_BRIDGE_ATTACH_NO_CONNECTOR
drm/meson: rename venc_cvbs to encoder_cvbs
drm/meson: encoder_cvbs: switch to bridge with ATTACH_NO_CONNECTOR

drivers/gpu/drm/bridge/display-connector.c | 86 ++++
drivers/gpu/drm/meson/Kconfig | 2 +
drivers/gpu/drm/meson/Makefile | 3 +-
drivers/gpu/drm/meson/meson_drv.c | 71 ++-
drivers/gpu/drm/meson/meson_dw_hdmi.c | 342 +-------------
drivers/gpu/drm/meson/meson_encoder_cvbs.c | 284 +++++++++++
...meson_venc_cvbs.h => meson_encoder_cvbs.h} | 2 +-
drivers/gpu/drm/meson/meson_encoder_hdmi.c | 446 ++++++++++++++++++
drivers/gpu/drm/meson/meson_encoder_hdmi.h | 12 +
drivers/gpu/drm/meson/meson_venc_cvbs.c | 293 ------------
10 files changed, 881 insertions(+), 660 deletions(-)
create mode 100644 drivers/gpu/drm/meson/meson_encoder_cvbs.c
rename drivers/gpu/drm/meson/{meson_venc_cvbs.h => meson_encoder_cvbs.h} (92%)
create mode 100644 drivers/gpu/drm/meson/meson_encoder_hdmi.c
create mode 100644 drivers/gpu/drm/meson/meson_encoder_hdmi.h
delete mode 100644 drivers/gpu/drm/meson/meson_venc_cvbs.c

base-commit: f6632721cd6231e1bf28b5317dcc7543e43359f7