/* * Copyright (C) 2017-2019 Intel Corporation * * SPDX-License-Identifier: MIT * */ #include "runtime/aub/aub_helper.h" #include "runtime/aub/aub_helper.inl" #include "runtime/helpers/flat_batch_buffer_helper_hw.inl" #include "runtime/helpers/hw_helper.h" #include "runtime/helpers/hw_helper_common.inl" #include "runtime/memory_manager/memory_constants.h" namespace NEO { typedef BDWFamily Family; template <> size_t HwHelperHw::getMaxBarrierRegisterPerSlice() const { return 16; } template <> void HwHelperHw::setupHardwareCapabilities(HardwareCapabilities *caps, const HardwareInfo &hwInfo) { caps->image3DMaxHeight = 2048; caps->image3DMaxWidth = 2048; caps->maxMemAllocSize = 2 * MemoryConstants::gigaByte - 8 * MemoryConstants::megaByte; caps->isStatelesToStatefullWithOffsetSupported = false; } template <> void PipeControlHelper::addPipeControl(LinearStream &commandStream, bool dcFlush) { auto pCmd = PipeControlHelper::addPipeControlBase(commandStream, dcFlush); pCmd->setDcFlushEnable(true); } template class AubHelperHw; template class HwHelperHw; template class FlatBatchBufferHelperHw; template struct PipeControlHelper; } // namespace NEO