diff options
author | Abhinav Kumar <abhinavk@codeaurora.org> | 2021-04-16 13:57:24 -0700 |
---|---|---|
committer | Rob Clark <robdclark@chromium.org> | 2021-06-23 07:32:13 -0700 |
commit | d87fe031bf3aac81d583f1ac57888691cc154dc5 (patch) | |
tree | 433141bca9cf418fb05c374638765a60af7ab1bf | |
parent | a698b5cdfe63663dc6d5cb4c19109cd9757f8daf (diff) |
drm/msm: add support to take dsi, dp and dpu snapshot
Add support to take the register snapshot of dsi, dp and dpu
modules.
Signed-off-by: Abhinav Kumar <abhinavk@codeaurora.org>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://lore.kernel.org/r/1618606645-19695-7-git-send-email-abhinavk@codeaurora.org
Signed-off-by: Rob Clark <robdclark@chromium.org>
-rw-r--r-- | drivers/gpu/drm/msm/disp/msm_disp_snapshot.h | 1 | ||||
-rw-r--r-- | drivers/gpu/drm/msm/disp/msm_disp_snapshot_util.c | 16 |
2 files changed, 17 insertions, 0 deletions
diff --git a/drivers/gpu/drm/msm/disp/msm_disp_snapshot.h b/drivers/gpu/drm/msm/disp/msm_disp_snapshot.h index 11dfa5753161..7e075e799f0a 100644 --- a/drivers/gpu/drm/msm/disp/msm_disp_snapshot.h +++ b/drivers/gpu/drm/msm/disp/msm_disp_snapshot.h @@ -27,6 +27,7 @@ #include <linux/devcoredump.h> #include <stdarg.h> #include "msm_kms.h" +#include "dsi.h" #define MSM_DISP_SNAPSHOT_MAX_BLKS 10 diff --git a/drivers/gpu/drm/msm/disp/msm_disp_snapshot_util.c b/drivers/gpu/drm/msm/disp/msm_disp_snapshot_util.c index 024ca49cb2e8..44dc68295ddb 100644 --- a/drivers/gpu/drm/msm/disp/msm_disp_snapshot_util.c +++ b/drivers/gpu/drm/msm/disp/msm_disp_snapshot_util.c @@ -130,9 +130,25 @@ void msm_disp_snapshot_capture_state(struct msm_disp_state *disp_state) { struct msm_drm_private *priv; struct drm_device *drm_dev; + struct msm_kms *kms; + int i; drm_dev = disp_state->drm_dev; priv = drm_dev->dev_private; + kms = priv->kms; + + if (priv->dp) + msm_dp_snapshot(priv->dp); + + for (i = 0; i < ARRAY_SIZE(priv->dsi); i++) { + if (!priv->dsi[i]) + continue; + + msm_dsi_snapshot(priv->dsi[i]); + } + + if (kms->funcs->snapshot) + kms->funcs->snapshot(kms); msm_disp_capture_atomic_state(disp_state); } |