Advertisement
Guest User

AMD DirectX PAL Settings

a guest
Jun 4th, 2022
292
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 88.94 KB | None | 0 0
  1. {"ComponentName": "Gfx9_Pal",
  2. "DriverState": ["HaltedOnDeviceInit"],
  3. "Hwl": "Gfx9",
  4. "Tags": ["General",
  5. "Cache flush",
  6. "Color Targets",
  7. "Compute Pipelines",
  8. "Depth/Stencil",
  9. "Graphics Pipelines",
  10. "Shader Options",
  11. "NGG Controls",
  12. "PBB and DFSM",
  13. "Prefetching (L2 Cache Warming)",
  14. "Texture Filtering",
  15. "Hardware Workarounds",
  16. "RPM",
  17. "Gfx9",
  18. "Vrs",
  19. "Gfx10",
  20. "Gfx11",
  21. "PWS"],
  22. "Settings": [{"ValidValues": {"IsEnum": true,
  23. "Values": [{"Name": "Gfx10LdsPsGroupSizeNone",
  24. "Value": 0,
  25. "Description": "Don't share PS attributes across waves."},
  26. {"Name": "Gfx10LdsPsGroupSizeDouble",
  27. "Value": 1,
  28. "Description": "Share PS attributes across two waves."}],
  29. "Name": "Gfx10LdsPsGroupSize"},
  30. "Description": "Specifies how many PS waves should share the same LDS allocation. Not supported on all platforms",
  31. "Tags": ["Shader Options",
  32. "Gfx9"],
  33. "Flags": {"RereadSetting": true},
  34. "Defaults": {"Default": "Gfx10LdsPsGroupSizeNone"},
  35. "Scope": "PrivatePalGfx9Key",
  36. "Type": "enum",
  37. "OrBuildTypes": ["PAL_BUILD_VAN_GOGH_LITE",
  38. "PAL_BUILD_GFX11"],
  39. "VariableName": "ldsPsGroupSize",
  40. "Name": "LdsPsGroupSize",
  41. "HashName": 639938895},
  42. {"ValidValues": {"IsEnum": true,
  43. "Values": [{"Name": "Gfx10AllowBigPageRenderTarget",
  44. "Value": 1,
  45. "Description": "Color render targets"},
  46. {"Name": "Gfx10AllowBigPageDepthStencil",
  47. "Value": 2,
  48. "Description": "Depth stencil images"},
  49. {"Name": "Gfx10AllowBigPageShaderWrite",
  50. "Value": 4,
  51. "Description": "Shader writeable images"},
  52. {"Name": "Gfx10AllowBigPageShaderRead",
  53. "Value": 8,
  54. "Description": "Shader readable images"},
  55. {"Name": "Gfx10AllowBigPageBuffers",
  56. "Value": 16,
  57. "Description": "Renderable buffers"},
  58. {"Name": "Gfx10AllowBigPageBvh",
  59. "Value": 32,
  60. "Description": "Bounding Volume Hierarchy (raytracing acceleration structure) buffers.",
  61. "BuildTypes": ["PAL_CLOSED_SOURCE"]}],
  62. "Name": "Gfx10AllowBigPage"},
  63. "Description": "Bitmask of cases where big-page will potentially be enabled",
  64. "Tags": ["General",
  65. "Gfx9"],
  66. "Flags": {"IsBitmask": true,
  67. "IsHex": true},
  68. "Defaults": {"Default": 63},
  69. "Scope": "PrivatePalGfx9Key",
  70. "Type": "uint32",
  71. "VariableName": "allowBigPage",
  72. "Name": "AllowBigPage",
  73. "HashName": 1926167631},
  74. {"Description": "Disables binding of border color palettes,
  75. and forces any samplers created to use a transparent black color. ",
  76. "Tags": ["General",
  77. "Gfx9"],
  78. "Defaults": {"Default": false},
  79. "Scope": "PrivatePalGfx9Key",
  80. "Type": "bool",
  81. "VariableName": "disableBorderColorPaletteBinds",
  82. "Name": "DisableBorderColorPaletteBinds",
  83. "HashName": 3825276041},
  84. {"ValidValues": {"IsEnum": true,
  85. "Values": [{"Name": "Gfx9PrintMetaEquationInfoEquations",
  86. "Value": 1,
  87. "Description": "Prints meta equations themselves."},
  88. {"Name": "Gfx9PrintMetaEquationInfoProcessing",
  89. "Value": 2,
  90. "Description": "Prints equation coordinates as they're processed."}],
  91. "Name": "Gfx9PrintMetaEquationInfo"},
  92. "Description": "Controls printing of meta-equation data. Debug builds only.",
  93. "Tags": ["General",
  94. "Gfx9"],
  95. "Flags": {"IsBitmask": true,
  96. "IsHex": true},
  97. "Defaults": {"Default": 0},
  98. "Scope": "PrivatePalGfx9Key",
  99. "Type": "uint32",
  100. "VariableName": "printMetaEquationInfo",
  101. "Name": "PrintMetaEquationInfo",
  102. "HashName": 2137175839},
  103. {"ValidValues": {"IsEnum": true,
  104. "Values": [{"Name": "Gfx9OptimizedFastClearDisabled",
  105. "Value": 0,
  106. "Description": "Disable the Optimized Fast Clear Path."},
  107. {"Name": "Gfx9OptimizedFastClearColorCmask",
  108. "Value": 1,
  109. "Description": "Enable Optimized Fast Clear Path for color surfaces cmask metadata fastclear(msaa only)."},
  110. {"Name": "Gfx9OptimizedFastClearColorDcc",
  111. "Value": 2,
  112. "Description": "Enable Optimized Fast Clear Path for color surfaces dcc metadata fastclear."},
  113. {"Name": "Gfx9OptimizedFastClearDepth",
  114. "Value": 4,
  115. "Description": "Enable Optimized Fast Clear Path for depth surfaces htile metadata fastclear."}],
  116. "Name": "Gfx9OptimizedFastClear"},
  117. "Description": "If enabled,
  118. the meta-equations will be processed by an optimized compute shader and algorithm.",
  119. "Tags": ["General",
  120. "Gfx9"],
  121. "Flags": {"IsBitmask": true,
  122. "IsHex": true},
  123. "Defaults": {"Default": 7},
  124. "Scope": "PrivatePalGfx9Key",
  125. "Type": "uint32",
  126. "VariableName": "optimizedFastClear",
  127. "Name": "OptimizedFastClear",
  128. "HashName": 1875719625},
  129. {"ValidValues": {"Values": [{"Name": "DecompressDcc",
  130. "Value": 1,
  131. "Description": "DCC decompress."},
  132. {"Name": "DecompressHtile",
  133. "Value": 2,
  134. "Description": "Depth expand."},
  135. {"Name": "DecompressFmask",
  136. "Value": 4,
  137. "Description": "FMask decompress."},
  138. {"Name": "DecompressFastClear",
  139. "Value": 8,
  140. "Description": "Fast clear eliminate."}],
  141. "Name": "DecompressMask"},
  142. "Description": "Controls whether the specified decompress / expand / eliminate operations will always occur when requested.",
  143. "Tags": ["General",
  144. "Gfx9"],
  145. "Flags": {"IsBitmask": true,
  146. "IsHex": true},
  147. "Defaults": {"Default": 0},
  148. "Scope": "PrivatePalGfx9Key",
  149. "Type": "uint32",
  150. "VariableName": "alwaysDecompress",
  151. "Name": "AlwaysDecompress",
  152. "HashName": 2887583419},
  153. {"Description": "True to override 1D images to be 2D instead.",
  154. "Tags": ["General"],
  155. "Defaults": {"Default": true},
  156. "Scope": "PrivatePalGfx9Key",
  157. "Type": "bool",
  158. "VariableName": "treat1dAs2d",
  159. "Name": "Treat1dAs2d",
  160. "HashName": 648332656},
  161. {"ValidValues": {"IsEnum": true,
  162. "IsExclusive": true,
  163. "Values": [{"Name": "Gfx10ForceWaveBreakSizeNone",
  164. "Value": 0,
  165. "Description": "No wave breaks by region."},
  166. {"Name": "Gfx10ForceWaveBreakSize8x8",
  167. "Value": 1,
  168. "Description": "8x8 region size."},
  169. {"Name": "Gfx10ForceWaveBreakSize16x16",
  170. "Value": 2,
  171. "Description": "16x16 region size."},
  172. {"Name": "Gfx10ForceWaveBreakSize32x32",
  173. "Value": 3,
  174. "Description": "32x32 region size."},
  175. {"Name": "Gfx10ForceWaveBreakSizeClient",
  176. "Value": 4,
  177. "Description": "Use client specified value."}],
  178. "Name": "Gfx10ForceWaveBreakSize"},
  179. "Description": "Forces the size of a wave break; over-rides client-specified value.",
  180. "Tags": ["General",
  181. "Gfx10"],
  182. "Defaults": {"Default": "Gfx10ForceWaveBreakSizeClient"},
  183. "Scope": "PrivatePalGfx9Key",
  184. "Type": "enum",
  185. "VariableName": "forceWaveBreakSize",
  186. "Name": "ForceWaveBreakSize",
  187. "HashName": 3257946177},
  188. {"Description": "Affects tiled-to-tiled image copies on the GFX10 SDMA engine where both images are compressed Set to true to leave the source image in a compressed state,
  189. set to false to leave the dest image in a compressed state.",
  190. "Tags": ["General",
  191. "Gfx10"],
  192. "Defaults": {"Default": true},
  193. "Scope": "PrivatePalGfx9Key",
  194. "Type": "bool",
  195. "VariableName": "sdmaPreferCompressedSource",
  196. "Name": "SdmaPreferCompressedSource",
  197. "HashName": 1884222990},
  198. {"ValidValues": {"IsEnum": true,
  199. "Values": [{"Name": "Gfx10UseCompToSingleNone",
  200. "Value": 0,
  201. "Description": "Use comp-to-reg all image type."},
  202. {"Name": "Gfx10UseCompToSingle2d",
  203. "Value": 1,
  204. "Description": "Use comp-to-single for 2d image."},
  205. {"Name": "Gfx10UseCompToSingle2dArray",
  206. "Value": 2,
  207. "Description": "Use comp-to-single for 2d array image."},
  208. {"Name": "Gfx10UseCompToSingleMsaa",
  209. "Value": 4,
  210. "Description": "Use comp-to-single for MSAA image."},
  211. {"Name": "Gfx10UseCompToSingle3D",
  212. "Value": 8,
  213. "Description": "Use comp-to-single for 3d image."},
  214. {"Name": "Gfx10DisableCompToReg",
  215. "Value": 16,
  216. "Description": "If set,
  217. comp-to-reg rendering will be disabled for images that were cleared with comp-to-single."},
  218. {"Name": "Gfx10UseCompToSingle8bpp",
  219. "Value": 32,
  220. "Description": "If set,
  221. use comp-to-single for 8bpp image."},
  222. {"Name": "Gfx10UseCompToSingle16bpp",
  223. "Value": 64,
  224. "Description": "If set,
  225. use comp-to-single for 16bpp image."}],
  226. "Name": "Gfx10UseCompToSingle"},
  227. "Description": "Whether we need to set first pixel of each block that corresponds to 1 byte in DCC memory,
  228. and don't need to do a fast clear eliminate based on image type.",
  229. "Tags": ["General",
  230. "Gfx10"],
  231. "Flags": {"IsBitmask": true,
  232. "IsHex": true},
  233. "Defaults": {"Default": 31},
  234. "Scope": "PrivatePalGfx9Key",
  235. "Type": "uint32",
  236. "VariableName": "useCompToSingle",
  237. "Name": "UseCompToSingle",
  238. "HashName": 3110040174},
  239. {"Description": "Forces a fast clear code to be the regular clear code and turns off AC01 compression which makes sure the four 'magic' compressed clear codes aren't used.",
  240. "Tags": ["Color Targets",
  241. "Gfx9"],
  242. "Defaults": {"Default": false},
  243. "Scope": "PrivatePalGfx9Key",
  244. "Type": "bool",
  245. "VariableName": "forceRegularClearCode",
  246. "Name": "ForceRegularClearCode",
  247. "HashName": 2537383476},
  248. {"Description": "GFX11 adds support that allows DCC to always support format replacement",
  249. "Tags": ["Color Targets",
  250. "Gfx11"],
  251. "Defaults": {"Default": true},
  252. "Scope": "PrivatePalGfx9Key",
  253. "Type": "bool",
  254. "VariableName": "gfx11AlwaysAllowDccFormatReplacement",
  255. "Name": "Gfx11AlwaysAllowDccFormatReplacement",
  256. "OrBuildTypes": ["PAL_BUILD_GFX11"],
  257. "HashName": 3873230631},
  258. {"ValidValues": {"Values": [{"LogicOp": "GreaterThanOrEqual",
  259. "Description": "You cannot get rid of the metadata by multiplying by 0. That would cause problems.",
  260. "Value": 1}]},
  261. "Description": "Multiplies the size of the metadata surface by this amount. Metadata surface size works in powers of 2. Non power of 2 multiples might work,
  262. but it won't be a value that is actaully returned by addrlib.",
  263. "Tags": ["General",
  264. "Gfx11"],
  265. "Defaults": {"Default": 1},
  266. "Scope": "PrivatePalGfx9Key",
  267. "Type": "uint32",
  268. "VariableName": "gfx11MetadataSizeMultiplier",
  269. "Name": "Gfx11MetadataSizeMultiplier",
  270. "OrBuildTypes": ["PAL_BUILD_GFX11"],
  271. "HashName": 1965517133},
  272. {"Description": "The final alignment of the metadata will be the result of Max(addrlib DCC alignment,
  273. gfx11OverrideMetadataAlignment).",
  274. "Tags": ["General",
  275. "Gfx11"],
  276. "Flags": {"IsHex": true},
  277. "Defaults": {"Default": 0},
  278. "Scope": "PrivatePalGfx9Key",
  279. "Type": "uint32",
  280. "VariableName": "gfx11OverrideMetadataAlignment",
  281. "Name": "Gfx11OverrideMetadataAlignment",
  282. "OrBuildTypes": ["PAL_BUILD_GFX11"],
  283. "HashName": 3311065220},
  284. {"Description": "Forces use of a graphics fill memory path on command buffers that supports graphics ops",
  285. "Tags": ["General",
  286. "Gfx9"],
  287. "Defaults": {"Default": false},
  288. "Scope": "PrivatePalGfx9Key",
  289. "Type": "bool",
  290. "VariableName": "forceGraphicsFillMemoryPath",
  291. "Name": "ForceGraphicsFillMemoryPath",
  292. "HashName": 451570688},
  293. {"Description": "Controls whether to wait after F/I when changing targets within a Metadata mip tail region. This can resolve corruptions related to metadata cache conflicts.",
  294. "Tags": ["Cache flush",
  295. "Gfx9"],
  296. "Defaults": {"Default": false},
  297. "Scope": "PrivatePalGfx9Key",
  298. "Type": "bool",
  299. "VariableName": "waitOnMetadataMipTail",
  300. "Name": "WaitOnMetadataMipTail",
  301. "HashName": 2328100940},
  302. {"Description": "If true,
  303. writes the COLOR_SRC_OPT and COLOR_DST_OPT bits of theSX_MRT#_BLEND_OPT for Blend States.",
  304. "Tags": ["Color Targets",
  305. "Gfx9"],
  306. "Defaults": {"Default": true},
  307. "Scope": "PrivatePalGfx9Key",
  308. "Type": "bool",
  309. "VariableName": "blendOptimizationsEnable",
  310. "Name": "BlendOptimizationEnable",
  311. "HashName": 3560979294},
  312. {"Description": "If true,
  313. DCC will be used to support fast color clears on singlesampled Color Target Images.",
  314. "Tags": ["Color Targets",
  315. "Gfx9"],
  316. "Defaults": {"Default": true},
  317. "Scope": "PrivatePalGfx9Key",
  318. "Type": "bool",
  319. "VariableName": "fastColorClearEnable",
  320. "Name": "FastColorClearEnable",
  321. "HashName": 1938040824},
  322. {"Description": "If true,
  323. DCC will be used to support fast color clears on singlesampled 3D Color Target Images.",
  324. "Tags": ["Color Targets",
  325. "Gfx9"],
  326. "Defaults": {"Default": true},
  327. "Scope": "PrivatePalGfx9Key",
  328. "Type": "bool",
  329. "VariableName": "fastColorClearOn3dEnable",
  330. "Name": "FastColorClearOn3DEnable",
  331. "HashName": 655987862},
  332. {"Description": "Controls the setting of the CB_COLOR_INFO.FMASK_COMPRESSION_DISABLE bit.",
  333. "Tags": ["Color Targets",
  334. "Gfx9"],
  335. "Defaults": {"Default": false},
  336. "Scope": "PrivatePalGfx9Key",
  337. "Type": "bool",
  338. "VariableName": "fmaskCompressDisable",
  339. "Name": "FmaskCompressDisable",
  340. "HashName": 2717822859},
  341. {"Description": "If true,
  342. allows for non-zero fMask pipe-bank-xor.",
  343. "Tags": ["Color Targets",
  344. "Gfx9"],
  345. "Defaults": {"Default": false},
  346. "Scope": "PrivatePalGfx9Key",
  347. "Type": "bool",
  348. "VariableName": "fmaskAllowPipeBankXor",
  349. "Name": "FmaskAllowPipeBankXor",
  350. "HashName": 4218731941},
  351. {"ValidValues": {"IsEnum": true,
  352. "Values": [{"Name": "Gfx9DccOnComputeInit",
  353. "Value": 1,
  354. "Description": "One time init"},
  355. {"Name": "Gfx9DccOnComputeFastClear",
  356. "Value": 2,
  357. "Description": "Fast color clear."}],
  358. "Name": "Gfx9DccOnCompute"},
  359. "Description": "Determines the situations on which a compute shader will be used for DCC access.",
  360. "Tags": ["Color Targets",
  361. "Gfx9"],
  362. "Flags": {"IsBitmask": true,
  363. "IsHex": true},
  364. "Defaults": {"Default": 3},
  365. "Scope": "PrivatePalGfx9Key",
  366. "Type": "uint32",
  367. "VariableName": "dccOnComputeEnable",
  368. "Name": "DccOnComputeEnable",
  369. "HashName": 950561670},
  370. {"ValidValues": {"IsEnum": true,
  371. "Values": [{"Name": "Gfx10CbDbCachePolicyLruCmask",
  372. "Value": 1,
  373. "Description": "Use cache policy LRU for CMASK"},
  374. {"Name": "Gfx10CbDbCachePolicyLruDcc",
  375. "Value": 2,
  376. "Description": "Use cache policy LRU for DCC"},
  377. {"Name": "Gfx10CbDbCachePolicyLruFmask",
  378. "Value": 4,
  379. "Description": "Use cache policy LRU for FMASK"},
  380. {"Name": "Gfx10CbDbCachePolicyLruHtile",
  381. "Value": 8,
  382. "Description": "Use cache policy LRU for HTILE"},
  383. {"Name": "Gfx10CbDbCachePolicyLruOcclusion",
  384. "Value": 16,
  385. "Description": "Use cache policy LRU for Occlusion"},
  386. {"Name": "Gfx10CbDbCachePolicyLruDepth",
  387. "Value": 256,
  388. "Description": "Use cache policy LRU for Depth. WARNING - Use with caution,
  389. can dominate L2."},
  390. {"Name": "Gfx10CbDbCachePolicyLruStencil",
  391. "Value": 512,
  392. "Description": "Use cache policy LRU for Stencil. WARNING - Use with caution,
  393. can dominate L2."},
  394. {"Name": "Gfx10CbDbCachePolicyLruColor",
  395. "Value": 1024,
  396. "Description": "Use cache policy LRU for Color. WARNING - NOT RECOMMENDED as it can dominate L2."}],
  397. "Name": "Gfx10CbDbCachePolicyLru"},
  398. "Description": "Bitmask of which CB/DB cache policies to follow.",
  399. "Tags": ["Color Targets",
  400. "Gfx10"],
  401. "Flags": {"IsBitmask": true,
  402. "IsHex": true,
  403. "RereadSetting": true},
  404. "Defaults": {"Default": 0},
  405. "Scope": "PrivatePalGfx9Key",
  406. "Type": "uint32",
  407. "VariableName": "cbDbCachePolicy",
  408. "Name": "CbDbCachePolicy",
  409. "HashName": 4090628834},
  410. {"ValidValues": {"Values": [{"Description": "Do not limit number of waves in flight in each compute unit.",
  411. "Value": 0},
  412. {"LogicOp": "LessThanOrEqual",
  413. "Description": "Limits the number of waves in flight in each compute unit.",
  414. "Value": 40}]},
  415. "Description": "Controls the WAVES_PER_SH field in the COMPUTE_RESOURCE_LIMITS register; note that it is specified per-CU rather than per-SH for convenience.",
  416. "Tags": ["Compute Pipelines",
  417. "Gfx9"],
  418. "Defaults": {"Default": 0},
  419. "Scope": "PrivatePalGfx9Key",
  420. "Type": "uint32",
  421. "VariableName": "csMaxWavesPerCu",
  422. "Name": "CsMaxWavesPerCu",
  423. "HashName": 4216700794},
  424. {"ValidValues": {"Values": [{"Description": "Disables locking.",
  425. "Value": 0},
  426. {"LogicOp": "MultipleOf",
  427. "Description": "CS per-SH low threshold for locking.",
  428. "Value": 4}]},
  429. "Description": "Controls the LOCK_THRESHOLD field in the COMPUTE_RESOURCE_LIMITS register. CS per-SH low threshold for locking.",
  430. "Tags": ["Compute Pipelines",
  431. "Gfx9"],
  432. "Defaults": {"Default": 0},
  433. "Scope": "PrivatePalGfx9Key",
  434. "Type": "uint32",
  435. "VariableName": "csLockThreshold",
  436. "Name": "CsLockThreshold",
  437. "HashName": 346110079},
  438. {"ValidValues": {"Values": [{"Name": "CsSimdDestCntlDefault",
  439. "Value": 0,
  440. "Description": "Keeps the default SIMD_DEST_CNTL behavior."},
  441. {"Name": "CsSimdDestCntlForce1",
  442. "Value": 1,
  443. "Description": "Forces SIMD_DEST_CNTL to 1."},
  444. {"Name": "CsSimdDestCntlForce0",
  445. "Value": 2,
  446. "Description": "Forces SIMD_DEST_CNTL to 0."}],
  447. "Name": "CsSimdDestCntlMode"},
  448. "Description": "Controls the SIMD_DEST_CNTL field of the COMPUTE_RESOURCE_LIMITS register. By default,
  449. this flag is calulated based on the number of waves in the dispatch. If the number of waves is a multiple of 4,
  450. this flag is set,
  451. otherwise it is cleared.",
  452. "Tags": ["Compute Pipelines",
  453. "Gfx9"],
  454. "Defaults": {"Default": "CsSimdDestCntlDefault"},
  455. "Scope": "PrivatePalGfx9Key",
  456. "Type": "enum",
  457. "VariableName": "csSimdDestCntl",
  458. "Name": "CsSimdDestCntl",
  459. "HashName": 3574730191},
  460. {"Description": "Controls the value of the COMPUTE_DISPATCH_INTERLEAVE register. This register governs how many thread groups are sent to one SE before switching to the next one. This setting will override the clients behaviour.",
  461. "Tags": ["Compute Pipelines",
  462. "Gfx11"],
  463. "ValidValues": {"IsEnum": true,
  464. "Values": [{"Name": "CsDispatchInterleaveSizeHonorClient",
  465. "Value": 0,
  466. "Description": "Leave the interleave size determination to the client."},
  467. {"Name": "OverrideCsDispatchInterleaveSizeDisabled",
  468. "Value": 1,
  469. "Description": "Disable interleaving."},
  470. {"Name": "OverrideCsDispatchInterleaveSize128",
  471. "Value": 2,
  472. "Description": "Switch at 128 thread groups."},
  473. {"Name": "OverrideCsDispatchInterleaveSize256",
  474. "Value": 3,
  475. "Description": "Switch at 256 thread groups."},
  476. {"Name": "OverrideCsDispatchInterleaveSize512",
  477. "Value": 4,
  478. "Description": "Switch at 512 thread groups."}],
  479. "Name": "OverrideCsDispatchInterleaveSize"},
  480. "Defaults": {"Default": "CsDispatchInterleaveSizeHonorClient"},
  481. "Scope": "PrivatePalGfx9Key",
  482. "Type": "enum",
  483. "VariableName": "overrideCsDispatchInterleaveSize",
  484. "Name": "OverrideCsDispatchInterleaveSize",
  485. "OrBuildTypes": ["PAL_BUILD_GFX11"],
  486. "HashName": 3162601057},
  487. {"Description": "If true,
  488. HTile will be enabled for depth/stencil images.",
  489. "Tags": ["Depth/Stencil",
  490. "Gfx9"],
  491. "Defaults": {"Default": true},
  492. "Scope": "PrivatePalGfx9Key",
  493. "Type": "bool",
  494. "VariableName": "htileEnable",
  495. "Name": "HtileEnable",
  496. "HashName": 2379988876},
  497. {"Description": "Toggle between DB_Z_INFO.NUM_SAMPLES = 3 (legacy) and DB_Z_INFO.NUM_SAMPLES = coverage_samples (from MSAA state object)",
  498. "Tags": ["Depth/Stencil"],
  499. "Defaults": {"Default": false},
  500. "OrBuildTypes": ["PAL_BUILD_NAVI3X"],
  501. "Scope": "PrivatePalGfx9Key",
  502. "Type": "bool",
  503. "VariableName": "useLegacyDbZInfo",
  504. "Name": "UseLegacyDbZInfo",
  505. "HashName": 3281714341},
  506. {"Description": "If true,
  507. the ITERATE_256 bit will always be set and iterate256 optimization will be disabled. Pertains to GFX10 only",
  508. "Tags": ["Depth/Stencil",
  509. "Gfx9"],
  510. "Defaults": {"Default": false},
  511. "Scope": "PrivatePalGfx9Key",
  512. "Type": "bool",
  513. "VariableName": "disableIterate256Opt",
  514. "Name": "DisableIterate256Opt",
  515. "HashName": 3148646221},
  516. {"Description": "If true,
  517. allow depth copy resolve.",
  518. "Tags": ["Depth/Stencil",
  519. "Gfx9"],
  520. "Defaults": {"Default": true},
  521. "Flags": {"RereadSetting": true},
  522. "Scope": "PrivatePalGfx9Key",
  523. "Type": "bool",
  524. "VariableName": "allowDepthCopyResolve",
  525. "Name": "AllowDepthCopyResolve",
  526. "HashName": 3933921170},
  527. {"Description": "If true,
  528. depth compression will be enabled.",
  529. "Tags": ["Depth/Stencil",
  530. "Gfx9"],
  531. "Defaults": {"Default": true},
  532. "DependsOn": {"Settings": [{"Values": [true],
  533. "Name": "Gfx9HtileEnable"}]},
  534. "Scope": "PrivatePalGfx9Key",
  535. "Type": "bool",
  536. "VariableName": "depthCompressEnable",
  537. "Name": "DepthCompressEnable",
  538. "HashName": 3404166969},
  539. {"Description": "If true,
  540. stencil compression will be enabled.",
  541. "Tags": ["Depth/Stencil",
  542. "Gfx9"],
  543. "Defaults": {"Default": true},
  544. "DependsOn": {"Settings": [{"Values": [true],
  545. "Name": "Gfx9HtileEnable"}]},
  546. "Scope": "PrivatePalGfx9Key",
  547. "Type": "bool",
  548. "VariableName": "stencilCompressEnable",
  549. "Name": "StencilCompressEnable",
  550. "HashName": 3041432192},
  551. {"Description": "If true,
  552. DB preloading will be enabled.",
  553. "Tags": ["Depth/Stencil",
  554. "Gfx9"],
  555. "Defaults": {"Default": true},
  556. "DependsOn": {"Settings": [{"Values": [true],
  557. "Name": "Gfx9HtileEnable"}]},
  558. "Scope": "PrivatePalGfx9Key",
  559. "Type": "bool",
  560. "VariableName": "dbPreloadEnable",
  561. "Name": "DbPreloadEnable",
  562. "HashName": 2946289999},
  563. {"Description": "If true,
  564. DB preload window dimensions will be used instead of the depth buffer's dimensions.",
  565. "Tags": ["Depth/Stencil",
  566. "Gfx9"],
  567. "Defaults": {"Default": false},
  568. "DependsOn": {"Settings": [{"Values": [true],
  569. "Name": "Gfx9HtileEnable"}]},
  570. "Scope": "PrivatePalGfx9Key",
  571. "Type": "bool",
  572. "VariableName": "dbPreloadWinEnable",
  573. "Name": "DbPreloadWinEnable",
  574. "HashName": 4030437501},
  575. {"Description": "If true,
  576. per-tile tracking of exp/clear will be enabled.",
  577. "Tags": ["Depth/Stencil",
  578. "Gfx9"],
  579. "Defaults": {"Default": false},
  580. "DependsOn": {"Settings": [{"Values": [true],
  581. "Name": "Gfx9HtileEnable"}]},
  582. "Scope": "PrivatePalGfx9Key",
  583. "Type": "bool",
  584. "VariableName": "dbPerTileExpClearEnable",
  585. "Name": "DbPerTileExpClearEnable",
  586. "HashName": 399713165},
  587. {"Description": "If true,
  588. hierarchical depth testing will be enabled.",
  589. "Tags": ["Depth/Stencil",
  590. "Gfx9"],
  591. "Defaults": {"Default": true},
  592. "DependsOn": {"Settings": [{"Values": [true],
  593. "Name": "Gfx9HtileEnable"}]},
  594. "Scope": "PrivatePalGfx9Key",
  595. "Type": "bool",
  596. "VariableName": "hiDepthEnable",
  597. "Name": "HiDepthEnable",
  598. "HashName": 950148604},
  599. {"Description": "If true,
  600. hierarchical stencil testing will be enabled.",
  601. "Tags": ["Depth/Stencil",
  602. "Gfx9"],
  603. "Defaults": {"Default": true},
  604. "DependsOn": {"Settings": [{"Values": [true],
  605. "Name": "Gfx9HtileEnable"}]},
  606. "Scope": "PrivatePalGfx9Key",
  607. "Type": "bool",
  608. "VariableName": "hiStencilEnable",
  609. "Name": "HiStencilEnable",
  610. "HashName": 37862373},
  611. {"ValidValues": {"Values": [{"Description": "256-bit request size.",
  612. "Value": 0},
  613. {"Description": "512-bit request size.",
  614. "Value": 1}]},
  615. "Description": "Specifies the DB read request size.",
  616. "Tags": ["Depth/Stencil",
  617. "Gfx9"],
  618. "Defaults": {"Default": 0},
  619. "Scope": "PrivatePalGfx9Key",
  620. "Type": "uint32",
  621. "VariableName": "dbRequestSize",
  622. "Name": "DbRequestSize",
  623. "Flags": {"IsHex": true},
  624. "HashName": 2835145461},
  625. {"Description": "Controls the DB_RENDER_OVERRIDE2.DISABLE_COLOR_ON_VALIDATION register field",
  626. "Tags": ["Depth/Stencil",
  627. "Gfx9"],
  628. "Defaults": {"Default": false},
  629. "Scope": "PrivatePalGfx9Key",
  630. "Type": "bool",
  631. "VariableName": "dbDisableColorOnValidation",
  632. "Name": "DbDisableColorOnValidation",
  633. "HashName": 4057416918},
  634. {"ValidValues": {"IsExclusive": true,
  635. "Values": [{"Name": "OutOfOrderPrimDisable",
  636. "Value": 0,
  637. "Description": "Always disable."},
  638. {"Name": "OutOfOrderPrimSafe",
  639. "Value": 1,
  640. "Description": "Enable when known to not affect render output."},
  641. {"Name": "OutOfOrderPrimAggressive",
  642. "Value": 2,
  643. "Description": "Enable when suspected to not affect render output."},
  644. {"Name": "OutOfOrderPrimAlways",
  645. "Value": 3,
  646. "Description": "Always enable."}],
  647. "Name": "OutOfOrderPrimMode"},
  648. "Description": "Enable out-of-order primitive mode. Only available on parts that have more than one VGT.",
  649. "Tags": ["Graphics Pipelines",
  650. "Gfx9"],
  651. "Defaults": {"Default": "OutOfOrderPrimSafe"},
  652. "Scope": "PrivatePalGfx9Key",
  653. "Type": "enum",
  654. "VariableName": "enableOutOfOrderPrimitives",
  655. "Name": "EnableOutOfOrderPrimitives",
  656. "HashName": 4194624623},
  657. {"ValidValues": {"Values": [{"LogicOp": "LessThanOrEqual",
  658. "Description": "Values are log(2) of the watermark.",
  659. "Value": 7}]},
  660. "Description": "The watermark value for out-of-order primitives.",
  661. "Tags": ["Graphics Pipelines",
  662. "Gfx9"],
  663. "Defaults": {"Default": 7},
  664. "Scope": "PrivatePalGfx9Key",
  665. "Type": "uint32",
  666. "VariableName": "outOfOrderWatermark",
  667. "Name": "OutOfOrderWatermark",
  668. "HashName": 2921949520},
  669. {"Description": "If true,
  670. disables vertex grouping specified in GE_CNTL register for Gfx10+ ASICs by setting VERT_GRP_SIZE to 256.",
  671. "Tags": ["General",
  672. "Gfx10"],
  673. "Defaults": {"Default": true},
  674. "Scope": "PrivatePalGfx9Key",
  675. "Type": "bool",
  676. "VariableName": "disableGeCntlVtxGrouping",
  677. "Name": "DisableGeCntlVtxGrouping",
  678. "HashName": 3045229933},
  679. {"Description": "If true,
  680. the HW-GS stage will prefer to send a wave to each SIMD in a CU before moving to the next enabled CU. If false,
  681. HW-GS prefers to send only one wave to each CU before moving to the next enabled CU.",
  682. "Tags": ["Graphics Pipelines",
  683. "Gfx9"],
  684. "Defaults": {"Default": false},
  685. "Scope": "PrivatePalGfx9Key",
  686. "Type": "bool",
  687. "VariableName": "gsCuGroupEnabled",
  688. "Name": "GsCuGroupEnabled",
  689. "HashName": 2295262967},
  690. {"ValidValues": {"Values": [{"LogicOp": "MultipleOf",
  691. "Description": "Must be 128 dword aligned.",
  692. "Value": 128}]},
  693. "Description": "Maximum amount of LDS space to alloc for each on-chip GS subgroup,
  694. in DWORDs.",
  695. "Tags": ["Graphics Pipelines",
  696. "Gfx9"],
  697. "Defaults": {"Default": 8192},
  698. "Scope": "PrivatePalGfx9Key",
  699. "Type": "uint32",
  700. "VariableName": "gsMaxLdsSize",
  701. "Name": "GsMaxLdsSize",
  702. "HashName": 3033759533},
  703. {"ValidValues": {"Values": [{"LogicOp": "LessThanOrEqual",
  704. "Value": 127}]},
  705. "Description": "Controls the value for late-alloc GS.",
  706. "Tags": ["Graphics Pipelines",
  707. "Gfx9"],
  708. "Defaults": {"Default": 16},
  709. "Scope": "PrivatePalGfx9Key",
  710. "Type": "uint32",
  711. "VariableName": "lateAllocGs",
  712. "Name": "LateAllocGs",
  713. "HashName": 1802508004},
  714. {"ValidValues": {"IsEnum": true,
  715. "Values": [{"Name": "LateAllocVsBehaviorLegacy",
  716. "Value": 0,
  717. "Description": "Enable late-alloc vs,
  718. but incorrectly masks off CUs in dynamic mode"},
  719. {"Name": "LateAllocVsBehaviorDynamicEnableAllCus",
  720. "Value": 1,
  721. "Description": "Enable late-alloc vs,
  722. but don't mask off CUs"},
  723. {"Name": "LateAllocVsBehaviorDisabled",
  724. "Value": 2,
  725. "Description": "Disable late-alloc vs entirely"}],
  726. "Name": "LateAllocVsBehavior"},
  727. "Description": "Controls the behavior for late-alloc VS.",
  728. "Tags": ["Graphics Pipelines",
  729. "Gfx9"],
  730. "Defaults": {"Default": "LateAllocVsBehaviorLegacy"},
  731. "Scope": "PrivatePalGfx9Key",
  732. "Type": "enum",
  733. "VariableName": "lateAllocVs",
  734. "Name": "LateAllocVs",
  735. "HashName": 1805023933},
  736. {"Description": "Clamps the maximum tessellation factor.",
  737. "Tags": ["Graphics Pipelines",
  738. "Gfx9"],
  739. "Defaults": {"Default": 64.0},
  740. "Scope": "PrivatePalGfx9Key",
  741. "Type": "float",
  742. "VariableName": "maxTessFactor",
  743. "Name": "MaxTessFactor",
  744. "HashName": 3272504111},
  745. {"ValidValues": {"Values": [{"LogicOp": "LessThanOrEqual",
  746. "Description": "Number of offchip tessellation buffers.",
  747. "Value": 508}]},
  748. "Description": "Controls the number of LDS buffers used for offchip tessellation: Gfx9: 1->508: Number of offchip tessellation buffers.",
  749. "Tags": ["Graphics Pipelines",
  750. "Gfx9"],
  751. "Defaults": {"Default": 508},
  752. "Scope": "PrivatePalGfx9Key",
  753. "Type": "uint32",
  754. "VariableName": "numOffchipLdsBuffers",
  755. "Name": "NumOffchipLdsBuffers",
  756. "HashName": 4150915470},
  757. {"Description": "Controls the number of patches-per-thread-group to run when tessellationis enabled. This value is normally limited by hardware resources (LDS,TFBuffer,
  758. Threads). - Setting to 1 will always work,
  759. but is slowest. - Setting to 0 will allow the driver to choose the optimal value. - Any other value will be used (clamped based on HW resources). Offchip Tess rounds this to the nearest multiple of four.",
  760. "Tags": ["Graphics Pipelines",
  761. "Gfx9"],
  762. "Defaults": {"Default": 0},
  763. "Scope": "PrivatePalGfx9Key",
  764. "Type": "uint32",
  765. "VariableName": "numTessPatchesPerTg",
  766. "Name": "NumTessPatchesPerThreadGroup",
  767. "HashName": 2699532302},
  768. {"ValidValues": {"IsExclusive": true,
  769. "Values": [{"Name": "OffchipLdsBufferSize8192",
  770. "Value": 0,
  771. "Description": "8k DWORDs."},
  772. {"Name": "OffchipLdsBufferSize4096",
  773. "Value": 1,
  774. "Description": "4k DWORDs."},
  775. {"Name": "OffchipLdsBufferSize2048",
  776. "Value": 2,
  777. "Description": "2k DWORDs."},
  778. {"Name": "OffchipLdsBufferSize1024",
  779. "Value": 3,
  780. "Description": "1k DWORDs."}],
  781. "Name": "OffchipLdsBufferSize"},
  782. "Description": "Controls the size of each offchip LDS Buffer.",
  783. "Tags": ["Graphics Pipelines",
  784. "Gfx9"],
  785. "Defaults": {"Default": "OffchipLdsBufferSize8192"},
  786. "Scope": "PrivatePalGfx9Key",
  787. "Type": "enum",
  788. "VariableName": "offchipLdsBufferSize",
  789. "Name": "OffchipLdsBufferSize",
  790. "HashName": 4262839798},
  791. {"Description": "Used by the hardware when distributed tessellation is active: the min tess factors for each patch processed by a VGT are accumulated. When the sum exceeds this threshold,
  792. the next patch is sent to a different VGT.",
  793. "Tags": ["Graphics Pipelines",
  794. "Gfx9"],
  795. "Defaults": {"Default": 12},
  796. "Scope": "PrivatePalGfx9Key",
  797. "Type": "uint32",
  798. "VariableName": "isolineDistributionFactor",
  799. "Name": "IsolineDistributionFactor",
  800. "HashName": 951961633},
  801. {"Description": "Used by the hardware when distributed tessellation is active: the min tess factors for each patch processed by a VGT are accumulated. When the sum exceeds this threshold,
  802. the next patch is sent to a different VGT. Recommended to be higher than quad factor",
  803. "Tags": ["Graphics Pipelines",
  804. "Gfx9"],
  805. "Defaults": {"Default": 30},
  806. "Scope": "PrivatePalGfx9Key",
  807. "Type": "uint32",
  808. "VariableName": "triDistributionFactor",
  809. "Name": "TriDistributionFactor",
  810. "HashName": 2867566175},
  811. {"Description": "Used by the hardware when distributed tessellation is active: the min tess factors for each patch processed by a VGT are accumulated. When the sum exceeds this threshold,
  812. the next patch is sent to a different VGT.",
  813. "Tags": ["Graphics Pipelines",
  814. "Gfx9"],
  815. "Defaults": {"Default": 24},
  816. "Scope": "PrivatePalGfx9Key",
  817. "Type": "uint32",
  818. "VariableName": "quadDistributionFactor",
  819. "Name": "QuadDistributionFactor",
  820. "HashName": 860015919},
  821. {"Description": "Used by the hardware when distributed tessellation is in DONUT mode: the min tess factor for each patch is tested against this threshold to determine whether a patch gets split up. If the patch isn't split,
  822. it still increments the accumulator for the Patch distribution factor.",
  823. "Tags": ["Graphics Pipelines",
  824. "Gfx9"],
  825. "Defaults": {"Default": 24},
  826. "Scope": "PrivatePalGfx9Key",
  827. "Type": "uint32",
  828. "VariableName": "donutDistributionFactor",
  829. "Name": "DonutDistributionFactor",
  830. "HashName": 891881186},
  831. {"Description": "Used when the distribution mode is TRAPEZOID for quad and tri domain types. The number of donuts in the patch are compared against this value to detemine whether this donut gets split up into trapezoids (needs the patch to be in donut mode). A value of 0 or 1 will be treated as 2. The innermost donut is never allowed to be broken into trapezoids.",
  832. "Tags": ["Graphics Pipelines",
  833. "Gfx9"],
  834. "Defaults": {"Default": 6},
  835. "Scope": "PrivatePalGfx9Key",
  836. "Type": "uint32",
  837. "VariableName": "trapezoidDistributionFactor",
  838. "Name": "TrapezoidDistributionFactor",
  839. "HashName": 674984646},
  840. {"Description": "Number of primitives sent to one VGT before switching to the next. Valid range is 1-65536,
  841. values larger than 256 are expected to hurtperformance. This setting only affects non-tessellation and non-NGG pipelines.",
  842. "Tags": ["Graphics Pipelines",
  843. "Gfx9"],
  844. "Defaults": {"Default": 128},
  845. "Scope": "PrivatePalGfx9Key",
  846. "Type": "uint32",
  847. "VariableName": "primGroupSize",
  848. "Name": "PrimgroupSize",
  849. "HashName": 3402504325},
  850. {"Description": "If true,
  851. RbPlus will be enabled for ASIC of RbPlus capability.",
  852. "Tags": ["Graphics Pipelines",
  853. "Gfx9"],
  854. "Defaults": {"Default": true},
  855. "Scope": "PrivatePalGfx9Key",
  856. "Type": "bool",
  857. "VariableName": "gfx9RbPlusEnable",
  858. "Name": "RbPlusEnable",
  859. "HashName": 2122164302},
  860. {"Description": "Value to program the number of cache lines for SPI_SHADER_LATE_ALLOC_VS to. The range is [0,
  861. 63]. The default value of 255 changes to (numCUs/SA - 1) * 4.",
  862. "Tags": ["Graphics Pipelines",
  863. "Gfx10"],
  864. "ValidValues": {"Values": [{"LogicOp": "LessThanOrEqual",
  865. "Description": "Number of cache lines to program SPI_SHADER_LATE_ALLOC_VS to.",
  866. "Value": 63}]},
  867. "Defaults": {"Default": 255},
  868. "Scope": "PrivatePalGfx9Key",
  869. "Type": "uint32",
  870. "VariableName": "gfx10SpiShaderLateAllocVsNumLines",
  871. "Name": "Gfx10SpiShaderLateAllocVsNumLines",
  872. "HashName": 1830704021},
  873. {"Description": "Value to program GE_PC_ALLOC::NUM_PC_LINES to for legacy and NGG-passthru pipelines. The value in this setting is per shader-engine. The driver multiplies this value by the number of shader engines and then subtracts 1.",
  874. "Tags": ["Graphics Pipelines",
  875. "Gfx10"],
  876. "Defaults": {"Default": 128},
  877. "Scope": "PrivatePalGfx9Key",
  878. "Type": "uint32",
  879. "VariableName": "gfx10GePcAllocNumLinesPerSeLegacyNggPassthru",
  880. "Name": "Gfx10GePcAllocNumLinesPerSeLegacyNggPassthru",
  881. "Flags": {"IsHex": true,
  882. "RereadSetting": true},
  883. "HashName": 2459292446},
  884. {"Description": "When TRUE,
  885. stops the driver from disabling any CUs/WGPs to avoid an NGG deadlock. Typically the driver disables 1 CU on GFX9 and 1 WGP on GFX10. It is up to the user to avoid any dead locks. This can be done by disabling late alloc.",
  886. "Tags": ["Graphics Pipelines",
  887. "Gfx9",
  888. "Gfx10"],
  889. "Defaults": {"Default": false},
  890. "Scope": "PrivatePalGfx9Key",
  891. "Type": "bool",
  892. "VariableName": "allowNggOnAllCusWgps",
  893. "Name": "AllowNggOnAllCusWgps",
  894. "Flags": {"RereadSetting": true},
  895. "HashName": 101765188},
  896. {"Description": "Value to program GE_PC_ALLOC::NUM_PC_LINES to for NGG-culling pipelines. The value in this setting is per shader-engine. The driver multiplies this value by the number of shader engines and then subtracts 1.",
  897. "Tags": ["Graphics Pipelines",
  898. "Gfx10"],
  899. "Defaults": {"Default": 256},
  900. "Scope": "PrivatePalGfx9Key",
  901. "Type": "uint32",
  902. "VariableName": "gfx10GePcAllocNumLinesPerSeNggCulling",
  903. "Name": "Gfx10GePcAllocNumLinesPerSeNggCulling",
  904. "Flags": {"IsHex": true,
  905. "RereadSetting": true},
  906. "HashName": 665472713},
  907. {"Description": "When value is greater than zero,
  908. then it specifies the number of PS waves to be soft grouped.",
  909. "Tags": ["Graphics Pipelines",
  910. "Gfx9"],
  911. "Defaults": {"Default": 4},
  912. "Scope": "PrivatePalGfx9Key",
  913. "Type": "uint32",
  914. "VariableName": "numPsWavesSoftGroupedPerCu",
  915. "Name": "NumPsWavesSoftGroupedPerCu",
  916. "HashName": 1871590621},
  917. {"Description": "When value is greater than zero,
  918. then it specifies the number of VS waves to be soft grouped.",
  919. "Tags": ["Graphics Pipelines",
  920. "Gfx9"],
  921. "Defaults": {"Default": 0},
  922. "Scope": "PrivatePalGfx9Key",
  923. "Type": "uint32",
  924. "VariableName": "numVsWavesSoftGroupedPerCu",
  925. "Name": "NumVsWavesSoftGroupedPerCu",
  926. "HashName": 4021132771},
  927. {"Description": "If true,
  928. the HW will alternate VGT's between draws rather than between sets of primitives within a draw. True is safer,
  929. but less performant.",
  930. "Tags": ["Graphics Pipelines",
  931. "Gfx9"],
  932. "Defaults": {"Default": false},
  933. "Scope": "PrivatePalGfx9Key",
  934. "Type": "bool",
  935. "VariableName": "switchVgtOnDraw",
  936. "Name": "SwitchVgtOnDraw",
  937. "HashName": 1102013901},
  938. {"Description": "Controls the size of the tess-factor buffer. This size is per-SE,
  939. andmeasured in DWORDs.",
  940. "Tags": ["Graphics Pipelines",
  941. "Gfx9"],
  942. "Defaults": {"Default": "0x3000"},
  943. "Scope": "PrivatePalGfx9Key",
  944. "Type": "uint32",
  945. "VariableName": "tessFactorBufferSizePerSe",
  946. "Name": "TessFactorBufferSizePerSe",
  947. "HashName": 3112016659},
  948. {"Description": "Vertex walking pattern for tessellation: 0: (default) Donut walking pattern for optimal reuse. 1: Single-ring walking pattern,
  949. has suboptimal reuse.",
  950. "Tags": ["Graphics Pipelines",
  951. "Gfx9"],
  952. "Defaults": {"Default": 0},
  953. "Scope": "PrivatePalGfx9Key",
  954. "Type": "uint32",
  955. "VariableName": "disableTessDonutWalkPattern",
  956. "Name": "TessWalkPattern",
  957. "HashName": 2972449453},
  958. {"Description": "If true,
  959. offchip tessellation will always use the maximum number ofLDS buffers possible (based on Chip ID).",
  960. "Tags": ["Graphics Pipelines",
  961. "Gfx9"],
  962. "Defaults": {"Default": true},
  963. "Scope": "PrivatePalGfx9Key",
  964. "Type": "bool",
  965. "VariableName": "useMaxOffchipLdsBuffers",
  966. "Name": "UseMaxOffchipLdsBuffers",
  967. "HashName": 3365086421},
  968. {"Description": "Load half-packed VS waves,
  969. forcing them to use half as much space in the param cache at the expense of inefficient use of ALU resources,
  970. if the export count is >= this threshold. This can help performance in some cases.",
  971. "Tags": ["Graphics Pipelines",
  972. "Gfx9"],
  973. "Defaults": {"Default": 16},
  974. "Scope": "PrivatePalGfx9Key",
  975. "Type": "uint32",
  976. "VariableName": "vsHalfPackThreshold",
  977. "Name": "VsHalfPackThreshold",
  978. "HashName": 987247393},
  979. {"Description": "If true,
  980. forces the VGT to issue a VS wave as soon as a primgroup isfinished.",
  981. "Tags": ["Graphics Pipelines",
  982. "Gfx9"],
  983. "Defaults": {"Default": false},
  984. "Scope": "PrivatePalGfx9Key",
  985. "Type": "bool",
  986. "VariableName": "vsForcePartialWave",
  987. "Name": "VsForcePartialWave",
  988. "HashName": 1946161867},
  989. {"Description": "Current recommendation from the hardware team is to force PA_SC_CONSERVATIVE_RAST_CNTL.COVERAGE_AA_MASK = 0",
  990. "Tags": ["Graphics Pipelines",
  991. "Gfx9"],
  992. "Defaults": {"Default": true},
  993. "Scope": "PrivatePalGfx9Key",
  994. "Type": "bool",
  995. "VariableName": "disableCoverageAaMask",
  996. "Name": "DisableCoverageAaMask",
  997. "HashName": 1829991091},
  998. {"Description": "True forces a BATCH_BREAK event when a new pixel shader is bound. False by default.",
  999. "Tags": ["Graphics Pipelines"],
  1000. "Defaults": {"Default": false},
  1001. "Flags": {"RereadSetting": true},
  1002. "Scope": "PrivatePalGfx9Key",
  1003. "Type": "bool",
  1004. "VariableName": "batchBreakOnNewPixelShader",
  1005. "Name": "BatchBreakOnNewPixelShader",
  1006. "HashName": 3367458304},
  1007. {"Description": "True forces a 'clear_state' command to initialize the context registers to a known state. False will only write the essential subset of registers.",
  1008. "Tags": ["Graphics Pipelines"],
  1009. "Defaults": {"Default": true},
  1010. "Flags": {"RereadSetting": true},
  1011. "Scope": "PrivatePalGfx9Key",
  1012. "Type": "bool",
  1013. "VariableName": "useClearStateToInitialize",
  1014. "Name": "UseClearStateToInitialize",
  1015. "HashName": 1269810789},
  1016. {"Description": "This mask is AND-ed with the driver-decided GS-specific CU_EN mask to further allow limiting of enabled CUs for GS waves. ",
  1017. "Tags": ["Graphics Pipelines",
  1018. "Gfx9"],
  1019. "Defaults": {"Default": 4294967295},
  1020. "Scope": "PrivatePalGfx9Key",
  1021. "Type": "uint32",
  1022. "VariableName": "gsCuEnLimitMask",
  1023. "Name": "GsCuEnLimitMask",
  1024. "Flags": {"IsHex": true},
  1025. "HashName": 3021103171},
  1026. {"Description": "This mask is AND-ed with the driver-decided VS-specific CU_EN mask to further allow limiting of enabled CUs for VS waves. ",
  1027. "Tags": ["Graphics Pipelines",
  1028. "Gfx9"],
  1029. "Defaults": {"Default": 4294967295},
  1030. "Scope": "PrivatePalGfx9Key",
  1031. "Type": "uint32",
  1032. "VariableName": "vsCuEnLimitMask",
  1033. "Name": "VsCuEnLimitMask",
  1034. "Flags": {"IsHex": true},
  1035. "HashName": 989310036},
  1036. {"Description": "This mask is AND-ed with the driver-decided PS-specific CU_EN mask to further allow limiting of enabled CUs for PS waves. ",
  1037. "Tags": ["Graphics Pipelines",
  1038. "Gfx9"],
  1039. "Defaults": {"Default": 4294967295},
  1040. "Scope": "PrivatePalGfx9Key",
  1041. "Type": "uint32",
  1042. "VariableName": "psCuEnLimitMask",
  1043. "Name": "PsCuEnLimitMask",
  1044. "Flags": {"IsHex": true},
  1045. "HashName": 1509811598},
  1046. {"Description": "This mask is AND-ed with the driver-decided CS-specific CU_EN mask to further allow limiting of enabled CUs for CS waves. ",
  1047. "Tags": ["Graphics Pipelines",
  1048. "Gfx9"],
  1049. "Defaults": {"Default": 4294967295},
  1050. "Scope": "PrivatePalGfx9Key",
  1051. "Type": "uint32",
  1052. "VariableName": "csCuEnLimitMask",
  1053. "Name": "CsCuEnLimitMask",
  1054. "Flags": {"IsHex": true},
  1055. "HashName": 3382331351},
  1056. {"Description": "This contains the value that will be set for SPI_GS_THROTTLE_CNTL1. Value is overridden in gfx9SettingsLoader.cpp with the loaded ASIC's default value.",
  1057. "Tags": ["Graphics Pipelines",
  1058. "Gfx11"],
  1059. "Defaults": {"Default": 0},
  1060. "Scope": "PrivatePalGfx9Key",
  1061. "Type": "uint32",
  1062. "VariableName": "defaultSpiGsThrottleCntl1",
  1063. "Name": "DefaultSpiGsThrottleCntl1",
  1064. "Flags": {"IsHex": true},
  1065. "OrBuildTypes": ["PAL_BUILD_GFX11"],
  1066. "HashName": 528198426},
  1067. {"Description": "This contains the value that will be set for SPI_GS_THROTTLE_CNTL2. Value is overridden in gfx9SettingsLoader.cpp with the loaded ASIC's default value.",
  1068. "Tags": ["Graphics Pipelines",
  1069. "Gfx11"],
  1070. "Defaults": {"Default": 0},
  1071. "Scope": "PrivatePalGfx9Key",
  1072. "Type": "uint32",
  1073. "VariableName": "defaultSpiGsThrottleCntl2",
  1074. "Name": "DefaultSpiGsThrottleCntl2",
  1075. "Flags": {"IsHex": true},
  1076. "OrBuildTypes": ["PAL_BUILD_GFX11"],
  1077. "HashName": 511420807},
  1078. {"ValidValues": {"Values": [{"LogicOp": "LessThanOrEqual",
  1079. "Description": "Primitive group size.",
  1080. "Value": 4}]},
  1081. "Description": "This controls the value that will be set for the GFX11 specific GE_CNTL::PRIM_GRP_SIZE. Number of primitives in a primgroup. This will be used by Assembler to create primgroups. Valid values are 1-256. The value written to this register field will be this key's value divided by PRIM_AMP_FACTOR.",
  1082. "Tags": ["Graphics Pipelines",
  1083. "Gfx11"],
  1084. "Defaults": {"Default": 256},
  1085. "Scope": "PrivatePalGfx9Key",
  1086. "Type": "uint32",
  1087. "VariableName": "gfx11GeCntlPrimGrpSize",
  1088. "Name": "Gfx11GeCntlPrimGrpSize",
  1089. "OrBuildTypes": ["PAL_BUILD_GFX11"],
  1090. "HashName": 2467839591},
  1091. {"ValidValues": {"IsEnum": true,
  1092. "Values": [{"Name": "Rsrc4GsThrottlePhEn",
  1093. "Value": 1,
  1094. "Description": "Whether to enable PH_THROTTLE in SPI_SHADER_PGM_RSRC4_GS."},
  1095. {"Name": "Rsrc4GsThrottleSpiEn",
  1096. "Value": 2,
  1097. "Description": "Whether to enable SPI_THROTTLE in SPI_SHADER_PGM_RSRC4_GS."}],
  1098. "Name": "Rsrc4GsThrottle"},
  1099. "Description": "Bitmask of cases where GS wave throttling will be used",
  1100. "Tags": ["Graphics Pipelines"],
  1101. "Flags": {"IsBitmask": true,
  1102. "IsHex": true},
  1103. "Defaults": {"Default": 0},
  1104. "Scope": "PrivatePalGfx9Key",
  1105. "Type": "uint32",
  1106. "VariableName": "rsrc4GsThrottleEn",
  1107. "Name": "Rsrc4GsThrottleEn",
  1108. "OrBuildTypes": ["PAL_BUILD_GFX11",
  1109. "PAL_BUILD_VAN_GOGH_LITE"],
  1110. "HashName": 911415174},
  1111. {"Description": "This contains the size in bytes that we will allocate for attributes through memory. Maximum value is 16MB for the entire chip. The value will 64KB aligned. This value is in bytes.",
  1112. "Tags": ["Graphics Pipelines",
  1113. "Gfx11"],
  1114. "Defaults": {"Default": 1398101},
  1115. "Scope": "PrivatePalGfx9Key",
  1116. "Type": "uint32",
  1117. "VariableName": "gfx11VertexAttributesRingBufferSizePerSe",
  1118. "Name": "Gfx11VertexAttributesRingBufferSizePerSe",
  1119. "OrBuildTypes": ["PAL_BUILD_GFX11"],
  1120. "HashName": 948391987},
  1121. {"ValidValues": {"IsEnum": true,
  1122. "Values": [{"Name": "Gfx11OreoModeBlend",
  1123. "Value": 0,
  1124. "Description": "Pipeline is in blend mode (fail-safe that should work for all cases)."},
  1125. {"Name": "Gfx11OreoModeOpaqueThenBlend",
  1126. "Value": 1,
  1127. "Description": "Pipeline operates in Opaque mode unless overridden by register state back to Blend mode (should be the most performant)."},
  1128. {"Name": "Gfx11OreoModePunchoutThenOpaqueThenBlend",
  1129. "Value": 2,
  1130. "Description": "Pipeline operates in Punchout mode unless reg fallback to Opaque then Blend mode."}],
  1131. "Name": "Gfx11OreoMode"},
  1132. "Description": "Enum to control how the OREO feature works.",
  1133. "Tags": ["Oreo",
  1134. "Gfx11"],
  1135. "Flags": {"IsHex": true},
  1136. "Defaults": {"Default": 1},
  1137. "Scope": "PrivatePalGfx9Key",
  1138. "Type": "uint32",
  1139. "VariableName": "gfx11OreoModeControl",
  1140. "Name": "Gfx11OreoModeControl",
  1141. "OrBuildTypes": ["PAL_BUILD_GFX11"],
  1142. "HashName": 604646373},
  1143. {"Description": "If true,
  1144. disables falling back to blend mode when OREO_MODE = 1 (Gfx11OreoModeControl = 1).",
  1145. "Tags": ["Oreo",
  1146. "Gfx11",
  1147. "ForceOreo",
  1148. "OreoMode"],
  1149. "Defaults": {"Default": false},
  1150. "Scope": "PrivatePalGfx9Key",
  1151. "Type": "bool",
  1152. "VariableName": "gfx11ForceOreoMode",
  1153. "Name": "Gfx11ForceOreoMode",
  1154. "OrBuildTypes": ["PAL_BUILD_GFX11"],
  1155. "HashName": 2553680983},
  1156. {"Description": "If true,
  1157. forces DB to make every wave conflict with the prior wave..",
  1158. "Tags": ["Oreo",
  1159. "Gfx11",
  1160. "Export",
  1161. "ExportOrder",
  1162. "ForceOrder"],
  1163. "Defaults": {"Default": false},
  1164. "Scope": "PrivatePalGfx9Key",
  1165. "Type": "bool",
  1166. "VariableName": "gfx11ForceExportOrder",
  1167. "Name": "Gfx11ForceExportOrderControl",
  1168. "OrBuildTypes": ["PAL_BUILD_GFX11"],
  1169. "HashName": 829262094},
  1170. {"Description": "Maximum shader prefetch size in bytes. Set arbitrarily large to use driver default. Set to zero to disable",
  1171. "Tags": ["Shader Options",
  1172. "Gfx9"],
  1173. "Defaults": {"Default": 4294967295},
  1174. "Flags": {"RereadSetting": true},
  1175. "Scope": "PrivatePalGfx9Key",
  1176. "Type": "uint32",
  1177. "VariableName": "shaderPrefetchSizeBytes",
  1178. "Name": "ShaderPrefetchSizeBytes",
  1179. "HashName": 2362905229},
  1180. {"Description": "Specifies the number of entries in the DrawData and PayloadData shader rings for Task and Mesh shaders,
  1181. per SE. Must be a power-of-2.",
  1182. "Tags": ["Shader Options",
  1183. "Gfx10"],
  1184. "Defaults": {"Default": 256},
  1185. "Scope": "PrivatePalGfx9Key",
  1186. "Type": "uint32",
  1187. "VariableName": "numTsMsDrawEntriesPerSe",
  1188. "Name": "NumTsMsDrawEntriesPerSe",
  1189. "HashName": 1975499791},
  1190. {"Description": "Whether or not PAL supports NGG. For quality purposes only.",
  1191. "Tags": ["NGG Controls",
  1192. "Gfx9"],
  1193. "Defaults": {"Default": true},
  1194. "Flags": {"RereadSetting": true},
  1195. "Scope": "PrivatePalGfx9Key",
  1196. "Type": "bool",
  1197. "VariableName": "nggSupported",
  1198. "Name": "NggSupported",
  1199. "HashName": 2715700875},
  1200. {"Description": "Controls the value for late-alloc GS for NGG pipelines. Can be no more than 127.",
  1201. "Tags": ["NGG Controls",
  1202. "Gfx9"],
  1203. "Defaults": {"Default": 127},
  1204. "Scope": "PrivatePalGfx9Key",
  1205. "Type": "uint32",
  1206. "VariableName": "nggLateAllocGs",
  1207. "Name": "NggLateAllocGs",
  1208. "Flags": {"RereadSetting": true},
  1209. "HashName": 3217915194},
  1210. {"ValidValues": {"IsEnum": true,
  1211. "IsExclusive": true,
  1212. "Values": [{"Name": "Gfx9DeferredBatchBinDisabled",
  1213. "Value": 0},
  1214. {"Name": "Gfx9DeferredBatchBinCustom",
  1215. "Value": 1},
  1216. {"Name": "Gfx9DeferredBatchBinAccurate",
  1217. "Value": 2}],
  1218. "Name": "Gfx9BinningMode"},
  1219. "Description": "Controls whether or not deferred batch binning is enabled 0 : Batch binning always disabled 1 : Use custom bin sizes 2 : Optimal ",
  1220. "Tags": ["PBB and DFSM",
  1221. "Gfx9"],
  1222. "Defaults": {"Default": "Gfx9DeferredBatchBinAccurate"},
  1223. "Scope": "PrivatePalGfx9Key",
  1224. "Type": "enum",
  1225. "VariableName": "binningMode",
  1226. "Name": "DeferredBatchBinMode",
  1227. "HashName": 4130214844},
  1228. {"Description": "Controls the custom batch bin size. Only used when deferredBatchBinMode==1 High word is for x,
  1229. low word is for y. Default is 128x128. Values must be power-of-two between 16 and 512",
  1230. "Tags": ["PBB and DFSM",
  1231. "Gfx9"],
  1232. "Defaults": {"Default": 8388736},
  1233. "Scope": "PrivatePalGfx9Key",
  1234. "Type": "uint32",
  1235. "VariableName": "customBatchBinSize",
  1236. "Name": "CustomBatchBinSize",
  1237. "Flags": {"IsHex": true},
  1238. "HashName": 207210078},
  1239. {"Description": "Controls the minimum batch bin size used.",
  1240. "Tags": ["PBB and DFSM",
  1241. "Gfx10"],
  1242. "Defaults": {"Default": 0},
  1243. "Scope": "PrivatePalGfx9Key",
  1244. "VariableName": "minBatchBinSize",
  1245. "Name": "MinBatchBinSize",
  1246. "Flags": {"IsHex": true,
  1247. "RereadSetting": true},
  1248. "Type": "struct",
  1249. "Structure": [{"Description": "Minimum batch bin size width. Value must be a power-of-two between 16 and 512. Set to 0 to use default limit.",
  1250. "Type": "uint16",
  1251. "VariableName": "width",
  1252. "Name": "Width",
  1253. "Defaults": {"Default": 0},
  1254. "HashName": 431998177},
  1255. {"Description": "Minimum batch bin size height. Value must be a power-of-two between 16 and 512. Set to 0 to use default limit.",
  1256. "Type": "uint16",
  1257. "VariableName": "height",
  1258. "Name": "Height",
  1259. "Defaults": {"Default": 0},
  1260. "HashName": 286301360}],
  1261. "HashName": 382343675},
  1262. {"Description": "If true,
  1263. ignore Depth when calculating bin size if Color is bound.",
  1264. "Tags": ["PBB and DFSM",
  1265. "Gfx9"],
  1266. "Defaults": {"Default": false},
  1267. "Flags": {"RereadSetting": true},
  1268. "Scope": "PrivatePalGfx9Key",
  1269. "Type": "bool",
  1270. "VariableName": "ignoreDepthForBinSizeIfColorBound",
  1271. "Name": "IgnoreDepthForBinSizeIfColorBound",
  1272. "HashName": 3483607475},
  1273. {"Description": "The value to program to PA_SC_BINNER_CNTL_0::BINNING_MODE when the driver disables binning. Valid values are 2 and 3.",
  1274. "Tags": ["PBB and DFSM",
  1275. "Gfx9"],
  1276. "Defaults": {"Default": 3},
  1277. "Flags": {"RereadSetting": true},
  1278. "Scope": "PrivatePalGfx9Key",
  1279. "Type": "uint32",
  1280. "VariableName": "disableBinningMode",
  1281. "Name": "DisableBinningMode",
  1282. "HashName": 636789469},
  1283. {"Description": "If true,
  1284. binning is disabled when the PS has a discard instruction or can be trivially rejected.",
  1285. "Tags": ["PBB and DFSM",
  1286. "Gfx9"],
  1287. "Defaults": {"Default": true},
  1288. "Flags": {"RereadSetting": true},
  1289. "Scope": "PrivatePalGfx9Key",
  1290. "Type": "bool",
  1291. "VariableName": "disableBinningPsKill",
  1292. "Name": "DisableBinningPsKill",
  1293. "HashName": 1197165395},
  1294. {"Description": "Maximum amount of parameter storage per batch when not using NGG. The maximum is value 128. Zero means calculate an optimal value based on the hardware configuration. On GFX9,
  1295. this value is in units of 2 param cache lines..",
  1296. "Tags": ["PBB and DFSM",
  1297. "Gfx9"],
  1298. "Defaults": {"Default": 0},
  1299. "Scope": "PrivatePalGfx9Key",
  1300. "Type": "uint32",
  1301. "VariableName": "binningMaxAllocCountLegacy",
  1302. "Name": "BinningMaxAllocCountLegacy",
  1303. "HashName": 681698893},
  1304. {"Description": "Maximum amount of parameter storage per batch when using NGG with the on-chip parameter cache. Zero means calculate an optimal value based on the hardware configuration. On GFX9,
  1305. this value is in units of 2 param cache lines.",
  1306. "Tags": ["PBB and DFSM",
  1307. "Gfx9"],
  1308. "Defaults": {"Default": 0},
  1309. "Scope": "PrivatePalGfx9Key",
  1310. "Type": "uint32",
  1311. "VariableName": "binningMaxAllocCountNggOnChip",
  1312. "Name": "BinningMaxAllocCountNggOnChip",
  1313. "HashName": 2543003509},
  1314. {"Description": "Maximum number of primitives per batch. The maximum value is 1024.",
  1315. "Tags": ["PBB and DFSM",
  1316. "Gfx9"],
  1317. "Defaults": {"Default": 1024},
  1318. "Scope": "PrivatePalGfx9Key",
  1319. "Type": "uint32",
  1320. "VariableName": "binningMaxPrimPerBatch",
  1321. "Name": "BinningMaxPrimPerBatch",
  1322. "HashName": 1317079767},
  1323. {"Description": "Maximum number of context rolls before breaking a batch. The maximum value is 6.",
  1324. "Tags": ["PBB and DFSM",
  1325. "Gfx9"],
  1326. "Defaults": {"Default": 1},
  1327. "Flags": {"RereadSetting": true},
  1328. "Scope": "PrivatePalGfx9Key",
  1329. "Type": "uint32",
  1330. "VariableName": "binningContextStatesPerBin",
  1331. "Name": "BinningContextStatesPerBin",
  1332. "HashName": 1661639333},
  1333. {"Description": "Maximum number of persistent states per batch. The maximum value is 31.",
  1334. "Tags": ["PBB and DFSM",
  1335. "Gfx9"],
  1336. "Defaults": {"Default": 1},
  1337. "Flags": {"RereadSetting": true},
  1338. "Scope": "PrivatePalGfx9Key",
  1339. "Type": "uint32",
  1340. "VariableName": "binningPersistentStatesPerBin",
  1341. "Name": "BinningPersistentStatesPerBin",
  1342. "HashName": 850748547},
  1343. {"Description": "Z Prepass mode",
  1344. "Tags": ["PBB and DFSM",
  1345. "Gfx10"],
  1346. "Defaults": {"Default": "ZPrepassModeEnabled"},
  1347. "ValidValues": {"IsEnum": true,
  1348. "Values": [{"Name": "ZPrepassModeDisabled",
  1349. "Value": 0,
  1350. "Description": "Z prepass is always disabled."},
  1351. {"Name": "ZPrepassModeEnabled",
  1352. "Value": 1,
  1353. "Description": "Z prepass is always enabled."}],
  1354. "Name": "ZPrepassMode"},
  1355. "Scope": "PrivatePalGfx9Key",
  1356. "Type": "enum",
  1357. "VariableName": "zPrepassMode",
  1358. "Name": "ZPrepassMode",
  1359. "OrBuildTypes": ["PAL_BUILD_LIGHT_SHAFT_OPT"],
  1360. "HashName": 255822024},
  1361. {"Description": "Maximum number of FPOV tokens allowed per batch. Zero means no limit.",
  1362. "Tags": ["PBB and DFSM",
  1363. "Gfx9"],
  1364. "Defaults": {"Default": 63},
  1365. "Scope": "PrivatePalGfx9Key",
  1366. "Type": "uint32",
  1367. "VariableName": "binningFpovsPerBatch",
  1368. "Name": "BinningFpovsPerBatch",
  1369. "HashName": 2093710317},
  1370. {"Description": "Value for the PA_SC_BINNER_CNTL_1::OPTIMAL_BIN_SELECTION register field.",
  1371. "Tags": ["PBB and DFSM",
  1372. "Gfx9"],
  1373. "Defaults": {"Default": true},
  1374. "Scope": "PrivatePalGfx9Key",
  1375. "Type": "bool",
  1376. "VariableName": "binningOptimalBinSelection",
  1377. "Name": "BinningOptimalBinSelection",
  1378. "HashName": 456360427},
  1379. {"Description": "Number of RBs to use in bin size calculations. A value of zero means use the number of RBs on the HW. GFX10 and later only",
  1380. "Tags": ["PBB and DFSM",
  1381. "Gfx10"],
  1382. "Defaults": {"Default": 0},
  1383. "Scope": "PrivatePalGfx9Key",
  1384. "Type": "uint32",
  1385. "VariableName": "binningBinSizeRbOverride",
  1386. "Name": "BinningBinSizeRbOverride",
  1387. "HashName": 1501591972},
  1388. {"Description": "Number of pipes to use in bin size calculations. A value of zero means use the number of pipes on the HW. GFX10 and later only",
  1389. "Tags": ["PBB and DFSM",
  1390. "Gfx10"],
  1391. "Defaults": {"Default": 0},
  1392. "Scope": "PrivatePalGfx9Key",
  1393. "Type": "uint32",
  1394. "VariableName": "binningBinSizePipesOverride",
  1395. "Name": "BinningBinSizePipesOverride",
  1396. "HashName": 1220147701},
  1397. {"Description": "If true,
  1398. enable Sub-batch binning.",
  1399. "Tags": ["PBB and DFSM",
  1400. "Gfx9"],
  1401. "Defaults": {"Default": true},
  1402. "Scope": "PrivatePalGfx9Key",
  1403. "Type": "bool",
  1404. "VariableName": "binningEnableSubbatchBinning",
  1405. "Name": "BinningEnableSubbatchBinning",
  1406. "OrBuildTypes": ["PAL_BUILD_LIGHT_SHAFT_OPT"],
  1407. "HashName": 345244608},
  1408. {"Description": "If true,
  1409. enable Ping-Pong bin ordering.",
  1410. "Tags": ["PBB and DFSM",
  1411. "Gfx9"],
  1412. "Defaults": {"Default": true},
  1413. "Scope": "PrivatePalGfx9Key",
  1414. "Type": "bool",
  1415. "VariableName": "binningEnablePingPongBinOrder",
  1416. "Name": "BinningEnablePingPongBinOrder",
  1417. "OrBuildTypes": ["PAL_BUILD_LIGHT_SHAFT_OPT"],
  1418. "HashName": 2105976658},
  1419. {"Description": "Only matters if BinningEnablePingPongBinOrder = true,
  1420. Controls PING_PONG_BIN_ORDER_FLIP impacting exactly how bin ordering works. Flips the bin order,
  1421. bit 0: flip x order bit 1: flip y order.",
  1422. "Tags": ["PBB and DFSM",
  1423. "Gfx9"],
  1424. "Defaults": {"Default": 0},
  1425. "Scope": "PrivatePalGfx9Key",
  1426. "Type": "uint32",
  1427. "VariableName": "binningPingPongBinOrderFlip",
  1428. "Name": "BinningPingPongBinOrderFlip",
  1429. "OrBuildTypes": ["PAL_BUILD_LIGHT_SHAFT_OPT"],
  1430. "HashName": 1412926218},
  1431. {"Description": "If true,
  1432. disable Binning when the PS uses UAV append or consume",
  1433. "Tags": ["PBB and DFSM",
  1434. "Gfx9"],
  1435. "Defaults": {"Default": true},
  1436. "Scope": "PrivatePalGfx9Key",
  1437. "Type": "bool",
  1438. "VariableName": "disableBinningAppendConsume",
  1439. "Name": "BinningDisableBinningAppendConsume",
  1440. "HashName": 380189375},
  1441. {"Description": "If true,
  1442. enable Z Prepass HW continuity optimization.",
  1443. "Tags": ["PBB and DFSM",
  1444. "Gfx10"],
  1445. "Defaults": {"Default": false},
  1446. "Scope": "PrivatePalGfx9Key",
  1447. "Type": "bool",
  1448. "VariableName": "zPrepassContinuityOpt",
  1449. "Name": "ZPrepassContinuityOpt",
  1450. "OrBuildTypes": ["PAL_BUILD_LIGHT_SHAFT_OPT"],
  1451. "HashName": 988473734},
  1452. {"Description": "Z Prepass area threshold. Expressed as 8b float (4b exp,
  1453. 4b mantissa,
  1454. 0 sign). Prims of smaller area bypass ZPP.",
  1455. "Tags": ["PBB and DFSM",
  1456. "Gfx10"],
  1457. "Defaults": {"Default": 0},
  1458. "Flags": {"IsHex": true},
  1459. "Scope": "PrivatePalGfx9Key",
  1460. "Type": "uint32",
  1461. "VariableName": "zPrepassAreaThresold",
  1462. "Name": "ZPrepassAreaThresold",
  1463. "OrBuildTypes": ["PAL_BUILD_LIGHT_SHAFT_OPT"],
  1464. "HashName": 3075636485},
  1465. {"Description": "Select method of shader prefetching: 0: CP DMA (primes UTCL2 and TCC) 1: PRIME_UTCL2 (primes the UTCL2) ",
  1466. "Tags": ["Prefetching (L2 Cache Warming)"],
  1467. "Defaults": {"Default": "PrefetchCpDma"},
  1468. "ValidValues": {"Values": [{"Name": "PrefetchCpDma",
  1469. "Value": 0,
  1470. "Description": "CP DMA prefetching."},
  1471. {"Name": "PrefetchPrimeUtcL2",
  1472. "Value": 1,
  1473. "Description": "PRIME_UTCL2 (primes the UTCL2)."}],
  1474. "Name": "PrefetchMethod"},
  1475. "Scope": "PrivatePalGfx9Key",
  1476. "Type": "enum",
  1477. "VariableName": "shaderPrefetchMethod",
  1478. "Name": "ShaderPrefetchMethod",
  1479. "HashName": 3028994822},
  1480. {"ValidValues": {"IsEnum": true,
  1481. "Values": [{"Name": "Gfx9PrefetchCommandsDisabled",
  1482. "Value": 0},
  1483. {"Name": "Gfx9PrefetchCommandsBuildInfo",
  1484. "Value": 1},
  1485. {"Name": "Gfx9PrefetchCommandsForceAllDe",
  1486. "Value": 2},
  1487. {"Name": "Gfx9PrefetchCommandsForceAllDeAce",
  1488. "Value": 3}],
  1489. "Name": "Gfx9PrefetchCommands"},
  1490. "Description": "Controls whether CP command buffers are prefetched into the Gfx L2.",
  1491. "Tags": ["Prefetching (L2 Cache Warming)",
  1492. "Gfx9"],
  1493. "Defaults": {"Default": "Gfx9PrefetchCommandsBuildInfo"},
  1494. "Scope": "PrivatePalGfx9Key",
  1495. "Type": "enum",
  1496. "VariableName": "prefetchCommandBuffers",
  1497. "Name": "PrefetchCommandBuffers",
  1498. "HashName": 3867574326},
  1499. {"Description": "Controls whether anisotropic filtering optimizations are enabled.",
  1500. "Tags": ["Texture Filtering",
  1501. "Gfx9"],
  1502. "Defaults": {"Default": false},
  1503. "Scope": "PrivatePalGfx9Key",
  1504. "Type": "bool",
  1505. "VariableName": "anisoFilterOptEnabled",
  1506. "Name": "AnisoFilterOptEnabled",
  1507. "HashName": 958470227},
  1508. {"Description": "Controls whether the round-up logic for samplers is enabled.",
  1509. "Tags": ["Texture Filtering",
  1510. "Gfx9"],
  1511. "Defaults": {"Default": false},
  1512. "Scope": "PrivatePalGfx9Key",
  1513. "Type": "bool",
  1514. "VariableName": "samplerCeilingLogicEnabled",
  1515. "Name": "CeilingLogicEnabled",
  1516. "HashName": 2986992899},
  1517. {"Description": "Controls whether rounding of values coming out of the normalizer is enabled.",
  1518. "Tags": ["Texture Filtering",
  1519. "Gfx9"],
  1520. "Defaults": {"Default": true},
  1521. "Scope": "PrivatePalGfx9Key",
  1522. "Type": "bool",
  1523. "VariableName": "samplerPrecisionFixEnabled",
  1524. "Name": "PrecisionFixEnabled",
  1525. "HashName": 286847775},
  1526. {"Description": "Controls the value of the PERF_MIP field in Sampler SRD's.",
  1527. "Tags": ["Texture Filtering",
  1528. "Gfx9"],
  1529. "Defaults": {"Default": 0},
  1530. "Scope": "PrivatePalGfx9Key",
  1531. "Type": "uint32",
  1532. "VariableName": "samplerPerfMip",
  1533. "Name": "SamplerPerfMip",
  1534. "HashName": 3696903510},
  1535. {"Description": "Controls the value of the anisotropy threshold for Sampler SRD's.",
  1536. "Tags": ["Texture Filtering",
  1537. "Gfx9"],
  1538. "Defaults": {"Default": 0},
  1539. "Scope": "PrivatePalGfx9Key",
  1540. "Type": "uint32",
  1541. "VariableName": "samplerAnisoThreshold",
  1542. "Name": "SamplerAnisoThreshold",
  1543. "HashName": 1521283108},
  1544. {"Description": "Controls the value of the anisotropy bias for Sampler SRD's.",
  1545. "Tags": ["Texture Filtering",
  1546. "Gfx9"],
  1547. "Defaults": {"Default": 0},
  1548. "Scope": "PrivatePalGfx9Key",
  1549. "Type": "uint32",
  1550. "VariableName": "samplerAnisoBias",
  1551. "Name": "SamplerAnisoBias",
  1552. "HashName": 4085812096},
  1553. {"Description": "Controls the value of the secondary anisotropy bias for Sampler SRD's.",
  1554. "Tags": ["Texture Filtering",
  1555. "Gfx9"],
  1556. "Defaults": {"Default": 0},
  1557. "Scope": "PrivatePalGfx9Key",
  1558. "Type": "uint32",
  1559. "VariableName": "samplerSecAnisoBias",
  1560. "Name": "SamplerSecAnisoBias",
  1561. "HashName": 2654965201},
  1562. {"Description": "If the workaround is enabled,
  1563. then non-TS events will be replaced with their corresponding TS event",
  1564. "Tags": ["Hardware Workarounds"],
  1565. "Defaults": {"Default": false},
  1566. "Flags": {"RereadSetting": true},
  1567. "OrBuildTypes": ["PAL_BUILD_NAVI3X"],
  1568. "Scope": "PrivatePalGfx9Key",
  1569. "Type": "bool",
  1570. "VariableName": "waReplaceEventsWithTsEvents",
  1571. "Name": "WaReplaceEventsWithTsEvents",
  1572. "HashName": 1138530326},
  1573. {"Description": "If the workaround is enabled,
  1574. then a SQ_NON_EVENT will be added to the postabmle of graphics command buffers",
  1575. "Tags": ["Hardware Workarounds"],
  1576. "Defaults": {"Default": false},
  1577. "Flags": {"RereadSetting": true},
  1578. "OrBuildTypes": ["PAL_BUILD_NAVI3X"],
  1579. "Scope": "PrivatePalGfx9Key",
  1580. "Type": "bool",
  1581. "VariableName": "waAddPostambleEvent",
  1582. "Name": "WaAddPostambleEvent",
  1583. "HashName": 1782560043},
  1584. {"Description": "If the workaround is enabled,
  1585. then AUTO_FLUSH_MODE settings will be inverted.",
  1586. "Tags": ["Hardware Workarounds"],
  1587. "Defaults": {"Default": false},
  1588. "Flags": {"RereadSetting": true},
  1589. "Scope": "PrivatePalGfx9Key",
  1590. "Type": "bool",
  1591. "VariableName": "waAutoFlushModePolarityInversed",
  1592. "Name": "WaAutoFlushModePolarityInversed",
  1593. "HashName": 259515279},
  1594. {"Description": "If the workaround is enabled,
  1595. then only those mips up to and including the first mip in the mip tail will be compressed.",
  1596. "Tags": ["Hardware Workarounds"],
  1597. "Defaults": {"Default": false},
  1598. "Flags": {"RereadSetting": true},
  1599. "Scope": "PrivatePalGfx9Key",
  1600. "Type": "bool",
  1601. "VariableName": "waRestrictMetaDataUseInMipTail",
  1602. "Name": "WaRestrictMetaDataUseInMipTail",
  1603. "HashName": 599120928},
  1604. {"ValidValues": {"IsEnum": true,
  1605. "Values": [{"Name": "NoFix",
  1606. "Value": 0,
  1607. "Description": "UAV stencil writes occur with no workaround"},
  1608. {"Name": "GraphicsCopies",
  1609. "Value": 1,
  1610. "Description": "If set,
  1611. image-to-image copies will always use a graphics copy"},
  1612. {"Name": "ReCopyVrsData",
  1613. "Value": 2,
  1614. "Description": "If set,
  1615. copies will occur as normal but the VRS data will be marked as dirty and will be fixed on the next draw"}],
  1616. "Name": "WaVrsStencilUav"},
  1617. "Description": "Shader writes to UAV stencil surfaces will corrupt any associated hTile data.",
  1618. "Tags": ["Hardware Workarounds"],
  1619. "Defaults": {"Default": "NoFix"},
  1620. "Flags": {"RereadSetting": true},
  1621. "Scope": "PrivatePalGfx9Key",
  1622. "Type": "enum",
  1623. "VariableName": "waVrsStencilUav",
  1624. "Name": "WaVrsStencilUav",
  1625. "HashName": 3499388342},
  1626. {"Description": "Enabling the workaround resolves DB issues with RB+ products with 1xAA rendering.",
  1627. "Tags": ["Hardware Workarounds"],
  1628. "Defaults": {"Default": false},
  1629. "Flags": {"RereadSetting": true},
  1630. "Scope": "PrivatePalGfx9Key",
  1631. "Type": "bool",
  1632. "VariableName": "waLqoHangWithRbPlus",
  1633. "Name": "WaLqoHangWithRbPlus",
  1634. "BuildTypes": ["PAL_BUILD_NAVI21_LITE"],
  1635. "HashName": 3061654627},
  1636. {"Description": "If the workaround is enabled,
  1637. then non-copy ROP3 will disable the DCC overwrite combiner.",
  1638. "Tags": ["Hardware Workarounds"],
  1639. "Defaults": {"Default": false},
  1640. "Flags": {"RereadSetting": true},
  1641. "Scope": "PrivatePalGfx9Key",
  1642. "Type": "bool",
  1643. "VariableName": "waLogicOpDisablesOverwriteCombiner",
  1644. "Name": "WaLogicOpDisablesOverwriteCombiner",
  1645. "HashName": 2566203469},
  1646. {"Description": "If the workaround is enabled,
  1647. then rotated swizzle modes will disable the DCC overwrite combiner.",
  1648. "Tags": ["Hardware Workarounds"],
  1649. "Defaults": {"Default": false},
  1650. "Flags": {"RereadSetting": true},
  1651. "Scope": "PrivatePalGfx9Key",
  1652. "Type": "bool",
  1653. "VariableName": "waRotatedSwizzleDisablesOverwriteCombiner",
  1654. "Name": "WaRotatedSwizzleDisablesOverwriteCombiner",
  1655. "HashName": 863498563},
  1656. {"Description": "If the workaround is enabled,
  1657. then disabling fMask compression also sets the DISABLE_FMASK_NOFETCH_OPT bit.",
  1658. "Tags": ["Hardware Workarounds"],
  1659. "Defaults": {"Default": false},
  1660. "Flags": {"RereadSetting": true},
  1661. "Scope": "PrivatePalGfx9Key",
  1662. "Type": "bool",
  1663. "VariableName": "waDisableFmaskNofetchOpOnFmaskCompressionDisable",
  1664. "Name": "WaDisableFmaskNofetchOpOnFmaskCompressionDisable",
  1665. "HashName": 1971936918},
  1666. {"Description": "If the workaround is enabled,
  1667. then vrs with depth stence exports will be disabled.",
  1668. "Tags": ["Hardware Workarounds"],
  1669. "Defaults": {"Default": false},
  1670. "Flags": {"RereadSetting": true},
  1671. "Scope": "PrivatePalGfx9Key",
  1672. "Type": "bool",
  1673. "VariableName": "waDisableVrsWithDsExports",
  1674. "Name": "WaDisableVrsWithDsExports",
  1675. "HashName": 2338588964},
  1676. {"Description": "Fixes issues related to unexposed MSAA samples.",
  1677. "Tags": ["Hardware Workarounds"],
  1678. "Defaults": {"Default": false},
  1679. "Flags": {"RereadSetting": true},
  1680. "Scope": "PrivatePalGfx9Key",
  1681. "Type": "bool",
  1682. "VariableName": "waFixPostZConservativeRasterization",
  1683. "Name": "WaFixPostZConservativeRasterization",
  1684. "HashName": 3779046012},
  1685. {"Description": "Fixes issues related to invalid values associated with VGT_TESS_DISTRIBUTION.",
  1686. "Tags": ["Hardware Workarounds"],
  1687. "Defaults": {"Default": false},
  1688. "Flags": {"RereadSetting": true},
  1689. "Scope": "PrivatePalGfx9Key",
  1690. "Type": "bool",
  1691. "VariableName": "waClampQuadDistributionFactor",
  1692. "Name": "WaClampQuadDistributionFactor",
  1693. "HashName": 2022937678},
  1694. {"Description": "Controls whether the workaround waWrite1xAASampleLocationsToZero is active. FALSE: Forces the workaround off. TRUE: Forces the workaround on. Not Set: Allows the driver to decide,
  1695. based on Chip ID.",
  1696. "Tags": ["Hardware Workarounds"],
  1697. "Defaults": {"Default": false},
  1698. "Flags": {"RereadSetting": true},
  1699. "Scope": "PrivatePalGfx9Key",
  1700. "Type": "bool",
  1701. "VariableName": "waWrite1xAASampleLocationsToZero",
  1702. "Name": "WaWrite1xAASampleLocationsToZero",
  1703. "HashName": 2042380720},
  1704. {"Description": "The overwrite combiner marks something as overwritten even if there are ensuingquads to the same sector that need dest",
  1705. "Tags": ["Hardware Workarounds"],
  1706. "Defaults": {"Default": false},
  1707. "Flags": {"RereadSetting": true},
  1708. "Scope": "PrivatePalGfx9Key",
  1709. "Type": "bool",
  1710. "VariableName": "waColorCacheControllerInvalidEviction",
  1711. "Name": "WaColorCacheControllerInvalidEviction",
  1712. "HashName": 2330368444},
  1713. {"Description": "This workaround forces hTile data to be Z-only for images with multiple mip levels.",
  1714. "Tags": ["Hardware Workarounds"],
  1715. "Defaults": {"Default": false},
  1716. "Flags": {"RereadSetting": true},
  1717. "Scope": "PrivatePalGfx9Key",
  1718. "Type": "bool",
  1719. "VariableName": "waForceZonlyHtileForMipmaps",
  1720. "Name": "WaForceZonlyHtileForMipmaps",
  1721. "HashName": 860624612},
  1722. {"Description": "The overwrite combiner takes only the target mask into consideration while decidingto overwrite combine whereas the other parts of the CB decide on shader mask andtarget mask. This discrepancy may lead to the overwrite combiner incorrectly signalinga read optimization when shader and target mask are different",
  1723. "Tags": ["Hardware Workarounds"],
  1724. "Defaults": {"Default": false},
  1725. "Flags": {"RereadSetting": true},
  1726. "Scope": "PrivatePalGfx9Key",
  1727. "Type": "bool",
  1728. "VariableName": "waOverwriteCombinerTargetMaskOnly",
  1729. "Name": "WaOverwriteCombinerTargetMaskOnly",
  1730. "HashName": 1670732044},
  1731. {"Description": "Controls if hTile prefetch is disbled.",
  1732. "Tags": ["Hardware Workarounds"],
  1733. "Defaults": {"Default": false},
  1734. "Flags": {"RereadSetting": true},
  1735. "Scope": "PrivatePalGfx9Key",
  1736. "Type": "bool",
  1737. "VariableName": "waDisableHtilePrefetch",
  1738. "Name": "WaDisableHtilePrefetch",
  1739. "HashName": 4011209522},
  1740. {"Description": "Controls if STALLED_POPS is used or not.",
  1741. "Tags": ["Hardware Workarounds"],
  1742. "Defaults": {"Default": false},
  1743. "Flags": {"RereadSetting": true},
  1744. "Scope": "PrivatePalGfx9Key",
  1745. "Type": "bool",
  1746. "VariableName": "waMiscPopsMissedOverlap",
  1747. "Name": "WaMiscPopsMissedOverlap",
  1748. "HashName": 2170713611},
  1749. {"Description": "Controls if whenever a context roll is detected whether the scissor registers will be rewritten.",
  1750. "Tags": ["Hardware Workarounds"],
  1751. "Defaults": {"Default": false},
  1752. "Flags": {"RereadSetting": true},
  1753. "Scope": "PrivatePalGfx9Key",
  1754. "Type": "bool",
  1755. "VariableName": "waMiscScissorRegisterChange",
  1756. "Name": "WaMiscScissorRegisterChange",
  1757. "HashName": 3580876344},
  1758. {"Description": "Controls if a PS_PARTIAL_FLUSH is used whenever the scissor top-left or bottom-right registers change.",
  1759. "Tags": ["Hardware Workarounds"],
  1760. "Defaults": {"Default": false},
  1761. "Flags": {"RereadSetting": true},
  1762. "Scope": "PrivatePalGfx9Key",
  1763. "Type": "bool",
  1764. "VariableName": "waMiscPsFlushScissorChange",
  1765. "Name": "WaMiscPsFlushScissorChange",
  1766. "HashName": 2611268564},
  1767. {"Description": "If set,
  1768. hTile buffers support non-zero pipe-bank xor values.",
  1769. "Tags": ["Hardware Workarounds"],
  1770. "Defaults": {"Default": false},
  1771. "Flags": {"RereadSetting": true},
  1772. "Scope": "PrivatePalGfx9Key",
  1773. "Type": "bool",
  1774. "VariableName": "waHtilePipeBankXorMustBeZero",
  1775. "Name": "WaHtilePipeBankXorMustBeZero",
  1776. "HashName": 264312760},
  1777. {"Description": "If set PAL will not set 24_8 hw format for 24-32bit converted depth surfaces,
  1778. this will fix fast clear expansion with TC compatible surfaces (but also return incorrect unclamped border color.)",
  1779. "Tags": ["Hardware Workarounds"],
  1780. "Defaults": {"Default": false},
  1781. "Flags": {"RereadSetting": true},
  1782. "Scope": "PrivatePalGfx9Key",
  1783. "Type": "bool",
  1784. "VariableName": "waDisable24BitHWFormatForTCCompatibleDepth",
  1785. "Name": "WaDisable24BitHWFormatForTCCompatibleDepth",
  1786. "HashName": 1925370123},
  1787. {"Description": "On Gfx9,
  1788. the DB can delay tile write requests in such a way that its pending write ack counters can underflow while processing EOP timestamps. The workaround is to issue a ZPASS_DONE event before each timestamp event because it will add pending writes which are lower priority than the tile writes so they will fence the delayed writes. Defaults to TRUE for Gfx9,
  1789. FALSE for others.",
  1790. "Tags": ["Hardware Workarounds"],
  1791. "Defaults": {"Default": false},
  1792. "Flags": {"RereadSetting": true},
  1793. "Scope": "PrivatePalGfx9Key",
  1794. "Type": "bool",
  1795. "VariableName": "waDummyZpassDoneBeforeTs",
  1796. "Name": "WaDummyZpassDoneBeforeTs",
  1797. "HashName": 814916412},
  1798. {"Description": "On Gfx9,
  1799. the meta-addressing equation can theoretically map multiple pixels to the same This fix prevents that from happening. Meta-equation generated by driver must match the meta equation as generated by the silicon. Products that do not have the fix have no HW configurations that expose the problem.",
  1800. "Tags": ["Hardware Workarounds"],
  1801. "Defaults": {"Default": true},
  1802. "Flags": {"RereadSetting": true},
  1803. "Scope": "PrivatePalGfx9Key",
  1804. "Type": "bool",
  1805. "VariableName": "waMetaAliasingFixEnabled",
  1806. "Name": "WaMetaAliasingFixEnabled",
  1807. "HashName": 3182155668},
  1808. {"Description": "If set PAL sets CB_COLOR_ATTRIB.LIMIT_COLOR_FETCH_TO_256B_MAX = 1 for mip levels in the tail that aren't the largest.",
  1809. "Tags": ["Hardware Workarounds"],
  1810. "Defaults": {"Default": false},
  1811. "Flags": {"RereadSetting": true},
  1812. "Scope": "PrivatePalGfx9Key",
  1813. "Type": "bool",
  1814. "VariableName": "waForce256bCbFetch",
  1815. "Name": "WaForce256bCbFetch",
  1816. "HashName": 2944333716},
  1817. {"Description": "If set,
  1818. align image allocation size up to fragment size when Cmask is present,
  1819. but continue to issue GCN ranged syncs operations using the original,
  1820. unpadded size.",
  1821. "Tags": ["Hardware Workarounds"],
  1822. "Defaults": {"Default": false},
  1823. "Flags": {"RereadSetting": true},
  1824. "Scope": "PrivatePalGfx9Key",
  1825. "Type": "bool",
  1826. "VariableName": "waCmaskImageSyncs",
  1827. "Name": "WaCmaskImageSyncs",
  1828. "HashName": 3002384369},
  1829. {"Description": "If set,
  1830. SDMA can not access meta-data (compression) surfaces.",
  1831. "Tags": ["Hardware Workarounds"],
  1832. "Defaults": {"Default": false},
  1833. "Scope": "PrivatePalGfx9Key",
  1834. "Type": "bool",
  1835. "VariableName": "waSdmaPreventCompressedSurfUse",
  1836. "Name": "WaSdmaPreventCompressedSurfUse",
  1837. "HashName": 1236556278},
  1838. {"Description": "If set,
  1839. PAL will insert a VGT_FLUSH between a pipeline transition from a NGG to a legacy GS.",
  1840. "Tags": ["Hardware Workarounds"],
  1841. "Defaults": {"Default": false},
  1842. "Flags": {"RereadSetting": true},
  1843. "Scope": "PrivatePalGfx9Key",
  1844. "Type": "bool",
  1845. "VariableName": "waVgtFlushNggToLegacyGs",
  1846. "Name": "WaVgtFlushNggToLegacyGs",
  1847. "HashName": 1821581352},
  1848. {"Description": "If set,
  1849. PAL will insert a VGT_FLUSH between a pipeline transition from a NGG to a legacy pipeline.",
  1850. "Tags": ["Hardware Workarounds"],
  1851. "Defaults": {"Default": false},
  1852. "Flags": {"RereadSetting": true},
  1853. "Scope": "PrivatePalGfx9Key",
  1854. "Type": "bool",
  1855. "VariableName": "waVgtFlushNggToLegacy",
  1856. "Name": "WaVgtFlushNggToLegacy",
  1857. "HashName": 3701186862},
  1858. {"Description": "If true,
  1859. enables prefetching of Index buffer pages prior to draws in NGG piplines.",
  1860. "Tags": ["Hardware Workarounds"],
  1861. "Defaults": {"Default": false},
  1862. "Flags": {"RereadSetting": true},
  1863. "Scope": "PrivatePalGfx9Key",
  1864. "Type": "bool",
  1865. "VariableName": "waEnableIndexBufferPrefetchForNgg",
  1866. "Name": "WaEnableIndexBufferPrefetchForNgg",
  1867. "HashName": 816147502},
  1868. {"Description": "If true,
  1869. enables Z16_UNORM 1xAA uninitialized decompress hang workaround.",
  1870. "Tags": ["Hardware Workarounds"],
  1871. "Defaults": {"Default": false},
  1872. "Flags": {"RereadSetting": true},
  1873. "Scope": "PrivatePalGfx9Key",
  1874. "Type": "bool",
  1875. "VariableName": "waZ16Unorm1xAaDecompressUninitialized",
  1876. "Name": "WaZ16Unorm1xAaDecompressUninitialized",
  1877. "HashName": 575442222},
  1878. {"Description": "If true,
  1879. forces LateAllocGs to always be 0.",
  1880. "Tags": ["Hardware Workarounds"],
  1881. "Defaults": {"Default": false},
  1882. "Flags": {"RereadSetting": true},
  1883. "Scope": "PrivatePalGfx9Key",
  1884. "Type": "bool",
  1885. "VariableName": "waLateAllocGs0",
  1886. "Name": "WaLateAllocGs0",
  1887. "HashName": 1163996140},
  1888. {"Description": "If true,
  1889. whenever an index buffer is bound with zero size we instead bind an internal index buffer with a single zero entry to prevent a hang in the GE.",
  1890. "Tags": ["Hardware Workarounds"],
  1891. "Defaults": {"Default": false},
  1892. "Flags": {"RereadSetting": true},
  1893. "Scope": "PrivatePalGfx9Key",
  1894. "Type": "bool",
  1895. "VariableName": "waIndexBufferZeroSize",
  1896. "Name": "WaIndexBufferZeroSize",
  1897. "HashName": 2561313302},
  1898. {"Description": "If true,
  1899. whenever a POPS (Primitive Order Pixel Shader) pipeline is bound,
  1900. we need to set DB_RENDER_OVERRIDE2::PARTIAL_SQUAD_LAUNCH = PSLC_ON_HANG_ONLY to prevent a hang..",
  1901. "Tags": ["Hardware Workarounds"],
  1902. "Defaults": {"Default": false},
  1903. "Flags": {"RereadSetting": true},
  1904. "Scope": "PrivatePalGfx9Key",
  1905. "Type": "bool",
  1906. "VariableName": "waStalledPopsMode",
  1907. "Name": "WaStalledPopsMode",
  1908. "HashName": 54918207},
  1909. {"Description": "If true,
  1910. IB2's cannot be used on the constant engine (CE).",
  1911. "Tags": ["Hardware Workarounds"],
  1912. "Defaults": {"Default": false},
  1913. "Flags": {"RereadSetting": true},
  1914. "Scope": "PrivatePalKey",
  1915. "Type": "bool",
  1916. "VariableName": "waCeDisableIb2",
  1917. "Name": "WaCeDisableIb2",
  1918. "HashName": 2126259346},
  1919. {"Description": "If true,
  1920. disable stencil compression for ZS images for which a stencil only depth target could be created",
  1921. "Tags": ["Hardware Workarounds"],
  1922. "Defaults": {"Default": false},
  1923. "Flags": {"RereadSetting": true},
  1924. "Scope": "PrivatePalKey",
  1925. "Type": "bool",
  1926. "VariableName": "waDisableSCompressSOnly",
  1927. "Name": "WaDisableSCompressSOnly",
  1928. "HashName": 1364141327},
  1929. {"Description": "If true,
  1930. instance packing will be disabled when query pipeline statistics using *_ADJACENCY primitive and instance > 1.",
  1931. "Tags": ["Hardware Workarounds"],
  1932. "Defaults": {"Default": false},
  1933. "Flags": {"RereadSetting": true},
  1934. "Scope": "PrivatePalGfx9Key",
  1935. "Type": "bool",
  1936. "VariableName": "waDisableInstancePacking",
  1937. "Name": "WaDisableInstancePacking",
  1938. "HashName": 2220232767},
  1939. {"Description": "If true,
  1940. disable GRBM Register stalling for SQTT",
  1941. "Tags": ["Hardware Workarounds"],
  1942. "Defaults": {"Default": false},
  1943. "Flags": {"RereadSetting": true},
  1944. "Scope": "PrivatePalGfx9Key",
  1945. "Type": "bool",
  1946. "VariableName": "waNoSqttRegStall",
  1947. "Name": "WaNoSqttRegStall",
  1948. "HashName": 3209828942},
  1949. {"ValidValues": {"IsEnum": true,
  1950. "Values": [{"Name": "Gfx10VrsHtileEncodingTwoBit",
  1951. "Value": 1,
  1952. "Description": "Two bit hTile encoding of VRS data"},
  1953. {"Name": "Gfx10VrsHtileEncodingFourBit",
  1954. "Value": 2,
  1955. "Description": "Four bit hTile encoding of VRS data"}],
  1956. "Name": "VrsHtileEncoding"},
  1957. "Description": "Controls whether hTile will use two bit or four bit encoding of VRS shading rate",
  1958. "Tags": ["VRS",
  1959. "Gfx10"],
  1960. "Defaults": {"Default": "Gfx10VrsHtileEncodingTwoBit"},
  1961. "Scope": "PrivatePalGfx9Key",
  1962. "Type": "enum",
  1963. "VariableName": "vrsHtileEncoding",
  1964. "Name": "VrsHtileEncoding",
  1965. "HashName": 4142650735},
  1966. {"Description": "Controls FORCE_VRS_RATE_FINE setting. False means to use the VRS rate generated by VRS rate combiners as shading rate; true forces VRS rate to 1x1 if the rate generated by rate combiners is coarse rate",
  1967. "Tags": ["VRS",
  1968. "Gfx10"],
  1969. "Defaults": {"Default": false},
  1970. "Scope": "PrivatePalGfx9Key",
  1971. "Type": "bool",
  1972. "VariableName": "vrsForceRateFine",
  1973. "Name": "VrsForceRateFine",
  1974. "HashName": 490938231},
  1975. {"Description": "The device owns a depth buffer used for VRS data storage in the event of the app not binding their own depth buffer. If this setting is true,
  1976. then the depth buffer is hTile only; otherwise,
  1977. it also contains a stencil plane.",
  1978. "Tags": ["VRS",
  1979. "Gfx10"],
  1980. "Defaults": {"Default": true},
  1981. "Scope": "PrivatePalGfx9Key",
  1982. "Type": "bool",
  1983. "VariableName": "privateDepthIsHtileOnly",
  1984. "Name": "PrivateDepthIsHtileOnly",
  1985. "HashName": 1433516561},
  1986. {"Description": "If true,
  1987. NULL source images are handled by modifying the combiner state. False causes the depth buffer to be updated",
  1988. "Tags": ["VRS",
  1989. "Gfx10"],
  1990. "Defaults": {"Default": true},
  1991. "Scope": "PrivatePalGfx9Key",
  1992. "Type": "bool",
  1993. "VariableName": "optimizeNullSourceImage",
  1994. "Name": "OptimizeNullSourceImage",
  1995. "HashName": 2743300351},
  1996. {"Description": "Controls the size of the VRS image that is always allocated by PAL whether VRS is used or not. The high 16 bits are the height of the image and the low 16 bits are the width. A size of 0 will have undefined behavior for any app that uses VRS image combiners.",
  1997. "Tags": ["VRS",
  1998. "Gfx10"],
  1999. "Defaults": {"Default": 1073758208},
  2000. "Scope": "PrivatePalGfx9Key",
  2001. "Type": "uint32",
  2002. "VariableName": "vrsImageSize",
  2003. "Name": "VrsImageSize",
  2004. "Flags": {"IsHex": true},
  2005. "HashName": 2610878234},
  2006. {"Description": "If true,
  2007. prevents enabling BIG_PAGE for resources that could share a 64KiB memory region with a non-BIG_PAGE resource.",
  2008. "Tags": ["Hardware Workarounds"],
  2009. "Defaults": {"Default": false},
  2010. "Flags": {"RereadSetting": true},
  2011. "Scope": "PrivatePalGfx9Key",
  2012. "Type": "bool",
  2013. "VariableName": "waUtcL0InconsistentBigPage",
  2014. "Name": "WaUtcL0InconsistentBigPage",
  2015. "HashName": 1748539367},
  2016. {"Description": "If the workaround is enabled,
  2017. then 4x MSAA Depth/Stencil surfaces will set the number of z planes for decompress to 2 in order to avoid a hang associated with setting iterate_256 to 1.",
  2018. "Tags": ["Hardware Workarounds"],
  2019. "Defaults": {"Default": false},
  2020. "Flags": {"RereadSetting": true},
  2021. "Scope": "PrivatePalGfx9Key",
  2022. "Type": "bool",
  2023. "VariableName": "waTwoPlanesIterate256",
  2024. "Name": "WaTwoPlanesIterate256",
  2025. "HashName": 164975373},
  2026. {"Description": "If the workaround is enabled,
  2027. when legacy tessellation is enabled with wireframe mode,
  2028. we need to disable vertex reuse or suffer corruption.",
  2029. "Tags": ["Hardware Workarounds"],
  2030. "Defaults": {"Default": false},
  2031. "Flags": {"RereadSetting": true},
  2032. "Scope": "PrivatePalGfx9Key",
  2033. "Type": "bool",
  2034. "VariableName": "waTessIncorrectRelativeIndex",
  2035. "Name": "WaTessIncorrectRelativeIndex",
  2036. "HashName": 3815932601},
  2037. {"Description": "If the workaround is enabled and NGG is enabled we need to limit LATE_ALLOC_GS to <= 64.",
  2038. "Tags": ["Hardware Workarounds"],
  2039. "Defaults": {"Default": false},
  2040. "Flags": {"RereadSetting": true},
  2041. "Scope": "PrivatePalGfx9Key",
  2042. "Type": "bool",
  2043. "VariableName": "waLimitLateAllocGsNggFifo",
  2044. "Name": "WaLimitLateAllocGsNggFifo",
  2045. "HashName": 3170186115},
  2046. {"Description": "If the workaround is enabled,
  2047. we need to clamp GE_CNTL::VERT_GRP_SIZE to avoid a hang due to an issue in PC space allocation.",
  2048. "Tags": ["Hardware Workarounds"],
  2049. "Defaults": {"Default": false},
  2050. "Flags": {"RereadSetting": true},
  2051. "Scope": "PrivatePalGfx9Key",
  2052. "Type": "bool",
  2053. "VariableName": "waClampGeCntlVertGrpSize",
  2054. "Name": "WaClampGeCntlVertGrpSize",
  2055. "HashName": 4183598840},
  2056. {"Description": "If the workaround is enabled,
  2057. ignore thread-trace finish results and flush the pipe instead due to RB harvesting issues.",
  2058. "Tags": ["Hardware Workarounds"],
  2059. "Defaults": {"Default": false},
  2060. "Flags": {"RereadSetting": true},
  2061. "Scope": "PrivatePalGfx9Key",
  2062. "Type": "bool",
  2063. "VariableName": "waBadSqttFinishResults",
  2064. "Name": "WaBadSqttFinishResults",
  2065. "HashName": 548261479},
  2066. {"Description": "If the workaround is enabled,
  2067. we to issue a VGT_FLUSH between legacy GS pipelines that have different VGT_GS_MODE::CUT_MODE values.",
  2068. "Tags": ["Hardware Workarounds"],
  2069. "Defaults": {"Default": false},
  2070. "Flags": {"RereadSetting": true},
  2071. "Scope": "PrivatePalGfx9Key",
  2072. "Type": "bool",
  2073. "VariableName": "waLegacyGsCutModeFlush",
  2074. "Name": "WaLegacyGsCutModeFlush",
  2075. "HashName": 1477053247},
  2076. {"ValidValues": {"IsEnum": true,
  2077. "Values": [{"Name": "Gfx10SdmaBypassMallOnRead",
  2078. "Value": 1,
  2079. "Description": "Use MALL for SDMA read access"},
  2080. {"Name": "Gfx10SdmaBypassMallOnWrite",
  2081. "Value": 2,
  2082. "Description": "Use MALL for SDMA write access"},
  2083. {"Name": "Gfx10SdmaBypassMallOnDefault",
  2084. "Value": 3,
  2085. "Description": "Use MALL in default settings"}],
  2086. "Name": "Gfx10SdmaBypassMall"},
  2087. "Description": "Bitmask of cases where SDMA accesses will bypass the MALL",
  2088. "Tags": ["General",
  2089. "Gfx9"],
  2090. "Flags": {"IsBitmask": true,
  2091. "IsHex": true},
  2092. "Defaults": {"Default": 3},
  2093. "Scope": "PrivatePalGfx9Key",
  2094. "Type": "uint32",
  2095. "VariableName": "sdmaBypassMall",
  2096. "Name": "SdmaBypassMall",
  2097. "HashName": 881287982},
  2098. {"Description": "Enables the mall cursor cache option",
  2099. "Tags": ["General",
  2100. "Gfx9"],
  2101. "Defaults": {"Default": true},
  2102. "Scope": "PrivatePalGfx9Key",
  2103. "Type": "bool",
  2104. "VariableName": "enableMallCursorCache",
  2105. "Name": "EnableMallCursorCache",
  2106. "HashName": 2467252640},
  2107. {"Description": "Determines if GFX or Compute is used to fast clear SingleSampled DepthStencil surfaces. Value is in units of (pix width x height x depth). Values <= this will take GFX else Compute.",
  2108. "Tags": ["RPM"],
  2109. "Defaults": {"Default": 2097152},
  2110. "Scope": "PrivatePalGfx9Key",
  2111. "Type": "uint32",
  2112. "VariableName": "depthStencilFastClearComputeThresholdSingleSampled",
  2113. "Name": "DepthStencilFastClearComputeThresholdSingleSampled",
  2114. "Flags": {"IsHex": false,
  2115. "RereadSetting": true},
  2116. "HashName": 2634603321},
  2117. {"Description": "Determines if GFX or Compute is used to fast clear MultiSampled DepthStencil surfaces. Value is in units of (pix width x height x depth). Values <= this will take GFX else Compute.",
  2118. "Tags": ["RPM"],
  2119. "Defaults": {"Default": 4194304},
  2120. "Scope": "PrivatePalGfx9Key",
  2121. "Type": "uint32",
  2122. "VariableName": "depthStencilFastClearComputeThresholdMultiSampled",
  2123. "Name": "DepthStencilFastClearComputeThresholdMultiSampled",
  2124. "Flags": {"IsHex": false,
  2125. "RereadSetting": true},
  2126. "HashName": 2782857680},
  2127. {"Description": "This value is used to program PA_SC_NGG_MODE_CNTL::MAX_FPOVS_IN_WAVE. When the number of FPOVs in a wave exceeds MAX_FPOVS_IN_WAVE,
  2128. the next FPOV would break wave. Legal values are 0 to 255.",
  2129. "Tags": ["General",
  2130. "Gfx10"],
  2131. "Defaults": {"Default": 0},
  2132. "ValidValues": {"Values": [{"Description": "1 FPOV will break the wave.",
  2133. "Value": 0},
  2134. {"LogicOp": "LessThanOrEqual",
  2135. "Description": "Number of FPOVs * 2 that will break the wave.",
  2136. "Value": 255}]},
  2137. "Scope": "PrivatePalGfx9Key",
  2138. "Type": "uint32",
  2139. "VariableName": "gfx10MaxFpovsInWave",
  2140. "Name": "Gfx10MaxFpovsInWave",
  2141. "Flags": {"IsHex": false,
  2142. "RereadSetting": true},
  2143. "HashName": 3399078965},
  2144. {"Description": "If we should use EOP timestamp waits on ACE engines instead of CS_PARTIAL_FLUSH events. This is intended as a debug switch.",
  2145. "Tags": ["General",
  2146. "Gfx9"],
  2147. "Defaults": {"Default": false},
  2148. "Scope": "PrivatePalGfx9Key",
  2149. "Type": "bool",
  2150. "VariableName": "disableAceCsPartialFlush",
  2151. "Name": "DisableAceCsPartialFlush",
  2152. "HashName": 4181362005},
  2153. {"Description": "Override the value of GB_ADDR_CONFIG sent to the address library with this value. This setting is intended for Architecture Modeling purposes only and cannot be safely modified. 0 means do not override",
  2154. "Tags": ["General",
  2155. "Gfx9"],
  2156. "Flags": {"IsHex": true},
  2157. "Defaults": {"Default": 0},
  2158. "Scope": "PrivatePalGfx9Key",
  2159. "Type": "uint32",
  2160. "VariableName": "addrLibGbAddrConfigOverride",
  2161. "Name": "AddrLibGbAddrConfigOverride",
  2162. "HashName": 4156569361},
  2163. {"Name": "Gfx102NonLocalDestPreferCompute",
  2164. "Tags": ["General",
  2165. "Performance",
  2166. "Gfx102"],
  2167. "Defaults": {"Default": true},
  2168. "Scope": "PrivatePalGfx9Key",
  2169. "Type": "bool",
  2170. "VariableName": "nonLocalDestPreferCompute",
  2171. "Description": "Prefer compute for non-local copies on gfx10.2+. This can increase PCIe throughput.",
  2172. "HashName": 2724905730},
  2173. {"Name": "RbPlusOptimizeDepthOnlyExportRate",
  2174. "Tags": ["General",
  2175. "Performance"],
  2176. "Defaults": {"Default": false},
  2177. "Flags": {"RereadSetting": true},
  2178. "Scope": "PrivatePalGfx9Key",
  2179. "Type": "bool",
  2180. "VariableName": "rbPlusOptimizeDepthOnlyExportRate",
  2181. "Description": "Optimize color export format for depth only rendering. Only applicable for RB+ parts.",
  2182. "HashName": 3465687781},
  2183. {"Name": "Gfx103DisableAsymmetricWgpForPs",
  2184. "Tags": ["General",
  2185. "Performance"],
  2186. "Defaults": {"Default": false},
  2187. "Scope": "PrivatePalGfx9Key",
  2188. "Type": "bool",
  2189. "VariableName": "gfx103DisableAsymmetricWgpForPs",
  2190. "Description": "On WGP harvesting asymmetric configuration,
  2191. we scan all of the SAs to find the minimal number of WGPs to override the psCuEnLimitMask setting for performance.",
  2192. "HashName": 2671208712},
  2193. {"Name": "EnablePws",
  2194. "Tags": ["PWS",
  2195. "Gfx11"],
  2196. "Flags": {"RereadSetting": true},
  2197. "Defaults": {"Default": true},
  2198. "Scope": "PrivatePalGfx9Key",
  2199. "Type": "bool",
  2200. "VariableName": "enablePws",
  2201. "Description": "Enables the Pixel Wait Sync feature if the hardware supports it. If enabled,
  2202. Pixel Wait Sync feature is used at places to optimize pipeline synchronization.",
  2203. "OrBuildTypes": ["PAL_BUILD_GFX11"],
  2204. "HashName": 3745496556},
  2205. {"Description": "Sets Dcc max compressed block size to 256b. If false,
  2206. 128b will be used. 256b is not supported by all parts.",
  2207. "Tags": ["General"],
  2208. "Defaults": {"Default": false},
  2209. "Scope": "PrivatePalGfx9Key",
  2210. "Type": "bool",
  2211. "VariableName": "dcc256bCompressedTex",
  2212. "Name": "Dcc256bCompressedTex",
  2213. "OrBuildTypes": ["PAL_BUILD_GFX115",
  2214. "PAL_BUILD_VAN_GOGH_LITE"],
  2215. "HashName": 2275822298},
  2216. {"Description": "Will enforce Htiles to have a minimum size of 1024x1024 pixels",
  2217. "Tags": ["Hardware Workarounds",
  2218. "MGfx0"],
  2219. "Flags": {"RereadSetting": true},
  2220. "Defaults": {"Default": false},
  2221. "Scope": "PrivatePalGfx9Key",
  2222. "Type": "bool",
  2223. "VariableName": "waForce1kHtileMin",
  2224. "Name": "WaForce1kHtileMin",
  2225. "OrBuildTypes": ["PAL_BUILD_VAN_GOGH_LITE"],
  2226. "HashName": 3165820388},
  2227. {"Description": "This WA requires extra BREAK_BATCH events in order to allow > 1 ctx/batch.",
  2228. "Tags": ["Hardware Workarounds",
  2229. "MGfx0"],
  2230. "Flags": {"RereadSetting": true},
  2231. "Defaults": {"Default": false},
  2232. "Scope": "PrivatePalGfx9Key",
  2233. "Type": "bool",
  2234. "VariableName": "waBciStatePropogation",
  2235. "Name": "WaBciStatePropogation",
  2236. "OrBuildTypes": ["PAL_BUILD_VAN_GOGH_LITE",
  2237. "PAL_BUILD_NAVI14_LITE"],
  2238. "HashName": 3001704666},
  2239. {"Description": "WA to disable DISABLE_NOPCEXPORT_BREAKBATCH_CONDITION on M0 due to HW bug",
  2240. "Tags": ["Hardware Workarounds",
  2241. "MGfx0"],
  2242. "Flags": {"RereadSetting": true},
  2243. "Defaults": {"Default": false},
  2244. "Scope": "PrivatePalGfx9Key",
  2245. "Type": "bool",
  2246. "VariableName": "waDisableNoPcExportBreakBatchCondition",
  2247. "Name": "WaDisableNoPcExportBreakBatchCondition",
  2248. "OrBuildTypes": ["PAL_BUILD_VAN_GOGH_LITE"],
  2249. "HashName": 999212947},
  2250. {"Description": "Perfcounter workaround which samples all counters in the running state if SQ counters are on.",
  2251. "Tags": ["Hardware Workarounds"],
  2252. "Flags": {"RereadSetting": true},
  2253. "Defaults": {"Default": false},
  2254. "Scope": "PrivatePalGfx9Key",
  2255. "Type": "bool",
  2256. "VariableName": "waNeverStopSqCounters",
  2257. "Name": "WaNeverStopSqCounters",
  2258. "HashName": 698595608},
  2259. {"Description": "This WA fixup the SQG TT WPTR field to be the correct offset value for the case that the WPTR field stores the actual address that write pointer is at.",
  2260. "Tags": ["Hardware Workarounds"],
  2261. "Defaults": {"Default": false},
  2262. "Flags": {"RereadSetting": true},
  2263. "OrBuildTypes": ["PAL_BUILD_GFX11"],
  2264. "Scope": "PrivatePalGfx9Key",
  2265. "Type": "bool",
  2266. "VariableName": "waSqgTtWptrOffsetFixup",
  2267. "Name": "WaSqgTtWptrOffsetFixup",
  2268. "HashName": 993309310},
  2269. {"Description": "This WA fixup a Navi3x CB perfcounter hardware bug,
  2270. which will cause CB counters stuck at 0 if PERFCOUNTER_STOP is received. If enabled,
  2271. PAL will remove use of PERFCOUNTER_STOP. ",
  2272. "Tags": ["Hardware Workarounds"],
  2273. "Defaults": {"Default": false},
  2274. "Flags": {"RereadSetting": true},
  2275. "OrBuildTypes": ["PAL_BUILD_GFX11"],
  2276. "Scope": "PrivatePalGfx9Key",
  2277. "Type": "bool",
  2278. "VariableName": "waCbPerfCounterStuckZero",
  2279. "Name": "WaCbPerfCounterStuckZero",
  2280. "HashName": 2035934365},
  2281. {"Description": "WA to force PRE_PIX_SHADER barrier sync point for PWS+.",
  2282. "Tags": ["Hardware Workarounds",
  2283. "Gfx11",
  2284. "PWS"],
  2285. "Flags": {"RereadSetting": true},
  2286. "Defaults": {"Default": false},
  2287. "Scope": "PrivatePalGfx9Key",
  2288. "Type": "bool",
  2289. "VariableName": "waForcePrePixShaderWaitPoint",
  2290. "Name": "WaForcePrePixShaderWaitPoint",
  2291. "OrBuildTypes": ["PAL_BUILD_GFX11"],
  2292. "HashName": 3582700600},
  2293. {"Description": "WA to force LOCK*THRESHOLD for HS,
  2294. GS,
  2295. and CS to 0.",
  2296. "Tags": ["Hardware Workarounds",
  2297. "Gfx11"],
  2298. "Flags": {"RereadSetting": true},
  2299. "Defaults": {"Default": false},
  2300. "Scope": "PrivatePalGfx9Key",
  2301. "Type": "bool",
  2302. "VariableName": "waForceLockThresholdZero",
  2303. "Name": "WaForceLockThresholdZero",
  2304. "OrBuildTypes": ["PAL_BUILD_GFX11"],
  2305. "HashName": 3294062932},
  2306. {"Description": "WA to force SPI_GS_THROTTLE_CNTL2.SPI_THROTTLE_MODE != 0.",
  2307. "Tags": ["Hardware Workarounds",
  2308. "Gfx11"],
  2309. "Flags": {"RereadSetting": true},
  2310. "Defaults": {"Default": false},
  2311. "Scope": "PrivatePalGfx9Key",
  2312. "Type": "bool",
  2313. "VariableName": "waForceSpiThrottleModeNonZero",
  2314. "Name": "WaForceSpiThrottleModeNonZero",
  2315. "OrBuildTypes": ["PAL_BUILD_GFX11"],
  2316. "HashName": 3949513238},
  2317. {"Description": "Set VS_XY_NAN_TO_INF = 0 to disable PA stereo rendering",
  2318. "Tags": ["Hardware Workarounds",
  2319. "Gfx11"],
  2320. "Flags": {"RereadSetting": true},
  2321. "Defaults": {"Default": false},
  2322. "Scope": "PrivatePalGfx9Key",
  2323. "Type": "bool",
  2324. "VariableName": "waSetVsXyNanToInfZero",
  2325. "Name": "WaSetVsXyNanToInfZero",
  2326. "OrBuildTypes": ["PAL_BUILD_GFX11"],
  2327. "HashName": 2276607558},
  2328. {"Description": "Set DB_RENDER_CONTROL.MAX_ALLOWED_TILES_IN_WAVE one smaller due to incorrect calculation in the DB cachelines.",
  2329. "Tags": ["Hardware Workarounds",
  2330. "Gfx11"],
  2331. "Flags": {"RereadSetting": true},
  2332. "Defaults": {"Default": false},
  2333. "Scope": "PrivatePalGfx9Key",
  2334. "Type": "bool",
  2335. "VariableName": "waIncorrectMaxAllowedTilesInWave",
  2336. "Name": "WaIncorrectMaxAllowedTilesInWave",
  2337. "OrBuildTypes": ["PAL_BUILD_GFX11"],
  2338. "HashName": 851072401}]}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement