mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-05 09:09:04 +08:00
Unify mipmap layout accross platforms
- revert "Fix reported row/slicePitch for mip-maps" - calculate mipmap offset without gmm Change-Id: Id4802ef9624ad330e0d0f871dfa4d4fc35a7ba33
This commit is contained in:
committed by
sys_ocldev
parent
1b7738e0cf
commit
f624ec757b
@@ -1204,19 +1204,14 @@ size_t Image::calculateOffsetForMapping(const MemObjOffsetArray &origin) const {
|
||||
|
||||
switch (imageDesc.image_type) {
|
||||
case CL_MEM_OBJECT_IMAGE1D_ARRAY:
|
||||
if (imageDesc.num_mip_levels <= 1) {
|
||||
offset += slicePitch * origin[1];
|
||||
}
|
||||
offset += slicePitch * origin[1];
|
||||
break;
|
||||
case CL_MEM_OBJECT_IMAGE2D:
|
||||
offset += rowPitch * origin[1];
|
||||
break;
|
||||
case CL_MEM_OBJECT_IMAGE2D_ARRAY:
|
||||
case CL_MEM_OBJECT_IMAGE3D:
|
||||
offset += rowPitch * origin[1];
|
||||
if (imageDesc.num_mip_levels <= 1) {
|
||||
offset += slicePitch * origin[2];
|
||||
}
|
||||
offset += rowPitch * origin[1] + slicePitch * origin[2];
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
||||
@@ -170,9 +170,6 @@ class Image : public MemObj {
|
||||
virtual void transformImage2dArrayTo3d(void *memory) = 0;
|
||||
virtual void transformImage3dTo2dArray(void *memory) = 0;
|
||||
|
||||
virtual size_t getHostPtrRowPitchForMap(uint32_t mipLevel) = 0;
|
||||
virtual size_t getHostPtrSlicePitchForMap(uint32_t mipLevel) = 0;
|
||||
|
||||
const bool isTiledImage;
|
||||
|
||||
bool hasSameDescriptor(const cl_image_desc &imageDesc) const;
|
||||
@@ -259,8 +256,6 @@ class ImageHw : public Image {
|
||||
}
|
||||
}
|
||||
|
||||
size_t getHostPtrRowPitchForMap(uint32_t mipLevel) override;
|
||||
size_t getHostPtrSlicePitchForMap(uint32_t mipLevel) override;
|
||||
void setImageArg(void *memory, bool setAsMediaBlockImage, uint32_t mipLevel) override;
|
||||
void setAuxParamsForMultisamples(RENDER_SURFACE_STATE *surfaceState);
|
||||
void setAuxParamsForCCS(RENDER_SURFACE_STATE *surfaceState, Gmm *gmm);
|
||||
|
||||
@@ -260,14 +260,4 @@ void ImageHw<GfxFamily>::transformImage3dTo2dArray(void *memory) {
|
||||
surfaceState->setSurfaceType(SURFACE_TYPE::SURFACE_TYPE_SURFTYPE_2D);
|
||||
surfaceState->setSurfaceArray(true);
|
||||
}
|
||||
|
||||
template <typename GfxFamily>
|
||||
size_t ImageHw<GfxFamily>::getHostPtrRowPitchForMap(uint32_t mipLevel) {
|
||||
return getHostPtrRowPitch();
|
||||
}
|
||||
|
||||
template <typename GfxFamily>
|
||||
size_t ImageHw<GfxFamily>::getHostPtrSlicePitchForMap(uint32_t mipLevel) {
|
||||
return getHostPtrSlicePitch();
|
||||
}
|
||||
} // namespace OCLRT
|
||||
|
||||
Reference in New Issue
Block a user