[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <eff349659d26a922c39ff24ee1fee8655e5f6efe.camel@redhat.com>
Date: Wed, 19 May 2021 17:41:46 -0400
From: Lyude Paul <lyude@...hat.com>
To: Douglas Anderson <dianders@...omium.org>,
Andrzej Hajda <a.hajda@...sung.com>,
Neil Armstrong <narmstrong@...libre.com>,
Laurent Pinchart <Laurent.pinchart@...asonboard.com>,
Jonas Karlman <jonas@...boo.se>,
Jernej Skrabec <jernej.skrabec@...l.net>,
Sam Ravnborg <sam@...nborg.org>
Cc: Stanislav Lisovskiy <stanislav.lisovskiy@...el.com>,
Thierry Reding <treding@...dia.com>,
Stephen Boyd <swboyd@...omium.org>,
Bjorn Andersson <bjorn.andersson@...aro.org>,
linux-arm-msm@...r.kernel.org,
Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>,
Linus W <linus.walleij@...aro.org>,
dri-devel@...ts.freedesktop.org, robdclark@...omium.org,
Steev Klimaszewski <steev@...i.org>,
Andy Gross <agross@...nel.org>,
Daniel Vetter <daniel@...ll.ch>,
David Airlie <airlied@...ux.ie>,
Maxime Ripard <mripard@...nel.org>,
Rob Herring <robh+dt@...nel.org>,
Robert Foss <robert.foss@...aro.org>,
Sandeep Panda <spanda@...eaurora.org>,
Thierry Reding <thierry.reding@...il.com>,
Thomas Zimmermann <tzimmermann@...e.de>,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v7 00/10] drm: Fix EDID reading on ti-sn65dsi86 by
introducing the DP AUX bus
JFYI I haven't had a chance yet but I'm hoping to look at this this week
On Mon, 2021-05-17 at 13:08 -0700, Douglas Anderson wrote:
> The primary goal of this series is to try to properly fix EDID reading
> for eDP panels using the ti-sn65dsi86 bridge.
>
> Previously we had a patch that added EDID reading but it turned out
> not to work at bootup. This caused some extra churn at bootup as we
> tried (and failed) to read the EDID several times and also ended up
> forcing us to use the hardcoded mode at boot. With this patch series I
> believe EDID reading is reliable at boot now and we never use the
> hardcoded mode.
>
> High level note: in this series the EDID reading is driven by the
> panel driver, not by the bridge chip driver. I believe this makes a
> reasonable amount of sense since the panel driver already _could_
> drive reading the EDID if provided with the DDC bus and in future
> planned work we'll want to give the panel driver the DDC bus (to make
> decisions based on EDID) and the AUX bus (to control the
> backlight). There are also planned patches from Laurent to make
> ti-sn65dsi86 able to drive full DP monitors. In that case the bridge
> chip will still be in charge of reading the EDID, but it's not hard to
> make this dynamic.
>
> This series is the logical successor to the 3-part series containing
> the patch ("drm/bridge: ti-sn65dsi86: Properly get the EDID, but only
> if refclk") [1].
>
> This patch was tested against drm-misc-next commit 60a6b73dd821
> ("drm/ingenic: Fix pixclock rate for 24-bit serial panels") on a
> sc7180-trogdor-lazor device.
>
> At v7 now, this patch series grew a bit from v6 because it introduces
> the DP AUX bus.
>
> Between v2 and v3, high-level view of changes:
> - stop doing the EDID caching in the core.
>
> Between v3 and v4, high-level view of changes:
> - EDID reading is actually driven by the panel driver now. See above.
> - Lots of chicken-and-egg problems solved w/ sub-devices.
>
> Between v4 and v5, high-level view of changes.
> - Some of the early patches landed, so dropped from series.
> - New pm_runtime_disable() fix (fixed a patch that already landed).
> - Added Bjorn's tags to most patches
> - Fixed problems when building as a module.
> - Reordered debugfs patch and fixed error handling there.
> - Dropped last patch. I'm not convinced it's safe w/out more work.
>
> Between v5 and v6, high-level view of changes:
> - Added the patch ("drm/dp: Allow an early call to register DDC i2c
> bus")
> - Many patches had been landed, so only a few "controversial" ones
> left.
>
> Between v6 and v7, high-level view of changes:
> - New AUX DP bus!
>
> [1]
> https://lore.kernel.org/r/20210304155144.3.I60a7fb23ce4589006bc95c64ab8d15c74b876e68@changeid/
>
> Changes in v7:
> - pm_runtime_dont_use_autosuspend() fix new for v7.
> - List hpd properties bindings patch new for v7.
> - ti-sn65dsi86: Add aux-bus child patch new for v7.
> - Patch introducing the DP AUX bus is new for v7.
> - Patch to allow panel-simple to be DP AUX EP new for v7.
> - Patch using the DP AUX for DDC new for v7.
> - Remove use of now-dropped drm_dp_aux_register_ddc() call.
> - Beefed up commit message in context of the DP AUX bus.
> - Set the proper sub-device "dev" pointer in the AUX structure.
> - Patch to support for DP AUX bus on ti-sn65dsi86 new for v7.
> - Adjusted commit message to talk about DP AUX bus.
> - Panel now under bridge chip instead of getting a link to ddc-i2c
>
> Changes in v6:
> - Use new drm_dp_aux_register_ddc() calls.
>
> Douglas Anderson (10):
> drm/panel: panel-simple: Add missing pm_runtime_dont_use_autosuspend()
> calls
> dt-bindings: display: simple: List hpd properties in panel-simple
> dt-bindings: drm/bridge: ti-sn65dsi86: Add aux-bus child
> drm: Introduce the DP AUX bus
> drm/panel: panel-simple: Allow panel-simple be a DP AUX endpoint
> device
> drm/panel: panel-simple: Stash DP AUX bus; allow using it for DDC
> drm/bridge: ti-sn65dsi86: Promote the AUX channel to its own sub-dev
> drm/bridge: ti-sn65dsi86: Add support for the DP AUX bus
> drm/bridge: ti-sn65dsi86: Don't read EDID blob over DDC
> arm64: dts: qcom: sc7180-trogdor: Move panel under the bridge chip
>
> .../bindings/display/bridge/ti,sn65dsi86.yaml | 22 +-
> .../bindings/display/panel/panel-simple.yaml | 2 +
> arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi | 30 +-
> drivers/gpu/drm/Kconfig | 5 +
> drivers/gpu/drm/Makefile | 2 +
> drivers/gpu/drm/bridge/Kconfig | 1 +
> drivers/gpu/drm/bridge/ti-sn65dsi86.c | 111 ++++--
> drivers/gpu/drm/drm_dp_aux_bus.c | 322 ++++++++++++++++++
> drivers/gpu/drm/panel/Kconfig | 1 +
> drivers/gpu/drm/panel/panel-simple.c | 66 +++-
> include/drm/drm_dp_aux_bus.h | 57 ++++
> 11 files changed, 563 insertions(+), 56 deletions(-)
> create mode 100644 drivers/gpu/drm/drm_dp_aux_bus.c
> create mode 100644 include/drm/drm_dp_aux_bus.h
>
--
Sincerely,
Lyude Paul (she/her)
Software Engineer at Red Hat
Note: I deal with a lot of emails and have a lot of bugs on my plate. If you've
asked me a question, are waiting for a review/merge on a patch, etc. and I
haven't responded in a while, please feel free to send me another email to check
on my status. I don't bite!
Powered by blists - more mailing lists