Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 10 additions & 4 deletions media_driver/linux/common/cm/cm_hal_os.cpp
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -335,7 +335,7 @@ MOS_STATUS HalCm_GetSurfaceAndRegister(
//| Returns: Result of the operation.
//*-----------------------------------------------------------------------------
MOS_STATUS HalCm_GetSurfPitchSize(
uint32_t width, uint32_t height, MOS_FORMAT format, uint32_t *pitch, uint32_t *physicalSize)
uint32_t width, uint32_t height, MOS_FORMAT format, uint32_t *pitch, uint32_t *physicalSize, PCM_HAL_STATE state)
{

MOS_STATUS hr = MOS_STATUS_SUCCESS;
Expand Down Expand Up @@ -367,12 +367,18 @@ MOS_STATUS HalCm_GetSurfPitchSize(
gmmParams.NoGfxMemory = true;

// get pitch and size
gmmResInfo = GmmResCreate( &gmmParams );
if (nullptr == state ||
nullptr == state->osInterface)
{
hr = MOS_STATUS_NULL_POINTER;
goto finish;
}
gmmResInfo = state->osInterface->pfnGetGmmClientContext(state->osInterface)->CreateResInfoObject(&gmmParams);
if (gmmResInfo != nullptr)
{
*pitch = static_cast<uint32_t>( gmmResInfo->GetRenderPitch() );
*physicalSize = static_cast<uint32_t>( gmmResInfo->GetSizeSurface() );
GmmResFree( gmmResInfo );
state->osInterface->pfnGetGmmClientContext(state->osInterface)->DestroyResInfoObject(gmmResInfo);
}
else
{
Expand All @@ -395,7 +401,7 @@ MOS_STATUS HalCm_GetSurface2DPitchAndSize_Linux(
{
UNUSED(state);
return HalCm_GetSurfPitchSize(param->width, param->height, param->format,
&param->pitch, &param->physicalSize);
&param->pitch, &param->physicalSize, state);
}

//*-----------------------------------------------------------------------------
Expand Down
9 changes: 1 addition & 8 deletions media_driver/linux/common/cp/shared/cplib.cpp
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -36,10 +36,6 @@ class MosCpInterface;
typedef struct _MOS_INTERFACE* PMOS_INTERFACE;
typedef struct _MOS_OS_CONTEXT MOS_CONTEXT;

typedef GmmLib::Context GMM_GLOBAL_CONTEXT;

extern GMM_GLOBAL_CONTEXT *pGmmGlobalContext;

extern "C" CPLIB_EXPORT MediaLibvaCapsCpInterface* Create_MediaLibvaCapsCp();
extern "C" CPLIB_EXPORT void Delete_MediaLibvaCapsCp(MediaLibvaCapsCpInterface* pMediaLibvaCapsCpInterface);
extern "C" CPLIB_EXPORT DdiCpInterface* Create_DdiCp(MOS_CONTEXT* pMosCtx);
Expand Down Expand Up @@ -69,7 +65,4 @@ extern "C" CPLIB_EXPORT void Init_CPLib_Symbols()
CPLibUtils::m_symbols[CPLibUtils::FUNC_DELETE_MEDIALIBVACAPSCP] = reinterpret_cast<void*>(Delete_MediaLibvaCapsCp);
}

extern "C" CPLIB_EXPORT void Init_CPLib_Gmm(GMM_GLOBAL_CONTEXT* pCtx)
{
pGmmGlobalContext = pCtx;
}

37 changes: 20 additions & 17 deletions media_driver/linux/common/ddi/media_libva.cpp
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -1398,12 +1398,15 @@ VAStatus DdiMedia__Initialize (
output_dri_init(ctx);
#endif

void *gmm_handle = dlopen(GMM_UMD_DLL, RTLD_NOW);
Copy link
Contributor

@dvrogozh dvrogozh Aug 14, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You link against igdgmm, you don't need to dlopen() it and search for symbols. You can see here how this should actually be done: 700ac49#diff-142d67e662b77af7cb7deda2856b8118R1401

auto openGmmFunc = reinterpret_cast<decltype(&OpenGmm)>(dlsym(gmm_handle, GMM_ENTRY_NAME));
openGmmFunc(&mediaCtx->GmmFuncs);

// init GMM context
GMM_STATUS gmmStatus = GmmInitGlobalContext(mediaCtx->platform,
GMM_STATUS gmmStatus = mediaCtx->GmmFuncs.pfnCreateSingletonContext(mediaCtx->platform,
&gmmSkuTable,
&gmmWaTable,
&gmmGtInfo,
(GMM_CLIENT)GMM_LIBVA_LINUX);
&gmmGtInfo);

if(gmmStatus != GMM_SUCCESS)
{
Expand All @@ -1412,6 +1415,9 @@ VAStatus DdiMedia__Initialize (
return VA_STATUS_ERROR_OPERATION_FAILED;
}

// Create GMM Client Context
mediaCtx->pGmmClientContext = mediaCtx->GmmFuncs.pfnCreateClientContext((GMM_CLIENT)GMM_LIBVA_LINUX);

// Create GMM page table manager
mediaCtx->m_auxTableMgr = AuxTableMgr::CreateAuxTableMgr(mediaCtx->pDrmBufMgr,
&mediaCtx->SkuTable, &mediaCtx->WaTable);
Expand Down Expand Up @@ -1472,12 +1478,6 @@ VAStatus DdiMedia__Initialize (
}
}

if(CPLibUtils::IsCPLibLoaded())
{
using InitCPLibGmmFuncType = void (*)(GMM_GLOBAL_CONTEXT* pCtx);
CPLibUtils::InvokeCpFunc<InitCPLibGmmFuncType>(CPLibUtils::FUNC_INIT_CPLIB_GMM, pGmmGlobalContext);
}

DdiMediaUtil_UnLockMutex(&GlobalMutex);

return VA_STATUS_SUCCESS;
Expand Down Expand Up @@ -1627,15 +1627,16 @@ static VAStatus DdiMedia_Terminate (
mediaCtx->m_caps = nullptr;
}

// Free GMM memory.
mediaCtx->GmmFuncs.pfnDeleteClientContext(mediaCtx->pGmmClientContext);
mediaCtx->GmmFuncs.pfnDestroySingletonContext();

// release media driver context
MOS_FreeMemory(mediaCtx);

ctx->pDriverData = nullptr;
MOS_utilities_close();

// Free GMM memory.
GmmDestroyGlobalContext();

DdiMediaUtil_UnLockMutex(&GlobalMutex);

return VA_STATUS_SUCCESS;
Expand Down Expand Up @@ -3748,6 +3749,7 @@ VAStatus DdiMedia_CreateImage(

PDDI_MEDIA_CONTEXT mediaCtx = DdiMedia_GetMediaContext(ctx);
DDI_CHK_NULL(mediaCtx, "nullptr mediaCtx.", VA_STATUS_ERROR_INVALID_PARAMETER);
DDI_CHK_NULL(mediaCtx->pGmmClientContext, "nullptr mediaCtx->pGmmClientContext.", VA_STATUS_ERROR_INVALID_PARAMETER);

VAImage *vaimg = (VAImage*)MOS_AllocAndZeroMemory(sizeof(VAImage));
DDI_CHK_NULL(vaimg, "Insufficient to allocate an VAImage.", VA_STATUS_ERROR_ALLOCATION_FAILED);
Expand Down Expand Up @@ -3830,7 +3832,7 @@ VAStatus DdiMedia_CreateImage(
return VA_STATUS_ERROR_UNIMPLEMENTED;
}

gmmResourceInfo = GmmResCreate(&gmmParams);
gmmResourceInfo = mediaCtx->pGmmClientContext->CreateResInfoObject(&gmmParams);
if(nullptr == gmmResourceInfo)
{
DDI_ASSERTMESSAGE("Gmm Create Resource Failed.");
Expand Down Expand Up @@ -3895,7 +3897,7 @@ VAStatus DdiMedia_CreateImage(
break;
}

GmmResFree(gmmResourceInfo);
mediaCtx->pGmmClientContext->DestroyResInfoObject(gmmResourceInfo);

DDI_MEDIA_BUFFER *buf = (DDI_MEDIA_BUFFER *)MOS_AllocAndZeroMemory(sizeof(DDI_MEDIA_BUFFER));
if (nullptr == buf)
Expand Down Expand Up @@ -5720,8 +5722,9 @@ VAStatus DdiMedia_ExportSurfaceHandle(
DDI_CHK_LESS((uint32_t)(surface_id), mediaCtx->pSurfaceHeap->uiAllocatedHeapElements, "Invalid surfaces", VA_STATUS_ERROR_INVALID_SURFACE);

DDI_MEDIA_SURFACE *mediaSurface = DdiMedia_GetSurfaceFromVASurfaceID(mediaCtx, surface_id);
DDI_CHK_NULL(mediaSurface, "nullptr mediaSurface", VA_STATUS_ERROR_INVALID_SURFACE);
DDI_CHK_NULL(mediaSurface->bo, "nullptr mediaSurface bo", VA_STATUS_ERROR_INVALID_SURFACE);
DDI_CHK_NULL(mediaSurface, "nullptr mediaSurface", VA_STATUS_ERROR_INVALID_SURFACE);
DDI_CHK_NULL(mediaSurface->bo, "nullptr mediaSurface->bo", VA_STATUS_ERROR_INVALID_SURFACE);
DDI_CHK_NULL(mediaSurface->pGmmResourceInfo, "nullptr mediaSurface->pGmmResourceInfo", VA_STATUS_ERROR_INVALID_SURFACE);

int32_t ret = mos_bo_gem_export_to_prime(mediaSurface->bo, (int32_t*)&mediaSurface->name);
if (ret)
Expand All @@ -5745,7 +5748,7 @@ VAStatus DdiMedia_ExportSurfaceHandle(

desc->num_objects = 1;
desc->objects[0].fd = mediaSurface->name;
desc->objects[0].size = GmmResGetSizeSurface(mediaSurface->pGmmResourceInfo);
desc->objects[0].size = mediaSurface->pGmmResourceInfo->GetSizeSurface();
switch (tiling) {
case I915_TILING_X:
desc->objects[0].drm_format_modifier = I915_FORMAT_MOD_X_TILED;
Expand Down
2 changes: 2 additions & 0 deletions media_driver/linux/common/ddi/media_libva_common.h
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -437,6 +437,8 @@ struct DDI_MEDIA_CONTEXT

GMM_CLIENT_CONTEXT *pGmmClientContext;

GmmExportEntries GmmFuncs;

// Aux Table Manager
AuxTableMgr *m_auxTableMgr;

Expand Down
5 changes: 3 additions & 2 deletions media_driver/linux/common/ddi/media_libva_putsurface_linux.cpp
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -374,6 +374,7 @@ VAStatus DdiCodec_PutSurfaceLinuxHW(
DDI_CHK_NULL(mediaCtx, "Null mediaCtx", VA_STATUS_ERROR_INVALID_CONTEXT);
DDI_CHK_NULL(mediaCtx->dri_output, "Null mediaDrvCtx->dri_output", VA_STATUS_ERROR_INVALID_PARAMETER);
DDI_CHK_NULL(mediaCtx->pSurfaceHeap, "Null mediaDrvCtx->pSurfaceHeap", VA_STATUS_ERROR_INVALID_PARAMETER);
DDI_CHK_NULL(mediaCtx->pGmmClientContext, "Null mediaCtx->pGmmClientContext", VA_STATUS_ERROR_INVALID_PARAMETER);
DDI_CHK_LESS((uint32_t)surface, mediaCtx->pSurfaceHeap->uiAllocatedHeapElements, "Invalid surfaceId", VA_STATUS_ERROR_INVALID_SURFACE);

struct dri_vtable * const dri_vtable = &mediaCtx->dri_output->vtable;
Expand Down Expand Up @@ -485,7 +486,7 @@ VAStatus DdiCodec_PutSurfaceLinuxHW(
gmmParams.Type = RESOURCE_2D;
gmmParams.Format = GMM_FORMAT_R8G8B8A8_UNORM_TYPE;
//gmmParams.Format = GMM_FORMAT_B8G8R8A8_UNORM_TYPE;
target.OsResource.pGmmResInfo = GmmResCreate(&gmmParams);
target.OsResource.pGmmResInfo = mediaCtx->pGmmClientContext->CreateResInfoObject(&gmmParams);
if (nullptr == target.OsResource.pGmmResInfo)
{
mos_bo_unreference(drawable_bo);
Expand Down Expand Up @@ -529,7 +530,7 @@ VAStatus DdiCodec_PutSurfaceLinuxHW(
dri_vtable->swap_buffer(ctx, dri_drawable);
DdiMediaUtil_UnLockMutex(&mediaCtx->PutSurfaceSwapBufferMutex);

GmmResFree(target.OsResource.pGmmResInfo);
mediaCtx->pGmmClientContext->DestroyResInfoObject(target.OsResource.pGmmResInfo);
target.OsResource.pGmmResInfo = nullptr;

return VA_STATUS_SUCCESS;
Expand Down
27 changes: 18 additions & 9 deletions media_driver/linux/common/ddi/media_libva_util.cpp
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -297,6 +297,7 @@ VAStatus DdiMediaUtil_AllocateSurface(

DDI_CHK_NULL(mediaSurface, "mediaSurface is nullptr", VA_STATUS_ERROR_INVALID_BUFFER);
DDI_CHK_NULL(mediaDrvCtx, "mediaDrvCtx is nullptr", VA_STATUS_ERROR_INVALID_BUFFER);
DDI_CHK_NULL(mediaDrvCtx->pGmmClientContext, "mediaDrvCtx->pGmmClientContext is nullptr", VA_STATUS_ERROR_INVALID_BUFFER);

int32_t size = 0;
uint32_t tileformat = I915_TILING_NONE;
Expand Down Expand Up @@ -497,7 +498,7 @@ VAStatus DdiMediaUtil_AllocateSurface(

gmmParams.Flags.Gpu.Video = true;

mediaSurface->pGmmResourceInfo = gmmResourceInfo = GmmResCreate(&gmmParams);
mediaSurface->pGmmResourceInfo = gmmResourceInfo = mediaDrvCtx->pGmmClientContext->CreateResInfoObject(&gmmParams);

if(nullptr == gmmResourceInfo)
{
Expand Down Expand Up @@ -638,6 +639,8 @@ VAStatus DdiMediaUtil_AllocateBuffer(
{

DDI_CHK_NULL(mediaBuffer, "mediaBuffer is nullptr", VA_STATUS_ERROR_INVALID_BUFFER);
DDI_CHK_NULL(mediaBuffer->pMediaCtx, "mediaBuffer->pMediaCtx is nullptr", VA_STATUS_ERROR_INVALID_BUFFER);
DDI_CHK_NULL(mediaBuffer->pMediaCtx->pGmmClientContext, "mediaBuffer->pMediaCtx->pGmmClientContext is nullptr", VA_STATUS_ERROR_INVALID_BUFFER);
if(format >= Media_Format_Count)
return VA_STATUS_ERROR_INVALID_PARAMETER;

Expand Down Expand Up @@ -673,12 +676,12 @@ VAStatus DdiMediaUtil_AllocateBuffer(
gmmParams.Flags.Gpu.Video = true;
gmmParams.Flags.Info.Linear = true;

mediaBuffer->pGmmResourceInfo = GmmResCreate(&gmmParams);
mediaBuffer->pGmmResourceInfo = mediaBuffer->pMediaCtx->pGmmClientContext->CreateResInfoObject(&gmmParams);

DDI_CHK_NULL(mediaBuffer->pGmmResourceInfo, "pGmmResourceInfo is nullptr", VA_STATUS_ERROR_INVALID_BUFFER);
GmmResOverrideAllocationSize(mediaBuffer->pGmmResourceInfo, mediaBuffer->iSize);
GmmResOverrideAllocationBaseWidth(mediaBuffer->pGmmResourceInfo, mediaBuffer->iSize);
GmmResOverrideAllocationPitch(mediaBuffer->pGmmResourceInfo, mediaBuffer->iSize);
mediaBuffer->pGmmResourceInfo->OverrideSize(mediaBuffer->iSize);
mediaBuffer->pGmmResourceInfo->OverrideBaseWidth(mediaBuffer->iSize);
mediaBuffer->pGmmResourceInfo->OverridePitch(mediaBuffer->iSize);
finish:
return hRes;
}
Expand All @@ -705,6 +708,8 @@ VAStatus DdiMediaUtil_Allocate2DBuffer(
MOS_BUFMGR *bufmgr)
{
DDI_CHK_NULL(mediaBuffer, "mediaBuffer is nullptr", VA_STATUS_ERROR_INVALID_BUFFER);
DDI_CHK_NULL(mediaBuffer->pMediaCtx, "mediaBuffer->pMediaCtx is nullptr", VA_STATUS_ERROR_INVALID_BUFFER);
DDI_CHK_NULL(mediaBuffer->pMediaCtx->pGmmClientContext, "mediaBuffer->pMediaCtx->pGmmClientContext is nullptr", VA_STATUS_ERROR_INVALID_BUFFER);

int32_t size = 0;
uint32_t tileformat = I915_TILING_NONE;
Expand All @@ -726,7 +731,7 @@ VAStatus DdiMediaUtil_Allocate2DBuffer(
gmmParams.Flags.Info.Linear = true;
gmmParams.Flags.Gpu.Video = true;
GMM_RESOURCE_INFO *gmmResourceInfo;
mediaBuffer->pGmmResourceInfo = gmmResourceInfo = GmmResCreate(&gmmParams);
mediaBuffer->pGmmResourceInfo = gmmResourceInfo = mediaBuffer->pMediaCtx->pGmmClientContext->CreateResInfoObject(&gmmParams);

if(nullptr == gmmResourceInfo)
{
Expand Down Expand Up @@ -1034,6 +1039,8 @@ void DdiMediaUtil_FreeSurface(DDI_MEDIA_SURFACE *surface)
{
DDI_CHK_NULL(surface, "nullptr surface", );
DDI_CHK_NULL(surface->bo, "nullptr surface->bo", );
DDI_CHK_NULL(surface->pMediaCtx, "nullptr surface->pMediaCtx", );
DDI_CHK_NULL(surface->pMediaCtx->pGmmClientContext, "nullptr surface->pMediaCtx->pGmmClientContext", );

// Unmap Aux mapping if the surface was mapped
if (surface->pMediaCtx->m_auxTableMgr)
Expand Down Expand Up @@ -1064,7 +1071,7 @@ void DdiMediaUtil_FreeSurface(DDI_MEDIA_SURFACE *surface)

if (nullptr != surface->pGmmResourceInfo)
{
GmmResFree(surface->pGmmResourceInfo);
surface->pMediaCtx->pGmmClientContext->DestroyResInfoObject(surface->pGmmResourceInfo);
surface->pGmmResourceInfo = nullptr;
}
}
Expand All @@ -1074,6 +1081,8 @@ void DdiMediaUtil_FreeSurface(DDI_MEDIA_SURFACE *surface)
void DdiMediaUtil_FreeBuffer(DDI_MEDIA_BUFFER *buf)
{
DDI_CHK_NULL(buf, "nullptr", );
DDI_CHK_NULL(buf->pMediaCtx, "nullptr", );
DDI_CHK_NULL(buf->pMediaCtx->pGmmClientContext, "nullptr", );
// calling sequence checking
if (buf->bMapped)
{
Expand All @@ -1093,7 +1102,7 @@ void DdiMediaUtil_FreeBuffer(DDI_MEDIA_BUFFER *buf)

if (nullptr != buf->pGmmResourceInfo)
{
GmmResFree(buf->pGmmResourceInfo);
buf->pMediaCtx->pGmmClientContext->DestroyResInfoObject(buf->pGmmResourceInfo);
buf->pGmmResourceInfo = nullptr;
}
}
Expand Down Expand Up @@ -1406,7 +1415,7 @@ VAStatus DdiMediaUtil_UnRegisterRTSurfaces(
PDDI_MEDIA_CONTEXT mediaCtx = DdiMedia_GetMediaContext(ctx);
DDI_CHK_NULL(mediaCtx,"nullptr mediaCtx!", VA_STATUS_ERROR_INVALID_CONTEXT);
DDI_CHK_NULL(surface, "nullptr surface!", VA_STATUS_ERROR_INVALID_PARAMETER);

//Look through all decode contexts to unregister the surface in each decode context's RTtable.
if (mediaCtx->pDecoderCtxHeap != nullptr)
{
Expand Down
3 changes: 1 addition & 2 deletions media_driver/linux/common/os/mos_context_specific.cpp
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -505,7 +505,7 @@ MOS_STATUS OsContextSpecific::Init(PMOS_CONTEXT pOsDriverContext)
MOS_SecureMemcpy(&m_perfData, sizeof(PERF_DATA), pOsDriverContext->pPerfData, sizeof(PERF_DATA));
mos_bufmgr_gem_enable_reuse(pOsDriverContext->bufmgr);
m_cpContext = pOsDriverContext->pCpContext;
m_pGmmClientContext = GmmCreateClientContext((GMM_CLIENT)GMM_LIBVA_LINUX);
m_pGmmClientContext = pOsDriverContext->pGmmClientContext;
m_auxTableMgr = pOsDriverContext->m_auxTableMgr;

// DDI layer can pass over the DeviceID.
Expand Down Expand Up @@ -656,7 +656,6 @@ void OsContextSpecific::Destroy()
{
mos_gem_context_destroy(m_intelContext);
}
GmmDeleteClientContext(m_pGmmClientContext);
SetOsContextValid(false);
}

10 changes: 8 additions & 2 deletions media_driver/linux/common/os/mos_os_specific.c
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -1001,7 +1001,7 @@ void Linux_Destroy(
mos_gem_context_destroy(pOsContext->intel_context);
}

GmmDeleteClientContext(pOsContext->pGmmClientContext);
pOsContext->GmmFuncs.pfnDeleteClientContext(pOsContext->pGmmClientContext);

MOS_FreeMemAndSetNull(pOsContext);
}
Expand Down Expand Up @@ -5701,13 +5701,17 @@ MOS_STATUS Mos_Specific_InitInterface(
uint32_t dwResetCount;
int32_t ret;
bool modularizedGpuCtxEnabled;
void *gmm_handle;

MOS_OS_FUNCTION_ENTER;

eStatus = MOS_STATUS_SUCCESS;
pOsContext = nullptr;
pOsUserFeatureInterface = (PMOS_USER_FEATURE_INTERFACE)&pOsInterface->UserFeatureInterface;

gmm_handle = dlopen(GMM_UMD_DLL, RTLD_NOW);
auto openGmmFunc = reinterpret_cast<decltype(&OpenGmm)>(dlsym(gmm_handle, GMM_ENTRY_NAME));

MOS_OS_NORMALMESSAGE("mm:Mos_Specific_InitInterface called.");

MOS_OS_CHK_NULL(pOsInterface);
Expand All @@ -5725,6 +5729,8 @@ MOS_STATUS Mos_Specific_InitInterface(
goto finish;
}

openGmmFunc(&pOsContext->GmmFuncs);

pOsContext->intel_context = nullptr;
if (pOsInterface->modulizedMosEnabled && !Mos_Solo_IsEnabled())
{
Expand Down Expand Up @@ -5755,7 +5761,7 @@ MOS_STATUS Mos_Specific_InitInterface(
}
else
{
pOsContext->pGmmClientContext = GmmCreateClientContext((GMM_CLIENT)GMM_LIBVA_LINUX);
pOsContext->pGmmClientContext = pOsContext->GmmFuncs.pfnCreateClientContext((GMM_CLIENT)GMM_LIBVA_LINUX);
}

// Initialize
Expand Down
1 change: 1 addition & 0 deletions media_driver/linux/common/os/mos_os_specific.h
100644 → 100755
Original file line number Diff line number Diff line change
Expand Up @@ -518,6 +518,7 @@ struct _MOS_OS_CONTEXT
void *pLibdrmHandle;

GMM_CLIENT_CONTEXT *pGmmClientContext; //UMD specific ClientContext object in GMM
GmmExportEntries GmmFuncs;
AuxTableMgr *m_auxTableMgr;

// GPU Status Buffer
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,5 +23,5 @@

void GpuCmdHcpIndObjBaseAddrG10::InitCachePolicy()
{
m_pCmd->HcpIndirectBitstreamObjectMemoryAddressAttributes.DW0.Value |= 8;
m_pCmd->HcpIndirectBitstreamObjectMemoryAddressAttributes.DW0.Value |= 0;
}
Loading