mbox series

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

Message ID 1618606645-19695-1-git-send-email-abhinavk@codeaurora.org
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

> 



-- 
With best wishes
Dmitry