mbox series

[v5,0/7] Add devcoredump support for DPU

Message ID 1618606645-19695-1-git-send-email-abhinavk@codeaurora.org (mailing list archive)
Headers show
Series Add devcoredump support for DPU | expand

Message

Abhinav Kumar April 16, 2021, 8:57 p.m. UTC
This series adds support to use devcoredump for DPU driver. It introduces
the msm_disp_snapshot module which assists in the capturing of register dumps during
error scenarios. When a display related error happens, the msm_disp_snapshot module
captures all the relevant register dumps along with the snapshot of the drm
atomic state and triggers a devcoredump.

changes in v5:
 - move the storage of disp_state from dpu_kms to msm_kms
 - absorb snprintf into the snapshot core by accepting var args
 - initialize disp snapshot module even for non-DPU targets
 - split up the patches into dpu, dsi and dp pieces for easier review
 - get rid of MSM_DISP_SNAPSHOT_IN_* macros by simplifying function


Abhinav Kumar (7):
  drm: allow drm_atomic_print_state() to accept any drm_printer
  drm/msm: add support to take dpu snapshot
  drm/msm/dsi: add API to take DSI register snapshot
  drm/msm/dp: add API to take DP register snapshot
  drm/msm/disp/dpu1: add API to take DPU register snapshot
  drm/msm: add support to take dsi, dp and dpu snapshot
  drm/msm: add disp snapshot points across dpu driver

 drivers/gpu/drm/drm_atomic.c                       |  28 ++-
 drivers/gpu/drm/drm_atomic_uapi.c                  |   4 +-
 drivers/gpu/drm/drm_crtc_internal.h                |   4 +-
 drivers/gpu/drm/msm/Makefile                       |   2 +
 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c        |  16 +-
 .../gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c   |  14 +-
 .../gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c   |   8 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h     |   2 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c            |  50 ++++++
 drivers/gpu/drm/msm/disp/msm_disp_snapshot.c       | 161 +++++++++++++++++
 drivers/gpu/drm/msm/disp/msm_disp_snapshot.h       | 154 ++++++++++++++++
 drivers/gpu/drm/msm/disp/msm_disp_snapshot_util.c  | 195 +++++++++++++++++++++
 drivers/gpu/drm/msm/dp/dp_catalog.c                |   9 +
 drivers/gpu/drm/msm/dp/dp_catalog.h                |   4 +
 drivers/gpu/drm/msm/dp/dp_display.c                |  29 +++
 drivers/gpu/drm/msm/dp/dp_display.h                |   1 +
 drivers/gpu/drm/msm/dsi/dsi.c                      |   5 +
 drivers/gpu/drm/msm/dsi/dsi.h                      |   5 +-
 drivers/gpu/drm/msm/dsi/dsi_host.c                 |  16 ++
 drivers/gpu/drm/msm/msm_drv.c                      |  27 ++-
 drivers/gpu/drm/msm/msm_drv.h                      |   2 +
 drivers/gpu/drm/msm/msm_kms.h                      |   7 +
 drivers/gpu/drm/selftests/test-drm_framebuffer.c   |   1 +
 23 files changed, 725 insertions(+), 19 deletions(-)
 create mode 100644 drivers/gpu/drm/msm/disp/msm_disp_snapshot.c
 create mode 100644 drivers/gpu/drm/msm/disp/msm_disp_snapshot.h
 create mode 100644 drivers/gpu/drm/msm/disp/msm_disp_snapshot_util.c

Comments

Dmitry Baryshkov April 18, 2021, 11:33 p.m. UTC | #1
On 16/04/2021 23:57, Abhinav Kumar wrote:
> This series adds support to use devcoredump for DPU driver. It introduces
> the msm_disp_snapshot module which assists in the capturing of register dumps during
> error scenarios. When a display related error happens, the msm_disp_snapshot module
> captures all the relevant register dumps along with the snapshot of the drm
> atomic state and triggers a devcoredump.
> 
> changes in v5:
>   - move the storage of disp_state from dpu_kms to msm_kms
>   - absorb snprintf into the snapshot core by accepting var args
>   - initialize disp snapshot module even for non-DPU targets
>   - split up the patches into dpu, dsi and dp pieces for easier review
>   - get rid of MSM_DISP_SNAPSHOT_IN_* macros by simplifying function
> 
> 
> Abhinav Kumar (7):
>    drm: allow drm_atomic_print_state() to accept any drm_printer
>    drm/msm: add support to take dpu snapshot
>    drm/msm/dsi: add API to take DSI register snapshot
>    drm/msm/dp: add API to take DP register snapshot
>    drm/msm/disp/dpu1: add API to take DPU register snapshot
>    drm/msm: add support to take dsi, dp and dpu snapshot
>    drm/msm: add disp snapshot points across dpu driver

All patches:

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>

Thank you!

> 
>   drivers/gpu/drm/drm_atomic.c                       |  28 ++-
>   drivers/gpu/drm/drm_atomic_uapi.c                  |   4 +-
>   drivers/gpu/drm/drm_crtc_internal.h                |   4 +-
>   drivers/gpu/drm/msm/Makefile                       |   2 +
>   drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c        |  16 +-
>   .../gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c   |  14 +-
>   .../gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c   |   8 +-
>   drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.h     |   2 +-
>   drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c            |  50 ++++++
>   drivers/gpu/drm/msm/disp/msm_disp_snapshot.c       | 161 +++++++++++++++++
>   drivers/gpu/drm/msm/disp/msm_disp_snapshot.h       | 154 ++++++++++++++++
>   drivers/gpu/drm/msm/disp/msm_disp_snapshot_util.c  | 195 +++++++++++++++++++++
>   drivers/gpu/drm/msm/dp/dp_catalog.c                |   9 +
>   drivers/gpu/drm/msm/dp/dp_catalog.h                |   4 +
>   drivers/gpu/drm/msm/dp/dp_display.c                |  29 +++
>   drivers/gpu/drm/msm/dp/dp_display.h                |   1 +
>   drivers/gpu/drm/msm/dsi/dsi.c                      |   5 +
>   drivers/gpu/drm/msm/dsi/dsi.h                      |   5 +-
>   drivers/gpu/drm/msm/dsi/dsi_host.c                 |  16 ++
>   drivers/gpu/drm/msm/msm_drv.c                      |  27 ++-
>   drivers/gpu/drm/msm/msm_drv.h                      |   2 +
>   drivers/gpu/drm/msm/msm_kms.h                      |   7 +
>   drivers/gpu/drm/selftests/test-drm_framebuffer.c   |   1 +
>   23 files changed, 725 insertions(+), 19 deletions(-)
>   create mode 100644 drivers/gpu/drm/msm/disp/msm_disp_snapshot.c
>   create mode 100644 drivers/gpu/drm/msm/disp/msm_disp_snapshot.h
>   create mode 100644 drivers/gpu/drm/msm/disp/msm_disp_snapshot_util.c
>