[Intel-gfx] [PATCH v3 00/16] Introduce Intel PXP

Lionel Landwerlin lionel.g.landwerlin at intel.com
Thu Apr 1 12:07:48 UTC 2021


On 29/03/2021 01:56, Daniele Ceraolo Spurio wrote:
> PXP (Protected Xe Path) is an i915 component, available on
> GEN12+, that helps to establish the hardware protected session
> and manage the status of the alive software session, as well
> as its life cycle.
>
> Lots of minor changes and fixes, but the main changes in v3 are:
>
> - Using a protected object with a context not appropriately marked does
>    no longer result in an execbuf failure. This is to avoid apps
>    maliciously sharing protected/invalid objects to other apps and
>    causing them to fail.
> - All the termination work now goes through the same worker function,
>    which allows i915 to drop the mutex lock entirely.
>
> Cc: Gaurav Kumar <kumar.gaurav at intel.com>
> Cc: Chris Wilson <chris at chris-wilson.co.uk>
> Cc: Rodrigo Vivi <rodrigo.vivi at intel.com>
> Cc: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>
> Cc: Juston Li <juston.li at intel.com>
> Cc: Alan Previn <alan.previn.teres.alexis at intel.com>
> Cc: Lionel Landwerlin <lionel.g.landwerlin at intel.com>


I updated the Mesa MR to use this new version :

     - Iris: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8092

     - Anv: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8064


No issue with this current iteration :


Tested-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>


