]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915/pxp: Create the arbitrary session after boot
authorHuang, Sean Z <sean.z.huang@intel.com>
Fri, 24 Sep 2021 19:14:42 +0000 (12:14 -0700)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Mon, 4 Oct 2021 17:10:44 +0000 (13:10 -0400)
commitff62f0588319880961128bc1ebc36482c8e5356b
treeb47b6ea33a17fede4f7db31cd94671567c53a4e8
parent57d42fd18371f51c0b319ecf291ab316a94ca9c3
drm/i915/pxp: Create the arbitrary session after boot

Create the arbitrary session, with the fixed session id 0xf, after
system boot, for the case that application allocates the protected
buffer without establishing any protection session. Because the
hardware requires at least one alive session for protected buffer
creation. This arbitrary session will need to be re-created after
teardown or power event because hardware encryption key won't be
valid after such cases.

The session ID is exposed as part of the uapi so it can be used as part
of userspace commands.

v2: use gt->uncore->rpm (Chris)
v3: s/arb_is_in_play/arb_is_valid (Chris), move set-up to the new
    init_hw function
v4: move interface defs to separate header, set arb_is valid to false
    on fini (Rodrigo)
v5: handle async component binding

Signed-off-by: Huang, Sean Z <sean.z.huang@intel.com>
Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210924191452.1539378-8-alan.previn.teres.alexis@intel.com
drivers/gpu/drm/i915/Makefile
drivers/gpu/drm/i915/pxp/intel_pxp.c
drivers/gpu/drm/i915/pxp/intel_pxp.h
drivers/gpu/drm/i915/pxp/intel_pxp_session.c [new file with mode: 0644]
drivers/gpu/drm/i915/pxp/intel_pxp_session.h [new file with mode: 0644]
drivers/gpu/drm/i915/pxp/intel_pxp_tee.c
drivers/gpu/drm/i915/pxp/intel_pxp_tee.h
drivers/gpu/drm/i915/pxp/intel_pxp_tee_interface.h [new file with mode: 0644]
drivers/gpu/drm/i915/pxp/intel_pxp_types.h
include/uapi/drm/i915_drm.h