FILE
ras_gfx_v9_0.h
File preview with syntax highlighting.
linux-6.19.14/drivers/gpu/drm/amd/ras/rascore/ras_gfx_v9_0.h
1/* SPDX-License-Identifier: MIT */ 2/* 3 * Copyright 2025 Advanced Micro Devices, Inc. 4 * 5 * Permission is hereby granted, free of charge, to any person obtaining a 6 * copy of this software and associated documentation files (the "Software"), 7 * to deal in the Software without restriction, including without limitation 8 * the rights to use, copy, modify, merge, publish, distribute, sublicense, 9 * and/or sell copies of the Software, and to permit persons to whom the 10 * Software is furnished to do so, subject to the following conditions: 11 * 12 * The above copyright notice and this permission notice shall be included in 13 * all copies or substantial portions of the Software. 14 * 15 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 18 * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR 19 * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 20 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 21 * OTHER DEALINGS IN THE SOFTWARE. 22 * 23 */ 24#ifndef __RAS_GFX_V9_0_H__ 25#define __RAS_GFX_V9_0_H__ 26 27enum ras_gfx_v9_subblock { 28 /* CPC */ 29 RAS_GFX_V9__GFX_CPC_INDEX_START = 0, 30 RAS_GFX_V9__GFX_CPC_SCRATCH = 31 RAS_GFX_V9__GFX_CPC_INDEX_START, 32 RAS_GFX_V9__GFX_CPC_UCODE, 33 RAS_GFX_V9__GFX_DC_STATE_ME1, 34 RAS_GFX_V9__GFX_DC_CSINVOC_ME1, 35 RAS_GFX_V9__GFX_DC_RESTORE_ME1, 36 RAS_GFX_V9__GFX_DC_STATE_ME2, 37 RAS_GFX_V9__GFX_DC_CSINVOC_ME2, 38 RAS_GFX_V9__GFX_DC_RESTORE_ME2, 39 RAS_GFX_V9__GFX_CPC_INDEX_END = 40 RAS_GFX_V9__GFX_DC_RESTORE_ME2, 41 /* CPF */ 42 RAS_GFX_V9__GFX_CPF_INDEX_START, 43 RAS_GFX_V9__GFX_CPF_ROQ_ME2 = 44 RAS_GFX_V9__GFX_CPF_INDEX_START, 45 RAS_GFX_V9__GFX_CPF_ROQ_ME1, 46 RAS_GFX_V9__GFX_CPF_TAG, 47 RAS_GFX_V9__GFX_CPF_INDEX_END = RAS_GFX_V9__GFX_CPF_TAG, 48 /* CPG */ 49 RAS_GFX_V9__GFX_CPG_INDEX_START, 50 RAS_GFX_V9__GFX_CPG_DMA_ROQ = 51 RAS_GFX_V9__GFX_CPG_INDEX_START, 52 RAS_GFX_V9__GFX_CPG_DMA_TAG, 53 RAS_GFX_V9__GFX_CPG_TAG, 54 RAS_GFX_V9__GFX_CPG_INDEX_END = RAS_GFX_V9__GFX_CPG_TAG, 55 /* GDS */ 56 RAS_GFX_V9__GFX_GDS_INDEX_START, 57 RAS_GFX_V9__GFX_GDS_MEM = RAS_GFX_V9__GFX_GDS_INDEX_START, 58 RAS_GFX_V9__GFX_GDS_INPUT_QUEUE, 59 RAS_GFX_V9__GFX_GDS_OA_PHY_CMD_RAM_MEM, 60 RAS_GFX_V9__GFX_GDS_OA_PHY_DATA_RAM_MEM, 61 RAS_GFX_V9__GFX_GDS_OA_PIPE_MEM, 62 RAS_GFX_V9__GFX_GDS_INDEX_END = 63 RAS_GFX_V9__GFX_GDS_OA_PIPE_MEM, 64 /* SPI */ 65 RAS_GFX_V9__GFX_SPI_SR_MEM, 66 /* SQ */ 67 RAS_GFX_V9__GFX_SQ_INDEX_START, 68 RAS_GFX_V9__GFX_SQ_SGPR = RAS_GFX_V9__GFX_SQ_INDEX_START, 69 RAS_GFX_V9__GFX_SQ_LDS_D, 70 RAS_GFX_V9__GFX_SQ_LDS_I, 71 RAS_GFX_V9__GFX_SQ_VGPR, 72 RAS_GFX_V9__GFX_SQ_INDEX_END = RAS_GFX_V9__GFX_SQ_VGPR, 73 /* SQC (3 ranges) */ 74 RAS_GFX_V9__GFX_SQC_INDEX_START, 75 /* SQC range 0 */ 76 RAS_GFX_V9__GFX_SQC_INDEX0_START = 77 RAS_GFX_V9__GFX_SQC_INDEX_START, 78 RAS_GFX_V9__GFX_SQC_INST_UTCL1_LFIFO = 79 RAS_GFX_V9__GFX_SQC_INDEX0_START, 80 RAS_GFX_V9__GFX_SQC_DATA_CU0_WRITE_DATA_BUF, 81 RAS_GFX_V9__GFX_SQC_DATA_CU0_UTCL1_LFIFO, 82 RAS_GFX_V9__GFX_SQC_DATA_CU1_WRITE_DATA_BUF, 83 RAS_GFX_V9__GFX_SQC_DATA_CU1_UTCL1_LFIFO, 84 RAS_GFX_V9__GFX_SQC_DATA_CU2_WRITE_DATA_BUF, 85 RAS_GFX_V9__GFX_SQC_DATA_CU2_UTCL1_LFIFO, 86 RAS_GFX_V9__GFX_SQC_INDEX0_END = 87 RAS_GFX_V9__GFX_SQC_DATA_CU2_UTCL1_LFIFO, 88 /* SQC range 1 */ 89 RAS_GFX_V9__GFX_SQC_INDEX1_START, 90 RAS_GFX_V9__GFX_SQC_INST_BANKA_TAG_RAM = 91 RAS_GFX_V9__GFX_SQC_INDEX1_START, 92 RAS_GFX_V9__GFX_SQC_INST_BANKA_UTCL1_MISS_FIFO, 93 RAS_GFX_V9__GFX_SQC_INST_BANKA_MISS_FIFO, 94 RAS_GFX_V9__GFX_SQC_INST_BANKA_BANK_RAM, 95 RAS_GFX_V9__GFX_SQC_DATA_BANKA_TAG_RAM, 96 RAS_GFX_V9__GFX_SQC_DATA_BANKA_HIT_FIFO, 97 RAS_GFX_V9__GFX_SQC_DATA_BANKA_MISS_FIFO, 98 RAS_GFX_V9__GFX_SQC_DATA_BANKA_DIRTY_BIT_RAM, 99 RAS_GFX_V9__GFX_SQC_DATA_BANKA_BANK_RAM, 100 RAS_GFX_V9__GFX_SQC_INDEX1_END = 101 RAS_GFX_V9__GFX_SQC_DATA_BANKA_BANK_RAM, 102 /* SQC range 2 */ 103 RAS_GFX_V9__GFX_SQC_INDEX2_START, 104 RAS_GFX_V9__GFX_SQC_INST_BANKB_TAG_RAM = 105 RAS_GFX_V9__GFX_SQC_INDEX2_START, 106 RAS_GFX_V9__GFX_SQC_INST_BANKB_UTCL1_MISS_FIFO, 107 RAS_GFX_V9__GFX_SQC_INST_BANKB_MISS_FIFO, 108 RAS_GFX_V9__GFX_SQC_INST_BANKB_BANK_RAM, 109 RAS_GFX_V9__GFX_SQC_DATA_BANKB_TAG_RAM, 110 RAS_GFX_V9__GFX_SQC_DATA_BANKB_HIT_FIFO, 111 RAS_GFX_V9__GFX_SQC_DATA_BANKB_MISS_FIFO, 112 RAS_GFX_V9__GFX_SQC_DATA_BANKB_DIRTY_BIT_RAM, 113 RAS_GFX_V9__GFX_SQC_DATA_BANKB_BANK_RAM, 114 RAS_GFX_V9__GFX_SQC_INDEX2_END = 115 RAS_GFX_V9__GFX_SQC_DATA_BANKB_BANK_RAM, 116 RAS_GFX_V9__GFX_SQC_INDEX_END = 117 RAS_GFX_V9__GFX_SQC_INDEX2_END, 118 /* TA */ 119 RAS_GFX_V9__GFX_TA_INDEX_START, 120 RAS_GFX_V9__GFX_TA_FS_DFIFO = 121 RAS_GFX_V9__GFX_TA_INDEX_START, 122 RAS_GFX_V9__GFX_TA_FS_AFIFO, 123 RAS_GFX_V9__GFX_TA_FL_LFIFO, 124 RAS_GFX_V9__GFX_TA_FX_LFIFO, 125 RAS_GFX_V9__GFX_TA_FS_CFIFO, 126 RAS_GFX_V9__GFX_TA_INDEX_END = RAS_GFX_V9__GFX_TA_FS_CFIFO, 127 /* TCA */ 128 RAS_GFX_V9__GFX_TCA_INDEX_START, 129 RAS_GFX_V9__GFX_TCA_HOLE_FIFO = 130 RAS_GFX_V9__GFX_TCA_INDEX_START, 131 RAS_GFX_V9__GFX_TCA_REQ_FIFO, 132 RAS_GFX_V9__GFX_TCA_INDEX_END = 133 RAS_GFX_V9__GFX_TCA_REQ_FIFO, 134 /* TCC (5 sub-ranges) */ 135 RAS_GFX_V9__GFX_TCC_INDEX_START, 136 /* TCC range 0 */ 137 RAS_GFX_V9__GFX_TCC_INDEX0_START = 138 RAS_GFX_V9__GFX_TCC_INDEX_START, 139 RAS_GFX_V9__GFX_TCC_CACHE_DATA = 140 RAS_GFX_V9__GFX_TCC_INDEX0_START, 141 RAS_GFX_V9__GFX_TCC_CACHE_DATA_BANK_0_1, 142 RAS_GFX_V9__GFX_TCC_CACHE_DATA_BANK_1_0, 143 RAS_GFX_V9__GFX_TCC_CACHE_DATA_BANK_1_1, 144 RAS_GFX_V9__GFX_TCC_CACHE_DIRTY_BANK_0, 145 RAS_GFX_V9__GFX_TCC_CACHE_DIRTY_BANK_1, 146 RAS_GFX_V9__GFX_TCC_HIGH_RATE_TAG, 147 RAS_GFX_V9__GFX_TCC_LOW_RATE_TAG, 148 RAS_GFX_V9__GFX_TCC_INDEX0_END = 149 RAS_GFX_V9__GFX_TCC_LOW_RATE_TAG, 150 /* TCC range 1 */ 151 RAS_GFX_V9__GFX_TCC_INDEX1_START, 152 RAS_GFX_V9__GFX_TCC_IN_USE_DEC = 153 RAS_GFX_V9__GFX_TCC_INDEX1_START, 154 RAS_GFX_V9__GFX_TCC_IN_USE_TRANSFER, 155 RAS_GFX_V9__GFX_TCC_INDEX1_END = 156 RAS_GFX_V9__GFX_TCC_IN_USE_TRANSFER, 157 /* TCC range 2 */ 158 RAS_GFX_V9__GFX_TCC_INDEX2_START, 159 RAS_GFX_V9__GFX_TCC_RETURN_DATA = 160 RAS_GFX_V9__GFX_TCC_INDEX2_START, 161 RAS_GFX_V9__GFX_TCC_RETURN_CONTROL, 162 RAS_GFX_V9__GFX_TCC_UC_ATOMIC_FIFO, 163 RAS_GFX_V9__GFX_TCC_WRITE_RETURN, 164 RAS_GFX_V9__GFX_TCC_WRITE_CACHE_READ, 165 RAS_GFX_V9__GFX_TCC_SRC_FIFO, 166 RAS_GFX_V9__GFX_TCC_SRC_FIFO_NEXT_RAM, 167 RAS_GFX_V9__GFX_TCC_CACHE_TAG_PROBE_FIFO, 168 RAS_GFX_V9__GFX_TCC_INDEX2_END = 169 RAS_GFX_V9__GFX_TCC_CACHE_TAG_PROBE_FIFO, 170 /* TCC range 3 */ 171 RAS_GFX_V9__GFX_TCC_INDEX3_START, 172 RAS_GFX_V9__GFX_TCC_LATENCY_FIFO = 173 RAS_GFX_V9__GFX_TCC_INDEX3_START, 174 RAS_GFX_V9__GFX_TCC_LATENCY_FIFO_NEXT_RAM, 175 RAS_GFX_V9__GFX_TCC_INDEX3_END = 176 RAS_GFX_V9__GFX_TCC_LATENCY_FIFO_NEXT_RAM, 177 /* TCC range 4 */ 178 RAS_GFX_V9__GFX_TCC_INDEX4_START, 179 RAS_GFX_V9__GFX_TCC_WRRET_TAG_WRITE_RETURN = 180 RAS_GFX_V9__GFX_TCC_INDEX4_START, 181 RAS_GFX_V9__GFX_TCC_ATOMIC_RETURN_BUFFER, 182 RAS_GFX_V9__GFX_TCC_INDEX4_END = 183 RAS_GFX_V9__GFX_TCC_ATOMIC_RETURN_BUFFER, 184 RAS_GFX_V9__GFX_TCC_INDEX_END = 185 RAS_GFX_V9__GFX_TCC_INDEX4_END, 186 /* TCI */ 187 RAS_GFX_V9__GFX_TCI_WRITE_RAM, 188 /* TCP */ 189 RAS_GFX_V9__GFX_TCP_INDEX_START, 190 RAS_GFX_V9__GFX_TCP_CACHE_RAM = 191 RAS_GFX_V9__GFX_TCP_INDEX_START, 192 RAS_GFX_V9__GFX_TCP_LFIFO_RAM, 193 RAS_GFX_V9__GFX_TCP_CMD_FIFO, 194 RAS_GFX_V9__GFX_TCP_VM_FIFO, 195 RAS_GFX_V9__GFX_TCP_DB_RAM, 196 RAS_GFX_V9__GFX_TCP_UTCL1_LFIFO0, 197 RAS_GFX_V9__GFX_TCP_UTCL1_LFIFO1, 198 RAS_GFX_V9__GFX_TCP_INDEX_END = 199 RAS_GFX_V9__GFX_TCP_UTCL1_LFIFO1, 200 /* TD */ 201 RAS_GFX_V9__GFX_TD_INDEX_START, 202 RAS_GFX_V9__GFX_TD_SS_FIFO_LO = 203 RAS_GFX_V9__GFX_TD_INDEX_START, 204 RAS_GFX_V9__GFX_TD_SS_FIFO_HI, 205 RAS_GFX_V9__GFX_TD_CS_FIFO, 206 RAS_GFX_V9__GFX_TD_INDEX_END = RAS_GFX_V9__GFX_TD_CS_FIFO, 207 /* EA (3 sub-ranges) */ 208 RAS_GFX_V9__GFX_EA_INDEX_START, 209 /* EA range 0 */ 210 RAS_GFX_V9__GFX_EA_INDEX0_START = 211 RAS_GFX_V9__GFX_EA_INDEX_START, 212 RAS_GFX_V9__GFX_EA_DRAMRD_CMDMEM = 213 RAS_GFX_V9__GFX_EA_INDEX0_START, 214 RAS_GFX_V9__GFX_EA_DRAMWR_CMDMEM, 215 RAS_GFX_V9__GFX_EA_DRAMWR_DATAMEM, 216 RAS_GFX_V9__GFX_EA_RRET_TAGMEM, 217 RAS_GFX_V9__GFX_EA_WRET_TAGMEM, 218 RAS_GFX_V9__GFX_EA_GMIRD_CMDMEM, 219 RAS_GFX_V9__GFX_EA_GMIWR_CMDMEM, 220 RAS_GFX_V9__GFX_EA_GMIWR_DATAMEM, 221 RAS_GFX_V9__GFX_EA_INDEX0_END = 222 RAS_GFX_V9__GFX_EA_GMIWR_DATAMEM, 223 /* EA range 1 */ 224 RAS_GFX_V9__GFX_EA_INDEX1_START, 225 RAS_GFX_V9__GFX_EA_DRAMRD_PAGEMEM = 226 RAS_GFX_V9__GFX_EA_INDEX1_START, 227 RAS_GFX_V9__GFX_EA_DRAMWR_PAGEMEM, 228 RAS_GFX_V9__GFX_EA_IORD_CMDMEM, 229 RAS_GFX_V9__GFX_EA_IOWR_CMDMEM, 230 RAS_GFX_V9__GFX_EA_IOWR_DATAMEM, 231 RAS_GFX_V9__GFX_EA_GMIRD_PAGEMEM, 232 RAS_GFX_V9__GFX_EA_GMIWR_PAGEMEM, 233 RAS_GFX_V9__GFX_EA_INDEX1_END = 234 RAS_GFX_V9__GFX_EA_GMIWR_PAGEMEM, 235 /* EA range 2 */ 236 RAS_GFX_V9__GFX_EA_INDEX2_START, 237 RAS_GFX_V9__GFX_EA_MAM_D0MEM = 238 RAS_GFX_V9__GFX_EA_INDEX2_START, 239 RAS_GFX_V9__GFX_EA_MAM_D1MEM, 240 RAS_GFX_V9__GFX_EA_MAM_D2MEM, 241 RAS_GFX_V9__GFX_EA_MAM_D3MEM, 242 RAS_GFX_V9__GFX_EA_INDEX2_END = 243 RAS_GFX_V9__GFX_EA_MAM_D3MEM, 244 RAS_GFX_V9__GFX_EA_INDEX_END = 245 RAS_GFX_V9__GFX_EA_INDEX2_END, 246 /* UTC VM L2 bank */ 247 RAS_GFX_V9__UTC_VML2_BANK_CACHE, 248 /* UTC VM walker */ 249 RAS_GFX_V9__UTC_VML2_WALKER, 250 /* UTC ATC L2 2MB cache */ 251 RAS_GFX_V9__UTC_ATCL2_CACHE_2M_BANK, 252 /* UTC ATC L2 4KB cache */ 253 RAS_GFX_V9__UTC_ATCL2_CACHE_4K_BANK, 254 RAS_GFX_V9__GFX_MAX 255}; 256 257extern const struct ras_gfx_ip_func gfx_ras_func_v9_0; 258 259#endif
~/
Read-only file preview.