Files
compute-runtime/shared/source/gen12lp/helpers_gen12lp.h
Artur Harasimiuk 51c25adc85 fix single-sku builds
Change-Id: Ib1aef5f27148203b808ffb698878c89a410193c4
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2020-10-15 19:45:56 +02:00

44 lines
1.6 KiB
C++

/*
* Copyright (C) 2019-2020 Intel Corporation
*
* SPDX-License-Identifier: MIT
*
*/
#pragma once
#include "shared/source/gen12lp/hw_cmds_base.h"
namespace AubMemDump {
struct AubStream;
}
struct AubGTTData;
namespace NEO {
class CommandStreamReceiver;
class GraphicsAllocation;
struct HardwareInfo;
struct PipelineSelectArgs;
class Image;
namespace Gen12LPHelpers {
bool pipeControlWaRequired(PRODUCT_FAMILY productFamily);
uint32_t getHwRevIdFromStepping(uint32_t stepping, const HardwareInfo &hwInfo);
uint32_t getSteppingFromHwRevId(uint32_t hwRevId, const HardwareInfo &hwInfo);
bool imagePitchAlignmentWaRequired(PRODUCT_FAMILY productFamily);
void adjustCoherencyFlag(PRODUCT_FAMILY productFamily, bool &coherencyFlag);
bool isLocalMemoryEnabled(const HardwareInfo &hwInfo);
void initAdditionalGlobalMMIO(const CommandStreamReceiver &commandStreamReceiver, AubMemDump::AubStream &stream);
uint64_t getPPGTTAdditionalBits(GraphicsAllocation *graphicsAllocation);
void adjustAubGTTData(const CommandStreamReceiver &commandStreamReceiver, AubGTTData &data);
void setAdditionalPipelineSelectFields(void *pipelineSelectCmd,
const PipelineSelectArgs &pipelineSelectArgs,
const HardwareInfo &hwInfo);
bool isOffsetToSkipSetFFIDGPWARequired(const HardwareInfo &hwInfo);
bool isForceEmuInt32DivRemSPWARequired(const HardwareInfo &hwInfo);
bool is3DPipelineSelectWARequired(const HardwareInfo &hwInfo);
bool forceBlitterUseForGlobalBuffers(const HardwareInfo &hwInfo, GraphicsAllocation *allocation);
} // namespace Gen12LPHelpers
} // namespace NEO