1. 23 10月, 2018 1 次提交
  2. 22 10月, 2018 1 次提交
  3. 18 10月, 2018 1 次提交
  4. 28 8月, 2018 1 次提交
  5. 12 6月, 2018 1 次提交
  6. 13 4月, 2018 1 次提交
  7. 29 3月, 2018 2 次提交
  8. 21 3月, 2018 1 次提交
  9. 19 3月, 2018 1 次提交
  10. 02 11月, 2017 1 次提交
    • M
      drm/i915/guc: Add support for reset engine using GuC commands · 6acbea89
      Michel Thierry 提交于
      This patch adds per engine reset and recovery (TDR) support when GuC is
      used to submit workloads to GPU.
      
      In the case of i915 directly submission to ELSP, driver manages hang
      detection, recovery and resubmission. With GuC submission these tasks
      are shared between driver and GuC. i915 is still responsible for detecting
      a hang, and when it does it only requests GuC to reset that Engine. GuC
      internally manages acquiring forcewake and idling the engine before
      resetting it.
      
      Once the reset is successful, i915 takes over again and handles the
      resubmission. The scheduler in i915 knows which requests are pending so
      after resetting a engine, pending workloads/requests are resubmitted
      again.
      
      v2: s/i915_guc_request_engine_reset/i915_guc_reset_engine/ to match the
      non-guc function names.
      
      v3: Removed debug message about engine restarting from which request,
      since the new baseline do it regardless of submission mode. (Chris)
      
      v4: Rebase.
      
      v5: Do not pass unnecessary reporting flags to the fw (Jeff);
      tasklet_schedule(&execlists->irq_tasklet) handles the resubmit; rebase.
      
      v6: Rename the existing reset engine function and share a similar
      interface between guc and non-guc paths (Chris).
      Signed-off-by: NMichel Thierry <michel.thierry@intel.com>
      Cc: Chris Wilson <chris@chris-wilson.co.uk>
      Link: https://patchwork.freedesktop.org/patch/msgid/20171031225309.10888-1-michel.thierry@intel.comReviewed-by: NJeff McGee <jeff.mcgee@intel.com>
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      6acbea89
  11. 27 10月, 2017 1 次提交
  12. 16 10月, 2017 1 次提交
  13. 06 10月, 2017 1 次提交
  14. 13 9月, 2017 2 次提交
  15. 26 5月, 2017 1 次提交
  16. 05 4月, 2017 1 次提交
  17. 23 3月, 2017 4 次提交
  18. 19 1月, 2017 1 次提交
    • A
      drm/i915/huc: Support HuC authentication · dac84a38
      Anusha Srivatsa 提交于
      The HuC authentication is done by host2guc call. The HuC RSA keys
      are sent to GuC for authentication.
      
      v2: rebased on top of drm-tip. Changed name format and upped
      version 1.7.
      v3: changed wait_for_atomic to wait_for
      v4: rebased. Rename intel_huc_auh() to intel_guc_auth_huc()
      and place the prototype in intel_guc.h,correct the comments.
      v5: rebased. Moved intel_guc_auth_huc from i915_guc_submission.c
      to intel_uc.c.Update dev to dev_priv in intel_guc_auth_huc().
      Renamed HOST2GUC_ACTION_AUTHENTICATE_HUC TO INTEL_GUC_ACTION_
      AUTHENTICATE_HUC
      v6: rebased. Add newline on DRM_ERRORs that already dont have one.
      v7: rebased. Replace wait_for with intel_wait_for_register() since
      the latter employs sleep optimisations for quick responses- as pointed
      out by Chris Wilson.
      v8: rebased. Cleanup the intel_guc_auth_huc() by removing checks
      already performed in earlier functions. Make comments more descriptive.
      v9: rebased. Changed the bias for pinning the HuC object. Move
      intel_guc_auth_huc() to intel_huc.c. Change DRM_DEBUGs to DRM_ERRORs
      in intel_guc_auth_huc(). Add return status to DRM_ERRORs.
      v10: Remove message not required for the user..
      
      Cc: Chris Wilson <chris@chris-wilson.co.uk>
      Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
      Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
      Tested-by: NXiang Haihao <haihao.xiang@intel.com>
      Signed-off-by: NAnusha Srivatsa <anusha.srivatsa@intel.com>
      Signed-off-by: NAlex Dai <yu.dai@intel.com>
      Signed-off-by: NPeter Antoine <peter.antoine@intel.com>
      Signed-off-by: NJani Nikula <jani.nikula@intel.com>
      Link: http://patchwork.freedesktop.org/patch/msgid/1484755558-1234-5-git-send-email-anusha.srivatsa@intel.com
      dac84a38
  19. 18 1月, 2017 1 次提交
  20. 07 12月, 2016 1 次提交
  21. 26 11月, 2016 1 次提交
  22. 25 10月, 2016 2 次提交
  23. 16 8月, 2016 1 次提交
  24. 23 5月, 2016 1 次提交
    • D
      drm/i915/guc: rework guc_add_workqueue_item() · 0a31afbc
      Dave Gordon 提交于
      Mostly little optimisations and future-proofing against code breakage.
      For instance, if the driver is correctly following the submission
      protocol, the "out of space" condition is impossible, so the previous
      runtime WARN_ON() is promoted to a GEM_BUG_ON() for a more dramatic
      effect in development and less impact in end-user systems.
      
      Similarly we can make alignment checking more stringent and replace
      other WARN_ON() conditions that don't relate to the runtime hardware
      state with either BUILD_BUG_ON() for compile-time-detectable issues, or
      GEM_BUG_ON() for logical "can't happen" errors.
      
      With those changes, we can convert it to void, as suggested by Chris
      Wilson, and update the calling code appropriately.
      
      v2:
          Note that we're now putting the request seqno in the "fence_id"
          field of each GuC-work-item, in case it turns up somewhere useful
          (e.g. in a GuC log) [Tvrtko Ursulin].
      Signed-off-by: NDave Gordon <david.s.gordon@intel.com>
      Reviewed-by: NTvrtko Ursulin <tvrtko.ursulin@intel.com>
      Signed-off-by: NTvrtko Ursulin <tvrtko.ursulin@intel.com>
      0a31afbc
  25. 25 1月, 2016 1 次提交
  26. 20 1月, 2016 1 次提交
  27. 05 1月, 2016 3 次提交
  28. 21 10月, 2015 1 次提交
    • A
      drm/i915/guc: Add GuC css header parser · feda33ef
      Alex Dai 提交于
      The size / offset information of all firmware ingredients are
      now caculated from header. Driver will validate the header and
      rsa key size. If any component is out of boundary, driver will
      reject the loading too.
      
      v6: Clean up warnings from make docs
      
      v5: Tidy up GuC titles in kernel/Doc
      
      v4: Now using 'size_dw' for those defined in css_header
      
      v3: 1) Move DOC to intel_guc_fwif.h right before css_header
      definition. Add more comments.
          2) Change 'size' to 'len' or 'length' to avoid confusion.
          3) Add UOS_RSA_SCRATCH_MAX_COUNT according to BSpec. And
      driver validate size of RSA key now.
          4) Add fw component size/offset info to intel_guc_fw.
      
      v2: Add indent into DOC to make fixed-width format rather than
      change the tmpl.
      
      v1: 1) guc_css_header is defined as __packed now
          2) Add and correct GuC related topics in kernel/Doc
      Signed-off-by: NAlex Dai <yu.dai@intel.com>
      Reviewed-by: NDave Gordon <david.s.gordon@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      feda33ef
  29. 06 10月, 2015 1 次提交
  30. 30 9月, 2015 1 次提交
  31. 02 9月, 2015 1 次提交
  32. 15 8月, 2015 1 次提交
    • D
      drm/i915: Implementation of GuC submission client · 44a28b1d
      Dave Gordon 提交于
      A GuC client has its own doorbell and workqueue. It maintains the
      doorbell cache line, process description object and work queue item.
      
      A default guc_client is created for the i915 driver to use for
      normal-priority in-order submission.
      
      Note that the created client is not yet ready for use; doorbell
      allocation will fail as we haven't yet linked the GuC's context
      descriptor to the default contexts for each ring (see later patch).
      
      v2:
          Defer adding structure members until needed [Chris Wilson]
          Rationalise type declarations [Chris Wilson]
      
      v5:
          Add GuC per-engine submission & seqno statistics.
          Move wq locking to encompass both get_space() and add_item().
          Take forcewake lock in host2guc_action() [Tom O'Rourke]
      
      v6:
          Fix GuC doorbell cacheline selection code (the
              cacheline-within-page calculation was wrong).
          Rename GuC priorities to make them closer to the names used in
              the GuC firmware source, matching what the autogenerated
              versions will (probably) be.
          Add per-ring statistics to client.
      
      Issue: VIZ-4884
      Signed-off-by: NAlex Dai <yu.dai@intel.com>
      Signed-off-by: NDave Gordon <david.s.gordon@intel.com>
      Reviewed-by: NTom O'Rourke <Tom.O'Rourke@intel.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      44a28b1d