[Intel-gfx] [RFC-v4 00/21] Introduce Intel PXP component - Mesa single session
Huang, Sean Z
sean.z.huang at intel.com
Thu Dec 10 07:24:14 UTC 2020
PXP is an i915 componment, that helps to establish the hardware
protected session and manage the status of the alive software
session, as well as its life cycle.
This patch series is to allow the kernel space to create and
manage a single hardware session (a.k.a default session or
arbitrary session). So Mesa can allocate the protected buffer,
which is encrypted with the leverage of the arbitrary hardware
session.
v2:
- modification based on code reivew feedbacks received
- passing pxp instead of i915 as funciton argument
- remove dead code only for multi-session
- move the pxp init call from i915_drv.c to intel_gt.c
- reove the tautology naming
v3:
- rebase to latest drm-tip
v4:
- Append the split non-mesa patch sereis (commit #14 - #21) into this patch series
Anshuman Gupta (1):
drm/i915/pxp: Add plane decryption support
Bommu Krishnaiah (2):
drm/i915/uapi: introduce drm_i915_gem_create_ext
drm/i915/pxp: User interface for Protected buffer
Huang, Sean Z (17):
drm/i915/pxp: Introduce Intel PXP component
drm/i915/pxp: set KCR reg init during the boot time
drm/i915/pxp: Implement funcs to create the TEE channel
drm/i915/pxp: Create the arbitrary session after boot
drm/i915/pxp: Func to send hardware session termination
drm/i915/pxp: Enable PXP irq worker and callback stub
drm/i915/pxp: Destroy arb session upon teardown
drm/i915/pxp: Enable PXP power management
drm/i915/pxp: Expose session state for display protection flip
drm/i915/pxp: Implement ioctl action to reserve session slots
drm/i915/pxp: Implement ioctl action to set session in play
drm/i915/pxp: Implement ioctl action to terminate the session
drm/i915/pxp: Implement ioctl action to send TEE commands
drm/i915/pxp: Enable ioctl action to query PXP tag
drm/i915/pxp: Termiante the session upon app crash
drm/i915/pxp: Add PXP-related registers into allowlist
drm/i915/pxp: Enable the PXP ioctl for protected session
Vitaly Lubart (1):
mei: pxp: export pavp client to me client bus
drivers/gpu/drm/i915/Kconfig | 19 +
drivers/gpu/drm/i915/Makefile | 10 +
drivers/gpu/drm/i915/display/intel_sprite.c | 21 +-
drivers/gpu/drm/i915/gem/i915_gem_context.c | 15 +-
drivers/gpu/drm/i915/gem/i915_gem_context.h | 10 +
.../gpu/drm/i915/gem/i915_gem_context_types.h | 2 +-
.../gpu/drm/i915/gem/i915_gem_object_types.h | 5 +
drivers/gpu/drm/i915/gt/intel_gt.c | 7 +
drivers/gpu/drm/i915/gt/intel_gt_irq.c | 4 +
drivers/gpu/drm/i915/gt/intel_gt_pm.c | 4 +
drivers/gpu/drm/i915/gt/intel_gt_types.h | 3 +
drivers/gpu/drm/i915/i915_drv.c | 11 +-
drivers/gpu/drm/i915/i915_drv.h | 6 +
drivers/gpu/drm/i915/i915_gem.c | 63 ++-
drivers/gpu/drm/i915/i915_reg.h | 10 +-
drivers/gpu/drm/i915/intel_uncore.c | 50 +-
drivers/gpu/drm/i915/pxp/intel_pxp.c | 284 ++++++++++
drivers/gpu/drm/i915/pxp/intel_pxp.h | 107 ++++
drivers/gpu/drm/i915/pxp/intel_pxp_arb.c | 226 ++++++++
drivers/gpu/drm/i915/pxp/intel_pxp_arb.h | 37 ++
drivers/gpu/drm/i915/pxp/intel_pxp_cmd.c | 328 ++++++++++++
drivers/gpu/drm/i915/pxp/intel_pxp_cmd.h | 22 +
drivers/gpu/drm/i915/pxp/intel_pxp_context.c | 32 ++
drivers/gpu/drm/i915/pxp/intel_pxp_context.h | 41 ++
drivers/gpu/drm/i915/pxp/intel_pxp_pm.c | 72 +++
drivers/gpu/drm/i915/pxp/intel_pxp_pm.h | 31 ++
drivers/gpu/drm/i915/pxp/intel_pxp_sm.c | 487 ++++++++++++++++++
drivers/gpu/drm/i915/pxp/intel_pxp_sm.h | 55 ++
drivers/gpu/drm/i915/pxp/intel_pxp_tee.c | 227 ++++++++
drivers/gpu/drm/i915/pxp/intel_pxp_tee.h | 25 +
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 | 230 +++++++++
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 | 138 +++++
39 files changed, 2642 insertions(+), 27 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_arb.c
create mode 100644 drivers/gpu/drm/i915/pxp/intel_pxp_arb.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_context.c
create mode 100644 drivers/gpu/drm/i915/pxp/intel_pxp_context.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_sm.c
create mode 100644 drivers/gpu/drm/i915/pxp/intel_pxp_sm.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/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
--
2.17.1
More information about the Intel-gfx
mailing list