devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 00/11] drm: Add support for bus-format negotiation
@ 2019-12-03 14:15 Boris Brezillon
  2019-12-03 14:15 ` [PATCH v4 01/11] drm/bridge: Rename bridge helpers targeting a bridge chain Boris Brezillon
                   ` (11 more replies)
  0 siblings, 12 replies; 42+ messages in thread
From: Boris Brezillon @ 2019-12-03 14:15 UTC (permalink / raw)
  To: dri-devel
  Cc: Lucas Stach, Chris Healy, Andrey Smirnov, Nikita Yushchenko,
	kernel, Daniel Vetter, Inki Dae, Joonyoung Shim, Seung-Woo Kim,
	Kyungmin Park, Thierry Reding, Sam Ravnborg, Philipp Zabel,
	Rob Clark, Andrzej Hajda, Neil Armstrong, Laurent Pinchart,
	Jonas Karlman, Jernej Skrabec, Rob Herring, Mark Rutland,
	devicetree, Eric Anholt, Boris Brezillon

This patch series aims at adding support for runtime bus-format
negotiation between all elements of the
'encoder -> bridges -> connector/display' section of the pipeline.

In order to support that, we need drm bridges to fully take part in the
atomic state validation process, which requires adding a
drm_bridge_state and a new drm_bridge_funcs.atomic_check() hook.
Once those basic building blocks are in place, we can add new hooks to
allow bus format negotiation (those are called just before
->atomic_check()). The bus format selection is done at runtime by
testing all possible combinations across the whole bridge chain until
one is reported to work.

No Major changes in this v4. I think I addressed all comments I got
from Neil and Laurent (thanks for the detailed reviews BTW). Note that
this version only contains core changes. Once those changes are merged
I'll send the imx/panel/lvds-codec specific bits.

A more detailed changelog is provided in each patch.

This patch series is also available here [1].

Thanks,

Boris

[1]https://github.com/bbrezillon/linux-0day/commits/drm-bridge-busfmt-v4

Boris Brezillon (11):
  drm/bridge: Rename bridge helpers targeting a bridge chain
  drm/bridge: Introduce drm_bridge_get_next_bridge()
  drm: Stop accessing encoder->bridge directly
  drm/bridge: Make the bridge chain a double-linked list
  drm/bridge: Add the drm_for_each_bridge_in_chain() helper
  drm/bridge: Add the drm_bridge_get_prev_bridge() helper
  drm/bridge: Clarify the atomic enable/disable hooks semantics
  drm/bridge: Add a drm_bridge_state object
  drm/bridge: Patch atomic hooks to take a drm_bridge_state
  drm/bridge: Add an ->atomic_check() hook
  drm/bridge: Add the necessary bits to support bus format negotiation

 .../drm/bridge/analogix/analogix_dp_core.c    |  41 +-
 drivers/gpu/drm/drm_atomic.c                  |  39 +
 drivers/gpu/drm/drm_atomic_helper.c           |  53 +-
 drivers/gpu/drm/drm_bridge.c                  | 756 +++++++++++++++---
 drivers/gpu/drm/drm_encoder.c                 |  15 +-
 drivers/gpu/drm/drm_probe_helper.c            |   4 +-
 drivers/gpu/drm/exynos/exynos_drm_dsi.c       |  13 +-
 drivers/gpu/drm/mediatek/mtk_hdmi.c           |   8 +-
 drivers/gpu/drm/msm/edp/edp_bridge.c          |  10 +-
 drivers/gpu/drm/omapdrm/omap_drv.c            |   4 +-
 drivers/gpu/drm/omapdrm/omap_encoder.c        |   3 +-
 drivers/gpu/drm/rcar-du/rcar_du_crtc.c        |  10 +-
 drivers/gpu/drm/vc4/vc4_dsi.c                 |  18 +-
 include/drm/drm_atomic.h                      |   3 +
 include/drm/drm_bridge.h                      | 404 +++++++++-
 include/drm/drm_encoder.h                     |   7 +-
 16 files changed, 1174 insertions(+), 214 deletions(-)

