[PATCH v2 0/21] drm/bridge: support drm bridge connector helper + panel updates

Sam Ravnborg sam at ravnborg.org
Mon Apr 27 08:18:29 UTC 2020


Somehow Laurent tricked me into updating a bridge driver.
In reality, having updated a driver yourself makes for much
better understanding of what is going on.
So in order to provide proper review feedback I deciced to give
it a spin.

Second iteration of this patchset covers several drivers,
and a few panel adjustments.

The general approach for the bridge drivers:
- Introduce drm_panel_brigde
- Introduce bridge operations
- Make connector creation optional

v2:
  - Updated bus_flags for boe,hv070wsa-100
  - Collected r-b, but did not apply patches yet
  - On the panel side the panel-simple driver gained a default
    connector type for all the dumb panels that do not
    include so in their description.
    With this change panels always provide a connector type,
    and we have the potential to drop most uses of
    devm_drm_panel_bridge_add_typed().
  - Added conversion of a few more bridge drivers

When bridge drivers no longer create their own connector, the
update of the connector state using drm_helper_hpd_irq_event()
is also left out.
I did not manage to convince myself if this is correct or not.
We somehow needs to trigger that the connector state is updated
but that should not be the repsonsibility of a bridge driver.

Patches can build but no run-time testing.
So both test and review feedback appreciated!


My notes on the status so far - for the bridge drives:

bridge/analogix/analogix-anx6345       todo
bridge/analogix/analogix-anx78xx       todo
bridge/analogix/analogix_dp_core       todo

bridge/sii902x                         todo ? how to deal with outputmode?
i2c/tda998x_drv.c                      todo Needs drm_connector in helper fuctions. In several places.
mediatek/mtk_hdmi.c                    todo Ask: Enric Balletbo i Serra <enric.balletbo at collabora.com> to do it?
omapdrm/dss/dpi.c                      todo, Laurent?
omapdrm/dss/hdmi4.c                    todo, Laurent?
omapdrm/dss/hdmi5.c                    todo, Laurent?
omapdrm/dss/sdi.c                      todo, Laurent?
omapdrm/dss/venc.c                     todo, Laurent?
bridge/nwl-dsi                         todo, Guido

bridge/adv7511                         ongoing, Laurent
bridge/simple-bridge                   ongoing, Laurent
bridge/synopsys/dw-hdmi                ongoing, Laurent
rcar-du/rcar_lvds.c                    ongoing, Laurent
bridge/megachips-stdpxxxx-ge-b850v3-fw ongoing, Sam
bridge/nxp-ptn3460                     ongoing, Sam
bridge/parade-ps8622                   ongoing, Sam
bridge/tc358764                        ongoing, Sam
bridge/tc358767                        ongoing, Sam
bridge/ti-sn65dsi86                    ongoing, Sam. How to get bpc without connector?
bridge/ti-tpd12s015                    ongoing, Sam

bridge/display-connector.c             done
bridge/lvds-codec                      done
bridge/cdns-dsi                        done
bridge/panel.c                         done
bridge/parade-ps8640                   done
bridge/sil-sii8620                     done
bridge/synopsys/dw-mipi-dsi            done
bridge/tc358768                        done
bridge/thc63lvd1024                    done
bridge/ti-tfp410                       done

	Sam


Sam Ravnborg (21):
      drm/panel: add connector type to boe,hv070wsa-100 panel
      drm/panel: panel-simple: add default connector_type
      drm/bridge: tc358764: drop drm_connector_(un)register
      drm/bridge: tc358764: add drm_panel_bridge support
      drm/bridge: tc358764: make connector creation optional
      drm/bridge: tc358767: add drm_panel_bridge support
      drm/bridge: tc358767: add detect bridge operation
      drm/bridge: tc358767: add get_edid bride operation
      drm/bridge: tc358767: make connector creation optional
      drm/bridge: ti-tpd12s015: make connector creation optional
      drm/bridge: parade-ps8622: add drm_panel_bridge support
      drm/bridge: parade-ps8622: make connector creation optional
      drm/bridge: megachips: add helper to create connector
      drm/bridge: megachips: get drm_device from bridge
      drm/bridge: megachips: enable detect bridge operation
      drm/bridge: megachips: add get_edid bridge operation
      drm/bridge: megachips: make connector creation optional
      drm/bridge: nxp-ptn3460: add drm_panel_bridge support
      drm/bridge: nxp-ptn3460: add get_modes bridge operation
      drm/bridge: nxp-ptn3460: make connector creation optional
      drm/bridge: ti-sn65dsi86: add drm_panel_bridge support

 .../drm/bridge/megachips-stdpxxxx-ge-b850v3-fw.c   |  92 +++++++++++-------
 drivers/gpu/drm/bridge/nxp-ptn3460.c               | 107 +++++++++------------
 drivers/gpu/drm/bridge/parade-ps8622.c             |  55 ++++-------
 drivers/gpu/drm/bridge/tc358764.c                  |  68 ++++---------
 drivers/gpu/drm/bridge/tc358767.c                  |  98 +++++++++++--------
 drivers/gpu/drm/bridge/ti-sn65dsi86.c              |  27 +++---
 drivers/gpu/drm/bridge/ti-tpd12s015.c              |   3 -
 drivers/gpu/drm/panel/panel-simple.c               |  13 ++-
 8 files changed, 219 insertions(+), 244 deletions(-)




More information about the dri-devel mailing list