diff --git a/runtime/hsa-runtime/image/image_manager_ai.cpp b/runtime/hsa-runtime/image/image_manager_ai.cpp index 3e5fc06858..ab790b3d41 100755 --- a/runtime/hsa-runtime/image/image_manager_ai.cpp +++ b/runtime/hsa-runtime/image/image_manager_ai.cpp @@ -516,19 +516,14 @@ uint32_t ImageManagerAi::GetAddrlibSurfaceInfoAi( prefSettingsInput.resourceLoction = ADDR_RSRC_LOC_UNDEF; prefSettingsInput.resourceType = in.resourceType; + // Disallow all swizzles but linear. if (tileMode == Image::TileMode::LINEAR) { - // this should force linear. prefSettingsInput.forbiddenBlock.macroThin4KB = 1; prefSettingsInput.forbiddenBlock.macroThick4KB = 1; prefSettingsInput.forbiddenBlock.macroThin64KB = 1; prefSettingsInput.forbiddenBlock.macroThick64KB = 1; } - else - { - // this should not allow linear. - prefSettingsInput.forbiddenBlock.linear = 1; - } prefSettingsInput.forbiddenBlock.micro = 1; // but don't ever allow the 256b swizzle modes prefSettingsInput.forbiddenBlock.var = 1; // and don't allow variable-size block modes diff --git a/runtime/hsa-runtime/image/image_manager_kv.cpp b/runtime/hsa-runtime/image/image_manager_kv.cpp index 11742cb7f4..8d40cd86a8 100755 --- a/runtime/hsa-runtime/image/image_manager_kv.cpp +++ b/runtime/hsa-runtime/image/image_manager_kv.cpp @@ -837,19 +837,14 @@ bool ImageManagerKv::GetAddrlibSurfaceInfo( prefSettingsInput.resourceLoction = ADDR_RSRC_LOC_UNDEF; prefSettingsInput.resourceType = in.resourceType; + // Disallow all swizzles but linear. if (tileMode == Image::TileMode::LINEAR) { - // this should force linear. prefSettingsInput.forbiddenBlock.macroThin4KB = 1; prefSettingsInput.forbiddenBlock.macroThick4KB = 1; prefSettingsInput.forbiddenBlock.macroThin64KB = 1; prefSettingsInput.forbiddenBlock.macroThick64KB = 1; } - else - { - // this should not allow linear. - prefSettingsInput.forbiddenBlock.linear = 1; - } prefSettingsInput.forbiddenBlock.micro = 1; // but don't ever allow the 256b swizzle modes prefSettingsInput.forbiddenBlock.var = 1; // and don't allow variable-size block modes diff --git a/runtime/hsa-runtime/image/image_manager_nv.cpp b/runtime/hsa-runtime/image/image_manager_nv.cpp index 0911e2ca82..5380e13375 100755 --- a/runtime/hsa-runtime/image/image_manager_nv.cpp +++ b/runtime/hsa-runtime/image/image_manager_nv.cpp @@ -629,8 +629,8 @@ uint32_t ImageManagerNv::GetAddrlibSurfaceInfoNv( prefSettingsInput.resourceLoction = ADDR_RSRC_LOC_UNDEF; prefSettingsInput.resourceType = in.resourceType; + // Disallow all swizzles but linear. if (tileMode == Image::TileMode::LINEAR) { - // this should force linear. prefSettingsInput.forbiddenBlock.macroThin4KB = 1; prefSettingsInput.forbiddenBlock.macroThick4KB = 1; prefSettingsInput.forbiddenBlock.macroThin64KB = 1; @@ -638,9 +638,8 @@ uint32_t ImageManagerNv::GetAddrlibSurfaceInfoNv( prefSettingsInput.forbiddenBlock.micro = 1; prefSettingsInput.forbiddenBlock.var = 1; } else { - // this should not allow linear. - prefSettingsInput.forbiddenBlock.linear = 1; - // Debug setting, simplifies buffer alignment. + // Debug setting, simplifies buffer alignment until language runtimes have official gfx10 + // support. prefSettingsInput.forbiddenBlock.macroThin64KB = 1; prefSettingsInput.forbiddenBlock.macroThick64KB = 1; }