gpu2: fix flipper

static pipeline for flip engine
optimize linear tiler
fixed out of bound in the tiler
implement swizzling for sampled images
This commit is contained in:
DH 2024-09-28 18:07:24 +03:00
parent 4185b1aa40
commit 4e83c9e121
16 changed files with 637 additions and 410 deletions

View file

@ -190,9 +190,8 @@ void amdgpu::GpuTiler::detile(Scheduler &scheduler,
configOffset);
auto &subresource = info.getSubresourceInfo(mipLevel);
config->srcAddress = srcTiledAddress + subresource.offset +
(subresource.tiledSize * baseArray);
config->dstAddress = dstLinearAddress + (subresource.linearSize * baseArray);
config->srcAddress = srcTiledAddress + subresource.offset;
config->dstAddress = dstLinearAddress;
config->dataWidth = subresource.dataWidth;
config->dataHeight = subresource.dataHeight;
config->tileMode = tileMode.raw;
@ -287,9 +286,8 @@ void amdgpu::GpuTiler::tile(Scheduler &scheduler,
configOffset);
auto &subresource = info.getSubresourceInfo(mipLevel);
config->srcAddress = srcLinearAddress + subresource.offset +
subresource.linearSize * baseArray;
config->dstAddress = dstTiledAddress;
config->srcAddress = srcLinearAddress;
config->dstAddress = dstTiledAddress + subresource.offset;
config->dataWidth = subresource.dataWidth;
config->dataHeight = subresource.dataHeight;
config->tileMode = tileMode.raw;