mbox series

[v7,0/2] GuC HWCONFIG with documentation

Message ID 20220306232157.1174335-1-jordan.l.justen@intel.com (mailing list archive)
Headers show
Series GuC HWCONFIG with documentation | expand

Message

Jordan Justen March 6, 2022, 11:21 p.m. UTC
Now with 100% less documentation. (See v7 notes.)

This is John/Rodrigo's 2 patches with some changes. There are various
changes suggested by Michal in John's "fetch" patch. The table
terminology was also changed to "blob" as requested by Joonas.

Dropped these 2 patches (which were in v1-v6):
 * "drm/i915/uapi: Add struct drm_i915_query_hwconfig_blob_item"
 * "drm/i915/guc: Verify hwconfig blob matches supported format"

v2:
 * Fix -Werror errors.
 * Rebase to drm-intel/for-linux-next instead of
   drm-intel/for-linux-next-gt, as this seems to be what CI wants.
 * Fix u32 -> __u32.
 * Add commit message for "Verify hwconfig blob" patch as requested by
   Tvrtko.
 * Reword text added to i915_drm.h as requested by Tvrtko. (Attempting
   to indicate the overall blob ends right at the last blob item.)

v3:
 * Add several changes suggested by Tvrtko in the "Verify hwconfig
   blob", along with some tweaks to i915_drm.h from the feedback for
   the same patch.

v4:
 * Rewrite verify_hwconfig_blob() to hopefully be clearer without
   relying on comments so much, and add various suggestions from
   Michal.
 * Michal also had some suggestions in John's "drm/i915/guc: Add fetch
   of hwconfig table" patch. I held off on making any of these changes
   in this version.

v5:
 * Add many changes suggested by Michal in John's "drm/i915/guc: Add
   fetch of hwconfig table" patch.
 * Fix documenation formatting as suggested by Daniel in
   "drm/i915/uapi: Add struct drm_i915_query_hwconfig_blob_item"

v6:
 * Updated "drm/i915/guc: Add fetch of hwconfig table" by merging in
   John's v2 patch which saves the hwconfig blob at the GT level. I
   also added a few changes requested by Michal on the v5 posting.
 * Tvrtko requested an example of UMD using the i915 hwconfig
   interface. Mesa support for this interface can be seen in this MR:
   https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14511

v7:
 * Jon took back his Acked-by for my documentation patches, so I had
   to drop those 2 patches. Jon and John feel very strongly that i915
   should not document or guarantee the format of the blob returned by
   this uapi. They say it should only be documented in the Programmer
   Reference Manuals whenever they are released, and userspace can
   verify it.
 * The "query" patch commit message no longer documents the uapi, and
   refers to the eventual release of PRMs.
 * I changed the "fetch" patch back to reporting drm_err after
   reviewing the discussion between Michal and John on this. (John
   preferred error, and Michal said this was ok.)

John Harrison (1):
  drm/i915/guc: Add fetch of hwconfig blob

Rodrigo Vivi (1):
  drm/i915/uapi: Add query for hwconfig blob

 drivers/gpu/drm/i915/Makefile                 |   1 +
 drivers/gpu/drm/i915/gt/intel_gt.c            |   6 +
 drivers/gpu/drm/i915/gt/intel_gt_types.h      |   4 +
 drivers/gpu/drm/i915/gt/intel_hwconfig.h      |  21 +++
 .../gpu/drm/i915/gt/uc/abi/guc_actions_abi.h  |   1 +
 .../gpu/drm/i915/gt/uc/abi/guc_errors_abi.h   |   4 +
 .../gpu/drm/i915/gt/uc/intel_guc_hwconfig.c   | 162 ++++++++++++++++++
 drivers/gpu/drm/i915/i915_query.c             |  23 +++
 include/uapi/drm/i915_drm.h                   |   1 +
 9 files changed, 223 insertions(+)
 create mode 100644 drivers/gpu/drm/i915/gt/intel_hwconfig.h
 create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_guc_hwconfig.c