1. 26 3月, 2020 1 次提交
    • D
      drm/i915: Don't clear drvdata in ->release · 0ce542f7
      Daniel Vetter 提交于
      For two reasons:
      
      - The driver core clears this already for us after we're unloaded in
        __device_release_driver().
      
      - It's way too late, the drm_device ->release callback might massively
        outlive the underlying physical device, since a drm_device can be
        kept alive by open drm_file or well really anything else userspace
        is still hanging onto. So if we clear this ourselves, we should
        clear it in the pci ->remove callback, not in the drm_device
        ->release callback.
      
      Looking at git history this was fixed in the driver core with
      
      commit 0998d063
      Author: Hans de Goede <hdegoede@redhat.com>
      Date:   Wed May 23 00:09:34 2012 +0200
      
          device-core: Ensure drvdata = NULL when no driver is bound
      
      v2: Cite the core fix in the commit message (Chris).
      
      v3: Fix commit message and unused variable warning (Jani).
      
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Chris Wilson <chris@chris-wilson.co.uk>
      Reviewed-by: NJani Nikula <jani.nikula@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20200323144950.3018436-3-daniel.vetter@ffwll.ch
      0ce542f7
  2. 03 3月, 2020 2 次提交
  3. 02 3月, 2020 3 次提交
  4. 28 2月, 2020 1 次提交
  5. 27 2月, 2020 3 次提交
  6. 26 2月, 2020 2 次提交
  7. 25 2月, 2020 1 次提交
    • J
      drm/i915/psr: Force PSR probe only after full initialization · df1a5bfc
      José Roberto de Souza 提交于
      Commit 60c6a14b ("drm/i915/display: Force the state compute phase
      once to enable PSR") was forcing the state compute too earlier
      causing errors because not everything was initialized, so here
      moving to the end of i915_driver_modeset_probe() when the display is
      all initialized.
      
      Also fixing the place where it disarm the force probe as during the
      atomic check phase errors could happen like the ones due locking and
      it would cause PSR to never be enabled if that happens.
      Leaving the disarm to the atomic commit phase, intel_psr_enable() or
      intel_psr_update() will be called even if the current state do not
      allow PSR to be enabled.
      
      v2: Check if intel_dp is null in intel_psr_force_mode_changed_set()
      v3: Check intel_dp before get dev_priv
      v4:
      - renamed intel_psr_force_mode_changed_set() to
      intel_psr_set_force_mode_changed()
      - removed the set parameter from intel_psr_set_force_mode_changed()
      - not calling intel_psr_set_force_mode_changed() from
      intel_psr_enable/update(), directly setting it after the same checks
      that intel_psr_set_force_mode_changed() does
      - moved intel_psr_set_force_mode_changed() arm call to
      i915_driver_modeset_probe() as it is a better for a PSR call, all the
      functions calls happening between the old and the new function call
      will cause issue
      
      Fixes: 60c6a14b ("drm/i915/display: Force the state compute phase once to enable PSR")
      Closes: https://gitlab.freedesktop.org/drm/intel/issues/1151Tested-by: NRoss Zwisler <zwisler@google.com>
      Reported-by: NRoss Zwisler <zwisler@google.com>
      Cc: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com>
      Cc: Jani Nikula <jani.nikula@intel.com>
      Cc: Anshuman Gupta <anshuman.gupta@intel.com>
      Reviewed-by: NGwan-gyeong Mun <gwan-gyeong.mun@intel.com>
      Signed-off-by: NJosé Roberto de Souza <jose.souza@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20200221212635.11614-1-jose.souza@intel.com
      df1a5bfc
  8. 23 2月, 2020 1 次提交
  9. 22 2月, 2020 1 次提交
  10. 19 2月, 2020 2 次提交
  11. 17 2月, 2020 1 次提交
  12. 14 2月, 2020 4 次提交
  13. 13 2月, 2020 1 次提交
  14. 04 2月, 2020 1 次提交
  15. 31 1月, 2020 1 次提交
  16. 25 1月, 2020 1 次提交
    • C
      drm: Release filp before global lock · 7a2c65dd
      Chris Wilson 提交于
      The file is not part of the global drm resource and can be released
      prior to take the global mutex to drop the open_count (and potentially
      close) the drm device. As the global mutex is indeed global, not only
      within the device but across devices, a slow file release mechanism can
      bottleneck the entire system.
      
      However, inside drm_close_helper() there are a number of dev->driver
      callbacks that take the drm_device as the first parameter... Worryingly
      some of those callbacks may be (implicitly) depending on the global
      mutex.
      
      v2: Drop the debug message for the open-count, it's included with the
      drm_file_free() debug message -- and for good measure make that up as
      reading outside of the mutex.
      
      v3: Separate the calling of the filp cleanup outside of
      drm_global_mutex into a new drm_release_noglobal() hook, so that we can
      phase the transition. drm/savage relies on the global mutex, and there
      may be more, so be cautious.
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      Cc: Thomas Hellström (VMware) <thomas_os@shipmail.org>
      Reviewed-by: NThomas Hellström (VMware) <thomas_os@shipmail.org>
      Link: https://patchwork.freedesktop.org/patch/msgid/20200124125627.125042-1-chris@chris-wilson.co.uk
      7a2c65dd
  17. 22 1月, 2020 1 次提交
  18. 28 12月, 2019 1 次提交
  19. 26 12月, 2019 1 次提交
  20. 22 12月, 2019 1 次提交
  21. 09 12月, 2019 1 次提交
  22. 04 12月, 2019 1 次提交
  23. 03 12月, 2019 1 次提交
  24. 20 11月, 2019 1 次提交
  25. 14 11月, 2019 2 次提交
  26. 13 11月, 2019 1 次提交
  27. 08 11月, 2019 1 次提交
  28. 06 11月, 2019 1 次提交
    • I
      drm/i915/gen8+: Add RC6 CTX corruption WA · 7e34f4e4
      Imre Deak 提交于
      In some circumstances the RC6 context can get corrupted. We can detect
      this and take the required action, that is disable RC6 and runtime PM.
      The HW recovers from the corrupted state after a system suspend/resume
      cycle, so detect the recovery and re-enable RC6 and runtime PM.
      
      v2: rebase (Mika)
      v3:
      - Move intel_suspend_gt_powersave() to the end of the GEM suspend
        sequence.
      - Add commit message.
      v4:
      - Rebased on intel_uncore_forcewake_put(i915->uncore, ...) API
        change.
      v5: rebased on gem/gt split (Mika)
      Signed-off-by: NImre Deak <imre.deak@intel.com>
      Signed-off-by: NMika Kuoppala <mika.kuoppala@linux.intel.com>
      7e34f4e4
  29. 05 11月, 2019 1 次提交