[PATCH 0/6] drm: add atomic state logging and debugfs

Rob Clark robdclark at gmail.com
Sat Oct 15 00:19:27 UTC 2016


On Fri, Oct 14, 2016 at 7:55 PM, Rob Clark <robdclark at gmail.com> wrote:
> Bit more spiffed out version of the RFC.  Now with Sean's suggestion to
> add vfuncs in plane/crtc/connector funcs for drivers that subclass the
> various state structs.  Plus Ville's suggestion about helper macros
> for printing mode/rect structs (and alignment with how drm_rect printed
> the integer and fixed-point rects).  Plus addition of connector state
> and debugfs.

and jfyi, full state dump now looks like this:

--------
plane[24]: RGB0
    crtc=crtc-0
    fb=52
        format=XB24 little-endian (0x34324258)
        size=2048x1152
        layers:
            pitch[0]=8192
            offset[0]=0
            modifier[0]=0x0
    crtc-pos=2048x1152+0+0
    src-pos=2048.000000x1152.000000+0.000000+0.000000
    rotation=0
    premultiplied=0
    zpos=1
    alpha=255
    stage=STAGE_BASE
    mode_changed=0
    pending=0
plane[29]: RGB1
    crtc=(null)
    fb=0
    crtc-pos=0x0+0+0
    src-pos=0.000000x0.000000+0.000000+0.000000
    rotation=0
    premultiplied=0
    zpos=1
    alpha=255
    stage=STAGE_UNUSED
    mode_changed=0
    pending=0
plane[31]: VIG0
    crtc=(null)
    fb=0
    crtc-pos=0x0+0+0
    src-pos=0.000000x0.000000+0.000000+0.000000
    rotation=0
    premultiplied=0
    zpos=4
    alpha=255
    stage=STAGE_UNUSED
    mode_changed=0
    pending=0
plane[32]: DMA0
    crtc=(null)
    fb=0
    crtc-pos=0x0+0+0
    src-pos=0.000000x0.000000+0.000000+0.000000
    rotation=0
    premultiplied=0
    zpos=5
    alpha=255
    stage=STAGE_UNUSED
    mode_changed=0
    pending=0
crtc[28]: crtc-0
    enable=1
    active=1
    planes_changed=1
    mode_changed=0
    active_changed=0
    connectors_changed=0
    color_mgmt_changed=0
    plane_mask=1
    connector_mask=1
    encoder_mask=1
    mode: 0:"2048x1152" 60 156750 2048 2096 2128 2208 1152 1155 1160
1185 0x48 0x9
crtc[30]: crtc-1
    enable=0
    active=0
    planes_changed=0
    mode_changed=0
    active_changed=0
    connectors_changed=0
    color_mgmt_changed=0
    plane_mask=0
    connector_mask=0
    encoder_mask=0
    mode: 0:"" 0 0 0 0 0 0 0 0 0 0 0x0 0x0
connector[35]: HDMI-A-1
    crtc=crtc-0
--------

I've added fb parameters, which was another suggestion

BR,
-R

> Rob Clark (6):
>   drm: helper macros to print composite types
>   drm: add helper for printing to log or seq_file
>   drm: add helpers to go from plane state to drm_rect
>   drm/atomic: add new drm_debug bit to dump atomic state before commit
>   drm/atomic: add debugfs file to dump out atomic state
>   drm/msm/mdp5: add atomic_print_state support
>
>  drivers/gpu/drm/Makefile                    |   3 +-
>  drivers/gpu/drm/drm_atomic.c                | 133 ++++++++++++++++++++++++++++
>  drivers/gpu/drm/drm_debugfs.c               |   9 ++
>  drivers/gpu/drm/drm_modes.c                 |   8 +-
>  drivers/gpu/drm/drm_print.c                 |  54 +++++++++++
>  drivers/gpu/drm/drm_rect.c                  |  11 +--
>  drivers/gpu/drm/drm_simple_kms_helper.c     |  14 +--
>  drivers/gpu/drm/i915/intel_atomic_plane.c   |  10 +--
>  drivers/gpu/drm/mediatek/mtk_drm_plane.c    |  15 +---
>  drivers/gpu/drm/msm/mdp/mdp5/mdp5_kms.h     |  12 +++
>  drivers/gpu/drm/msm/mdp/mdp5/mdp5_plane.c   |  18 +++-
>  drivers/gpu/drm/rockchip/rockchip_drm_vop.c |  10 +--
>  include/drm/drmP.h                          |  22 +++++
>  include/drm/drm_atomic.h                    |   4 +
>  include/drm/drm_crtc.h                      |  61 +++++++++++++
>  include/drm/drm_print.h                     |  62 +++++++++++++
>  16 files changed, 387 insertions(+), 59 deletions(-)
>  create mode 100644 drivers/gpu/drm/drm_print.c
>  create mode 100644 include/drm/drm_print.h
>
> --
> 2.7.4
>


More information about the dri-devel mailing list