[PATCH v10 00/12] drm: Add support for bus-format negotiation
Boris Brezillon
boris.brezillon at collabora.com
Fri Jan 31 15:42:44 UTC 2020
On Tue, 28 Jan 2020 14:55:02 +0100
Boris Brezillon <boris.brezillon at collabora.com> wrote:
> Hello,
>
> 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 fundamental changes in this v10, just collected R-bs, addressed
> Philipp's comments and moved the changelog back to the visible part
> of the commit message.
>
> I plan to apply patches 1 to 7 soon, so if there's anything you don't
> like in there, please say it now. Still waiting for review on the LVDS
> bridge and panel stuff.
>
> This patch series is also available here [1].
>
> Thanks,
>
> Boris
>
> [1]https://github.com/bbrezillon/linux-0day/commits/drm-bridge-busfmt-v10
>
> Boris Brezillon (12):
> drm/bridge: Add a drm_bridge_state object
> drm/rcar-du: Plug atomic state hooks to the default implementation
> drm/bridge: analogix: Plug atomic state hooks to the default
> implementation
> 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/imx: pd: Use bus format/flags provided by the bridge when
> available
Patches 1 to 7 applied.
> drm/bridge: lvds-codec: Implement basic bus format negotiation
> dt-bindings: display: bridge: lvds-codec: Add new bus-width prop
> drm/bridge: panel: Propage bus format/flags
Laurent, when you find some time, could you have a look at patches 8-10?
> drm/panel: simple: Fix the lt089ac29000 bus_format
Sam, I'll let you apply that one since dim complained that it was
missing a R-b (you only gave your A-b).
> ARM: dts: imx: imx51-zii-rdu1: Fix the display pipeline definition
>
> .../bindings/display/bridge/lvds-codec.yaml | 8 +
> arch/arm/boot/dts/imx51-zii-rdu1.dts | 24 +-
> .../drm/bridge/analogix/analogix_dp_core.c | 44 +-
> drivers/gpu/drm/bridge/lvds-codec.c | 64 ++-
> drivers/gpu/drm/bridge/panel.c | 4 +
> drivers/gpu/drm/drm_atomic.c | 116 +++++
> drivers/gpu/drm/drm_atomic_helper.c | 73 ++-
> drivers/gpu/drm/drm_atomic_state_helper.c | 103 +++++
> drivers/gpu/drm/drm_bridge.c | 437 +++++++++++++++++-
> drivers/gpu/drm/imx/parallel-display.c | 177 ++++++-
> drivers/gpu/drm/panel/panel-simple.c | 2 +-
> drivers/gpu/drm/rcar-du/rcar_lvds.c | 11 +-
> include/drm/drm_atomic.h | 76 +++
> include/drm/drm_atomic_helper.h | 8 +
> include/drm/drm_atomic_state_helper.h | 13 +
> include/drm/drm_bridge.h | 179 ++++++-
> 16 files changed, 1258 insertions(+), 81 deletions(-)
>
More information about the dri-devel
mailing list