1. 22 5月, 2018 1 次提交
  2. 18 5月, 2018 2 次提交
  3. 08 5月, 2018 1 次提交
    • P
      drm/i915/icl: add basic support for the ICL clocks · c27e917e
      Paulo Zanoni 提交于
      This commit introduces the definitions for the ICL clocks and adds the
      basic functions to the shared DPLL framework. It adds code for the
      Enable and Disable sequences for some PLLs, but it does not have the
      code to compute the actual PLL values, which are marked as TODO
      comments and should be introduced as separate commits.
      
      Special thanks to James Ausmus for investigating and fixing a bug with
      the placement of icl_unmap_plls_to_ports() function.
      
      v2:
       - Rebase around dpll_lock changes.
      v3:
       - The spec now says what the timeouts should be.
       - Touch DPCLKA_CFGCR0_ICL at the appropriate time so we don't freeze
         the machine.
       - Checkpatch found a white space problem.
       - Small adjustments before upstreaming.
      v4:
       - Move the ICL checks out of the *map_plls_to_ports() functions
        (James)
       - Add extra encoder check (James)
       - Call icl_unmap_plls_to_ports() later (James)
      v5:
       - Rebase after the pll struct changes.
      v6:
       - Properly make the unmap function based on encoders_post_disable()
         with regarding to checks and iterators.
       - Address checkpatch comment on "min = max = x()".
      
      Cc: James Ausmus <james.ausmus@intel.com>
      Signed-off-by: NPaulo Zanoni <paulo.r.zanoni@intel.com>
      Reviewed-by: NJames Ausmus <james.ausmus@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20180427231436.9353-1-paulo.r.zanoni@intel.com
      c27e917e
  4. 30 4月, 2018 2 次提交
  5. 27 4月, 2018 1 次提交
  6. 25 4月, 2018 1 次提交
  7. 21 4月, 2018 2 次提交
  8. 15 4月, 2018 1 次提交
    • C
      drm/i915: Check whitelist registers across resets · f4ecfbfc
      Chris Wilson 提交于
      Add a selftest to ensure that we restore the whitelisted registers after
      rewrite the registers everytime they might be scrubbed, e.g. module
      load, reset and resume. For the other volatile workaround registers, we
      export their presence via debugfs and check in igt/gem_workarounds.
      However, we don't export the whitelist and rather than do so, let's test
      them directly in the kernel.
      
      The test we use is to read the registers back from the CS (this helps us
      be sure that the registers will be valid for MI_LRI etc). In order to
      generate the expected list, we split intel_whitelist_workarounds_emit
      into two phases, the first to build the list and the second to apply.
      Inside the test, we only build the list and then check that list against
      the hw.
      
      v2: Filter out pre-gen8 as they do not have RING_NONPRIV.
      v3: Drop unused engine parameter, no plans to use it now or future.
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      Cc: Oscar Mateo <oscar.mateo@intel.com>
      Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
      Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
      Reviewed-by: NOscar Mateo <oscar.mateo@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20180414122754.569-1-chris@chris-wilson.co.uk
      f4ecfbfc
  9. 10 4月, 2018 1 次提交
  10. 06 4月, 2018 1 次提交
  11. 31 3月, 2018 1 次提交
  12. 28 3月, 2018 2 次提交
  13. 20 3月, 2018 1 次提交
  14. 19 3月, 2018 4 次提交
  15. 16 3月, 2018 1 次提交
  16. 15 3月, 2018 1 次提交
  17. 14 3月, 2018 1 次提交
  18. 13 3月, 2018 2 次提交
  19. 10 3月, 2018 1 次提交
  20. 09 3月, 2018 2 次提交
  21. 08 3月, 2018 3 次提交
  22. 02 3月, 2018 1 次提交
  23. 22 2月, 2018 2 次提交
  24. 20 2月, 2018 1 次提交
    • C
      drm/i915: Track number of pending freed objects · c9c70471
      Chris Wilson 提交于
      During igt, we frequently call into the driver to reset both HW and
      driver state (idling the device, waiting for it to become idle and
      freeing off old objects) to ensure that we start each test/subtest/pass
      from known state. This process incurs an RCU barrier or two to ensure
      that any such pending frees are indeed flushed before we return.
      However, unconditionally waiting on the RCU barrier adds needless delay
      to many callers, which adds up to several seconds when repeated thousands
      of times. We can skip the rcu_barrier() if by tracking how many outstanding
      frees we have, we know there are none.
      
      The same path is used along suspend, where we may be able to save the
      unconditional RCU barrier.
      
      To put it into perspective with a completely meaningless
      microbenchmark, igt/gem_sync/idle is improved from 50ms to 30us on bdw.
      
      v2: Remove the extra synchronize_rcu() inside i915_drop_caches_set()
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
      Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
      Reviewed-by: NTvrtko Ursulin <tvrtko.ursulin@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20180219220631.25001-1-chris@chris-wilson.co.uk
      c9c70471
  25. 16 2月, 2018 2 次提交
  26. 12 2月, 2018 1 次提交
  27. 09 2月, 2018 1 次提交