feature: add indirect semaphore mode

Related-To: NEO-8242

Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
This commit is contained in:
Dunajski, Bartosz
2023-09-12 11:42:40 +00:00
committed by Compute-Runtime-Automation
parent a441b10015
commit 6648065703
21 changed files with 83 additions and 31 deletions

View File

@@ -376,14 +376,16 @@ struct EncodeSemaphore {
COMPARE_OPERATION compareMode,
bool registerPollMode,
bool waitMode,
bool useQwordData);
bool useQwordData,
bool indirect);
static void addMiSemaphoreWaitCommand(LinearStream &commandStream,
uint64_t compareAddress,
uint64_t compareData,
COMPARE_OPERATION compareMode,
bool registerPollMode,
bool useQwordData);
bool useQwordData,
bool indirect);
static void applyMiSemaphoreWaitCommand(LinearStream &commandStream,
std::list<void *> &commandsList);
@@ -391,7 +393,7 @@ struct EncodeSemaphore {
static constexpr size_t getSizeMiSemaphoreWait() { return sizeof(MI_SEMAPHORE_WAIT); }
protected:
static void appendSemaphoreCommand(MI_SEMAPHORE_WAIT &cmd, uint64_t compareData, bool registerPollMode, bool useQwordData);
static void appendSemaphoreCommand(MI_SEMAPHORE_WAIT &cmd, uint64_t compareData, bool indirect, bool useQwordData);
};
template <typename GfxFamily>