Module: Mesa Branch: main Commit: 5e734a7cbfd34866e3861431c606e784bc0dd550 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=5e734a7cbfd34866e3861431c606e784bc0dd550
Author: Friedrich Vock <[email protected]> Date: Sun Oct 22 20:21:19 2023 +0200 radv/rra: Recognize LPDDR memory Also move away from using unnamed constants for memory types. Fixes: aef7ea868fe ("ac/gpu_info: handle LPDDR4 and 5 in ac_memory_ops_per_clock") Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25845> --- src/amd/vulkan/radv_rra.c | 42 ++++++++++++++++++++++++++++++++---------- 1 file changed, 32 insertions(+), 10 deletions(-) diff --git a/src/amd/vulkan/radv_rra.c b/src/amd/vulkan/radv_rra.c index 670a4a3fdf7..225d70dc14c 100644 --- a/src/amd/vulkan/radv_rra.c +++ b/src/amd/vulkan/radv_rra.c @@ -104,6 +104,24 @@ rra_dump_chunk_description(uint64_t offset, uint64_t header_size, uint64_t data_ fwrite(&chunk, sizeof(struct rra_file_chunk_description), 1, output); } +enum rra_memory_type { + RRA_MEMORY_TYPE_UNKNOWN, + RRA_MEMORY_TYPE_DDR, + RRA_MEMORY_TYPE_DDR2, + RRA_MEMORY_TYPE_DDR3, + RRA_MEMORY_TYPE_DDR4, + RRA_MEMORY_TYPE_DDR5, + RRA_MEMORY_TYPE_GDDR3, + RRA_MEMORY_TYPE_GDDR4, + RRA_MEMORY_TYPE_GDDR5, + RRA_MEMORY_TYPE_GDDR6, + RRA_MEMORY_TYPE_HBM, + RRA_MEMORY_TYPE_HBM2, + RRA_MEMORY_TYPE_HBM3, + RRA_MEMORY_TYPE_LPDDR4, + RRA_MEMORY_TYPE_LPDDR5, +}; + #define RRA_FILE_DEVICE_NAME_MAX_SIZE 256 struct rra_asic_info { @@ -133,25 +151,29 @@ amdgpu_vram_type_to_rra(uint32_t type) { switch (type) { case AMD_VRAM_TYPE_UNKNOWN: - return 0; + return RRA_MEMORY_TYPE_UNKNOWN; case AMD_VRAM_TYPE_DDR2: - return 2; + return RRA_MEMORY_TYPE_DDR2; case AMD_VRAM_TYPE_DDR3: - return 3; + return RRA_MEMORY_TYPE_DDR3; case AMD_VRAM_TYPE_DDR4: - return 4; + return RRA_MEMORY_TYPE_DDR4; case AMD_VRAM_TYPE_DDR5: - return 5; + return RRA_MEMORY_TYPE_DDR5; case AMD_VRAM_TYPE_HBM: - return 10; + return RRA_MEMORY_TYPE_HBM; case AMD_VRAM_TYPE_GDDR3: - return 6; + return RRA_MEMORY_TYPE_GDDR3; case AMD_VRAM_TYPE_GDDR4: - return 7; + return RRA_MEMORY_TYPE_GDDR4; case AMD_VRAM_TYPE_GDDR5: - return 8; + return RRA_MEMORY_TYPE_GDDR5; case AMD_VRAM_TYPE_GDDR6: - return 9; + return RRA_MEMORY_TYPE_GDDR6; + case AMD_VRAM_TYPE_LPDDR4: + return RRA_MEMORY_TYPE_LPDDR4; + case AMD_VRAM_TYPE_LPDDR5: + return RRA_MEMORY_TYPE_LPDDR5; default: unreachable("invalid vram type"); }
