drm/xe/guc: Introduce Relay Communication for SR-IOV
authorMichal Wajdeczko <michal.wajdeczko@intel.com>
Thu, 4 Jan 2024 22:20:28 +0000 (23:20 +0100)
committerMichal Wajdeczko <michal.wajdeczko@intel.com>
Fri, 5 Jan 2024 15:25:53 +0000 (16:25 +0100)
commit811fe9f556fcb281ea2db1b0fff3bab20f0a4d42
tree1d1d4c6e53bd0da1c5d515813b88b9f62db4abaa
parentfa6c12e036c9450c43782d52648bf0fb915a7bbb
drm/xe/guc: Introduce Relay Communication for SR-IOV

There are scenarios where SR-IOV Virtual Function (VF) driver will
need to get additional data that is not available over VF MMIO BAR
nor could be queried from the GuC firmware and must be obtained
from the Physical Function (PF) driver.

To allow such communication between VF and PF drivers, GuC supports
set of H2G and G2H actions which allows relaying embedded messages,
that are otherwise opaque for the GuC.

To allow use of this communication mechanism, provide functions for
sending requests and handling replies and placeholder where we will
put handlers for incoming requests.

Reviewed-by: Piotr PiĆ³rkowski <piotr.piorkowski@intel.com>
Link: https://lore.kernel.org/r/20240104222031.277-8-michal.wajdeczko@intel.com
Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
drivers/gpu/drm/xe/Makefile
drivers/gpu/drm/xe/xe_guc.c
drivers/gpu/drm/xe/xe_guc_relay.c [new file with mode: 0644]
drivers/gpu/drm/xe/xe_guc_relay.h [new file with mode: 0644]
drivers/gpu/drm/xe/xe_guc_relay_types.h [new file with mode: 0644]
drivers/gpu/drm/xe/xe_guc_types.h