From: Vinod Polimera <quic_vpolimer@quicinc.com>
To: dri-devel@lists.freedesktop.org, linux-arm-msm@vger.kernel.org,
freedreno@lists.freedesktop.org, devicetree@vger.kernel.org
Cc: Vinod Polimera <quic_vpolimer@quicinc.com>,
linux-kernel@vger.kernel.org, robdclark@gmail.com,
dianders@chromium.org, swboyd@chromium.org,
quic_kalyant@quicinc.com, dmitry.baryshkov@linaro.org,
quic_khsieh@quicinc.com, quic_vproddut@quicinc.com,
bjorn.andersson@linaro.org, quic_aravindh@quicinc.com,
quic_abhinavk@quicinc.com, quic_sbillaka@quicinc.com
Subject: [PATCH v5 03/10] drm/msm/dp: use atomic callbacks for DP bridge ops
Date: Mon, 11 Jul 2022 15:17:52 +0530 [thread overview]
Message-ID: <1657532880-12897-4-git-send-email-quic_vpolimer@quicinc.com> (raw)
In-Reply-To: <1657532880-12897-1-git-send-email-quic_vpolimer@quicinc.com>
Use atomic variants for DP bridge callback functions so that
the atomic state can be accessed in the interface drivers.
The atomic state will help the driver find out if the display
is in self refresh state.
Signed-off-by: Sankeerth Billakanti <quic_sbillaka@quicinc.com>
Signed-off-by: Vinod Polimera <quic_vpolimer@quicinc.com>
---
drivers/gpu/drm/msm/dp/dp_display.c | 9 ++++++---
drivers/gpu/drm/msm/dp/dp_drm.c | 18 +++++++++++-------
2 files changed, 17 insertions(+), 10 deletions(-)
diff --git a/drivers/gpu/drm/msm/dp/dp_display.c b/drivers/gpu/drm/msm/dp/dp_display.c
index bce7793..5bd6677 100644
--- a/drivers/gpu/drm/msm/dp/dp_display.c
+++ b/drivers/gpu/drm/msm/dp/dp_display.c
@@ -1652,7 +1652,8 @@ int msm_dp_modeset_init(struct msm_dp *dp_display, struct drm_device *dev,
return 0;
}
-void dp_bridge_enable(struct drm_bridge *drm_bridge)
+void dp_bridge_atomic_enable(struct drm_bridge *drm_bridge,
+ struct drm_bridge_state *old_bridge_state)
{
struct msm_dp_bridge *dp_bridge = to_dp_bridge(drm_bridge);
struct msm_dp *dp = dp_bridge->dp_display;
@@ -1716,7 +1717,8 @@ void dp_bridge_enable(struct drm_bridge *drm_bridge)
mutex_unlock(&dp_display->event_mutex);
}
-void dp_bridge_disable(struct drm_bridge *drm_bridge)
+void dp_bridge_atomic_disable(struct drm_bridge *drm_bridge,
+ struct drm_bridge_state *old_bridge_state)
{
struct msm_dp_bridge *dp_bridge = to_dp_bridge(drm_bridge);
struct msm_dp *dp = dp_bridge->dp_display;
@@ -1727,7 +1729,8 @@ void dp_bridge_disable(struct drm_bridge *drm_bridge)
dp_ctrl_push_idle(dp_display->ctrl);
}
-void dp_bridge_post_disable(struct drm_bridge *drm_bridge)
+void dp_bridge_atomic_post_disable(struct drm_bridge *drm_bridge,
+ struct drm_bridge_state *old_bridge_state)
{
struct msm_dp_bridge *dp_bridge = to_dp_bridge(drm_bridge);
struct msm_dp *dp = dp_bridge->dp_display;
diff --git a/drivers/gpu/drm/msm/dp/dp_drm.c b/drivers/gpu/drm/msm/dp/dp_drm.c
index 62d58b9..9d0fc74 100644
--- a/drivers/gpu/drm/msm/dp/dp_drm.c
+++ b/drivers/gpu/drm/msm/dp/dp_drm.c
@@ -61,13 +61,17 @@ static int dp_bridge_get_modes(struct drm_bridge *bridge, struct drm_connector *
}
static const struct drm_bridge_funcs dp_bridge_ops = {
- .enable = dp_bridge_enable,
- .disable = dp_bridge_disable,
- .post_disable = dp_bridge_post_disable,
- .mode_set = dp_bridge_mode_set,
- .mode_valid = dp_bridge_mode_valid,
- .get_modes = dp_bridge_get_modes,
- .detect = dp_bridge_detect,
+ .atomic_enable = dp_bridge_atomic_enable,
+ .atomic_disable = dp_bridge_atomic_disable,
+ .atomic_post_disable = dp_bridge_atomic_post_disable,
+ .mode_set = dp_bridge_mode_set,
+ .mode_valid = dp_bridge_mode_valid,
+ .get_modes = dp_bridge_get_modes,
+ .detect = dp_bridge_detect,
+ .atomic_reset = drm_atomic_helper_bridge_reset,
+ .atomic_duplicate_state = drm_atomic_helper_bridge_duplicate_state,
+ .atomic_destroy_state = drm_atomic_helper_bridge_destroy_state,
+ .atomic_check = edp_bridge_atomic_check,
};
struct drm_bridge *dp_bridge_init(struct msm_dp *dp_display, struct drm_device *dev,
--
2.7.4
next prev parent reply other threads:[~2022-07-11 10:39 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-11 9:47 [PATCH v5 00/10] Add PSR support for eDP Vinod Polimera
2022-07-11 9:47 ` [PATCH v5 01/10] drm/msm/disp/dpu1: clear dpu_assign_crtc and get crtc from connector state instead of dpu_enc Vinod Polimera
2022-07-11 10:07 ` Dmitry Baryshkov
2022-07-11 9:47 ` [PATCH v5 02/10] drm: add helper functions to retrieve old and new crtc Vinod Polimera
2022-07-11 9:47 ` Vinod Polimera [this message]
2022-07-11 10:10 ` [PATCH v5 03/10] drm/msm/dp: use atomic callbacks for DP bridge ops Dmitry Baryshkov
2022-07-11 9:47 ` [PATCH v5 04/10] drm/msm/dp: add basic PSR support for eDP Vinod Polimera
2022-07-11 10:24 ` Dmitry Baryshkov
2022-07-11 9:47 ` [PATCH v5 04/10] drm/msm/dp: Add " Vinod Polimera
2022-07-11 9:47 ` [PATCH v5 05/10] drm/msm/dp: use the eDP bridge ops to validate eDP modes Vinod Polimera
2022-07-11 9:47 ` [PATCH v5 06/10] drm/bridge: use atomic enable/disable callbacks for panel bridge Vinod Polimera
2022-07-11 9:47 ` [PATCH v5 07/10] drm/bridge: add psr support for panel bridge callbacks Vinod Polimera
2022-07-11 9:47 ` [PATCH v5 08/10] drm/msm/disp/dpu1: use atomic enable/disable callbacks for encoder functions Vinod Polimera
2022-07-11 9:47 ` [PATCH v5 09/10] drm/msm/disp/dpu1: add PSR support for eDP interface in dpu driver Vinod Polimera
2022-07-11 9:48 ` [PATCH v5 10/10] drm/msm/disp/dpu1: check for crtc enable rather than crtc active to release shared resources Vinod Polimera
2022-07-11 10:07 ` [PATCH v5 00/10] Add PSR support for eDP Dmitry Baryshkov
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=1657532880-12897-4-git-send-email-quic_vpolimer@quicinc.com \
--to=quic_vpolimer@quicinc.com \
--cc=bjorn.andersson@linaro.org \
--cc=devicetree@vger.kernel.org \
--cc=dianders@chromium.org \
--cc=dmitry.baryshkov@linaro.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=freedreno@lists.freedesktop.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=quic_abhinavk@quicinc.com \
--cc=quic_aravindh@quicinc.com \
--cc=quic_kalyant@quicinc.com \
--cc=quic_khsieh@quicinc.com \
--cc=quic_sbillaka@quicinc.com \
--cc=quic_vproddut@quicinc.com \
--cc=robdclark@gmail.com \
--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: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®