1 /* 2 * 3 * (C) COPYRIGHT 2015-2017 ARM Limited. All rights reserved. 4 * 5 * This program is free software and is provided to you under the terms of the 6 * GNU General Public License version 2 as published by the Free Software 7 * Foundation, and any use by you of this program is subject to the terms 8 * of such GNU licence. 9 * 10 * A copy of the licence is included with the program, and can also be obtained 11 * from Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 12 * Boston, MA 02110-1301, USA. 13 * 14 */ 15 16 17 18 /* AUTOMATICALLY GENERATED FILE. If you want to amend the issues/features, 19 * please update base/tools/hwconfig_generator/hwc_{issues,features}.py 20 * For more information see base/tools/hwconfig_generator/README 21 */ 22 23 #ifndef _BASE_HWCONFIG_FEATURES_H_ 24 #define _BASE_HWCONFIG_FEATURES_H_ 25 26 enum base_hw_feature { 27 BASE_HW_FEATURE_JOBCHAIN_DISAMBIGUATION, 28 BASE_HW_FEATURE_PWRON_DURING_PWROFF_TRANS, 29 BASE_HW_FEATURE_33BIT_VA, 30 BASE_HW_FEATURE_XAFFINITY, 31 BASE_HW_FEATURE_OUT_OF_ORDER_EXEC, 32 BASE_HW_FEATURE_MRT, 33 BASE_HW_FEATURE_BRNDOUT_CC, 34 BASE_HW_FEATURE_INTERPIPE_REG_ALIASING, 35 BASE_HW_FEATURE_LD_ST_TILEBUFFER, 36 BASE_HW_FEATURE_MSAA_16X, 37 BASE_HW_FEATURE_32_BIT_UNIFORM_ADDRESS, 38 BASE_HW_FEATURE_ATTR_AUTO_TYPE_INFERRAL, 39 BASE_HW_FEATURE_OPTIMIZED_COVERAGE_MASK, 40 BASE_HW_FEATURE_T7XX_PAIRING_RULES, 41 BASE_HW_FEATURE_LD_ST_LEA_TEX, 42 BASE_HW_FEATURE_LINEAR_FILTER_FLOAT, 43 BASE_HW_FEATURE_WORKGROUP_ROUND_MULTIPLE_OF_4, 44 BASE_HW_FEATURE_IMAGES_IN_FRAGMENT_SHADERS, 45 BASE_HW_FEATURE_TEST4_DATUM_MODE, 46 BASE_HW_FEATURE_NEXT_INSTRUCTION_TYPE, 47 BASE_HW_FEATURE_BRNDOUT_KILL, 48 BASE_HW_FEATURE_WARPING, 49 BASE_HW_FEATURE_V4, 50 BASE_HW_FEATURE_FLUSH_REDUCTION, 51 BASE_HW_FEATURE_PROTECTED_MODE, 52 BASE_HW_FEATURE_COHERENCY_REG, 53 BASE_HW_FEATURE_PROTECTED_DEBUG_MODE, 54 BASE_HW_FEATURE_AARCH64_MMU, 55 BASE_HW_FEATURE_END 56 }; 57 58 static const enum base_hw_feature base_hw_features_generic[] = { 59 BASE_HW_FEATURE_END 60 }; 61 62 static const enum base_hw_feature base_hw_features_t60x[] = { 63 BASE_HW_FEATURE_LD_ST_LEA_TEX, 64 BASE_HW_FEATURE_LINEAR_FILTER_FLOAT, 65 BASE_HW_FEATURE_V4, 66 BASE_HW_FEATURE_END 67 }; 68 69 static const enum base_hw_feature base_hw_features_t62x[] = { 70 BASE_HW_FEATURE_LD_ST_LEA_TEX, 71 BASE_HW_FEATURE_LINEAR_FILTER_FLOAT, 72 BASE_HW_FEATURE_ATTR_AUTO_TYPE_INFERRAL, 73 BASE_HW_FEATURE_V4, 74 BASE_HW_FEATURE_END 75 }; 76 77 static const enum base_hw_feature base_hw_features_t72x[] = { 78 BASE_HW_FEATURE_33BIT_VA, 79 BASE_HW_FEATURE_32_BIT_UNIFORM_ADDRESS, 80 BASE_HW_FEATURE_ATTR_AUTO_TYPE_INFERRAL, 81 BASE_HW_FEATURE_INTERPIPE_REG_ALIASING, 82 BASE_HW_FEATURE_OPTIMIZED_COVERAGE_MASK, 83 BASE_HW_FEATURE_T7XX_PAIRING_RULES, 84 BASE_HW_FEATURE_WORKGROUP_ROUND_MULTIPLE_OF_4, 85 BASE_HW_FEATURE_WARPING, 86 BASE_HW_FEATURE_V4, 87 BASE_HW_FEATURE_END 88 }; 89 90 static const enum base_hw_feature base_hw_features_t76x[] = { 91 BASE_HW_FEATURE_JOBCHAIN_DISAMBIGUATION, 92 BASE_HW_FEATURE_PWRON_DURING_PWROFF_TRANS, 93 BASE_HW_FEATURE_XAFFINITY, 94 BASE_HW_FEATURE_32_BIT_UNIFORM_ADDRESS, 95 BASE_HW_FEATURE_ATTR_AUTO_TYPE_INFERRAL, 96 BASE_HW_FEATURE_BRNDOUT_CC, 97 BASE_HW_FEATURE_LD_ST_LEA_TEX, 98 BASE_HW_FEATURE_LD_ST_TILEBUFFER, 99 BASE_HW_FEATURE_LINEAR_FILTER_FLOAT, 100 BASE_HW_FEATURE_MRT, 101 BASE_HW_FEATURE_MSAA_16X, 102 BASE_HW_FEATURE_OUT_OF_ORDER_EXEC, 103 BASE_HW_FEATURE_T7XX_PAIRING_RULES, 104 BASE_HW_FEATURE_TEST4_DATUM_MODE, 105 BASE_HW_FEATURE_END 106 }; 107 108 static const enum base_hw_feature base_hw_features_tFxx[] = { 109 BASE_HW_FEATURE_JOBCHAIN_DISAMBIGUATION, 110 BASE_HW_FEATURE_PWRON_DURING_PWROFF_TRANS, 111 BASE_HW_FEATURE_XAFFINITY, 112 BASE_HW_FEATURE_32_BIT_UNIFORM_ADDRESS, 113 BASE_HW_FEATURE_ATTR_AUTO_TYPE_INFERRAL, 114 BASE_HW_FEATURE_BRNDOUT_CC, 115 BASE_HW_FEATURE_BRNDOUT_KILL, 116 BASE_HW_FEATURE_LD_ST_LEA_TEX, 117 BASE_HW_FEATURE_LD_ST_TILEBUFFER, 118 BASE_HW_FEATURE_LINEAR_FILTER_FLOAT, 119 BASE_HW_FEATURE_MRT, 120 BASE_HW_FEATURE_MSAA_16X, 121 BASE_HW_FEATURE_NEXT_INSTRUCTION_TYPE, 122 BASE_HW_FEATURE_OUT_OF_ORDER_EXEC, 123 BASE_HW_FEATURE_T7XX_PAIRING_RULES, 124 BASE_HW_FEATURE_TEST4_DATUM_MODE, 125 BASE_HW_FEATURE_END 126 }; 127 128 static const enum base_hw_feature base_hw_features_t83x[] = { 129 BASE_HW_FEATURE_33BIT_VA, 130 BASE_HW_FEATURE_JOBCHAIN_DISAMBIGUATION, 131 BASE_HW_FEATURE_PWRON_DURING_PWROFF_TRANS, 132 BASE_HW_FEATURE_XAFFINITY, 133 BASE_HW_FEATURE_WARPING, 134 BASE_HW_FEATURE_INTERPIPE_REG_ALIASING, 135 BASE_HW_FEATURE_32_BIT_UNIFORM_ADDRESS, 136 BASE_HW_FEATURE_ATTR_AUTO_TYPE_INFERRAL, 137 BASE_HW_FEATURE_BRNDOUT_CC, 138 BASE_HW_FEATURE_BRNDOUT_KILL, 139 BASE_HW_FEATURE_LD_ST_LEA_TEX, 140 BASE_HW_FEATURE_LD_ST_TILEBUFFER, 141 BASE_HW_FEATURE_LINEAR_FILTER_FLOAT, 142 BASE_HW_FEATURE_MRT, 143 BASE_HW_FEATURE_NEXT_INSTRUCTION_TYPE, 144 BASE_HW_FEATURE_OUT_OF_ORDER_EXEC, 145 BASE_HW_FEATURE_T7XX_PAIRING_RULES, 146 BASE_HW_FEATURE_TEST4_DATUM_MODE, 147 BASE_HW_FEATURE_END 148 }; 149 150 static const enum base_hw_feature base_hw_features_t82x[] = { 151 BASE_HW_FEATURE_33BIT_VA, 152 BASE_HW_FEATURE_JOBCHAIN_DISAMBIGUATION, 153 BASE_HW_FEATURE_PWRON_DURING_PWROFF_TRANS, 154 BASE_HW_FEATURE_XAFFINITY, 155 BASE_HW_FEATURE_WARPING, 156 BASE_HW_FEATURE_INTERPIPE_REG_ALIASING, 157 BASE_HW_FEATURE_32_BIT_UNIFORM_ADDRESS, 158 BASE_HW_FEATURE_ATTR_AUTO_TYPE_INFERRAL, 159 BASE_HW_FEATURE_BRNDOUT_CC, 160 BASE_HW_FEATURE_BRNDOUT_KILL, 161 BASE_HW_FEATURE_LD_ST_LEA_TEX, 162 BASE_HW_FEATURE_LD_ST_TILEBUFFER, 163 BASE_HW_FEATURE_LINEAR_FILTER_FLOAT, 164 BASE_HW_FEATURE_MRT, 165 BASE_HW_FEATURE_NEXT_INSTRUCTION_TYPE, 166 BASE_HW_FEATURE_OUT_OF_ORDER_EXEC, 167 BASE_HW_FEATURE_T7XX_PAIRING_RULES, 168 BASE_HW_FEATURE_TEST4_DATUM_MODE, 169 BASE_HW_FEATURE_END 170 }; 171 172 static const enum base_hw_feature base_hw_features_tMIx[] = { 173 BASE_HW_FEATURE_JOBCHAIN_DISAMBIGUATION, 174 BASE_HW_FEATURE_PWRON_DURING_PWROFF_TRANS, 175 BASE_HW_FEATURE_XAFFINITY, 176 BASE_HW_FEATURE_WARPING, 177 BASE_HW_FEATURE_INTERPIPE_REG_ALIASING, 178 BASE_HW_FEATURE_32_BIT_UNIFORM_ADDRESS, 179 BASE_HW_FEATURE_ATTR_AUTO_TYPE_INFERRAL, 180 BASE_HW_FEATURE_BRNDOUT_CC, 181 BASE_HW_FEATURE_BRNDOUT_KILL, 182 BASE_HW_FEATURE_LD_ST_LEA_TEX, 183 BASE_HW_FEATURE_LD_ST_TILEBUFFER, 184 BASE_HW_FEATURE_LINEAR_FILTER_FLOAT, 185 BASE_HW_FEATURE_MRT, 186 BASE_HW_FEATURE_MSAA_16X, 187 BASE_HW_FEATURE_NEXT_INSTRUCTION_TYPE, 188 BASE_HW_FEATURE_OUT_OF_ORDER_EXEC, 189 BASE_HW_FEATURE_T7XX_PAIRING_RULES, 190 BASE_HW_FEATURE_TEST4_DATUM_MODE, 191 BASE_HW_FEATURE_FLUSH_REDUCTION, 192 BASE_HW_FEATURE_PROTECTED_MODE, 193 BASE_HW_FEATURE_COHERENCY_REG, 194 BASE_HW_FEATURE_END 195 }; 196 197 static const enum base_hw_feature base_hw_features_tHEx[] = { 198 BASE_HW_FEATURE_JOBCHAIN_DISAMBIGUATION, 199 BASE_HW_FEATURE_PWRON_DURING_PWROFF_TRANS, 200 BASE_HW_FEATURE_XAFFINITY, 201 BASE_HW_FEATURE_WARPING, 202 BASE_HW_FEATURE_INTERPIPE_REG_ALIASING, 203 BASE_HW_FEATURE_32_BIT_UNIFORM_ADDRESS, 204 BASE_HW_FEATURE_ATTR_AUTO_TYPE_INFERRAL, 205 BASE_HW_FEATURE_BRNDOUT_CC, 206 BASE_HW_FEATURE_BRNDOUT_KILL, 207 BASE_HW_FEATURE_LD_ST_LEA_TEX, 208 BASE_HW_FEATURE_LD_ST_TILEBUFFER, 209 BASE_HW_FEATURE_LINEAR_FILTER_FLOAT, 210 BASE_HW_FEATURE_MRT, 211 BASE_HW_FEATURE_MSAA_16X, 212 BASE_HW_FEATURE_NEXT_INSTRUCTION_TYPE, 213 BASE_HW_FEATURE_OUT_OF_ORDER_EXEC, 214 BASE_HW_FEATURE_T7XX_PAIRING_RULES, 215 BASE_HW_FEATURE_TEST4_DATUM_MODE, 216 BASE_HW_FEATURE_FLUSH_REDUCTION, 217 BASE_HW_FEATURE_PROTECTED_MODE, 218 BASE_HW_FEATURE_PROTECTED_DEBUG_MODE, 219 BASE_HW_FEATURE_COHERENCY_REG, 220 BASE_HW_FEATURE_END 221 }; 222 223 static const enum base_hw_feature base_hw_features_tSIx[] = { 224 BASE_HW_FEATURE_33BIT_VA, 225 BASE_HW_FEATURE_JOBCHAIN_DISAMBIGUATION, 226 BASE_HW_FEATURE_PWRON_DURING_PWROFF_TRANS, 227 BASE_HW_FEATURE_XAFFINITY, 228 BASE_HW_FEATURE_WARPING, 229 BASE_HW_FEATURE_INTERPIPE_REG_ALIASING, 230 BASE_HW_FEATURE_32_BIT_UNIFORM_ADDRESS, 231 BASE_HW_FEATURE_ATTR_AUTO_TYPE_INFERRAL, 232 BASE_HW_FEATURE_BRNDOUT_CC, 233 BASE_HW_FEATURE_BRNDOUT_KILL, 234 BASE_HW_FEATURE_LD_ST_LEA_TEX, 235 BASE_HW_FEATURE_LD_ST_TILEBUFFER, 236 BASE_HW_FEATURE_LINEAR_FILTER_FLOAT, 237 BASE_HW_FEATURE_MRT, 238 BASE_HW_FEATURE_MSAA_16X, 239 BASE_HW_FEATURE_NEXT_INSTRUCTION_TYPE, 240 BASE_HW_FEATURE_OUT_OF_ORDER_EXEC, 241 BASE_HW_FEATURE_T7XX_PAIRING_RULES, 242 BASE_HW_FEATURE_TEST4_DATUM_MODE, 243 BASE_HW_FEATURE_FLUSH_REDUCTION, 244 BASE_HW_FEATURE_PROTECTED_MODE, 245 BASE_HW_FEATURE_PROTECTED_DEBUG_MODE, 246 BASE_HW_FEATURE_COHERENCY_REG, 247 BASE_HW_FEATURE_END 248 }; 249 250 251 #ifdef MALI_INCLUDE_TKAX 252 static const enum base_hw_feature base_hw_features_tKAx[] = { 253 BASE_HW_FEATURE_33BIT_VA, 254 BASE_HW_FEATURE_JOBCHAIN_DISAMBIGUATION, 255 BASE_HW_FEATURE_PWRON_DURING_PWROFF_TRANS, 256 BASE_HW_FEATURE_XAFFINITY, 257 BASE_HW_FEATURE_WARPING, 258 BASE_HW_FEATURE_INTERPIPE_REG_ALIASING, 259 BASE_HW_FEATURE_32_BIT_UNIFORM_ADDRESS, 260 BASE_HW_FEATURE_ATTR_AUTO_TYPE_INFERRAL, 261 BASE_HW_FEATURE_BRNDOUT_CC, 262 BASE_HW_FEATURE_BRNDOUT_KILL, 263 BASE_HW_FEATURE_LD_ST_LEA_TEX, 264 BASE_HW_FEATURE_LD_ST_TILEBUFFER, 265 BASE_HW_FEATURE_LINEAR_FILTER_FLOAT, 266 BASE_HW_FEATURE_MRT, 267 BASE_HW_FEATURE_MSAA_16X, 268 BASE_HW_FEATURE_NEXT_INSTRUCTION_TYPE, 269 BASE_HW_FEATURE_OUT_OF_ORDER_EXEC, 270 BASE_HW_FEATURE_T7XX_PAIRING_RULES, 271 BASE_HW_FEATURE_TEST4_DATUM_MODE, 272 BASE_HW_FEATURE_FLUSH_REDUCTION, 273 BASE_HW_FEATURE_PROTECTED_MODE, 274 BASE_HW_FEATURE_PROTECTED_DEBUG_MODE, 275 BASE_HW_FEATURE_COHERENCY_REG, 276 BASE_HW_FEATURE_END 277 }; 278 279 #endif /* MALI_INCLUDE_TKAX */ 280 281 #ifdef MALI_INCLUDE_TTRX 282 static const enum base_hw_feature base_hw_features_tTRx[] = { 283 BASE_HW_FEATURE_33BIT_VA, 284 BASE_HW_FEATURE_JOBCHAIN_DISAMBIGUATION, 285 BASE_HW_FEATURE_PWRON_DURING_PWROFF_TRANS, 286 BASE_HW_FEATURE_XAFFINITY, 287 BASE_HW_FEATURE_WARPING, 288 BASE_HW_FEATURE_INTERPIPE_REG_ALIASING, 289 BASE_HW_FEATURE_32_BIT_UNIFORM_ADDRESS, 290 BASE_HW_FEATURE_ATTR_AUTO_TYPE_INFERRAL, 291 BASE_HW_FEATURE_BRNDOUT_CC, 292 BASE_HW_FEATURE_BRNDOUT_KILL, 293 BASE_HW_FEATURE_LD_ST_LEA_TEX, 294 BASE_HW_FEATURE_LD_ST_TILEBUFFER, 295 BASE_HW_FEATURE_LINEAR_FILTER_FLOAT, 296 BASE_HW_FEATURE_MRT, 297 BASE_HW_FEATURE_MSAA_16X, 298 BASE_HW_FEATURE_NEXT_INSTRUCTION_TYPE, 299 BASE_HW_FEATURE_OUT_OF_ORDER_EXEC, 300 BASE_HW_FEATURE_T7XX_PAIRING_RULES, 301 BASE_HW_FEATURE_TEST4_DATUM_MODE, 302 BASE_HW_FEATURE_FLUSH_REDUCTION, 303 BASE_HW_FEATURE_PROTECTED_MODE, 304 BASE_HW_FEATURE_PROTECTED_DEBUG_MODE, 305 BASE_HW_FEATURE_COHERENCY_REG, 306 BASE_HW_FEATURE_END 307 }; 308 309 #endif /* MALI_INCLUDE_TTRX */ 310 311 #endif /* _BASE_HWCONFIG_FEATURES_H_ */ 312