/* * Copyright (C) 2017-2020 Intel Corporation * * SPDX-License-Identifier: MIT * */ #include "shared/source/helpers/flat_batch_buffer_helper_hw.inl" #include "shared/source/helpers/hw_helper_bdw_plus.inl" #include "opencl/source/aub/aub_helper_bdw_plus.inl" namespace NEO { typedef SKLFamily Family; template <> SipKernelType HwHelperHw::getSipKernelType(bool debuggingActive) { if (!debuggingActive) { return SipKernelType::Csr; } return SipKernelType::DbgCsrLocal; } template <> void MemorySynchronizationCommands::addPipeControlWA(LinearStream &commandStream, uint64_t gpuAddress, const HardwareInfo &hwInfo) { using PIPE_CONTROL = typename Family::PIPE_CONTROL; PIPE_CONTROL cmd = Family::cmdInitPipeControl; cmd.setCommandStreamerStallEnable(true); auto pipeControl = static_cast(commandStream.getSpace(sizeof(Family::PIPE_CONTROL))); *pipeControl = cmd; } template <> uint32_t HwHelperHw::getMetricsLibraryGenId() const { return static_cast(MetricsLibraryApi::ClientGen::Gen9); } template class AubHelperHw; template class HwHelperHw; template class FlatBatchBufferHelperHw; template struct MemorySynchronizationCommands; } // namespace NEO