From: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> To: Bjorn Andersson <bjorn.andersson@linaro.org>, Rob Clark <robdclark@gmail.com>, Sean Paul <sean@poorly.run>, Abhinav Kumar <quic_abhinavk@quicinc.com>, Kuogee Hsieh <quic_khsieh@quicinc.com> Cc: Stephen Boyd <swboyd@chromium.org>, David Airlie <airlied@linux.ie>, Daniel Vetter <daniel@ffwll.ch>, linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org Subject: [RFC PATCH v2 0/5] Simplify and correct msm/dp bridge implementation Date: Sat, 12 Feb 2022 01:40:01 +0300 [thread overview] Message-ID: <20220211224006.1797846-1-dmitry.baryshkov@linaro.org> (raw) I noticed that commit 8a3b4c17f863 ("drm/msm/dp: employ bridge mechanism for display enable and disable") conflicts with the panel-edp (panel bridge) support. Both bridges will try to attach directly to the drm encoder itself without forming a proper bridge chain. Initially I started writing lengthy letter describing what is broken and how it should be fixed. Then at some point I stopped and quickly coded this RFC (which is compile-tested only). Comments and tests (on both DP and eDP setups) are more than welcome. Changes since RFC v1: - Expanded commit messages to reference possible setups Added details about possible bridges, usage, etc - Changed handling of errors for devm_drm_of_get_bridge(). Made the -ENODEV fatal for the eDP connectors only, all other errors should be fatal for both eDP and DP. Dmitry Baryshkov (5): drm/msm/dp: fix panel bridge attachment drm/msm/dp: support attaching bridges to the DP encoder drm/msm/dp: support finding next bridge even for DP interfaces drm/msm/dp: replace dp_connector with drm_bridge_connector drm/msm/dp: remove extra wrappers and public functions drivers/gpu/drm/msm/dp/dp_display.c | 76 +++++++----- drivers/gpu/drm/msm/dp/dp_display.h | 3 +- drivers/gpu/drm/msm/dp/dp_drm.c | 186 +++++++--------------------- drivers/gpu/drm/msm/dp/dp_drm.h | 22 +++- drivers/gpu/drm/msm/dp/dp_parser.c | 38 +++--- drivers/gpu/drm/msm/dp/dp_parser.h | 2 +- drivers/gpu/drm/msm/msm_drv.h | 31 ----- 7 files changed, 137 insertions(+), 221 deletions(-) base-commit: 6aa89ae1fb049614b7e03e24485bbfb96754a02b prerequisite-patch-id: 89e012b5b7da1a90cc243cc4c305400a4fafdf0b prerequisite-patch-id: 0de618d54d5fea5b48c2b540c8731a1a7e2f4c15 prerequisite-patch-id: a9b1a27e9800626cc0ebc73291d65c2790670583 prerequisite-patch-id: 2067135baa2995fbcbfd6793b61e39027e6b7516 prerequisite-patch-id: 0591114f3c59f9376ba25e77e7a48daf90cf7aa6 prerequisite-patch-id: 684cf6c7a177cb7c6c9d83a859eec0acef5c132c prerequisite-patch-id: 083313bc9b19fcf7fed78f63a3cb0752f54cec4f prerequisite-patch-id: 6e46e24cd7471ba38679b3d6f99a1132fa1154b3 -- 2.34.1
WARNING: multiple messages have this Message-ID (diff)
From: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> To: Bjorn Andersson <bjorn.andersson@linaro.org>, Rob Clark <robdclark@gmail.com>, Sean Paul <sean@poorly.run>, Abhinav Kumar <quic_abhinavk@quicinc.com>, Kuogee Hsieh <quic_khsieh@quicinc.com> Cc: David Airlie <airlied@linux.ie>, linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org, Stephen Boyd <swboyd@chromium.org>, freedreno@lists.freedesktop.org Subject: [RFC PATCH v2 0/5] Simplify and correct msm/dp bridge implementation Date: Sat, 12 Feb 2022 01:40:01 +0300 [thread overview] Message-ID: <20220211224006.1797846-1-dmitry.baryshkov@linaro.org> (raw) I noticed that commit 8a3b4c17f863 ("drm/msm/dp: employ bridge mechanism for display enable and disable") conflicts with the panel-edp (panel bridge) support. Both bridges will try to attach directly to the drm encoder itself without forming a proper bridge chain. Initially I started writing lengthy letter describing what is broken and how it should be fixed. Then at some point I stopped and quickly coded this RFC (which is compile-tested only). Comments and tests (on both DP and eDP setups) are more than welcome. Changes since RFC v1: - Expanded commit messages to reference possible setups Added details about possible bridges, usage, etc - Changed handling of errors for devm_drm_of_get_bridge(). Made the -ENODEV fatal for the eDP connectors only, all other errors should be fatal for both eDP and DP. Dmitry Baryshkov (5): drm/msm/dp: fix panel bridge attachment drm/msm/dp: support attaching bridges to the DP encoder drm/msm/dp: support finding next bridge even for DP interfaces drm/msm/dp: replace dp_connector with drm_bridge_connector drm/msm/dp: remove extra wrappers and public functions drivers/gpu/drm/msm/dp/dp_display.c | 76 +++++++----- drivers/gpu/drm/msm/dp/dp_display.h | 3 +- drivers/gpu/drm/msm/dp/dp_drm.c | 186 +++++++--------------------- drivers/gpu/drm/msm/dp/dp_drm.h | 22 +++- drivers/gpu/drm/msm/dp/dp_parser.c | 38 +++--- drivers/gpu/drm/msm/dp/dp_parser.h | 2 +- drivers/gpu/drm/msm/msm_drv.h | 31 ----- 7 files changed, 137 insertions(+), 221 deletions(-) base-commit: 6aa89ae1fb049614b7e03e24485bbfb96754a02b prerequisite-patch-id: 89e012b5b7da1a90cc243cc4c305400a4fafdf0b prerequisite-patch-id: 0de618d54d5fea5b48c2b540c8731a1a7e2f4c15 prerequisite-patch-id: a9b1a27e9800626cc0ebc73291d65c2790670583 prerequisite-patch-id: 2067135baa2995fbcbfd6793b61e39027e6b7516 prerequisite-patch-id: 0591114f3c59f9376ba25e77e7a48daf90cf7aa6 prerequisite-patch-id: 684cf6c7a177cb7c6c9d83a859eec0acef5c132c prerequisite-patch-id: 083313bc9b19fcf7fed78f63a3cb0752f54cec4f prerequisite-patch-id: 6e46e24cd7471ba38679b3d6f99a1132fa1154b3 -- 2.34.1
next reply other threads:[~2022-02-11 22:40 UTC|newest] Thread overview: 84+ messages / expand[flat|nested] mbox.gz Atom feed top 2022-02-11 22:40 Dmitry Baryshkov [this message] 2022-02-11 22:40 ` [RFC PATCH v2 0/5] Simplify and correct msm/dp bridge implementation Dmitry Baryshkov 2022-02-11 22:40 ` [RFC PATCH v2 1/5] drm/msm/dp: fix panel bridge attachment Dmitry Baryshkov 2022-02-11 22:40 ` Dmitry Baryshkov 2022-02-18 21:14 ` Kuogee Hsieh 2022-02-18 21:14 ` Kuogee Hsieh 2022-02-18 23:56 ` Stephen Boyd 2022-02-18 23:56 ` Stephen Boyd 2022-02-19 2:26 ` Dmitry Baryshkov 2022-02-19 2:26 ` Dmitry Baryshkov 2022-02-24 18:25 ` [Freedreno] " Abhinav Kumar 2022-02-24 18:25 ` Abhinav Kumar 2022-02-24 20:41 ` Dmitry Baryshkov 2022-02-24 20:41 ` Dmitry Baryshkov 2022-02-25 2:01 ` Abhinav Kumar 2022-02-25 2:01 ` Abhinav Kumar 2022-02-25 4:22 ` Dmitry Baryshkov 2022-02-25 4:22 ` Dmitry Baryshkov 2022-02-25 4:45 ` Abhinav Kumar 2022-02-25 4:45 ` Abhinav Kumar 2022-02-25 9:04 ` Dmitry Baryshkov 2022-02-25 9:04 ` Dmitry Baryshkov 2022-02-25 17:11 ` Abhinav Kumar 2022-02-25 17:11 ` Abhinav Kumar 2022-02-25 17:25 ` Dmitry Baryshkov 2022-02-25 17:25 ` Dmitry Baryshkov 2022-02-11 22:40 ` [RFC PATCH v2 2/5] drm/msm/dp: support attaching bridges to the DP encoder Dmitry Baryshkov 2022-02-11 22:40 ` Dmitry Baryshkov 2022-02-18 21:28 ` Kuogee Hsieh 2022-02-18 21:28 ` Kuogee Hsieh 2022-02-18 21:31 ` Dmitry Baryshkov 2022-02-18 21:31 ` Dmitry Baryshkov 2022-02-18 23:38 ` Stephen Boyd 2022-02-18 23:38 ` Stephen Boyd 2022-02-23 17:47 ` Kuogee Hsieh 2022-02-23 17:47 ` Kuogee Hsieh 2022-02-24 19:56 ` Abhinav Kumar 2022-02-24 19:56 ` Abhinav Kumar 2022-02-11 22:40 ` [RFC PATCH v2 3/5] drm/msm/dp: support finding next bridge even for DP interfaces Dmitry Baryshkov 2022-02-11 22:40 ` Dmitry Baryshkov 2022-02-18 21:29 ` Kuogee Hsieh 2022-02-18 21:29 ` Kuogee Hsieh 2022-02-19 0:34 ` Stephen Boyd 2022-02-19 0:34 ` Stephen Boyd 2022-02-24 20:13 ` Abhinav Kumar 2022-02-24 20:13 ` Abhinav Kumar 2022-02-24 20:49 ` Dmitry Baryshkov 2022-02-24 20:49 ` Dmitry Baryshkov 2022-02-24 21:09 ` Abhinav Kumar 2022-02-24 21:09 ` Abhinav Kumar 2022-02-11 22:40 ` [RFC PATCH v2 4/5] drm/msm/dp: replace dp_connector with drm_bridge_connector Dmitry Baryshkov 2022-02-11 22:40 ` Dmitry Baryshkov 2022-02-18 21:31 ` Kuogee Hsieh 2022-02-18 21:31 ` Kuogee Hsieh 2022-02-18 21:52 ` Dmitry Baryshkov 2022-02-18 21:52 ` Dmitry Baryshkov 2022-02-18 22:32 ` Dmitry Baryshkov 2022-02-18 22:32 ` Dmitry Baryshkov 2022-02-19 0:55 ` Stephen Boyd 2022-02-19 0:55 ` Stephen Boyd 2022-02-19 2:22 ` Dmitry Baryshkov 2022-02-19 2:22 ` Dmitry Baryshkov 2022-02-23 17:21 ` Kuogee Hsieh 2022-02-23 17:21 ` Kuogee Hsieh 2022-02-23 18:22 ` Dmitry Baryshkov 2022-02-23 18:22 ` Dmitry Baryshkov 2022-02-23 18:27 ` Kuogee Hsieh 2022-02-23 18:27 ` Kuogee Hsieh 2022-02-23 18:45 ` Dmitry Baryshkov 2022-02-23 18:45 ` Dmitry Baryshkov 2022-02-23 21:33 ` Stephen Boyd 2022-02-23 21:33 ` Stephen Boyd 2022-02-24 0:40 ` Kuogee Hsieh 2022-02-24 0:40 ` Kuogee Hsieh [not found] ` <64a5ae1a-df65-b0a5-5d0d-cfb1d4da3bf7@quicinc.com> 2022-03-16 16:45 ` Sankeerth Billakanti (QUIC) 2022-03-16 16:45 ` Sankeerth Billakanti (QUIC) 2022-04-14 20:17 ` Abhinav Kumar 2022-04-14 20:17 ` Abhinav Kumar 2022-02-11 22:40 ` [RFC PATCH v2 5/5] drm/msm/dp: remove extra wrappers and public functions Dmitry Baryshkov 2022-02-11 22:40 ` Dmitry Baryshkov [not found] ` <26549f55-6195-a7ec-5896-de5f986ad716@quicinc.com> 2022-03-16 16:31 ` Sankeerth Billakanti (QUIC) 2022-03-16 16:31 ` Sankeerth Billakanti (QUIC) 2022-04-14 20:17 ` Abhinav Kumar 2022-04-14 20:17 ` Abhinav Kumar
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20220211224006.1797846-1-dmitry.baryshkov@linaro.org \ --to=dmitry.baryshkov@linaro.org \ --cc=airlied@linux.ie \ --cc=bjorn.andersson@linaro.org \ --cc=daniel@ffwll.ch \ --cc=dri-devel@lists.freedesktop.org \ --cc=freedreno@lists.freedesktop.org \ --cc=linux-arm-msm@vger.kernel.org \ --cc=quic_abhinavk@quicinc.com \ --cc=quic_khsieh@quicinc.com \ --cc=robdclark@gmail.com \ --cc=sean@poorly.run \ --cc=swboyd@chromium.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.