diff --git a/src/amd/registers/gfx11-rsrc.json b/src/amd/registers/gfx11-rsrc.json new file mode 100644 index 00000000000..7592126ab5a --- /dev/null +++ b/src/amd/registers/gfx11-rsrc.json @@ -0,0 +1,381 @@ +{ + "enums": { + "GFX11_FORMAT": { + "entries": [ + {"name": "GFX11_FORMAT_INVALID", "value": 0}, + {"name": "GFX11_FORMAT_8_UNORM", "value": 1}, + {"name": "GFX11_FORMAT_8_SNORM", "value": 2}, + {"name": "GFX11_FORMAT_8_USCALED", "value": 3}, + {"name": "GFX11_FORMAT_8_SSCALED", "value": 4}, + {"name": "GFX11_FORMAT_8_UINT", "value": 5}, + {"name": "GFX11_FORMAT_8_SINT", "value": 6}, + {"name": "GFX11_FORMAT_16_UNORM", "value": 7}, + {"name": "GFX11_FORMAT_16_SNORM", "value": 8}, + {"name": "GFX11_FORMAT_16_USCALED", "value": 9}, + {"name": "GFX11_FORMAT_16_SSCALED", "value": 10}, + {"name": "GFX11_FORMAT_16_UINT", "value": 11}, + {"name": "GFX11_FORMAT_16_SINT", "value": 12}, + {"name": "GFX11_FORMAT_16_FLOAT", "value": 13}, + {"name": "GFX11_FORMAT_8_8_UNORM", "value": 14}, + {"name": "GFX11_FORMAT_8_8_SNORM", "value": 15}, + {"name": "GFX11_FORMAT_8_8_USCALED", "value": 16}, + {"name": "GFX11_FORMAT_8_8_SSCALED", "value": 17}, + {"name": "GFX11_FORMAT_8_8_UINT", "value": 18}, + {"name": "GFX11_FORMAT_8_8_SINT", "value": 19}, + {"name": "GFX11_FORMAT_32_UINT", "value": 20}, + {"name": "GFX11_FORMAT_32_SINT", "value": 21}, + {"name": "GFX11_FORMAT_32_FLOAT", "value": 22}, + {"name": "GFX11_FORMAT_16_16_UNORM", "value": 23}, + {"name": "GFX11_FORMAT_16_16_SNORM", "value": 24}, + {"name": "GFX11_FORMAT_16_16_USCALED", "value": 25}, + {"name": "GFX11_FORMAT_16_16_SSCALED", "value": 26}, + {"name": "GFX11_FORMAT_16_16_UINT", "value": 27}, + {"name": "GFX11_FORMAT_16_16_SINT", "value": 28}, + {"name": "GFX11_FORMAT_16_16_FLOAT", "value": 29}, + {"name": "GFX11_FORMAT_10_11_11_FLOAT", "value": 30}, + {"name": "GFX11_FORMAT_11_11_10_FLOAT", "value": 31}, + {"name": "GFX11_FORMAT_10_10_10_2_UNORM", "value": 32}, + {"name": "GFX11_FORMAT_10_10_10_2_SNORM", "value": 33}, + {"name": "GFX11_FORMAT_10_10_10_2_UINT", "value": 34}, + {"name": "GFX11_FORMAT_10_10_10_2_SINT", "value": 35}, + {"name": "GFX11_FORMAT_2_10_10_10_UNORM", "value": 36}, + {"name": "GFX11_FORMAT_2_10_10_10_SNORM", "value": 37}, + {"name": "GFX11_FORMAT_2_10_10_10_USCALED", "value": 38}, + {"name": "GFX11_FORMAT_2_10_10_10_SSCALED", "value": 39}, + {"name": "GFX11_FORMAT_2_10_10_10_UINT", "value": 40}, + {"name": "GFX11_FORMAT_2_10_10_10_SINT", "value": 41}, + {"name": "GFX11_FORMAT_8_8_8_8_UNORM", "value": 42}, + {"name": "GFX11_FORMAT_8_8_8_8_SNORM", "value": 43}, + {"name": "GFX11_FORMAT_8_8_8_8_USCALED", "value": 44}, + {"name": "GFX11_FORMAT_8_8_8_8_SSCALED", "value": 45}, + {"name": "GFX11_FORMAT_8_8_8_8_UINT", "value": 46}, + {"name": "GFX11_FORMAT_8_8_8_8_SINT", "value": 47}, + {"name": "GFX11_FORMAT_32_32_UINT", "value": 48}, + {"name": "GFX11_FORMAT_32_32_SINT", "value": 49}, + {"name": "GFX11_FORMAT_32_32_FLOAT", "value": 50}, + {"name": "GFX11_FORMAT_16_16_16_16_UNORM", "value": 51}, + {"name": "GFX11_FORMAT_16_16_16_16_SNORM", "value": 52}, + {"name": "GFX11_FORMAT_16_16_16_16_USCALED", "value": 53}, + {"name": "GFX11_FORMAT_16_16_16_16_SSCALED", "value": 54}, + {"name": "GFX11_FORMAT_16_16_16_16_UINT", "value": 55}, + {"name": "GFX11_FORMAT_16_16_16_16_SINT", "value": 56}, + {"name": "GFX11_FORMAT_16_16_16_16_FLOAT", "value": 57}, + {"flags": ["buffers_only"], "name": "GFX11_FORMAT_32_32_32_UINT", "value": 58}, + {"flags": ["buffers_only"], "name": "GFX11_FORMAT_32_32_32_SINT", "value": 59}, + {"flags": ["buffers_only"], "name": "GFX11_FORMAT_32_32_32_FLOAT", "value": 60}, + {"name": "GFX11_FORMAT_32_32_32_32_UINT", "value": 61}, + {"name": "GFX11_FORMAT_32_32_32_32_SINT", "value": 62}, + {"name": "GFX11_FORMAT_32_32_32_32_FLOAT", "value": 63}, + {"name": "GFX11_FORMAT_8_SRGB", "value": 64}, + {"name": "GFX11_FORMAT_8_8_SRGB", "value": 65}, + {"name": "GFX11_FORMAT_8_8_8_8_SRGB", "value": 66}, + {"name": "GFX11_FORMAT_5_9_9_9_FLOAT", "value": 67}, + {"name": "GFX11_FORMAT_5_6_5_UNORM", "value": 68}, + {"name": "GFX11_FORMAT_1_5_5_5_UNORM", "value": 69}, + {"name": "GFX11_FORMAT_5_5_5_1_UNORM", "value": 70}, + {"name": "GFX11_FORMAT_4_4_4_4_UNORM", "value": 71}, + {"name": "GFX11_FORMAT_4_4_UNORM", "value": 72}, + {"name": "GFX11_FORMAT_1_UNORM", "value": 73}, + {"name": "GFX11_FORMAT_1_REVERSED_UNORM", "value": 74}, + {"name": "GFX11_FORMAT_32_FLOAT_CLAMP", "value": 75}, + {"name": "GFX11_FORMAT_8_24_UNORM", "value": 76}, + {"name": "GFX11_FORMAT_8_24_UINT", "value": 77}, + {"name": "GFX11_FORMAT_24_8_UNORM", "value": 78}, + {"name": "GFX11_FORMAT_24_8_UINT", "value": 79}, + {"name": "GFX11_FORMAT_X24_8_32_UINT", "value": 80}, + {"name": "GFX11_FORMAT_X24_8_32_FLOAT", "value": 81}, + {"name": "GFX11_FORMAT_GB_GR_UNORM", "value": 82}, + {"name": "GFX11_FORMAT_GB_GR_SNORM", "value": 83}, + {"name": "GFX11_FORMAT_GB_GR_UINT", "value": 84}, + {"name": "GFX11_FORMAT_GB_GR_SRGB", "value": 85}, + {"name": "GFX11_FORMAT_BG_RG_UNORM", "value": 86}, + {"name": "GFX11_FORMAT_BG_RG_SNORM", "value": 87}, + {"name": "GFX11_FORMAT_BG_RG_UINT", "value": 88}, + {"name": "GFX11_FORMAT_BG_RG_SRGB", "value": 89}, + {"name": "GFX11_FORMAT_MM_10_IN_16_UNORM", "value": 90}, + {"name": "GFX11_FORMAT_MM_10_IN_16_UINT", "value": 91}, + {"name": "GFX11_FORMAT_MM_10_IN_16_16_UNORM", "value": 92}, + {"name": "GFX11_FORMAT_MM_10_IN_16_16_UINT", "value": 93}, + {"name": "GFX11_FORMAT_MM_10_IN_16_16_16_16_UNORM ", "value": 94}, + {"name": "GFX11_FORMAT_MM_10_IN_16_16_16_16_UINT", "value": 95}, + {"name": "GFX11_FORMAT_BC1_UNORM", "value": 109}, + {"name": "GFX11_FORMAT_BC1_SRGB", "value": 110}, + {"name": "GFX11_FORMAT_BC2_UNORM", "value": 111}, + {"name": "GFX11_FORMAT_BC2_SRGB", "value": 112}, + {"name": "GFX11_FORMAT_BC3_UNORM", "value": 113}, + {"name": "GFX11_FORMAT_BC3_SRGB", "value": 114}, + {"name": "GFX11_FORMAT_BC4_UNORM", "value": 115}, + {"name": "GFX11_FORMAT_BC4_SNORM", "value": 116}, + {"name": "GFX11_FORMAT_BC5_UNORM", "value": 117}, + {"name": "GFX11_FORMAT_BC5_SNORM", "value": 118}, + {"name": "GFX11_FORMAT_BC6_UFLOAT", "value": 119}, + {"name": "GFX11_FORMAT_BC6_SFLOAT", "value": 120}, + {"name": "GFX11_FORMAT_BC7_UNORM", "value": 121}, + {"name": "GFX11_FORMAT_BC7_SRGB", "value": 122}, + {"name": "GFX11_FORMAT_YCBCR_UNORM", "value": 205}, + {"name": "GFX11_FORMAT_YCBCR_SRGB", "value": 206}, + {"name": "GFX11_FORMAT_MM_8_UNORM", "value": 207}, + {"name": "GFX11_FORMAT_MM_8_UINT", "value": 208}, + {"name": "GFX11_FORMAT_MM_8_8_UNORM", "value": 209}, + {"name": "GFX11_FORMAT_MM_8_8_UINT", "value": 210}, + {"name": "GFX11_FORMAT_MM_8_8_8_8_UNORM", "value": 211}, + {"name": "GFX11_FORMAT_MM_8_8_8_8_UINT", "value": 212}, + {"name": "GFX11_FORMAT_MM_VYUY8_UNORM", "value": 213}, + {"name": "GFX11_FORMAT_MM_VYUY8_UINT", "value": 214}, + {"name": "GFX11_FORMAT_MM_10_11_11_UNORM", "value": 215}, + {"name": "GFX11_FORMAT_MM_10_11_11_UINT", "value": 216}, + {"name": "GFX11_FORMAT_MM_2_10_10_10_UNORM", "value": 217}, + {"name": "GFX11_FORMAT_MM_2_10_10_10_UINT", "value": 218}, + {"name": "GFX11_FORMAT_MM_16_16_16_16_UNORM", "value": 219}, + {"name": "GFX11_FORMAT_MM_16_16_16_16_UINT", "value": 220}, + {"name": "GFX11_FORMAT_MM_12_IN_16_UNORM", "value": 221}, + {"name": "GFX11_FORMAT_MM_12_IN_16_UINT", "value": 222}, + {"name": "GFX11_FORMAT_MM_12_IN_16_16_UNORM", "value": 223}, + {"name": "GFX11_FORMAT_MM_12_IN_16_16_UINT", "value": 224}, + {"name": "GFX11_FORMAT_MM_12_IN_16_16_16_16_UNORM", "value": 225}, + {"name": "GFX11_FORMAT_MM_12_IN_16_16_16_16_UINT", "value": 226}, + {"name": "GFX11_FORMAT_6E4_FLOAT", "value": 227}, + {"name": "GFX11_FORMAT_7E3_FLOAT", "value": 228} + ] + }, + "SQ_IMG_RSRC_WORD3__BC_SWIZZLE": { + "entries": [ + {"name": "BC_SWIZZLE_XYZW", "value": 0}, + {"name": "BC_SWIZZLE_XWYZ", "value": 1}, + {"name": "BC_SWIZZLE_WZYX", "value": 2}, + {"name": "BC_SWIZZLE_WXYZ", "value": 3}, + {"name": "BC_SWIZZLE_ZYXW", "value": 4}, + {"name": "BC_SWIZZLE_YXWZ", "value": 5} + ] + }, + "SQ_BUF_RSRC_WORD3__OOB_SELECT": { + "entries": [ + {"name": "OOB_SELECT_STRUCTURED_WITH_OFFSET", "value": 0}, + {"name": "OOB_SELECT_STRUCTURED", "value": 1}, + {"name": "OOB_SELECT_DISABLED", "value": 2}, + {"name": "OOB_SELECT_RAW", "value": 3} + ] + } + }, + "register_mappings": [ + { + "chips": ["gfx11"], + "map": {"at": 36608, "to": "mm"}, + "name": "SQ_BUF_RSRC_WORD0" + }, + { + "chips": ["gfx11"], + "map": {"at": 36612, "to": "mm"}, + "name": "SQ_BUF_RSRC_WORD1", + "type_ref": "SQ_BUF_RSRC_WORD1" + }, + { + "chips": ["gfx11"], + "map": {"at": 36616, "to": "mm"}, + "name": "SQ_BUF_RSRC_WORD2" + }, + { + "chips": ["gfx11"], + "map": {"at": 36620, "to": "mm"}, + "name": "SQ_BUF_RSRC_WORD3", + "type_ref": "SQ_BUF_RSRC_WORD3" + }, + { + "chips": ["gfx11"], + "map": {"at": 40960, "to": "mm"}, + "name": "SQ_IMG_RSRC_WORD0" + }, + { + "chips": ["gfx11"], + "map": {"at": 40964, "to": "mm"}, + "name": "SQ_IMG_RSRC_WORD1", + "type_ref": "SQ_IMG_RSRC_WORD1" + }, + { + "chips": ["gfx11"], + "map": {"at": 40968, "to": "mm"}, + "name": "SQ_IMG_RSRC_WORD2", + "type_ref": "SQ_IMG_RSRC_WORD2" + }, + { + "chips": ["gfx11"], + "map": {"at": 40972, "to": "mm"}, + "name": "SQ_IMG_RSRC_WORD3", + "type_ref": "SQ_IMG_RSRC_WORD3" + }, + { + "chips": ["gfx11"], + "map": {"at": 40976, "to": "mm"}, + "name": "SQ_IMG_RSRC_WORD4", + "type_ref": "SQ_IMG_RSRC_WORD4" + }, + { + "chips": ["gfx11"], + "map": {"at": 40980, "to": "mm"}, + "name": "SQ_IMG_RSRC_WORD5", + "type_ref": "SQ_IMG_RSRC_WORD5" + }, + { + "chips": ["gfx11"], + "map": {"at": 40984, "to": "mm"}, + "name": "SQ_IMG_RSRC_WORD6", + "type_ref": "SQ_IMG_RSRC_WORD6" + }, + { + "chips": ["gfx11"], + "map": {"at": 40988, "to": "mm"}, + "name": "SQ_IMG_RSRC_WORD7" + }, + { + "chips": ["gfx11"], + "map": {"at": 36656, "to": "mm"}, + "name": "SQ_IMG_SAMP_WORD0", + "type_ref": "SQ_IMG_SAMP_WORD0" + }, + { + "chips": ["gfx11"], + "map": {"at": 36660, "to": "mm"}, + "name": "SQ_IMG_SAMP_WORD1", + "type_ref": "SQ_IMG_SAMP_WORD1" + }, + { + "chips": ["gfx11"], + "map": {"at": 36664, "to": "mm"}, + "name": "SQ_IMG_SAMP_WORD2", + "type_ref": "SQ_IMG_SAMP_WORD2" + }, + { + "chips": ["gfx11"], + "map": {"at": 36668, "to": "mm"}, + "name": "SQ_IMG_SAMP_WORD3", + "type_ref": "SQ_IMG_SAMP_WORD3" + } + ], + "register_types": { + "SQ_BUF_RSRC_WORD1": { + "fields": [ + {"bits": [0, 15], "name": "BASE_ADDRESS_HI"}, + {"bits": [16, 29], "name": "STRIDE"}, + {"bits": [30, 31], "name": "SWIZZLE_ENABLE"} + ] + }, + "SQ_BUF_RSRC_WORD3": { + "fields": [ + {"bits": [0, 2], "name": "DST_SEL_X"}, + {"bits": [3, 5], "name": "DST_SEL_Y"}, + {"bits": [6, 8], "name": "DST_SEL_Z"}, + {"bits": [9, 11], "name": "DST_SEL_W"}, + {"bits": [12, 17], "enum_ref": "GFX11_FORMAT", "name": "FORMAT"}, + {"bits": [21, 22], "name": "INDEX_STRIDE"}, + {"bits": [23, 23], "name": "ADD_TID_ENABLE"}, + {"bits": [26, 27], "comment": "deprecated", "name": "LLC_NOALLOC"}, + {"bits": [28, 29], "enum_ref": "SQ_BUF_RSRC_WORD3__OOB_SELECT", "name": "OOB_SELECT"}, + {"bits": [30, 31], "comment": "must be 0", "name": "TYPE"} + ] + }, + "SQ_IMG_RSRC_WORD1": { + "fields": [ + {"bits": [0, 7], "name": "BASE_ADDRESS_HI"}, + {"bits": [13, 14], "comment": "deprecated", "name": "LLC_NOALLOC"}, + {"bits": [15, 15], "name": "BIG_PAGE"}, + {"bits": [16, 19], "name": "MAX_MIP"}, + {"bits": [20, 27], "enum_ref": "GFX11_FORMAT", "name": "FORMAT"}, + {"bits": [30, 31], "name": "WIDTH_LO"} + ] + }, + "SQ_IMG_RSRC_WORD2": { + "fields": [ + {"bits": [0, 11], "name": "WIDTH_HI"}, + {"bits": [14, 27], "name": "HEIGHT"} + ] + }, + "SQ_IMG_RSRC_WORD3": { + "fields": [ + {"bits": [0, 2], "name": "DST_SEL_X"}, + {"bits": [3, 5], "name": "DST_SEL_Y"}, + {"bits": [6, 8], "name": "DST_SEL_Z"}, + {"bits": [9, 11], "name": "DST_SEL_W"}, + {"bits": [12, 15], "name": "BASE_LEVEL"}, + {"bits": [16, 19], "name": "LAST_LEVEL"}, + {"bits": [20, 24], "name": "SW_MODE"}, + {"bits": [25, 27], "enum_ref": "SQ_IMG_RSRC_WORD3__BC_SWIZZLE", "name": "BC_SWIZZLE"}, + {"bits": [28, 31], "name": "TYPE"} + ] + }, + "SQ_IMG_RSRC_WORD4": { + "fields": [ + {"bits": [0, 12], "name": "DEPTH"}, + {"bits": [16, 28], "name": "BASE_ARRAY"} + ] + }, + "SQ_IMG_RSRC_WORD5": { + "fields": [ + {"bits": [0, 3], "name": "ARRAY_PITCH"}, + {"bits": [8, 19], "name": "MIN_LOD_WARN"}, + {"bits": [20, 22], "name": "PERF_MOD"}, + {"bits": [23, 23], "name": "CORNER_SAMPLES"}, + {"bits": [26, 26], "comment": "deprecated", "name": "PRT_DEFAULT"}, + {"bits": [27, 31], "name": "MIN_LOD_LO"} + ] + }, + "SQ_IMG_RSRC_WORD6": { + "fields": [ + {"bits": [0, 6], "name": "MIN_LOD_HI"}, + {"bits": [10, 10], "name": "ITERATE_256"}, + {"bits": [11, 14], "name": "SAMPLE_PATTERN_OFFSET"}, + {"bits": [15, 16], "name": "MAX_UNCOMPRESSED_BLOCK_SIZE"}, + {"bits": [17, 18], "name": "MAX_COMPRESSED_BLOCK_SIZE"}, + {"bits": [19, 19], "name": "META_PIPE_ALIGNED"}, + {"bits": [20, 20], "name": "WRITE_COMPRESS_ENABLE"}, + {"bits": [21, 21], "name": "COMPRESSION_EN"}, + {"bits": [22, 22], "name": "ALPHA_IS_ON_MSB"}, + {"bits": [23, 23], "name": "COLOR_TRANSFORM"}, + {"bits": [24, 31], "name": "META_DATA_ADDRESS_LO"} + ] + }, + "SQ_IMG_SAMP_WORD0": { + "fields": [ + {"bits": [0, 2], "name": "CLAMP_X"}, + {"bits": [3, 5], "name": "CLAMP_Y"}, + {"bits": [6, 8], "name": "CLAMP_Z"}, + {"bits": [9, 11], "name": "MAX_ANISO_RATIO"}, + {"bits": [12, 14], "name": "DEPTH_COMPARE_FUNC"}, + {"bits": [15, 15], "name": "FORCE_UNNORMALIZED"}, + {"bits": [16, 18], "name": "ANISO_THRESHOLD"}, + {"bits": [19, 19], "name": "MC_COORD_TRUNC"}, + {"bits": [20, 20], "name": "FORCE_DEGAMMA"}, + {"bits": [21, 26], "name": "ANISO_BIAS"}, + {"bits": [27, 27], "name": "TRUNC_COORD"}, + {"bits": [28, 28], "name": "DISABLE_CUBE_WRAP"}, + {"bits": [29, 30], "name": "FILTER_MODE"}, + {"bits": [31, 31], "name": "SKIP_DEGAMMA"} + ] + }, + "SQ_IMG_SAMP_WORD1": { + "fields": [ + {"bits": [0, 11], "name": "MIN_LOD"}, + {"bits": [12, 23], "name": "MAX_LOD"}, + {"bits": [24, 27], "name": "PERF_MIP"}, + {"bits": [28, 31], "name": "PERF_Z"} + ] + }, + "SQ_IMG_SAMP_WORD2": { + "fields": [ + {"bits": [0, 13], "name": "LOD_BIAS"}, + {"bits": [14, 19], "name": "LOD_BIAS_SEC"}, + {"bits": [20, 21], "name": "XY_MAG_FILTER"}, + {"bits": [22, 23], "name": "XY_MIN_FILTER"}, + {"bits": [24, 25], "name": "Z_FILTER"}, + {"bits": [26, 27], "name": "MIP_FILTER"}, + {"bits": [29, 29], "name": "ANISO_OVERRIDE"}, + {"bits": [30, 30], "name": "BLEND_PRT"} + ] + }, + "SQ_IMG_SAMP_WORD3": { + "fields": [ + {"bits": [18, 29], "name": "BORDER_COLOR_PTR"}, + {"bits": [30, 31], "name": "BORDER_COLOR_TYPE"} + ] + } + } +}