>
> Anshuman Gupta (2):
>    drm/i915/pxp: Add plane decryption support
>    drm/i915/pxp: black pixels on pxp disabled
>
> Bommu Krishnaiah (2):
>    drm/i915/uapi: introduce drm_i915_gem_create_ext
>    drm/i915/pxp: User interface for Protected buffer
>
> Daniele Ceraolo Spurio (6):
>    drm/i915/pxp: Define PXP component interface
>    drm/i915/pxp: define PXP device flag and kconfig
>    drm/i915/pxp: allocate a vcs context for pxp usage
>    drm/i915/pxp: set KCR reg init
>    drm/i915/pxp: interface for marking contexts as using protected
>      content
>    drm/i915/pxp: enable PXP for integrated Gen12
>
> Huang, Sean Z (5):
>    drm/i915/pxp: Implement funcs to create the TEE channel
>    drm/i915/pxp: Create the arbitrary session after boot
>    drm/i915/pxp: Implement arb session teardown
>    drm/i915/pxp: Implement PXP irq handler
>    drm/i915/pxp: Enable PXP power management
>
> Vitaly Lubart (1):
>    mei: pxp: export pavp client to me client bus
>
>   drivers/gpu/drm/i915/Kconfig                  |  11 +
>   drivers/gpu/drm/i915/Makefile                 |   9 +
>   .../drm/i915/display/skl_universal_plane.c    |  50 +++-
>   drivers/gpu/drm/i915/gem/i915_gem_context.c   |  59 +++-
>   drivers/gpu/drm/i915/gem/i915_gem_context.h   |  18 ++
>   .../gpu/drm/i915/gem/i915_gem_context_types.h |   2 +
>   drivers/gpu/drm/i915/gem/i915_gem_create.c    |  68 ++++-
>   .../gpu/drm/i915/gem/i915_gem_execbuffer.c    |  34 +++
>   drivers/gpu/drm/i915/gem/i915_gem_object.c    |   6 +
>   drivers/gpu/drm/i915/gem/i915_gem_object.h    |  12 +
>   .../gpu/drm/i915/gem/i915_gem_object_types.h  |  13 +
>   drivers/gpu/drm/i915/gt/intel_engine.h        |  12 +
>   drivers/gpu/drm/i915/gt/intel_engine_cs.c     |  32 ++-
>   drivers/gpu/drm/i915/gt/intel_gpu_commands.h  |  22 +-
>   drivers/gpu/drm/i915/gt/intel_gt.c            |   5 +
>   drivers/gpu/drm/i915/gt/intel_gt_irq.c        |   7 +
>   drivers/gpu/drm/i915/gt/intel_gt_pm.c         |  14 +-
>   drivers/gpu/drm/i915/gt/intel_gt_types.h      |   3 +
>   drivers/gpu/drm/i915/i915_drv.c               |   4 +-
>   drivers/gpu/drm/i915/i915_drv.h               |   4 +
>   drivers/gpu/drm/i915/i915_pci.c               |   2 +
>   drivers/gpu/drm/i915/i915_reg.h               |  48 ++++
>   drivers/gpu/drm/i915/intel_device_info.h      |   1 +
>   drivers/gpu/drm/i915/pxp/intel_pxp.c          | 262 ++++++++++++++++++
>   drivers/gpu/drm/i915/pxp/intel_pxp.h          |  65 +++++
>   drivers/gpu/drm/i915/pxp/intel_pxp_cmd.c      | 140 ++++++++++
>   drivers/gpu/drm/i915/pxp/intel_pxp_cmd.h      |  15 +
>   drivers/gpu/drm/i915/pxp/intel_pxp_irq.c      | 100 +++++++
>   drivers/gpu/drm/i915/pxp/intel_pxp_irq.h      |  32 +++
>   drivers/gpu/drm/i915/pxp/intel_pxp_pm.c       |  37 +++
>   drivers/gpu/drm/i915/pxp/intel_pxp_pm.h       |  23 ++
>   drivers/gpu/drm/i915/pxp/intel_pxp_session.c  | 172 ++++++++++++
>   drivers/gpu/drm/i915/pxp/intel_pxp_session.h  |  15 +
>   drivers/gpu/drm/i915/pxp/intel_pxp_tee.c      | 182 ++++++++++++
>   drivers/gpu/drm/i915/pxp/intel_pxp_tee.h      |  17 ++
>   drivers/gpu/drm/i915/pxp/intel_pxp_types.h    |  43 +++
>   drivers/misc/mei/Kconfig                      |   2 +
>   drivers/misc/mei/Makefile                     |   1 +
>   drivers/misc/mei/pxp/Kconfig                  |  13 +
>   drivers/misc/mei/pxp/Makefile                 |   7 +
>   drivers/misc/mei/pxp/mei_pxp.c                | 233 ++++++++++++++++
>   drivers/misc/mei/pxp/mei_pxp.h                |  18 ++
>   include/drm/i915_component.h                  |   1 +
>   include/drm/i915_pxp_tee_interface.h          |  45 +++
>   include/uapi/drm/i915_drm.h                   |  96 +++++++
>   45 files changed, 1931 insertions(+), 24 deletions(-)
>   create mode 100644 drivers/gpu/drm/i915/pxp/intel_pxp.c
>   create mode 100644 drivers/gpu/drm/i915/pxp/intel_pxp.h
>   create mode 100644 drivers/gpu/drm/i915/pxp/intel_pxp_cmd.c
>   create mode 100644 drivers/gpu/drm/i915/pxp/intel_pxp_cmd.h
>   create mode 100644 drivers/gpu/drm/i915/pxp/intel_pxp_irq.c
>   create mode 100644 drivers/gpu/drm/i915/pxp/intel_pxp_irq.h
>   create mode 100644 drivers/gpu/drm/i915/pxp/intel_pxp_pm.c
>   create mode 100644 drivers/gpu/drm/i915/pxp/intel_pxp_pm.h
>   create mode 100644 drivers/gpu/drm/i915/pxp/intel_pxp_session.c
>   create mode 100644 drivers/gpu/drm/i915/pxp/intel_pxp_session.h
>   create mode 100644 drivers/gpu/drm/i915/pxp/intel_pxp_tee.c
>   create mode 100644 drivers/gpu/drm/i915/pxp/intel_pxp_tee.h
>   create mode 100644 drivers/gpu/drm/i915/pxp/intel_pxp_types.h
>   create mode 100644 drivers/misc/mei/pxp/Kconfig
>   create mode 100644 drivers/misc/mei/pxp/Makefile
>   create mode 100644 drivers/misc/mei/pxp/mei_pxp.c
>   create mode 100644 drivers/misc/mei/pxp/mei_pxp.h
>   create mode 100644 include/drm/i915_pxp_tee_interface.h
>



More information about the Intel-gfx mailing list