Atomic resource management

Submitted by Jeykumar Sankaran on June 13, 2018, 1:17 a.m.

Details

Reviewer None
Submitted June 13, 2018, 1:17 a.m.
Last Updated June 18, 2018, 1:34 p.m.
Revision 2

Cover Letter(s)

Revision 1
      This patchset introduces drm private object in KMS to manage HW
resource management. It modifies the resource manager by
introducing API's to do per DRM object resource allocation/cleanups.

The patchset is based on: https://patchwork.kernel.org/patch/10461375/

Jeykumar Sankaran (4):
  drm/msm/dpu: add atomic private object to dpu kms
  drm/msm/dpu: remove scalar config definitions
  drm/msm/dpu: remove resource pool manager
  drm/msm/dpu: use private obj to track hw resources

 drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c           | 704 +++---------------
 drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.h           | 144 ++--
 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c        | 223 ++----
 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.h        |   4 -
 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys.h   |   9 +-
 .../gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c   |  32 +-
 .../gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c   |  86 +--
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_util.h        |  10 -
 drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c            |  85 ++-
 drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h            |  23 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c             | 805 ++++++---------------
 drivers/gpu/drm/msm/disp/dpu1/dpu_rm.h             | 149 ++--
 12 files changed, 615 insertions(+), 1659 deletions(-)
    
Revision 2
      This patchset introduces drm private object in KMS to manage HW
resource management. It modifies the resource manager by
introducing API's to do per DRM object resource allocation/cleanups.

The patchset is based on: https://patchwork.kernel.org/patch/10461375/

major changes in v2:
    - Fix return values in kms (Jordan)
    - Split irrelevant changes from master patch
      into separate patches (Sean)

Jeykumar Sankaran (14):
  drm/msm/dpu: remove scalar config definitions
  drm/msm/dpu: remove resource pool manager
  drm/msm/dpu: remove ping pong split topology variables
  drm/msm/dpu: program master-slave encoders explicitly
  drm/msm/dpu: use kms stored hw mdp block
  drm/msm/dpu: remove stale encoder code
  drm/msm/dpu: iterate for assigned hw ctl in virtual encoder
  drm/msm/dpu: avoid querying for hw intf before assignment
  drm/msm/dpu: move hw resource tracking to crtc state
  drm/msm/dpu: rename hw_ctl to lm_ctl
  drm/msm/dpu: remove topology name
  drm/msm/dpu: remove display H_TILE from encoder
  drm/msm/dpu: add atomic private object to dpu kms
  drm/msm/dpu: use private obj to track hw resources

 drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c           | 711 +++---------------
 drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.h           | 150 ++--
 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c        | 229 +++---
 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.h        |   4 -
 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys.h   |  18 +-
 .../gpu/drm/msm/disp/dpu1/dpu_encoder_phys_cmd.c   |  31 +-
 .../gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c   |  88 +--
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_util.h        |  10 -
 drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c            |  84 ++-
 drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h            |  23 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c             | 805 ++++++---------------
 drivers/gpu/drm/msm/disp/dpu1/dpu_rm.h             | 149 ++--
 12 files changed, 609 insertions(+), 1693 deletions(-)
    

Revisions