-- 
2.23.0


^ permalink raw reply	[flat|nested] 42+ messages in thread

end of thread, other threads:[~2020-01-01 17:13 UTC | newest]

Thread overview: 42+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-12-03 14:15 [PATCH v4 00/11] drm: Add support for bus-format negotiation Boris Brezillon
2019-12-03 14:15 ` [PATCH v4 01/11] drm/bridge: Rename bridge helpers targeting a bridge chain Boris Brezillon
2019-12-03 14:15 ` [PATCH v4 02/11] drm/bridge: Introduce drm_bridge_get_next_bridge() Boris Brezillon
2019-12-03 14:15 ` [PATCH v4 03/11] drm: Stop accessing encoder->bridge directly Boris Brezillon
2019-12-03 14:15 ` [PATCH v4 04/11] drm/bridge: Make the bridge chain a double-linked list Boris Brezillon
2019-12-16 13:54   ` Marek Szyprowski
2019-12-16 14:55     ` Boris Brezillon
2019-12-16 15:02       ` Marek Szyprowski
2019-12-16 15:25         ` Boris Brezillon
2019-12-23  9:55           ` Marek Szyprowski
2019-12-24  9:16             ` Andrzej Hajda
2019-12-24  9:44               ` Boris Brezillon
2019-12-24  9:49                 ` Boris Brezillon
2019-12-24 10:03                   ` Boris Brezillon
2019-12-27 10:25                     ` Marek Szyprowski
2019-12-27 11:03                       ` Marek Szyprowski
2019-12-24 11:31                 ` Sam Ravnborg
2019-12-25  1:36                   ` Laurent Pinchart
2019-12-27 12:39                   ` Boris Brezillon
2019-12-27  9:42                 ` Andrzej Hajda
2019-12-27 10:51                   ` Laurent Pinchart
2019-12-27 12:21                     ` Boris Brezillon
2020-01-01 17:13                       ` Laurent Pinchart
2019-12-03 14:15 ` [PATCH v4 05/11] drm/bridge: Add the drm_for_each_bridge_in_chain() helper Boris Brezillon
2019-12-03 14:15 ` [PATCH v4 06/11] drm/bridge: Add the drm_bridge_get_prev_bridge() helper Boris Brezillon
2019-12-03 14:15 ` [PATCH v4 07/11] drm/bridge: Clarify the atomic enable/disable hooks semantics Boris Brezillon
2019-12-03 18:02   ` Laurent Pinchart
2019-12-04  9:00     ` Boris Brezillon
2019-12-03 14:15 ` [PATCH v4 08/11] drm/bridge: Add a drm_bridge_state object Boris Brezillon
2019-12-03 18:17   ` Laurent Pinchart
2019-12-04  9:03     ` Boris Brezillon
2019-12-04  9:12       ` Laurent Pinchart
2019-12-04  9:42         ` Boris Brezillon
2019-12-04 10:38           ` Laurent Pinchart
2019-12-03 14:15 ` [PATCH v4 09/11] drm/bridge: Patch atomic hooks to take a drm_bridge_state Boris Brezillon
2019-12-03 14:15 ` [PATCH v4 10/11] drm/bridge: Add an ->atomic_check() hook Boris Brezillon
2019-12-03 14:15 ` [PATCH v4 11/11] drm/bridge: Add the necessary bits to support bus format negotiation Boris Brezillon
2019-12-03 18:19 ` [PATCH v4 00/11] drm: Add support for bus-format negotiation Laurent Pinchart
2019-12-04  9:09   ` Boris Brezillon
2019-12-04  9:15     ` Laurent Pinchart
2019-12-04 13:43   ` Neil Armstrong
2019-12-09  9:43   ` Boris Brezillon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).