1. 26 10月, 2017 3 次提交
    • C
      drm/i915/guc: Always enable the breadcrumbs irq · bcbd5c33
      Chris Wilson 提交于
      The execlists emulation on top of the GuC (used for scheduling and
      preemption) depends on the MI_USER_INTERRUPT for its notifications and
      tasklet action. As we always employ the irq, there is no advantage in
      ever disabling it while we are using the GuC, so allow us to arm the
      breadcrumb irq when enabling GuC submission and disarm upon disabling.
      The impact should be lessened by the delayed irq disabling we do (we
      only disable after receiving an interrupt for which no one was wanting),
      but allowing guc to explicitly manage the irq in relation to itself is
      simpler and prevents an issue with losing an interrupt for preemption
      as it is not coupled to an active request.
      
      Internally, we add a reference counter (breadcrumbs.irq_enabled) as a
      simple mechanism to allow GuC to keep the breadcrumb irq enabled. To
      improve upon always enabling the irq while guc is selected, we need
      to hook into the parking facility of intel_engines so that we only enable
      the breadcrumbs while the GT is active (one step better would be to
      individually park/unpark each engine).
      
      In effect, this means that we keep the breadcrumb irq always enabled for
      the entire duration the guc is busy, whereas before we would try to
      switch it off whenever we idled for more than interrupt with no
      associated waiters. The difference *should* be negligible in practice!
      
      v2: Stop abusing fence signaling (and its auxiliary data structures) to
      enable the breadcrumbs irqs.
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
      Cc: Michał Winiarski <michal.winiarski@intel.com>,
      Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
      Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
      Reviewed-by: Michał Winiarski <michal.winiarski@intel.com>,
      Link: https://patchwork.freedesktop.org/patch/msgid/20171025143943.7661-3-chris@chris-wilson.co.uk
      bcbd5c33
    • C
      drm/i915: Add a hook for making the engines idle (parking) and unparking · aba5e278
      Chris Wilson 提交于
      In the next patch, we will want to install a callback when the engines
      (GT as a whole) become idle and similarly when they first become busy.
      To enable that callback, first rename intel_engines_mark_idle() to
      intel_engines_park() and provide the companion intel_engines_unpark().
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
      Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
      Cc: Michał Winiarski <michal.winiarski@intel.com>
      Reviewed-by: NJoonas Lahtinen <joonas.lahtinen@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20171025143943.7661-2-chris@chris-wilson.co.uk
      aba5e278
    • R
      drm/i915/cnl: Allow 2 pixel per clock on Cannonlake. · 43037c86
      Rodrigo Vivi 提交于
      This is heavily based on a initial patch provided by Ville
      plus all changes provided later by Ander.
      
      As Geminilake, Cannonlake also supports 2 pixels per clock.
      
      Different from Geminilake we are not implementing the 99% Wa.
      But we can revisit that decision later if we find out
      any limitation on later CNL SKUs.
      
      v2: Rebase on top of commit 'd305e061 ("drm/i915: Track
      minimum acceptable cdclk instead of "minimum dotclock")'
      
      v3: When fixing HDMI on CNL I noticed that I missed to convert
          back the doubled pixel rate to cdclk.
      
      Cc: Paulo Zanoni <paulo.r.zanoni@intel.com>
      Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
      Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
      Cc: Jani Nikula <jani.nikula@intel.com>
      Signed-off-by: NRodrigo Vivi <rodrigo.vivi@intel.com>
      Reviewed-by: NPaulo Zanoni <paulo.r.zanoni@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20171003223142.26264-1-rodrigo.vivi@intel.com
      43037c86
  2. 25 10月, 2017 19 次提交
  3. 24 10月, 2017 5 次提交
  4. 23 10月, 2017 1 次提交
  5. 21 10月, 2017 2 次提交
  6. 20 10月, 2017 2 次提交
  7. 19 10月, 2017 8 次提交