1. 29 May, 2020 1 commit
    • Ville Syrjälä's avatar
      drm/i915: Stop using mode->private_flags · af157b76
      Ville Syrjälä authored
      Replace the use of mode->private_flags with a truly private bitmaks
      in our own crtc state. We also need a copy in the crtc itself so the
      vblank code can get at it. We already have scanline_offset in there
      for a similar reason, as well as the vblank->hwmode which is assigned
      via drm_calc_timestamping_constants(). Fortunately we now have a
      nice place for doing the crtc_state->crtc copy in
      intel_crtc_update_active_timings() which gets called both for
      modesets and init/resume readout.
      
      The one slightly iffy spot is the INHERITED flag which we want to
      preserve until userspace/fb_helper does the first proper commit after
      actually calling .detecti() on the connectors. Otherwise we don't have
      the full sink capabilities (audio,infoframes,etc.) when .compute_config()
      gets called and thus we will fail to enable those features when the
      first userspace commit happens. The only internal commit we do prior to
      that should be from intel_initial_commit() and there we can simply
      preserve the INHERITED flag from the readout.
      
      v2: Deal with INHERITED in sanitize_watermarks() as well
      
      CC: Sam Ravnborg <sam@ravnborg.org>
      Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
      Cc: Emil Velikov <emil.l.velikov@gmail.com>
      Reviewed-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20200429103904.11727-1-ville.syrjala@linux.intel.com
      af157b76
  2. 28 May, 2020 5 commits
  3. 27 May, 2020 5 commits
  4. 26 May, 2020 5 commits
  5. 25 May, 2020 3 commits
  6. 23 May, 2020 1 commit
    • Animesh Manna's avatar
      drm/i915/dsb: Pre allocate and late cleanup of cmd buffer · afeda4f3
      Animesh Manna authored
      Pre-allocate command buffer in atomic_commit using intel_dsb_prepare
      function which also includes pinning and map in cpu domain.
      
      No functional change is dsb write/commit functions.
      
      Now dsb get/put function is removed and ref-count mechanism is
      not needed. Below dsb api added to do respective job mentioned
      below.
      
      intel_dsb_prepare - Allocate, pin and map the buffer.
      intel_dsb_cleanup - Unpin and release the gem object.
      
      RFC: Initial patch for design review.
      v2: included _init() part in _prepare(). [Daniel, Ville]
      v3: dsb_cleanup called after cleanup_planes. [Daniel]
      v4: dsb structure is moved to intel_crtc_state from intel_crtc. [Maarten]
      v5: dsb get/put/ref-count mechanism removed. [Maarten]
      v6: Based on review feedback following changes are added,
      - replaced intel_dsb structure by pointer in intel_crtc_state. [Maarten]
      - passing intel_crtc_state to dsp-api to simplify the code. [Maarten]
      - few dsb functions prototype modified to simplify code.
      v7: added few cosmetic changes suggested by Jani and null check for
      crtc_state in dsb_cleanup removed as suggested by Maarten.
      v8: changed the function parameter to intel_crtc_state* of
      ivb_load_lut_ext_max() from intel_crtc. [Maarten]
      v9: error handling improved in _write() and prepare(). [Maarten]
      
      Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
      Cc: Jani Nikula <jani.nikula@intel.com>
      Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
      Acked-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      Reviewed-by: default avatarMaarten Lankhorst <maarten.lankhorst@intel.com>
      Signed-off-by: default avatarAnimesh Manna <animesh.manna@intel.com>
      Signed-off-by: default avatarUma Shankar <uma.shankar@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20200520130737.11240-1-animesh.manna@intel.com
      afeda4f3
  7. 22 May, 2020 4 commits
  8. 21 May, 2020 12 commits
  9. 20 May, 2020 4 commits