1 /* 2 * Copyright (c) 2009-2023, Intel Corporation 3 * 4 * Permission is hereby granted, free of charge, to any person obtaining a 5 * copy of this software and associated documentation files (the "Software"), 6 * to deal in the Software without restriction, including without limitation 7 * the rights to use, copy, modify, merge, publish, distribute, sublicense, 8 * and/or sell copies of the Software, and to permit persons to whom the 9 * Software is furnished to do so, subject to the following conditions: 10 * 11 * The above copyright notice and this permission notice shall be included 12 * in all copies or substantial portions of the Software. 13 * 14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 15 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 16 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 17 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR 18 * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 19 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 20 * OTHER DEALINGS IN THE SOFTWARE. 21 */ 22 //! 23 //! \file mos_utilities.cpp 24 //! \brief Common OS service across different platform 25 //! \details Common OS service across different platform 26 //! 27 28 #include "mos_utilities.h" 29 #include "mos_util_user_feature_keys.h" 30 #include "vp_utils.h" 31 32 #define __MOS_USER_FEATURE_VALUE_SINGLE_SLICE_VEBOX_DEFAULT_VALUE "1" 33 MOS_USER_FEATURE_VALUE MosUtilities::m_mosUserFeatureDescFields[__MOS_USER_FEATURE_KEY_MAX_ID] = 34 { 35 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_MEDIA_RESET_TH_ID, 36 "Media Reset TH", 37 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 38 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 39 "General", 40 MOS_USER_FEATURE_TYPE_USER, 41 MOS_USER_FEATURE_VALUE_TYPE_INT32, 42 "0", 43 "If enabled, media reset will be enabled."), 44 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MEDIA_RESET_COUNT_ID, 45 "Media Reset Count", 46 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 47 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 48 "Report", 49 MOS_USER_FEATURE_TYPE_USER, 50 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 51 "0", 52 "Reports media reset count."), 53 54 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_PERF_PROFILER_ENABLE_ID, 55 "Perf Profiler Enable", 56 __MEDIA_USER_FEATURE_SUBKEY_PERFORMANCE, 57 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 58 "General", 59 MOS_USER_FEATURE_TYPE_USER, 60 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 61 "0", 62 "Perf Profiler Enable Control Flag"), 63 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_PERF_PROFILER_FE_BE_TIMING, 64 "Perf Profiler FE BE timing measurement", 65 __MEDIA_USER_FEATURE_SUBKEY_PERFORMANCE, 66 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 67 "General", 68 MOS_USER_FEATURE_TYPE_USER, 69 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 70 "0", 71 "Perf Profiler FE and BE Timing Measurement Flag"), 72 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_PERF_PROFILER_OUTPUT_FILE, 73 "Perf Profiler Output File Name", 74 __MEDIA_USER_FEATURE_SUBKEY_PERFORMANCE, 75 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 76 "General", 77 MOS_USER_FEATURE_TYPE_USER, 78 MOS_USER_FEATURE_VALUE_TYPE_STRING, 79 "Perf_DATA_00_00.bin", 80 "Performance Profiler Output File Name"), 81 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_PERF_PROFILER_BUFFER_SIZE, 82 "Perf Profiler Buffer Size", 83 __MEDIA_USER_FEATURE_SUBKEY_PERFORMANCE, 84 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 85 "General", 86 MOS_USER_FEATURE_TYPE_USER, 87 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 88 "10000000", 89 "Performance Profiler Buffer Size"), 90 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_PERF_PROFILER_ENABLE_MULTI_PROCESS, 91 "Perf Profiler Multi Process Support", 92 __MEDIA_USER_FEATURE_SUBKEY_PERFORMANCE, 93 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 94 "General", 95 MOS_USER_FEATURE_TYPE_USER, 96 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 97 "0", 98 "Performance Profiler Multi Process Support"), 99 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_ENABLE_HW_DEBUG_HOOKS_ID, 100 "Enable Media Debug Hooks", 101 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 102 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 103 "General", 104 MOS_USER_FEATURE_TYPE_USER, 105 MOS_USER_FEATURE_VALUE_TYPE_INT32, 106 "0", 107 "Eanble HW debug hooks. 1: enable, 0: disable."), 108 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_CODECHAL_FRAME_NUMBER_TO_STOP_ID, 109 "Decode Stop To Frame", 110 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 111 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 112 "General", 113 MOS_USER_FEATURE_TYPE_USER, 114 MOS_USER_FEATURE_VALUE_TYPE_INT32, 115 "-1", 116 "Frame Number To Stop"), 117 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_CODECHAL_ENABLE_SW_CRC_ID, 118 "Enable SW CRC", 119 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 120 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 121 "General", 122 MOS_USER_FEATURE_TYPE_USER, 123 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 124 "0", 125 "Enable SW CRC"), 126 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_PERF_PROFILER_REGISTER_1, 127 "Perf Profiler Register 1", 128 __MEDIA_USER_FEATURE_SUBKEY_PERFORMANCE, 129 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 130 "General", 131 MOS_USER_FEATURE_TYPE_USER, 132 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 133 "0", 134 "Performance Profiler Memory Information Register"), 135 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_PERF_PROFILER_REGISTER_2, 136 "Perf Profiler Register 2", 137 __MEDIA_USER_FEATURE_SUBKEY_PERFORMANCE, 138 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 139 "General", 140 MOS_USER_FEATURE_TYPE_USER, 141 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 142 "0", 143 "Performance Profiler Memory Information Register"), 144 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_PERF_PROFILER_REGISTER_3, 145 "Perf Profiler Register 3", 146 __MEDIA_USER_FEATURE_SUBKEY_PERFORMANCE, 147 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 148 "General", 149 MOS_USER_FEATURE_TYPE_USER, 150 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 151 "0", 152 "Performance Profiler Memory Information Register"), 153 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_PERF_PROFILER_REGISTER_4, 154 "Perf Profiler Register 4", 155 __MEDIA_USER_FEATURE_SUBKEY_PERFORMANCE, 156 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 157 "General", 158 MOS_USER_FEATURE_TYPE_USER, 159 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 160 "0", 161 "Performance Profiler Memory Information Register"), 162 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_PERF_PROFILER_REGISTER_5, 163 "Perf Profiler Register 5", 164 __MEDIA_USER_FEATURE_SUBKEY_PERFORMANCE, 165 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 166 "General", 167 MOS_USER_FEATURE_TYPE_USER, 168 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 169 "0", 170 "Performance Profiler Memory Information Register"), 171 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_PERF_PROFILER_REGISTER_6, 172 "Perf Profiler Register 6", 173 __MEDIA_USER_FEATURE_SUBKEY_PERFORMANCE, 174 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 175 "General", 176 MOS_USER_FEATURE_TYPE_USER, 177 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 178 "0", 179 "Performance Profiler Memory Information Register"), 180 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_PERF_PROFILER_REGISTER_7, 181 "Perf Profiler Register 7", 182 __MEDIA_USER_FEATURE_SUBKEY_PERFORMANCE, 183 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 184 "General", 185 MOS_USER_FEATURE_TYPE_USER, 186 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 187 "0", 188 "Performance Profiler Memory Information Register"), 189 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_PERF_PROFILER_REGISTER_8, 190 "Perf Profiler Register 8", 191 __MEDIA_USER_FEATURE_SUBKEY_PERFORMANCE, 192 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 193 "General", 194 MOS_USER_FEATURE_TYPE_USER, 195 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 196 "0", 197 "Performance Profiler Memory Information Register"), 198 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_SINGLE_TASK_PHASE_ENABLE_ID, 199 "Single Task Phase Enable", 200 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 201 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 202 "Encode", 203 MOS_USER_FEATURE_TYPE_USER, 204 MOS_USER_FEATURE_VALUE_TYPE_INT32, 205 "1", 206 "Enables/Disables single task phase mode. This feature is only enabled for AVC and HEVC encode."), 207 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_DECODE_SINGLE_TASK_PHASE_ENABLE_ID, 208 "Decode Single Task Phase Enable", 209 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 210 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 211 "Decode", 212 MOS_USER_FEATURE_TYPE_USER, 213 MOS_USER_FEATURE_VALUE_TYPE_INT32, 214 "1", 215 "Enables/Disables single task phase mode. This feature is only enabled for AVC and HEVC decode."), 216 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_AUX_TABLE_16K_GRANULAR_ID, 217 "Aux Table 16K Granular", 218 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 219 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 220 "General", 221 MOS_USER_FEATURE_TYPE_USER, 222 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 223 "1", 224 "Switches between 1-16K and 0-64K Granularity for Aux Table."), 225 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MFE_MBENC_ENABLE_ID, 226 "MFE MBEnc Enable", 227 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 228 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 229 "Encode", 230 MOS_USER_FEATURE_TYPE_USER, 231 MOS_USER_FEATURE_VALUE_TYPE_INT32, 232 "1", 233 "Enables/Disables MFE MBEnc Mode. This feature is only enabled for AVC encode."), 234 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MFE_FIRST_BUFFER_SUBMIT_ID, 235 "MFE First Buffer Submit", 236 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 237 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 238 "Encode", 239 MOS_USER_FEATURE_TYPE_USER, 240 MOS_USER_FEATURE_VALUE_TYPE_INT32, 241 "0", 242 "Used to indicate MFE work on UMD level"), 243 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_RC_PANIC_ENABLE_ID, 244 "RC Panic Mode", 245 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 246 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 247 "Encode", 248 MOS_USER_FEATURE_TYPE_USER, 249 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 250 "1", 251 "Enables/Disables PAK panic mode feature."), 252 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_SLICE_SHUTDOWN_ENABLE_ID, 253 "Slice Shutdown Enable", 254 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 255 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 256 "Encode", 257 MOS_USER_FEATURE_TYPE_USER, 258 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 259 "1", 260 "Used to Enable/Disable Slice shutdown. Only has impact on HSW."), 261 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_DECODE_LOCK_DISABLE_ID, 262 __MEDIA_USER_FEATURE_VALUE_DECODE_LOCK_DISABLE, 263 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 264 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 265 "Decode", 266 MOS_USER_FEATURE_TYPE_USER, 267 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 268 "0", 269 "If decode output surface can be locked for sync. "), 270 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_HW_WALKER_ID, 271 "Encode HW Walker", 272 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 273 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 274 "Encode", 275 MOS_USER_FEATURE_TYPE_USER, 276 MOS_USER_FEATURE_VALUE_TYPE_INT32, 277 "1", 278 "Used to Enable/Disable HW walker."), 279 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_ENCODE_HUC_FIRMWARE_LOAD_FAILED_ID, 280 "HuC Firmware Load Failed", 281 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 282 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 283 "Encode", 284 MOS_USER_FEATURE_TYPE_USER, 285 MOS_USER_FEATURE_VALUE_TYPE_INT32, 286 "0", 287 "Failed to load HuC firmware."), 288 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_ENCODE_HUC_IMEM_LOAD_FALIED_ID, 289 "HuC Valid Imem Load Failed", 290 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 291 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 292 "Encode", 293 MOS_USER_FEATURE_TYPE_USER, 294 MOS_USER_FEATURE_VALUE_TYPE_INT32, 295 "0", 296 "HuC status2 indicates Valid Imem Load failed."), 297 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_SUPPRESS_RECON_PIC_ENABLE_ID, 298 "Encode Suppress Recon Pic", 299 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 300 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 301 "Encode", 302 MOS_USER_FEATURE_TYPE_USER, 303 MOS_USER_FEATURE_VALUE_TYPE_INT32, 304 "1", 305 "Used to suppress recon pic generation for non-ref surfaces."), 306 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_ENCODE_ME_IN_USE_ID, 307 "Encode HME In Use", 308 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 309 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 310 "Report", 311 MOS_USER_FEATURE_TYPE_USER, 312 MOS_USER_FEATURE_VALUE_TYPE_INT32, 313 "0", 314 "Used to report if HME is in use."), 315 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_ENCODE_16xME_IN_USE_ID, 316 "Encode SuperHME In Use", 317 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 318 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 319 "Report", 320 MOS_USER_FEATURE_TYPE_USER, 321 MOS_USER_FEATURE_VALUE_TYPE_INT32, 322 "0", 323 "Used to report if SuperHme is in use."), 324 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_ENCODE_32xME_IN_USE_ID, 325 "Encode UltraHME In Use", 326 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 327 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 328 "Report", 329 MOS_USER_FEATURE_TYPE_USER, 330 MOS_USER_FEATURE_VALUE_TYPE_INT32, 331 "0", 332 "Used to report if UltraHme is in use."), 333 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_BRC_IN_USE_ID, 334 "Encode BRC In Use", 335 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 336 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 337 "Encode", 338 MOS_USER_FEATURE_TYPE_USER, 339 MOS_USER_FEATURE_VALUE_TYPE_INT32, 340 "0", 341 "Report key to indicate if BRC is turned on"), 342 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_ENCODE_RATECONTROL_METHOD_ID, 343 "Encode RateControl Method", 344 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 345 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 346 "Report", 347 MOS_USER_FEATURE_TYPE_USER, 348 MOS_USER_FEATURE_VALUE_TYPE_INT32, 349 "0", 350 "Used to report the RateControl Method."), 351 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_TARGET_USAGE_OVERRIDE_ID, 352 "Encode TU Override", 353 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 354 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 355 "Encode", 356 MOS_USER_FEATURE_TYPE_USER, 357 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 358 "0", 359 "Used to override TU value "), 360 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_AVC_ENCODE_ME_ENABLE_ID, 361 "AVC Encode HME", 362 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 363 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 364 "Encode", 365 MOS_USER_FEATURE_TYPE_USER, 366 MOS_USER_FEATURE_VALUE_TYPE_INT32, 367 "1", 368 "Enables/Disables HME for AVC."), 369 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_AVC_ENCODE_16xME_ENABLE_ID, 370 "AVC Encode SuperHME", 371 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 372 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 373 "Encode", 374 MOS_USER_FEATURE_TYPE_USER, 375 MOS_USER_FEATURE_VALUE_TYPE_INT32, 376 "255", 377 "Enables/Disables SHME for AVC."), 378 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_AVC_ENCODE_32xME_ENABLE_ID, 379 "AVC Encode UltraHME", 380 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 381 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 382 "Encode", 383 MOS_USER_FEATURE_TYPE_USER, 384 MOS_USER_FEATURE_VALUE_TYPE_INT32, 385 "255", 386 "Enables/Disables UHME for AVC."), 387 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_AVC_ENCODE_MULTIPRED_ENABLE_ID, 388 "AVC Encode MultiPred", 389 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 390 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 391 "Encode", 392 MOS_USER_FEATURE_TYPE_USER, 393 MOS_USER_FEATURE_VALUE_TYPE_INT32, 394 "1", 395 "Enables/Disables MultiPred feature for AVC."), 396 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_AVC_ENCODE_INTRA_REFRESH_QP_THRESHOLD_ID, 397 "AVC Encode Intra Refresh Qp Threshold", 398 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 399 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 400 "Encode", 401 MOS_USER_FEATURE_TYPE_USER, 402 MOS_USER_FEATURE_VALUE_TYPE_INT32, 403 "1", 404 "Gives Intra Refresh Qp Threshold value."), 405 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_AVC_FTQ_ENABLE_ID, 406 "AVC FTQ Enable", 407 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 408 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 409 "Encode", 410 MOS_USER_FEATURE_TYPE_USER, 411 MOS_USER_FEATURE_VALUE_TYPE_INT32, 412 "1", 413 "Enable/Disable FTQ for AVC."), 414 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_AVC_CAF_ENABLE_ID, 415 "AVC CAF Enable", 416 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 417 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 418 "Encode", 419 MOS_USER_FEATURE_TYPE_USER, 420 MOS_USER_FEATURE_VALUE_TYPE_INT32, 421 "1", 422 "Enable/Disable CAF for AVC."), 423 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_AVC_CAF_DISABLE_HD_ID, 424 "AVC CAF Disable HD", 425 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 426 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 427 "Encode", 428 MOS_USER_FEATURE_TYPE_USER, 429 MOS_USER_FEATURE_VALUE_TYPE_INT32, 430 "1", 431 "Enable/Disable CAF for HD resolutions for AVC."), 432 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_AVC_MB_BRC_ENABLE_ID, 433 "AVC Encode MB BRC", 434 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 435 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 436 "Encode", 437 MOS_USER_FEATURE_TYPE_USER, 438 MOS_USER_FEATURE_VALUE_TYPE_INT32, 439 "255", 440 "Enables/Disables MBBRC for AVC "), 441 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_AVC_FORCE_TO_SKIP_ENABLE_ID, 442 "AVC Force to Skip Enable", 443 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 444 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 445 "Encode", 446 MOS_USER_FEATURE_TYPE_USER, 447 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 448 "1", 449 "Enables/Disables Force to Skip for AVC Encode."), 450 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_AVC_SLIDING_WINDOW_SIZE_ID, 451 "AVC Sliding Window Size", 452 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 453 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 454 "Encode", 455 MOS_USER_FEATURE_TYPE_USER, 456 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 457 "0", 458 "Sliding Window Size for AVC Encode."), 459 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_AVC_ROUNDING_INTER_ENABLE_ID, 460 "AVC Encode Rounding Inter Enable", 461 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 462 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 463 "Encode", 464 MOS_USER_FEATURE_TYPE_USER, 465 MOS_USER_FEATURE_VALUE_TYPE_INT32, 466 "1", 467 "Enables/Disables Rounding Inter feature for AVC."), 468 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_AVC_ROUNDING_INTER_P_ID, 469 "AVC Encode Rounding Inter P", 470 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 471 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 472 "Encode", 473 MOS_USER_FEATURE_TYPE_USER, 474 MOS_USER_FEATURE_VALUE_TYPE_INT32, 475 "255", 476 "Sets the PAK Inter Rounding value for P frame for AVC "), 477 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_AVC_ROUNDING_INTER_B_ID, 478 "AVC Encode Rounding Inter B", 479 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 480 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 481 "Encode", 482 MOS_USER_FEATURE_TYPE_USER, 483 MOS_USER_FEATURE_VALUE_TYPE_INT32, 484 "255", 485 "Sets the PAK Inter Rounding value for B frame for AVC "), 486 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_AVC_ROUNDING_INTER_BREF_ID, 487 "AVC Encode Rounding Inter BRef", 488 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 489 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 490 "Encode", 491 MOS_USER_FEATURE_TYPE_USER, 492 MOS_USER_FEATURE_VALUE_TYPE_INT32, 493 "255", 494 "Sets the PAK Inter Rounding value for B ref frame for AVC "), 495 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_AVC_ADAPTIVE_ROUNDING_INTER_ENABLE_ID, 496 "AVC Encode Adaptive Rounding Inter Enable", 497 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 498 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 499 "Encode", 500 MOS_USER_FEATURE_TYPE_USER, 501 MOS_USER_FEATURE_VALUE_TYPE_INT32, 502 "1", 503 "Enables/Disables Adaptive Inter Rounding for AVC."), 504 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_AVC_SKIP_BIAS_ADJUSTMENT_ENABLE_ID, 505 "AVC Encode Skip Bias Adjustment Enable", 506 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 507 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 508 "Encode", 509 MOS_USER_FEATURE_TYPE_USER, 510 MOS_USER_FEATURE_VALUE_TYPE_INT32, 511 "1", 512 "Enables/Disables Skip Bias Adjustment feature for AVC."), 513 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_AVC_ADAPTIVE_INTRA_SCALING_ENABLE_ID, 514 "AVC Encode Adaptive Intra Scaling Enable", 515 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 516 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 517 "Encode", 518 MOS_USER_FEATURE_TYPE_USER, 519 MOS_USER_FEATURE_VALUE_TYPE_INT32, 520 "1", 521 "Enables/Disables Adaptive Intra Scaling feature for AVC."), 522 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_AVC_OLD_MODE_COST_ENABLE_ID, 523 "AVC Encode Old Mode Cost Enable", 524 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 525 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 526 "Encode", 527 MOS_USER_FEATURE_TYPE_USER, 528 MOS_USER_FEATURE_VALUE_TYPE_INT32, 529 "0", 530 "Enables/Disables Old Mode Cost tables for AVC."), 531 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VDENC_TAIL_INSERTION_DELAY_COUNT_ID, 532 "VDENC Encode Tail Insertion Delay Count", 533 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 534 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 535 "Encode", 536 MOS_USER_FEATURE_TYPE_USER, 537 MOS_USER_FEATURE_VALUE_TYPE_INT32, 538 "1500", 539 "Sets the VDENC Delay count."), 540 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VDENC_CRE_PREFETCH_ENABLE_ID, 541 "AVC VDEnc CRE Prefetch Enable", 542 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 543 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 544 "Encode", 545 MOS_USER_FEATURE_TYPE_USER, 546 MOS_USER_FEATURE_VALUE_TYPE_INT32, 547 "1", 548 "Enables/Disables CRE Prefetch for AVC VDEnc. Enabled by default for perf improvement."), 549 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VDENC_TLB_PREFETCH_ENABLE_ID, 550 "AVC VDEnc TLB Prefetch Enable", 551 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 552 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 553 "Encode", 554 MOS_USER_FEATURE_TYPE_USER, 555 MOS_USER_FEATURE_VALUE_TYPE_INT32, 556 "1", 557 "Enables/Disables TLB Prefetch for AVC VDEnc. Enabled by default for perf improvement."), 558 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VDENC_TLB_ALLOCATION_WA_ENABLE_ID, 559 "AVC VDEnc TLB WA Enable", 560 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 561 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 562 "Encode", 563 MOS_USER_FEATURE_TYPE_USER, 564 MOS_USER_FEATURE_VALUE_TYPE_INT32, 565 "1", 566 "Enables/Disables TLB Allocation WA for AVC VDEnc."), 567 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VDENC_PERMB_STREAMOUT_ENABLE_ID, 568 "AVC VDEnc PerMB StreamOut Enable", 569 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 570 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 571 "Encode", 572 MOS_USER_FEATURE_TYPE_USER, 573 MOS_USER_FEATURE_VALUE_TYPE_INT32, 574 "0", 575 "Enables/Disables PerMB StreamOut for AVC VDEnc."), 576 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_MMIO_MFX_LRA_0_OVERRIDE_ID, 577 "MFX_LRA_0 Override", 578 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 579 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 580 "Encode", 581 MOS_USER_FEATURE_TYPE_USER, 582 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 583 "0", 584 "Override Register MFX_LRA_0. Valid Only When AVC VDEnc TLB Allocation WA is Enabled."), 585 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_MMIO_MFX_LRA_1_OVERRIDE_ID, 586 "MFX_LRA_1 Override", 587 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 588 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 589 "Encode", 590 MOS_USER_FEATURE_TYPE_USER, 591 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 592 "0", 593 "Override Register MFX_LRA_1. Valid Only When AVC VDEnc TLB Allocation WA is Enabled."), 594 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_MMIO_MFX_LRA_2_OVERRIDE_ID, 595 "MFX_LRA_2 Override", 596 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 597 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 598 "Encode", 599 MOS_USER_FEATURE_TYPE_USER, 600 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 601 "0", 602 "Override Register MFX_LRA_2. Valid Only When AVC VDEnc TLB Allocation WA is Enabled."), 603 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_FLATNESS_CHECK_ENABLE_ID, 604 "Flatness Check Enable", 605 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 606 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 607 "Encode", 608 MOS_USER_FEATURE_TYPE_USER, 609 MOS_USER_FEATURE_VALUE_TYPE_INT32, 610 "1", 611 "Enables/Disables Flatness Check feature. This feature is only supported for AVC."), 612 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_AVC_ADAPTIVE_SEARCH_WINDOW_ENABLE_ID, 613 "Adaptive Search Window Enable", 614 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 615 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 616 "Encode", 617 MOS_USER_FEATURE_TYPE_USER, 618 MOS_USER_FEATURE_VALUE_TYPE_INT32, 619 "1", 620 "Enables/Disables Adaptive Search Window feature. This feature is only supported for AVC."), 621 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ADAPTIVE_TRANSFORM_DECISION_ENABLE_ID, 622 "Adaptive transform decision Enable", 623 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 624 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 625 "Encode", 626 MOS_USER_FEATURE_TYPE_USER, 627 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 628 __MOS_USER_FEATURE_VALUE_ADAPTIVE_TRANSFORM_DECISION_ENABLE_DEFAULT_VALUE, 629 "Enables/Disables Adaptive transform decision feature. This feature is only supported for AVC."), 630 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_WEIGHTED_PREDICTION_L0_IN_USE_ID, 631 "Weighted prediction used for L0 reference", 632 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 633 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 634 "Encode", 635 MOS_USER_FEATURE_TYPE_USER, 636 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 637 "1", 638 "Weighted prediction used for L0 reference."), 639 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_WEIGHTED_PREDICTION_L1_IN_USE_ID, 640 "Weighted prediction used for L1 reference", 641 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 642 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 643 "Encode", 644 MOS_USER_FEATURE_TYPE_USER, 645 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 646 "1", 647 "Weighted prediction used for L1 reference."), 648 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_FBR_BYPASS_ENABLE_ID, 649 "FBR Bypass Enable", 650 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 651 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 652 "Encode", 653 MOS_USER_FEATURE_TYPE_USER, 654 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 655 "1", 656 "Enables/Disables FBR Bypass feature. Starting SKL for AVC."), 657 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_STATIC_FRAME_DETECTION_ENABLE_ID, 658 "Static Frame Detection Enable", 659 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 660 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 661 "Encode", 662 MOS_USER_FEATURE_TYPE_USER, 663 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 664 "1", 665 "Enables/Disables Static Frame Detection feature. Starting BDW for AVC."), 666 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VDENC_SINGLE_PASS_ENABLE_ID, 667 "VDEnc Single Pass Enable", 668 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 669 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 670 "Encode", 671 MOS_USER_FEATURE_TYPE_USER, 672 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 673 "0", 674 "Enables/Disables VDEnc single pass feature. Starting from KBL for AVC VDEnc."), 675 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VDENC_BRC_MOTION_ADAPTIVE_ENABLE_ID, 676 "VDEnc BRC Motion Adaptive Enable", 677 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 678 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 679 "Encode", 680 MOS_USER_FEATURE_TYPE_USER, 681 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 682 "0", 683 "Enables/Disables VDEnc motion adaptive BRC for AVC VDEnc."), 684 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_ENABLE_FRAME_TRACKING_ID, 685 "Enable Frame Tracking", 686 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 687 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 688 "Encode", 689 MOS_USER_FEATURE_TYPE_USER, 690 MOS_USER_FEATURE_VALUE_TYPE_INT32, 691 "1", 692 "Enables/Disables Frame Tracking."), 693 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_COLOR_BIT_SUPPORT_ENABLE_ID, 694 "Colorbit Support Enable", 695 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 696 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 697 "Encode", 698 MOS_USER_FEATURE_TYPE_USER, 699 MOS_USER_FEATURE_VALUE_TYPE_INT32, 700 "1", 701 "Enables/Disables Colorbit Support. This feature is only supported for AVC."), 702 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_GROUP_ID_SELECT_ENABLE_ID, 703 "Group ID Select Enable", 704 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 705 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 706 "Encode", 707 MOS_USER_FEATURE_TYPE_USER, 708 MOS_USER_FEATURE_VALUE_TYPE_INT32, 709 "0", 710 "Enables/Disables Group Id Select."), 711 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_AVC_BRC_ENABLE_ID, 712 "AVC Encode BRC Mode", 713 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 714 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 715 "Report", 716 MOS_USER_FEATURE_TYPE_USER, 717 MOS_USER_FEATURE_VALUE_TYPE_INT32, 718 "0", 719 "Report."), 720 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_AVC_MULTIREF_QP_ID, 721 "AVC Encode Multiref Qp", 722 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 723 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 724 "Encode", 725 MOS_USER_FEATURE_TYPE_USER, 726 MOS_USER_FEATURE_VALUE_TYPE_INT32, 727 "1", 728 "Used to enable or disable multiref QP feature for BRC."), 729 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_AVC_BRC_VAR_COMPU_BYPASS_ID, 730 "BRC Variance Computation Bypass", 731 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 732 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 733 "Encode", 734 MOS_USER_FEATURE_TYPE_USER, 735 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 736 "1", 737 "Enables/Disables BRC Variance Computation Bypass feature. for GLK perf debug."), 738 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_AVC_BRC_SOFTWARE_ID, 739 "AVC BRC SW Simulation", 740 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 741 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 742 "Encode", 743 MOS_USER_FEATURE_TYPE_USER, 744 MOS_USER_FEATURE_VALUE_TYPE_INT32, 745 "0", 746 "Used to enable BRC SW simulation."), 747 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_AVC_BRC_SOFTWARE_IN_USE_ID, 748 "AVC BRC SW Simulation In Use", 749 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 750 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 751 "Report", 752 MOS_USER_FEATURE_TYPE_USER, 753 MOS_USER_FEATURE_VALUE_TYPE_INT32, 754 "0", 755 "Used to report if AVC BRC SW Simulation is in use."), 756 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENABLE_CNL_AVC_ENCODE_ARB_WA_ID, 757 "Enable CNL AVC Encode ARB WA", 758 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 759 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 760 "Encode", 761 MOS_USER_FEATURE_TYPE_USER, 762 MOS_USER_FEATURE_VALUE_TYPE_INT32, 763 "0", 764 "Enable/Disable CNL AVC Encode ARB WA for hang reproducing."), 765 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP9_ENCODE_ME_ENABLE_ID, 766 "VP9 Encode HME", 767 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 768 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 769 "Encode", 770 MOS_USER_FEATURE_TYPE_USER, 771 MOS_USER_FEATURE_VALUE_TYPE_INT32, 772 "1", 773 "Enables VP9 ME Encode."), 774 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP9_ENCODE_16xME_ENABLE_ID, 775 "VP9 Encode SuperHME", 776 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 777 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 778 "Encode", 779 MOS_USER_FEATURE_TYPE_USER, 780 MOS_USER_FEATURE_VALUE_TYPE_INT32, 781 "1", 782 "Enables VP9 16xME Encode."), 783 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP9_ENCODE_HUC_ENABLE_ID, 784 "VP9 Encode HUC Enable", 785 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 786 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 787 "Encode", 788 MOS_USER_FEATURE_TYPE_USER, 789 MOS_USER_FEATURE_VALUE_TYPE_INT32, 790 "0", 791 "Enables VP9 Huc."), 792 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP9_ENCODE_MULTIPASS_BRC_ENABLE_ID, 793 "VP9 Encode Multipass BRC Enable", 794 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 795 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 796 "Encode", 797 MOS_USER_FEATURE_TYPE_USER, 798 MOS_USER_FEATURE_VALUE_TYPE_INT32, 799 "1", 800 "Enables VP9 Encode Multipass BRC."), 801 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP9_ENCODE_MULTIPASS_BRC_IN_USE_ID, 802 "VP9 Encode Multipass BRC In Use", 803 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 804 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 805 "Encode", 806 MOS_USER_FEATURE_TYPE_USER, 807 MOS_USER_FEATURE_VALUE_TYPE_INT32, 808 "0", 809 "Report key to indicate if Multipass BRC is turned on."), 810 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP9_ENCODE_ADAPTIVE_REPAK_ENABLE_ID, 811 "VP9 Encode Adaptive RePAK Enable", 812 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 813 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 814 "Encode", 815 MOS_USER_FEATURE_TYPE_USER, 816 MOS_USER_FEATURE_VALUE_TYPE_INT32, 817 "0", 818 "Enables VP9 Encode Adaptive RePAK."), 819 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP9_ENCODE_ADAPTIVE_REPAK_IN_USE_ID, 820 "VP9 Encode Adaptive RePAK In Use", 821 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 822 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 823 "Encode", 824 MOS_USER_FEATURE_TYPE_USER, 825 MOS_USER_FEATURE_VALUE_TYPE_INT32, 826 "0", 827 "Report key to indicate if Adaptive RePAK is turned on."), 828 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP9_ENCODE_SINGLE_PASS_DYS_ENABLE_ID, 829 "VP9 Encode Single Pass Dys Enable", 830 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 831 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 832 "Encode", 833 MOS_USER_FEATURE_TYPE_USER, 834 MOS_USER_FEATURE_VALUE_TYPE_INT32, 835 "1", 836 "Report key to indicate if Single Pass Dys is turned on."), 837 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP9_ENCODE_PAK_TEST_ENABLE_ID, 838 "VP9 Encode PAK Test Enable", 839 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 840 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 841 "Encode", 842 MOS_USER_FEATURE_TYPE_USER, 843 MOS_USER_FEATURE_VALUE_TYPE_INT32, 844 "0", 845 "Enables VP9 Pak Test."), 846 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP9_ENCODE_MULTIREF_QP_ENABLE_ID, 847 "VP9 Encode Multiref Qp Enable", 848 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 849 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 850 "Encode", 851 MOS_USER_FEATURE_TYPE_USER, 852 MOS_USER_FEATURE_VALUE_TYPE_INT32, 853 "0", 854 "Enables VP9 Encode Multiref QP Check"), 855 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP9_ENCODE_ENABLE_VE_ID, 856 "Enable VP9 Vdenc Virtual Engine", 857 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 858 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 859 "Encode", 860 MOS_USER_FEATURE_TYPE_USER, 861 MOS_USER_FEATURE_VALUE_TYPE_INT32, 862 "0", 863 "Enable VP9 Vdenc Virtual Engine."), 864 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP9_ENCODE_ENABLE_HW_STITCH, 865 "VP9 Encode Enable HW Stitch", 866 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 867 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 868 "Encode", 869 MOS_USER_FEATURE_TYPE_USER, 870 MOS_USER_FEATURE_VALUE_TYPE_INT32, 871 "1", 872 "VP9 Encode Enable HW Stitch."), 873 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP9_ENCODE_ENABLE_BRC_DLL, 874 "VP9 BRC DLL Enable", 875 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 876 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 877 "Encode", 878 MOS_USER_FEATURE_TYPE_USER, 879 MOS_USER_FEATURE_VALUE_TYPE_INT32, 880 "0", 881 "Enables usage of VP9VDEnc DLL opposed to HuC firmware for BRC operations."), 882 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP9_ENCODE_BRC_DLL_PATH, 883 "VP9 BRC DLL Path", 884 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 885 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 886 "Encode", 887 MOS_USER_FEATURE_TYPE_USER, 888 MOS_USER_FEATURE_VALUE_TYPE_STRING, 889 "0", 890 "Optional: Select path of VP9VDEnc BRC DLL - if blank then disable VP9 BRC DLL Custom Path Enable."), 891 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP9_ENCODE_ENABLE_BRC_DLL_CUSTOMPATH, 892 "VP9 BRC DLL Custom Path Enable", 893 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 894 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 895 "Encode", 896 MOS_USER_FEATURE_TYPE_USER, 897 MOS_USER_FEATURE_VALUE_TYPE_INT32, 898 "0", 899 "Optional: Enables custom path for VP9 BRC DLL, if 0, location of UMD DLL is used."), 900 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_ENABLE_CMD_INIT_HUC_ID, 901 "VDEnc CmdInitializer Huc Enable", 902 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 903 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 904 "Encode", 905 MOS_USER_FEATURE_TYPE_USER, 906 MOS_USER_FEATURE_VALUE_TYPE_INT32, 907 "0", 908 "Enable CmdInitializer HuC FW for HEVC/VP9 VDEnc."), 909 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_ENABLE_ID, 910 "HEVC Encode", 911 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 912 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 913 "Encode", 914 MOS_USER_FEATURE_TYPE_USER, 915 MOS_USER_FEATURE_VALUE_TYPE_INT32, 916 "1", 917 "Enables/Disables HEVC Encode."), 918 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_SECURE_INPUT_ID, 919 "Secure HEVC Encode", 920 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 921 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 922 "Secure HEVC Encode", 923 MOS_USER_FEATURE_TYPE_USER, 924 MOS_USER_FEATURE_VALUE_TYPE_INT32, 925 "0", 926 "Secure HEVC Encode."), 927 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_ENABLE_MEDIARESET_TEST_ID, 928 "Enable MediaReset Test", 929 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 930 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 931 "Encode", 932 MOS_USER_FEATURE_TYPE_USER, 933 MOS_USER_FEATURE_VALUE_TYPE_INT32, 934 "0", 935 "Enable HEVC Encode Media Reset Test, by default:0(disabled)."), 936 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_ENABLE_WP_SUPPORT_ID, 937 "Enable WP Support", 938 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 939 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 940 "Encode", 941 MOS_USER_FEATURE_TYPE_USER, 942 MOS_USER_FEATURE_VALUE_TYPE_INT32, 943 "1", 944 "Enable Weighted Prediction support in HEVC Encoder."), 945 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_MODE_ID, 946 "HEVC Encode Mode", 947 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 948 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 949 "Encode", 950 MOS_USER_FEATURE_TYPE_USER, 951 MOS_USER_FEATURE_VALUE_TYPE_INT32, 952 "0", 953 "Reports out the internal HEVC encode mode."), 954 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_ME_ENABLE_ID, 955 "HEVC Encode HME", 956 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 957 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 958 "Encode", 959 MOS_USER_FEATURE_TYPE_USER, 960 MOS_USER_FEATURE_VALUE_TYPE_INT32, 961 "1", 962 "Enables/Disables HME for HEVC."), 963 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_16xME_ENABLE_ID, 964 "HEVC Encode SuperHME", 965 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 966 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 967 "Encode", 968 MOS_USER_FEATURE_TYPE_USER, 969 MOS_USER_FEATURE_VALUE_TYPE_INT32, 970 "1", 971 "Enables/Disables SuperHme for HEVC."), 972 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_32xME_ENABLE_ID, 973 "HEVC Encode UltraHME", 974 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 975 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 976 "Encode", 977 MOS_USER_FEATURE_TYPE_USER, 978 MOS_USER_FEATURE_VALUE_TYPE_INT32, 979 "0", 980 "Enables/Disables UHME for HEVC."), 981 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_HEVC_VDENC_16xME_ENABLE_ID, 982 "Enable HEVC VDEnc SuperHME", 983 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 984 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 985 "Encode", 986 MOS_USER_FEATURE_TYPE_USER, 987 MOS_USER_FEATURE_VALUE_TYPE_INT32, 988 "1", 989 "Enable/Disable SuperHme for HEVC VDEnc."), 990 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_HEVC_VDENC_32xME_ENABLE_ID, 991 "Enable HEVC VDEnc UltraHME", 992 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 993 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 994 "Encode", 995 MOS_USER_FEATURE_TYPE_USER, 996 MOS_USER_FEATURE_VALUE_TYPE_INT32, 997 "1", 998 "Enables/Disables UHME for HEVC VDEnc."), 999 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_26Z_ENABLE_ID, 1000 "HEVC Encode 26Z Enable", 1001 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1002 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1003 "Encode", 1004 MOS_USER_FEATURE_TYPE_USER, 1005 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1006 "1", 1007 "Enables/Disables 26Z for HEVC."), 1008 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_REGION_NUMBER_ID, 1009 "HEVC Encode WP Number", 1010 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1011 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1012 "Encode", 1013 MOS_USER_FEATURE_TYPE_USER, 1014 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1015 "4", 1016 "Enables/Disables WP for HEVC."), 1017 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_NUM_B_KERNEL_SPLIT, 1018 "HEVC Encode B Kernel Split Num", 1019 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1020 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1021 "Encode", 1022 MOS_USER_FEATURE_TYPE_USER, 1023 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1024 "0", 1025 "Number of B kernel splits for HEVC."), 1026 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_POWER_SAVING, 1027 "HEVC Encode Power Save Enable", 1028 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1029 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1030 "Encode", 1031 MOS_USER_FEATURE_TYPE_USER, 1032 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1033 "0", 1034 "Enable power saving mode in HEVC Enc"), 1035 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_NUM_8x8_INTRA_KERNEL_SPLIT, 1036 "HEVC Encode 8x8 Intra Kernel Split Num", 1037 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1038 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1039 "Encode", 1040 MOS_USER_FEATURE_TYPE_USER, 1041 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1042 "0", 1043 "Number of 8x8 intra kernel splits for HEVC."), 1044 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_RDOQ_ENABLE_ID, 1045 "HEVC RDOQ Enable", 1046 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1047 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1048 "Encode", 1049 MOS_USER_FEATURE_TYPE_USER, 1050 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1051 "1", 1052 "Enable RDOQ for HEVC"), 1053 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_IFRAME_RDOQ_ENABLE_ID, 1054 "HEVC I Frame RDOQ Enable", 1055 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1056 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1057 "Encode", 1058 MOS_USER_FEATURE_TYPE_USER, 1059 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1060 "1", 1061 "Enable I Frame RDOQ for HEVC"), 1062 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_MULTIPASS_BRC_ENABLE_ID, 1063 "HEVC Encode Multipass BRC Enable", 1064 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1065 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1066 "Encode", 1067 MOS_USER_FEATURE_TYPE_USER, 1068 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1069 "1", 1070 "Enables HEVC Encode Multipass BRC."), 1071 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_MULTIPASS_BRC_IN_USE_ID, 1072 "HEVC Encode Multipass BRC In Use", 1073 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1074 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1075 "Encode", 1076 MOS_USER_FEATURE_TYPE_USER, 1077 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1078 "0", 1079 "Report key to indicate if Multipass BRC is turned on."), 1080 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_BRC_SOFTWARE_ID, 1081 "BRC SW Simulation", 1082 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1083 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1084 "Encode", 1085 MOS_USER_FEATURE_TYPE_USER, 1086 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1087 "0", 1088 "Used to enable BRC SW simulation Mode"), 1089 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_BRC_SOFTWARE_PATH_ID, 1090 "BRC SW Simulation Modules Path", 1091 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1092 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1093 "Encode", 1094 MOS_USER_FEATURE_TYPE_USER, 1095 MOS_USER_FEATURE_VALUE_TYPE_STRING, 1096 "0", 1097 "Used to enable ENCODE BRC SW simulation Custom Path"), 1098 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_BRC_SOFTWARE_IN_USE_ID, 1099 "BRC SW Simulation In Use", 1100 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1101 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1102 "Report", 1103 MOS_USER_FEATURE_TYPE_USER, 1104 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1105 "0", 1106 "Used to report if ENCODE BRC SW Simulation is in use."), 1107 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_LA_SOFTWARE_ID, 1108 "LA SW Simulation", 1109 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1110 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1111 "Encode", 1112 MOS_USER_FEATURE_TYPE_USER, 1113 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1114 "0", 1115 "Used to enable lookahead SW simulation Mode"), 1116 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_LA_SOFTWARE_PATH_ID, 1117 "LA SW Simulation Modules Path", 1118 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1119 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1120 "Encode", 1121 MOS_USER_FEATURE_TYPE_USER, 1122 MOS_USER_FEATURE_VALUE_TYPE_STRING, 1123 "0", 1124 "Used to enable ENCODE lookahead SW simulation Custom Path"), 1125 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_LA_SOFTWARE_IN_USE_ID, 1126 "LA SW Simulation In Use", 1127 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1128 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1129 "Report", 1130 MOS_USER_FEATURE_TYPE_USER, 1131 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1132 "0", 1133 "Used to report if ENCODE lookahead SW Simulation is in use."), 1134 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_VDENC_ACQP_ENABLE_ID, 1135 "HEVC VDEnc ACQP Enable", 1136 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1137 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1138 "Encode", 1139 MOS_USER_FEATURE_TYPE_USER, 1140 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1141 "0", 1142 "Enable ACQP for HEVC VDEnc"), 1143 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_VDENC_VQI_ENABLE_ID, 1144 "HEVC VDEnc VQI Enable", 1145 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1146 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1147 "Encode", 1148 MOS_USER_FEATURE_TYPE_USER, 1149 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1150 "1", 1151 "Enable VQI for HEVC VDEnc"), 1152 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_FORCE_PAK_PASS_NUM_ID, 1153 "Force PAK Pass Num", 1154 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1155 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1156 "Encode", 1157 MOS_USER_FEATURE_TYPE_USER, 1158 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 1159 "0", 1160 "Force dual pipe PAK pass number.by default = 0: not forcing"), 1161 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_VDENC_ROUNDING_ENABLE_ID, 1162 "HEVC VDEnc Rounding Enable", 1163 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1164 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1165 "Encode", 1166 MOS_USER_FEATURE_TYPE_USER, 1167 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1168 "1", 1169 "Enable Rounding for HEVC VDEnc"), 1170 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_VDENC_PAKOBJCMD_STREAMOUT_ENABLE_ID, 1171 "HEVC VDEnc PakObjCmd StreamOut Enable", 1172 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1173 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1174 "Encode", 1175 MOS_USER_FEATURE_TYPE_USER, 1176 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1177 "0", 1178 "Enable PakObjCmd StreamOut for HEVC VDEnc"), 1179 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_VDENC_LBCONLY_ENABLE_ID, 1180 "HEVC VDEnc LBC Only Enable", 1181 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1182 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1183 "Encode", 1184 MOS_USER_FEATURE_TYPE_USER, 1185 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1186 "0", 1187 "Enable LBC Only for IBC for HEVC VDEnc"), 1188 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_VDENC_PARTIAL_FRAME_UPDATE_ENABLE_ID, 1189 "HEVC VDEnc Partial Frame Update Enable", 1190 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1191 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1192 "Encode", 1193 MOS_USER_FEATURE_TYPE_USER, 1194 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1195 "0", 1196 "Enable Partial Frame Update for HEVC VDEnc"), 1197 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_NUM_THREADS_PER_LCU_ID, 1198 "HEVC Num Threads Per LCU", 1199 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1200 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1201 "Encode", 1202 MOS_USER_FEATURE_TYPE_USER, 1203 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1204 "8", 1205 "Sets the number of threads per LCU. Currently used only for CNL."), 1206 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_MDF_DISABLE_ID, 1207 "HEVC Encode MDF Disable", 1208 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1209 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1210 "Encode", 1211 MOS_USER_FEATURE_TYPE_USER, 1212 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1213 "0", 1214 "Enables/Disables MDF for HEVC Encoder."), 1215 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_CODEC_MMC_ENABLE_ID, 1216 "Enable Codec MMC", 1217 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1218 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1219 "Codec", 1220 MOS_USER_FEATURE_TYPE_USER, 1221 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1222 "0", 1223 "Enable Codec MMCD. (0: Disable codec MMCD; other values: enable codec MMCD)."), 1224 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_DECODE_MMC_ENABLE_ID, 1225 "Enable Decode MMC", 1226 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1227 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1228 "Decode", 1229 MOS_USER_FEATURE_TYPE_USER, 1230 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1231 "0", 1232 "Enable Decode MMCD. (0: Disable decode MMCD; other values: enable decode MMCD)."), 1233 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_ENCODE_MMC_ENABLE_ID, 1234 "Enable Encode MMC", 1235 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1236 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1237 "Encode", 1238 MOS_USER_FEATURE_TYPE_USER, 1239 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1240 "0", 1241 "Enable Encode MMCD. (0: Disable encode MMCD; other values: enable encode MMCD)."), 1242 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_CODEC_MMC_IN_USE_ID, 1243 "Codec MMC In Use", 1244 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1245 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1246 "Report", 1247 MOS_USER_FEATURE_TYPE_USER, 1248 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1249 "0", 1250 "Report key to indicate if codec MMC is turned on "), 1251 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_DECODE_MMC_IN_USE_ID, 1252 "Decode MMC In Use", 1253 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1254 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1255 "Report", 1256 MOS_USER_FEATURE_TYPE_USER, 1257 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1258 "0", 1259 "Report key to indicate if decode MMC is turned on "), 1260 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_DECODE_MPEG2_MODE_ID, 1261 "MPEG2 Decode Mode", 1262 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1263 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1264 "Report", 1265 MOS_USER_FEATURE_TYPE_USER, 1266 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1267 "0", 1268 "Report key to indicate if MPEG2 decode mode is turned on "), 1269 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_DECODE_VC1_MODE_ID, 1270 "VC1 Decode Mode", 1271 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1272 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1273 "Report", 1274 MOS_USER_FEATURE_TYPE_USER, 1275 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1276 "0", 1277 "Report key to indicate if VC1 decode mode is turned on "), 1278 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_DECODE_AVC_MODE_ID, 1279 "AVC Decode Mode", 1280 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1281 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1282 "Report", 1283 MOS_USER_FEATURE_TYPE_USER, 1284 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1285 "0", 1286 "Report key to indicate if AVC decode mode is turned on "), 1287 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_DECODE_JPEG_MODE_ID, 1288 "JPEG Decode Mode", 1289 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1290 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1291 "Report", 1292 MOS_USER_FEATURE_TYPE_USER, 1293 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1294 "0", 1295 "Report key to indicate if JPEG decode mode is turned on "), 1296 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_DECODE_VP8_MODE_ID, 1297 "VP8 Decode Mode", 1298 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1299 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1300 "Report", 1301 MOS_USER_FEATURE_TYPE_USER, 1302 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1303 "0", 1304 "Report key to indicate if VP8 decode mode is turned on "), 1305 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_DECODE_HEVC_MODE_ID, 1306 "HEVC Decode Mode", 1307 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1308 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1309 "Report", 1310 MOS_USER_FEATURE_TYPE_USER, 1311 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1312 "0", 1313 "Report key to indicate if HEVC decode mode is turned on "), 1314 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_DECODE_VP9_MODE_ID, 1315 "VP9 Decode Mode", 1316 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1317 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1318 "Report", 1319 MOS_USER_FEATURE_TYPE_USER, 1320 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1321 "0", 1322 "Report key to indicate if VP9 decode mode is turned on "), 1323 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_DECODE_AV1_MODE_ID, 1324 "AV1 Decode Mode", 1325 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1326 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1327 "Report", 1328 MOS_USER_FEATURE_TYPE_USER, 1329 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1330 "0", 1331 "Report key to indicate if AV1 decode mode is turned on "), 1332 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_DECODE_HISTOGRAM_FROM_VEBOX_ID, 1333 "Decode Histogram from VEBox", 1334 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1335 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1336 "Report", 1337 MOS_USER_FEATURE_TYPE_USER, 1338 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1339 "0", 1340 "Report key to indicate if decode histogram is from VEBox "), 1341 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_DECODE_EXTENDED_MMC_IN_USE_ID, 1342 "Decode Extended MMC In Use", 1343 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1344 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1345 "Report", 1346 MOS_USER_FEATURE_TYPE_USER, 1347 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1348 "0", 1349 "Report key to indicate if decode extended MMC is turned on "), 1350 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_ENCODE_MMC_IN_USE_ID, 1351 "Encode MMC In Use", 1352 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1353 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1354 "Report", 1355 MOS_USER_FEATURE_TYPE_USER, 1356 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1357 "0", 1358 "Report key to indicate if encode MMC is turned on "), 1359 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_ENCODE_EXTENDED_MMC_IN_USE_ID, 1360 "Encode Extended MMC In Use", 1361 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1362 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1363 "Report", 1364 MOS_USER_FEATURE_TYPE_USER, 1365 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1366 "0", 1367 "Report key to indicate if encode extended MMC is turned on "), 1368 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_USED_VDBOX_NUM_ID, 1369 "Media Encode Used VDBOX Number", 1370 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1371 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1372 "Encode", 1373 MOS_USER_FEATURE_TYPE_USER, 1374 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1375 "1", 1376 "Media Encode Used VDBOX Number."), 1377 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_ENABLE_COMPUTE_CONTEXT_ID, 1378 "Enable Compute Context", 1379 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1380 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1381 "Encode", 1382 MOS_USER_FEATURE_TYPE_USER, 1383 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 1384 "0", 1385 "Enable Compute Context. default:0 disabled."), 1386 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_DECODE_ENABLE_COMPUTE_CONTEXT_ID, 1387 "Enable Compute Context", 1388 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1389 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1390 "Encode", 1391 MOS_USER_FEATURE_TYPE_USER, 1392 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 1393 "0", 1394 "Enable Compute Context. default:0 disabled."), 1395 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MMC_DEC_RT_COMPRESSIBLE_ID, 1396 "Decode RT Compressible", 1397 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1398 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1399 "Report", 1400 MOS_USER_FEATURE_TYPE_USER, 1401 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1402 "0", 1403 "Report Key to indicate if the surface is MMCD capable (0: no; 1: yes)."), 1404 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MMC_DEC_RT_COMPRESSMODE_ID, 1405 "Decode RT Compress Mode", 1406 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1407 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1408 "Report", 1409 MOS_USER_FEATURE_TYPE_USER, 1410 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1411 "0", 1412 "Report Key to indicate the MMCD compression mode of a surface "), 1413 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MMC_ENC_RECON_COMPRESSIBLE_ID, 1414 "Encode Recon Compressible", 1415 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1416 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1417 "Report", 1418 MOS_USER_FEATURE_TYPE_USER, 1419 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1420 "0", 1421 "Report Key to indicate if the surface is MMCD capable (0: no; 1: yes)."), 1422 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MMC_ENC_RECON_COMPRESSMODE_ID, 1423 "Encode Recon Compress Mode", 1424 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1425 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1426 "Report", 1427 MOS_USER_FEATURE_TYPE_USER, 1428 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1429 "0", 1430 "Report Key to indicate the MMCD compression mode of a surface "), 1431 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_SLICE_SHUTDOWN_DEFAULT_STATE_ID, 1432 "Slice Shutdown Default State", 1433 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1434 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1435 "Encode", 1436 MOS_USER_FEATURE_TYPE_USER, 1437 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1438 "0", 1439 "Slice Shutdown default state."), 1440 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_SLICE_SHUTDOWN_REQUEST_STATE_ID, 1441 "Slice Shutdown Request State", 1442 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1443 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1444 "Encode", 1445 MOS_USER_FEATURE_TYPE_USER, 1446 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1447 "0", 1448 "Slice Shutdown requested state ."), 1449 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_SLICE_SHUTDOWN_RESOLUTION_THRESHOLD_ID, 1450 "Slice Shutdown Resolution Threshold", 1451 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1452 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1453 "Encode", 1454 MOS_USER_FEATURE_TYPE_USER, 1455 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1456 "0", 1457 "Slice Shutdown Resolution Threshold "), 1458 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_SLICE_SHUTDOWN_TARGET_USAGE_THRESHOLD_ID, 1459 "Slice Shutdown Target Usage Threshold", 1460 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1461 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1462 "Encode", 1463 MOS_USER_FEATURE_TYPE_USER, 1464 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1465 "0", 1466 "Slice Shutdown Target Usage Threshold "), 1467 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_MPEG2_SLICE_STATE_ENABLE_ID, 1468 "Mpeg2 Encode Slice State Enable", 1469 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1470 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1471 "Encode", 1472 MOS_USER_FEATURE_TYPE_USER, 1473 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1474 "1", 1475 "Slice Shutdown related param for Mpeg2."), 1476 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_MPEG2_ENCODE_BRC_DISTORTION_BUFFER_ENABLE_ID, 1477 "Mpeg2 Encode BRC Distorion Buffer enable", 1478 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1479 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1480 "Encode", 1481 MOS_USER_FEATURE_TYPE_USER, 1482 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1483 "0", 1484 "Enables/Disables BRC distorion buffer dump for MPEG2 Encoder"), 1485 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_NUMBER_OF_CODEC_DEVICES_ON_VDBOX1_ID, 1486 "Num of Codec Devices on VDBOX1", 1487 __MEDIA_USER_FEATURE_SUBKEY_REPORT,//read path and write path are the same 1488 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1489 "Report", 1490 MOS_USER_FEATURE_TYPE_USER, 1491 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1492 "0", 1493 "Report number of Codec devices created on VDBox #1."), 1494 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_NUMBER_OF_CODEC_DEVICES_ON_VDBOX2_ID, 1495 "Num of Codec Devices on VDBOX2", 1496 __MEDIA_USER_FEATURE_SUBKEY_REPORT,//read path and write path are the same 1497 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1498 "Report", 1499 MOS_USER_FEATURE_TYPE_USER, 1500 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1501 "0", 1502 "Report number of Codec devices created on VDBox #2"), 1503 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_VDI_MODE_ID, 1504 __MEDIA_USER_FEATURE_VALUE_VDI_MODE, 1505 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1506 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1507 "VP", 1508 MOS_USER_FEATURE_TYPE_USER, 1509 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 1510 "1", 1511 "Always true for Gen7.5+"), 1512 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MEDIA_WALKER_MODE_ID, 1513 __MEDIA_USER_FEATURE_VALUE_MEDIA_WALKER_MODE, 1514 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1515 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1516 "VP", 1517 MOS_USER_FEATURE_TYPE_USER, 1518 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1519 "-1", 1520 "Media Walker Mode: Disabled(0), Repel(1), Dual(2), Quad(3), default(-1):Not Set"), 1521 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP8_HW_SCOREBOARD_ENABLE_ID, 1522 "VP8 HW Scoreboard", 1523 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1524 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1525 "Encode", 1526 MOS_USER_FEATURE_TYPE_USER, 1527 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1528 "1", 1529 "Enables VP8 Encode HW Scoreboard Feature."), 1530 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP8_ENCODE_ME_ENABLE_ID, 1531 "VP8 Encode HME", 1532 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1533 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1534 "Encode", 1535 MOS_USER_FEATURE_TYPE_USER, 1536 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1537 "1", 1538 "Enables VP8 Encode HME Feature."), 1539 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP8_ENCODE_16xME_ENABLE_ID, 1540 "VP8 Encode SuperHME", 1541 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1542 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1543 "Encode", 1544 MOS_USER_FEATURE_TYPE_USER, 1545 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1546 "1", 1547 "Enables VP8 Encode SuperHME Feature"), 1548 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP8_ENCODE_REPAK_ENABLE_ID, 1549 "VP8 Encode Repak", 1550 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1551 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1552 "Encode", 1553 MOS_USER_FEATURE_TYPE_USER, 1554 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1555 "1", 1556 "Enables VP8 Encode Repak Feature."), 1557 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP8_ENCODE_MULTIPASS_BRC_ENABLE_ID, 1558 "VP8 Encode Multipass BRC Enable", 1559 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1560 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1561 "Encode", 1562 MOS_USER_FEATURE_TYPE_USER, 1563 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1564 "1", 1565 "Enables VP8 Encode Multipass BRC."), 1566 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP8_ENCODE_ADAPTIVE_REPAK_ENABLE_ID, 1567 "VP8 Encode Adpative Repak Enable", 1568 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1569 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1570 "Encode", 1571 MOS_USER_FEATURE_TYPE_USER, 1572 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1573 "1", 1574 "Enables VP8 Encode Adaptive Repak Feature."), 1575 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_DISABLE_HEVC_REALTILE_DECODE_ID, 1576 "Disable HEVC Real Tile Decode", 1577 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1578 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1579 "Decode", 1580 MOS_USER_FEATURE_TYPE_USER, 1581 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 1582 "0", 1583 "Disable HEVC real tile decode mode. Default is not disabled"), 1584 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENABLE_HEVC_REALTILE_MULTI_PHASE_DECODE_ID, 1585 "Enable HEVC Real Tile Multi Phase Decode", 1586 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1587 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1588 "Decode", 1589 MOS_USER_FEATURE_TYPE_USER, 1590 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 1591 "1", 1592 "Enable HEVC real tile multi-phase decode mode. Default is enabled"), 1593 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HCP_DECODE_USER_PIPE_NUM_ID, 1594 "HCP Decode User Pipe Num", 1595 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1596 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1597 "Codec", 1598 MOS_USER_FEATURE_TYPE_USER, 1599 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 1600 "2", 1601 "When vdbox >= 4, pipe num equals to the value set by user. (Default 2: use 2 pipes)"), //This is WA for scalability when vdbox num >= 4 because of kmd not ready 1602 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_APOGEIOS_AV1D_ENABLE_ID, 1603 "ApogeiosAv1dEnable", 1604 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1605 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1606 "Codec", 1607 MOS_USER_FEATURE_TYPE_USER, 1608 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 1609 "1", 1610 "Enable Apogeios av1 decode path. 1: enable, 0: disable. "), 1611 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_ENABLE_HEVC_DECODE_RT_FRAME_COUNT_ID, 1612 "RT Decoded Count", 1613 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1614 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1615 "Report", 1616 MOS_USER_FEATURE_TYPE_USER, 1617 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1618 "0", 1619 "Reports out real tile decoded frame count."), 1620 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_ENABLE_HEVC_DECODE_VT_FRAME_COUNT_ID, 1621 "VT Decoded Count", 1622 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1623 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1624 "Report", 1625 MOS_USER_FEATURE_TYPE_USER, 1626 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1627 "0", 1628 "Reports out virtual tile decoded frame count."), 1629 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_ENABLE_HEVC_DECODE_SP_FRAME_COUNT_ID, 1630 "SP Decoded Count", 1631 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1632 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1633 "Report", 1634 MOS_USER_FEATURE_TYPE_USER, 1635 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1636 "0", 1637 "Reports out single pipe decoded frame count."), 1638 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_AV1BTDLROWSTORECACHE_DISABLE_ID, 1639 "DisableAv1BtdlRowstoreCache", 1640 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1641 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1642 "Decode", 1643 MOS_USER_FEATURE_TYPE_USER, 1644 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1645 "0", 1646 "Disable AV1 BSD Rowstore Cache flag. 0: Enable, 1: Disable."), 1647 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_AV1SMVLROWSTORECACHE_DISABLE_ID, 1648 "DisableAv1SmvlRowstoreCache", 1649 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1650 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1651 "Decode", 1652 MOS_USER_FEATURE_TYPE_USER, 1653 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1654 "0", 1655 "Disable AV1 SMV Rowstore Cache flag. 0: Enable, 1: Disable."), 1656 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_AV1IPDLROWSTORECACHE_DISABLE_ID, 1657 "DisableAv1IpdlRowstoreCache", 1658 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1659 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1660 "Decode", 1661 MOS_USER_FEATURE_TYPE_USER, 1662 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1663 "0", 1664 "Disable AV1 IPD Rowstore Cache flag. 0: Enable, 1: Disable."), 1665 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_AV1DFLYROWSTORECACHE_DISABLE_ID, 1666 "DisableAv1DflyRowstoreCache", 1667 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1668 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1669 "Decode", 1670 MOS_USER_FEATURE_TYPE_USER, 1671 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1672 "0", 1673 "Disable AV1 DFLY Rowstore Cache flag. 0: Enable, 1: Disable."), 1674 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_AV1DFLUROWSTORECACHE_DISABLE_ID, 1675 "DisableAv1DfluRowstoreCache", 1676 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1677 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1678 "Decode", 1679 MOS_USER_FEATURE_TYPE_USER, 1680 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1681 "0", 1682 "Disable AV1 DFLU Rowstore Cache flag. 0: Enable, 1: Disable."), 1683 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_AV1DFLVROWSTORECACHE_DISABLE_ID, 1684 "DisableAv1DflvRowstoreCache", 1685 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1686 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1687 "Decode", 1688 MOS_USER_FEATURE_TYPE_USER, 1689 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1690 "0", 1691 "Disable AV1 DFLV Rowstore Cache flag. 0: Enable, 1: Disable."), 1692 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_AV1CDEFROWSTORECACHE_DISABLE_ID, 1693 "DisableAv1CdefRowstoreCache", 1694 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1695 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1696 "Decode", 1697 MOS_USER_FEATURE_TYPE_USER, 1698 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1699 "0", 1700 "Disable AV1 CDEF Rowstore Cache flag. 0: Enable, 1: Disable."), 1701 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENABLE_AVP_SCALABILITY_DECODE_ID, 1702 "Enable AVP Scalability Decode", 1703 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1704 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1705 "Codec", 1706 MOS_USER_FEATURE_TYPE_USER, 1707 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 1708 "0", 1709 "Enable AVP Scalability decode mode. Default 0: Scalable Decode Mode "), 1710 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_AV1_DECODE_ON_SIMULATION_ID, 1711 "AV1 On Simulation", 1712 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1713 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1714 "Decode", 1715 MOS_USER_FEATURE_TYPE_USER, 1716 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 1717 "0", 1718 "AV1 decode running on simulation. Default 0, set to 1 if on simulation."), 1719 1720 #if (_DEBUG || _RELEASE_INTERNAL) 1721 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_HUC_STATUS2_VALUE, 1722 "Huc Status2 Value", 1723 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1724 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1725 "Encode", 1726 MOS_USER_FEATURE_TYPE_USER, 1727 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 1728 "0", 1729 "Value of HuC status2."), 1730 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_MHW_BASE_VDENC_INTERFACE_ID, 1731 "Use Mhw Base Vdenc Interface", 1732 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1733 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1734 "MOS", 1735 MOS_USER_FEATURE_TYPE_USER, 1736 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1737 "0", 1738 "Mhw Base Vdenc Interface Active Flag"), 1739 1740 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_MEDIA_PREEMPTION_ENABLE_ID, 1741 __MEDIA_USER_FEATURE_VALUE_MEDIA_PREEMPTION_ENABLE, 1742 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1743 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1744 "Media", 1745 MOS_USER_FEATURE_TYPE_USER, 1746 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1747 "1", // Enable media UMD preemption by default under release internal version and debug version for CNL+ even if there is no user feature setting. 1748 "Enable/Disable Pre-emption for media"), 1749 1750 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_MDF_OVERRIDE_L3ALLOC_REG, 1751 "MDF L3ALLOC register override", 1752 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1753 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1754 "Media", 1755 MOS_USER_FEATURE_TYPE_USER, 1756 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1757 "0xff00ff00", 1758 "Override L3 ALLOC register value in MDF"), 1759 1760 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_MDF_OVERRIDE_L3TCCNTRL_REG, 1761 "MDF L3TCCNTRL register override", 1762 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1763 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1764 "Media", 1765 MOS_USER_FEATURE_TYPE_USER, 1766 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1767 "0xff00ff00", 1768 "Override L3 TCCNTRL register value in MDF"), 1769 1770 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_MDF_OVERRIDE_MOCS_INDEX, 1771 "MDF MOCS index override", 1772 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1773 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1774 "Media", 1775 MOS_USER_FEATURE_TYPE_USER, 1776 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1777 "5", 1778 "Override MOCS index value in MDF"), 1779 1780 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_MDF_FORCE_RAMODE, 1781 "MDF Force RAMode", 1782 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1783 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1784 "Media", 1785 MOS_USER_FEATURE_TYPE_USER, 1786 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1787 "0", 1788 "Force GPU context be created in RAMode"), 1789 1790 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_GROUP_ID_ID, 1791 "Group ID", 1792 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1793 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1794 "Encode", 1795 MOS_USER_FEATURE_TYPE_USER, 1796 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1797 "0", 1798 "Sets the value of Group ID"), 1799 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_VFE_MAX_THREADS_ID, 1800 "Encode VFE Max Threads", 1801 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1802 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1803 "Encode", 1804 MOS_USER_FEATURE_TYPE_USER, 1805 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1806 "0", 1807 "Used to set the max number of threads for VFE."), 1808 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_VFE_MAX_THREADS_SCALING_ID, 1809 "Encode VFE Max Threads For Scaling", 1810 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1811 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1812 "Encode", 1813 MOS_USER_FEATURE_TYPE_USER, 1814 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1815 "0", 1816 "Used to set the max number of threads for VFE."), 1817 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_AVC_FTQ_IN_USE_ID, 1818 "AVC FTQ Enable In Use", 1819 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1820 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1821 "Report", 1822 MOS_USER_FEATURE_TYPE_USER, 1823 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1824 "0", 1825 "Used to report if FTQ is enabled."), 1826 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_AVC_CAF_IN_USE_ID, 1827 "AVC CAF Enable In Use", 1828 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1829 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1830 "Report", 1831 MOS_USER_FEATURE_TYPE_USER, 1832 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1833 "0", 1834 "Used to report if CAF is enabled."), 1835 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_HW_WALKER_MODE_ID, 1836 "Encode HW Walker Mode", 1837 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1838 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1839 "Encode", 1840 MOS_USER_FEATURE_TYPE_USER, 1841 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1842 "0", 1843 "Used to set walker mode - useful in HSW. Not used for BDW+. ."), 1844 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_L3_CACHE_CNTLREG_OVERRIDE_ID, 1845 "Encode L3CNTLREG Override", 1846 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1847 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1848 "Encode", 1849 MOS_USER_FEATURE_TYPE_USER, 1850 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1851 "0", 1852 "Used to override the L3CNTLREG value."), 1853 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_L3_CACHE_CNTLREG2_OVERRIDE_ID, 1854 "Encode L3CNTLREG2 Override", 1855 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1856 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1857 "Encode", 1858 MOS_USER_FEATURE_TYPE_USER, 1859 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1860 "0", 1861 "Used to override the L3CNTLREG2 value for HSW. Not yet used for BDW+."), 1862 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_L3_CACHE_CNTLREG3_OVERRIDE_ID, 1863 "Encode L3CNTLREG3 Override", 1864 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1865 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1866 "Encode", 1867 MOS_USER_FEATURE_TYPE_USER, 1868 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1869 "0", 1870 "Used to override the L3CNTLREG3 value for HSW. Not yet used for BDW+."), 1871 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_L3_CACHE_SQCREG1_OVERRIDE_ID, 1872 "Encode L3SQCREG1 Override", 1873 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1874 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1875 "Encode", 1876 MOS_USER_FEATURE_TYPE_USER, 1877 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1878 "0", 1879 "Used to override the L3SQCREG1 value for HSW. Not yet used for BDW+."), 1880 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_L3_CACHE_SQCREG4_OVERRIDE_ID, 1881 "Encode L3SQCREG4 Override", 1882 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1883 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1884 "Encode", 1885 MOS_USER_FEATURE_TYPE_USER, 1886 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1887 "0", 1888 "Used to override the L3SQCREG2 value for HSW. Not yet used for BDW+."), 1889 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_L3_LRA_1_REG1_OVERRIDE_ID, 1890 "L3LRA1RegOverride", 1891 __MEDIA_USER_FEATURE_SUBKEY_PERFORMANCE, 1892 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1893 "Codec", 1894 MOS_USER_FEATURE_TYPE_USER, 1895 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 1896 "0", 1897 "Used to override the L3LRA1Reg value for HSW. Not yet used for BDW+."), 1898 1899 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VDBOX_ID_USED, 1900 "Used VDBOX ID", 1901 __MEDIA_USER_FEATURE_SUBKEY_REPORT,//read path and write path are the same 1902 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1903 "Codec", 1904 MOS_USER_FEATURE_TYPE_USER, 1905 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 1906 "0", 1907 "Which VDBox ID is used. (Default 0: Not used, 1: VDBox used. Each Hex symbol represents one VDBOX, e.g. bits[3:0] means VDBOX0, bits[7:4] means VDBOX1)."), 1908 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_VDENC_IN_USE_ID, 1909 "VDENC In Use", 1910 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1911 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1912 "Report", 1913 MOS_USER_FEATURE_TYPE_USER, 1914 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1915 "0", 1916 "Reports out if VDEnc is used."), 1917 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_ENCODE_CSC_METHOD_ID, 1918 "Encode CSC Method", 1919 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1920 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1921 "Report", 1922 MOS_USER_FEATURE_TYPE_USER, 1923 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1924 "0", 1925 "Reports out which CSC method is in use."), 1926 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_ENCODE_RAW_TILE_ID, 1927 "Encode Raw Surface Tile", 1928 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1929 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1930 "Report", 1931 MOS_USER_FEATURE_TYPE_USER, 1932 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1933 "0", 1934 "Reports out raw surface tile."), 1935 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_ENCODE_RAW_FORMAT_ID, 1936 "Encode Raw Surface Format", 1937 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1938 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1939 "Report", 1940 MOS_USER_FEATURE_TYPE_USER, 1941 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1942 "0", 1943 "Reports out raw surface format."), 1944 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_CQM_QP_THRESHOLD_ID, 1945 "CQM QP Threshold", 1946 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1947 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1948 "Encode", 1949 MOS_USER_FEATURE_TYPE_USER, 1950 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 1951 "40", 1952 "QP threshuld for CQM enable/disable hint. Used by lookahead analysis kernel in LPLA."), 1953 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_ISA_ASM_DEBUG_ENABLE_ID, 1954 __MEDIA_USER_FEATURE_VALUE_ISA_ASM_DEBUG_ENABLE, 1955 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1956 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1957 "VP", 1958 MOS_USER_FEATURE_TYPE_USER, 1959 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 1960 "0", 1961 "TRUE for enabling GD2 kernel debug on VPHAL, otherwise disabling"), 1962 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_ISA_ASM_DEBUG_SURF_BTI_ID, 1963 __MEDIA_USER_FEATURE_VALUE_ISA_ASM_DEBUG_SURF_BTI, 1964 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1965 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1966 "VP", 1967 MOS_USER_FEATURE_TYPE_USER, 1968 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 1969 "39", 1970 "BTI for GD2 kernel debug surface on VPHAL."), 1971 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ROWSTORE_CACHE_DISABLE_ID, 1972 "Disable RowStore Cache", 1973 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1974 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1975 "Codec", 1976 MOS_USER_FEATURE_TYPE_USER, 1977 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1978 "0", 1979 "Disable cache for RowStore buffer. "), 1980 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_INTRAROWSTORECACHE_DISABLE_ID, 1981 "DisableIntraRowStoreCache", 1982 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1983 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1984 "Codec", 1985 MOS_USER_FEATURE_TYPE_USER, 1986 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1987 "0", 1988 "Disable Intra prediction RowStore buffer cache. "), 1989 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_DEBLOCKINGFILTERROWSTORECACHE_DISABLE_ID, 1990 "DisableDeblockingFilterRowStoreCache", 1991 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 1992 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 1993 "Codec", 1994 MOS_USER_FEATURE_TYPE_USER, 1995 MOS_USER_FEATURE_VALUE_TYPE_INT32, 1996 "0", 1997 "Disable Intra prediction RowStore buffer cache. "), 1998 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_BSDMPCROWSTORECACHE_DISABLE_ID, 1999 "DisableBsdMpcRowStoreCache", 2000 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2001 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2002 "Codec", 2003 MOS_USER_FEATURE_TYPE_USER, 2004 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2005 "0", 2006 "Disable decoder BSD/encoder MPC RowStore buffer cache. "), 2007 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_MPRROWSTORECACHE_DISABLE_ID, 2008 "DisableMprRowStoreCache", 2009 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2010 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2011 "Decode", 2012 MOS_USER_FEATURE_TYPE_USER, 2013 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2014 "0", 2015 "Disable MPR RowStore buffer cache. "), 2016 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VDENCROWSTORECACHE_DISABLE_ID, 2017 "DisableVDEncRowStoreCache", 2018 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2019 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2020 "Encode", 2021 MOS_USER_FEATURE_TYPE_USER, 2022 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2023 "0", 2024 "If enabled, disable rowstore cache for VDEnc."), 2025 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_BREAK_IN_CODECHAL_CREATE_ID, 2026 "Break In CodecHal_Create", 2027 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2028 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2029 "Codec", 2030 MOS_USER_FEATURE_TYPE_USER, 2031 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2032 "0", 2033 "If enabled, asserts in CodecHal_Create."), 2034 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_MEDIASOLO_ENABLE_ID, 2035 __MEDIA_USER_FEATURE_VALUE_MEDIASOLO_ENABLE, 2036 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2037 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2038 "MOS", 2039 MOS_USER_FEATURE_TYPE_USER, 2040 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2041 "0", 2042 "If enabled, triggers the MediaSolo code path in MOS for pre-si testing."), 2043 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_STREAM_OUT_ENABLE_ID, 2044 "Stream Out", 2045 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2046 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2047 "Decode", 2048 MOS_USER_FEATURE_TYPE_USER, 2049 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2050 "0", 2051 "Enable decode stream out "), 2052 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_DECOMPRESS_DECODE_OUTPUT_ID, 2053 "Decompress Decode Output", 2054 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2055 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2056 "Decode", 2057 MOS_USER_FEATURE_TYPE_USER, 2058 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2059 "0", 2060 "Call Vebox decompress for decode output at decode endframe"), 2061 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_DECOMPRESS_DECODE_SFC_OUTPUT_ID, 2062 "Decompress Decode Sfc Output", 2063 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2064 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2065 "Decode", 2066 MOS_USER_FEATURE_TYPE_USER, 2067 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2068 "0", 2069 "Call Vebox decompress for sfc output at decode endframe"), 2070 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_CODECHAL_DEBUG_OUTPUT_DIRECTORY_ID, 2071 "CodecHal Debug Output Directory", 2072 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2073 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2074 "Codec", 2075 MOS_USER_FEATURE_TYPE_USER, 2076 MOS_USER_FEATURE_VALUE_TYPE_STRING, 2077 "", 2078 "Directory where all CodecHal debug interface can locate cfg file and dump."), 2079 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_CODECHAL_DUMP_OUTPUT_DIRECTORY_ID, 2080 "CodecHal Dump Output Directory", 2081 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2082 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2083 "Codec", 2084 MOS_USER_FEATURE_TYPE_USER, 2085 MOS_USER_FEATURE_VALUE_TYPE_STRING, 2086 "", 2087 "CodecHal Dump Output Directory."), 2088 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_MEDIA_DEBUG_CFG_GENERATION_ID, 2089 "Media Debug Cfg Generation", 2090 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2091 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2092 "Codec", 2093 MOS_USER_FEATURE_TYPE_USER, 2094 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2095 "0", 2096 "Enable the Generation of Media Debug Cfg file."), 2097 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_CODECHAL_RDOQ_INTRA_TU_OVERRIDE_ID, 2098 "RDOQ Intra TU Override", 2099 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2100 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2101 "Codec", 2102 MOS_USER_FEATURE_TYPE_USER, 2103 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2104 "0", 2105 "Override Intra RDOQ TU setting."), 2106 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_CODECHAL_RDOQ_INTRA_TU_DISABLE_ID, 2107 "RDOQ Intra TU Disable", 2108 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2109 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2110 "Codec", 2111 MOS_USER_FEATURE_TYPE_USER, 2112 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2113 "0", 2114 "Disable RDOQ for Intra TU."), 2115 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_CODECHAL_RDOQ_INTRA_TU_THRESHOLD_ID, 2116 "RDOQ Intra TU Threshold", 2117 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2118 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2119 "Codec", 2120 MOS_USER_FEATURE_TYPE_USER, 2121 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2122 "0", 2123 "RDOQ Intra TU Threshold"), 2124 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_CODECHAL_ENABLE_FAKE_HEADER_SIZE_ID, 2125 "Fake Header Size Enable", 2126 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2127 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2128 "Codec", 2129 MOS_USER_FEATURE_TYPE_USER, 2130 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2131 "0", 2132 "Enable Fake Header Size"), 2133 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_CODECHAL_FAKE_IFRAME_HEADER_SIZE_ID, 2134 "Fake IFrame Header Size", 2135 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2136 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2137 "Codec", 2138 MOS_USER_FEATURE_TYPE_USER, 2139 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2140 "128", 2141 "Fake I Frame Header Size"), 2142 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_CODECHAL_FAKE_PBFRAME_HEADER_SIZE_ID, 2143 "Fake PBFrame Header Size", 2144 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2145 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2146 "Codec", 2147 MOS_USER_FEATURE_TYPE_USER, 2148 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2149 "16", 2150 "Fake P/B Frame Header Size"), 2151 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_COMMAND_PARSER_INPUT_FILE_PATH_ID, 2152 "Command Parser Input File Path", 2153 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2154 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2155 "Media", 2156 MOS_USER_FEATURE_TYPE_USER, 2157 MOS_USER_FEATURE_VALUE_TYPE_STRING, 2158 "", 2159 "Path of command override input file"), 2160 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HUC_DEMO_KERNEL_ID, // Used to indicate which huc kernel to load for the Huc Demo feature 2161 "Media Huc Demo kernel Id", 2162 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2163 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2164 "Media", 2165 MOS_USER_FEATURE_TYPE_USER, 2166 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2167 "3", // Default is 3 which is huc copy kernel 2168 "Id of demo huc kernel to load"), 2169 2170 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_IS_CODEC_ROW_STORE_CACHE_ENABLED_ID, 2171 "Codec Row Store Cache Enabled", 2172 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2173 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2174 "Report", 2175 MOS_USER_FEATURE_TYPE_USER, 2176 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2177 "0", 2178 "Reports out whether codec row store cache is enabled or not."), 2179 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_FORCE_AV1_TILE_BASED_DECODE_ID, 2180 "Force Av1 Tile Based Decode", 2181 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2182 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2183 "Codec", 2184 MOS_USER_FEATURE_TYPE_USER, 2185 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2186 "0", 2187 "If enabled, av1 decode will be forced to tile based submission mode."), 2188 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_AV1_ERROR_STATUS_ADDR_VALUE_ID, 2189 "Av1 Error Status Addr Value", 2190 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2191 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2192 "Codec", 2193 MOS_USER_FEATURE_TYPE_USER, 2194 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2195 "0", 2196 "If value is not 0, HW detected error during av1 decode."), 2197 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_DECODE_HISTOGRAM_DEBUG_ID, 2198 "Decode Histogram Debug", 2199 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2200 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2201 "Decode", 2202 MOS_USER_FEATURE_TYPE_USER, 2203 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2204 "0", 2205 "Enable Decode Histogram StreamOut debug. 0:Disable, 1:Enable"), 2206 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_DECODE_SFC_RGBFORMAT_OUTPUT_DEBUG_ID, 2207 "Decode SFC RGB Format Output", 2208 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2209 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2210 "Decode", 2211 MOS_USER_FEATURE_TYPE_USER, 2212 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2213 "0", 2214 "Enable Decode SFC RGB Format debug. 1:RGBP, 2:BGRP, 3:RGB24"), 2215 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_DECODE_SFC_LINEAR_OUTPUT_DEBUG_ID, 2216 "Decode SFC Linear Output Debug", 2217 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2218 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2219 "Decode", 2220 MOS_USER_FEATURE_TYPE_USER, 2221 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2222 "0", 2223 "Enable Decode SFC Linear Output debug. 0:Disable, 1:Enable"), 2224 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_VDENC_TCBRC_ARB_DISABLE_ID, 2225 "HEVC VDEnc TCBRC ARB Disable", 2226 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2227 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2228 "Encode", 2229 MOS_USER_FEATURE_TYPE_USER, 2230 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2231 "0", 2232 "Disable TCBRC ARB for HEVC VDEnc"), 2233 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_LPLA_DS_DATA_ID, 2234 "lpla ds data address", 2235 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2236 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2237 "General", 2238 MOS_USER_FEATURE_TYPE_USER, 2239 MOS_USER_FEATURE_VALUE_TYPE_STRING, 2240 "", 2241 "lpla ds data address."), 2242 #endif // (_DEBUG || _RELEASE_INTERNAL 2243 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_STATUS_REPORTING_ENABLE_ID, 2244 "Status Reporting", 2245 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2246 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2247 "Decode", 2248 MOS_USER_FEATURE_TYPE_USER, 2249 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2250 "1", 2251 "Enable decode status reporting"), 2252 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_SF_2_DMA_SUBMITS_ENABLE_ID, 2253 "Enable HEVC SF 2 DMA Submits", 2254 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2255 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2256 "Decode", 2257 MOS_USER_FEATURE_TYPE_USER, 2258 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2259 "0", 2260 "Specify if send HuC and HCP commands in one DMA buffer or two DMA buffer. "), 2261 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVCDATROWSTORECACHE_DISABLE_ID, 2262 "DisableHevcDatRowStoreCache", 2263 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2264 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2265 "Decode", 2266 MOS_USER_FEATURE_TYPE_USER, 2267 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2268 "0", 2269 "Decide if put the DatRowStore buffer to cache or driver allocated buffer. "), 2270 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVCDFROWSTORECACHE_DISABLE_ID, 2271 "DisableHevcDfRowStoreCache", 2272 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2273 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2274 "Decode", 2275 MOS_USER_FEATURE_TYPE_USER, 2276 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2277 "0", 2278 "Decide if put the DfRowStore buffer to cache or driver allocated buffer. "), 2279 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVCSAOROWSTORECACHE_DISABLE_ID, 2280 "DisableHevcSaoRowStoreCache", 2281 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2282 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2283 "Decode", 2284 MOS_USER_FEATURE_TYPE_USER, 2285 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2286 "0", 2287 "Decide if put the SAORowStore buffer to cache or driver allocated buffer."), 2288 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP9_HVDROWSTORECACHE_DISABLE_ID, 2289 "DisableVp9HvdRowStoreCache", 2290 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2291 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2292 "Decode", 2293 MOS_USER_FEATURE_TYPE_USER, 2294 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2295 "0", 2296 "VP9"), 2297 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP9_DATROWSTORECACHE_DISABLE_ID, 2298 "DisableVp9DatRowStoreCache", 2299 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2300 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2301 "Decode", 2302 MOS_USER_FEATURE_TYPE_USER, 2303 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2304 "0", 2305 "VP9"), 2306 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VP9_DFROWSTORECACHE_DISABLE_ID, 2307 "DisableVp9DfRowStoreCache", 2308 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2309 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2310 "Decode", 2311 MOS_USER_FEATURE_TYPE_USER, 2312 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2313 "0", 2314 "VP9"), 2315 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MDF_ETW_ENABLE_ID, 2316 __MEDIA_USER_FEATURE_VALUE_MDF_ETW_ENABLE, 2317 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2318 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2319 "MDF", 2320 MOS_USER_FEATURE_TYPE_USER, 2321 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2322 "0", 2323 "Enable MDF ETW Log"), 2324 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MDF_LOG_LEVEL_ID, 2325 __MEDIA_USER_FEATURE_VALUE_MDF_LOG_LEVEL, 2326 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2327 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2328 "MDF", 2329 MOS_USER_FEATURE_TYPE_USER, 2330 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2331 "0", 2332 "Enable MDF Log Level"), 2333 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MDF_UMD_ULT_ENABLE_ID, 2334 __MEDIA_USER_FEATURE_VALUE_MDF_UMD_ULT_ENABLE, 2335 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2336 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2337 "MDF", 2338 MOS_USER_FEATURE_TYPE_USER, 2339 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2340 "0", 2341 "Enable MDF UMD ULT"), 2342 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MDF_CMD_DUMP_ENABLE_ID, 2343 __MEDIA_USER_FEATURE_VALUE_MDF_CMD_DUMP_ENABLE, 2344 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2345 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2346 "MDF", 2347 MOS_USER_FEATURE_TYPE_USER, 2348 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2349 "0", 2350 "Enable MDF Command buffer Dump"), 2351 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MDF_CURBE_DUMP_ENABLE_ID, 2352 __MEDIA_USER_FEATURE_VALUE_MDF_CURBE_DUMP_ENABLE, 2353 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2354 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2355 "MDF", 2356 MOS_USER_FEATURE_TYPE_USER, 2357 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2358 "0", 2359 "Enable MDF Curbe Dump"), 2360 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MDF_SURFACE_DUMP_ENABLE_ID, 2361 __MEDIA_USER_FEATURE_VALUE_MDF_SURFACE_DUMP_ENABLE, 2362 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2363 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2364 "MDF", 2365 MOS_USER_FEATURE_TYPE_USER, 2366 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2367 "0", 2368 "Enable MDF Surface Dump"), 2369 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MDF_SURFACE_STATE_DUMP_ENABLE_ID, 2370 __MEDIA_USER_FEATURE_VALUE_MDF_SURFACE_STATE_DUMP_ENABLE, 2371 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2372 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2373 "MDF", 2374 MOS_USER_FEATURE_TYPE_USER, 2375 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2376 "0", 2377 "Enable MDF Surface State Dump"), 2378 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MDF_CMD_DUMP_COUNTER_ID, 2379 __MEDIA_USER_FEATURE_VALUE_MDF_CMD_DUMP_COUNTER, 2380 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2381 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2382 "MDF", 2383 MOS_USER_FEATURE_TYPE_USER, 2384 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2385 "0", 2386 "Record MDF Command Buffer Dump counter for multiple device create/destroy"), 2387 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MDF_SURFACE_STATE_DUMP_COUNTER_ID, 2388 __MEDIA_USER_FEATURE_VALUE_MDF_SURFACE_STATE_DUMP_COUNTER, 2389 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2390 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2391 "MDF", 2392 MOS_USER_FEATURE_TYPE_USER, 2393 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2394 "0", 2395 "Record MDF Surface state Dump counter for multiple device create/destroy"), 2396 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MDF_INTERFACE_DESCRIPTOR_DATA_DUMP_ID, 2397 __MEDIA_USER_FEATURE_VALUE_MDF_INTERFACE_DESCRIPTOR_DATA_DUMP, 2398 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2399 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2400 "MDF", 2401 MOS_USER_FEATURE_TYPE_USER, 2402 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2403 "0", 2404 "Enable MDF interface descriptor data dump"), 2405 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MDF_INTERFACE_DESCRIPTOR_DATA_COUNTER_ID, 2406 __MEDIA_USER_FEATURE_VALUE_MDF_INTERFACE_DESCRIPTOR_DATA_COUNTER, 2407 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2408 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2409 "MDF", 2410 MOS_USER_FEATURE_TYPE_USER, 2411 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2412 "0", 2413 "Record MDF Interface descriptor data Dump counter for multiple device create/destroy"), 2414 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MDF_DUMPPATH_USER_ID, 2415 __MEDIA_USER_FEATURE_VALUE_MDF_DUMPPATH_USER, 2416 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2417 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2418 "MDF", 2419 MOS_USER_FEATURE_TYPE_USER, 2420 MOS_USER_FEATURE_VALUE_TYPE_STRING, 2421 "", 2422 "MDF dump path specified by user"), 2423 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MDF_FORCE_EXECUTION_PATH_ID, 2424 __MEDIA_USER_FEATURE_VALUE_MDF_FORCE_EXECUTION_PATH, 2425 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2426 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2427 "MDF", 2428 MOS_USER_FEATURE_TYPE_USER, 2429 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2430 "0", 2431 "MDF execution path specified by user"), 2432 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MDF_MAX_THREAD_NUM_ID, 2433 __MEDIA_USER_FEATURE_VALUE_MDF_MAX_THREAD_NUM, 2434 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2435 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2436 "MDF", 2437 MOS_USER_FEATURE_TYPE_USER, 2438 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2439 "0", 2440 "MDF maximun thread number specified by user"), 2441 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MDF_FORCE_COHERENT_STATELESSBTI_ID, 2442 __MEDIA_USER_FEATURE_VALUE_MDF_FORCE_COHERENT_STATELESSBTI, 2443 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2444 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2445 "MDF", 2446 MOS_USER_FEATURE_TYPE_USER, 2447 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2448 "0", 2449 "MDF coherent stateless BTI specified by user"), 2450 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MDF_EMU_MODE_ENABLE_ID, 2451 __MEDIA_USER_FEATURE_VALUE_MDF_EMU_MODE_ENABLE, 2452 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2453 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2454 "MDF", 2455 MOS_USER_FEATURE_TYPE_USER, 2456 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2457 "0", 2458 "MDF EMU Enable"), 2459 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MDF_DEFAULT_CM_QUEUE_TYPE_ID, 2460 "MDF Default Queue Type", 2461 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2462 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2463 "MDF", 2464 MOS_USER_FEATURE_TYPE_USER, 2465 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2466 "0", 2467 "Program default CM_QUEUE_TYPE for debug."), 2468 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MDF_CCS_USE_VE_INTERFACE, 2469 "MDF CCS Use VE Interface", 2470 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2471 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2472 "MDF", 2473 MOS_USER_FEATURE_TYPE_USER, 2474 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2475 "0", 2476 "Switch to use mos virtual engine interface for compute CS."), 2477 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MDF_CCS_USE_VE_DEBUG_OVERRIDE, 2478 "MDF CCS Use VE Debug Override", 2479 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2480 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2481 "MDF", 2482 MOS_USER_FEATURE_TYPE_USER, 2483 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2484 "0", 2485 "Set debug override for mos virtual engine interface for compute CS."), 2486 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_MCPY_MODE_ID, 2487 "MediaCopy Mode", 2488 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2489 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2490 "MCPY", 2491 MOS_USER_FEATURE_TYPE_USER, 2492 MOS_USER_FEATURE_VALUE_TYPE_STRING, 2493 "", 2494 "For Notify which Media Copy Engine used"), 2495 2496 #if (_DEBUG || _RELEASE_INTERNAL) 2497 MOS_DECLARE_UF_KEY_DBGONLY(__VPHAL_ENABLE_1K_1DLUT_ID, 2498 __VPHAL_ENABLE_1K_1DLUT, 2499 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2500 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2501 "VP", 2502 MOS_USER_FEATURE_TYPE_USER, 2503 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2504 "0", 2505 "Enable 1K 1DLUT"), 2506 MOS_DECLARE_UF_KEY_DBGONLY(__VPHAL_ENABLE_CPU_GENERATE_3DLUT_ID, 2507 "Enable CPU GEN 3DLUT", 2508 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2509 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2510 "VP", 2511 MOS_USER_FEATURE_TYPE_USER, 2512 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2513 "0", 2514 "Enable CPU GEN 3DLUT"), 2515 MOS_DECLARE_UF_KEY(__VPHAL_DBG_SURF_DUMP_OUTFILE_KEY_NAME_ID, 2516 __VPHAL_DBG_SURF_DUMP_OUTFILE_KEY_NAME, 2517 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2518 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2519 "VP", 2520 MOS_USER_FEATURE_TYPE_USER, 2521 MOS_USER_FEATURE_VALUE_TYPE_STRING, 2522 "", 2523 "Surface Dump Outfile"), 2524 #endif 2525 MOS_DECLARE_UF_KEY(__VPHAL_ENABLE_MMC_ID, 2526 __VPHAL_ENABLE_MMC, 2527 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2528 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2529 "VP", 2530 MOS_USER_FEATURE_TYPE_USER, 2531 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 2532 "0", 2533 "Enable memory compression"), 2534 MOS_DECLARE_UF_KEY(__VPHAL_ENABLE_MMC_IN_USE_ID, 2535 "VP MMC In Use", 2536 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2537 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2538 "VP", 2539 MOS_USER_FEATURE_TYPE_USER, 2540 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 2541 "0", 2542 "VP use memory compression"), 2543 MOS_DECLARE_UF_KEY(__VPHAL_PRIMARY_SURFACE_COMPRESS_MODE_ID, 2544 "VP Primary Surface Compress Mode", 2545 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2546 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2547 "VP", 2548 MOS_USER_FEATURE_TYPE_USER, 2549 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 2550 "0", 2551 "VP primary surface compress mode"), 2552 MOS_DECLARE_UF_KEY(__VPHAL_PRIMARY_SURFACE_COMPRESSIBLE_ID, 2553 "VP Primary Surface Compressible", 2554 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2555 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2556 "VP", 2557 MOS_USER_FEATURE_TYPE_USER, 2558 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 2559 "0", 2560 "VP primary surface compressible"), 2561 MOS_DECLARE_UF_KEY(__VPHAL_RT_COMPRESS_MODE_ID, 2562 "VP RT Compress Mode", 2563 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2564 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2565 "VP", 2566 MOS_USER_FEATURE_TYPE_USER, 2567 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 2568 "0", 2569 "VP render target compress mode"), 2570 MOS_DECLARE_UF_KEY(__VPHAL_RT_COMPRESSIBLE_ID, 2571 "VP RT Compressible", 2572 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2573 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2574 "VP", 2575 MOS_USER_FEATURE_TYPE_USER, 2576 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 2577 "0", 2578 "VP render target compressible"), 2579 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_ENABLE_RENDER_ENGINE_MMC_ID, 2580 "Enable Media RenderEngine MMC", 2581 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2582 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2583 "VP", 2584 MOS_USER_FEATURE_TYPE_USER, 2585 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 2586 "0", 2587 "Enable media render engine memory compression in media workload"), 2588 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_DISABLE_MMC_ID, 2589 "Disable MMC", 2590 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2591 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2592 "Media", 2593 MOS_USER_FEATURE_TYPE_USER, 2594 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 2595 "0", 2596 "Disable MMC for all components"), 2597 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_FORCE_MMC_ON_ID, 2598 "Force MMC Enable", 2599 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2600 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2601 "Media", 2602 MOS_USER_FEATURE_TYPE_USER, 2603 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 2604 "0", 2605 "Force Memory Compression Enable"), 2606 #if (_DEBUG || _RELEASE_INTERNAL) 2607 MOS_DECLARE_UF_KEY(__VPHAL_ENABLE_COMPUTE_CONTEXT_ID, 2608 __VPHAL_ENABLE_COMPUTE_CONTEXT, 2609 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2610 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2611 "VP", 2612 MOS_USER_FEATURE_TYPE_USER, 2613 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2614 "0", 2615 "VP Enable Compute Context"), 2616 #endif 2617 MOS_DECLARE_UF_KEY(__MOS_USER_FEATURE_KEY_XML_AUTOGEN_ID, 2618 __MOS_USER_FEATURE_KEY_XML_AUTOGEN, 2619 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2620 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2621 "MOS", 2622 MOS_USER_FEATURE_TYPE_USER, 2623 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2624 "0", 2625 "Enable"), 2626 MOS_DECLARE_UF_KEY(__MOS_USER_FEATURE_KEY_XML_FILEPATH_ID, 2627 __MOS_USER_FEATURE_KEY_XML_FILEPATH, 2628 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2629 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2630 "MOS", 2631 MOS_USER_FEATURE_TYPE_USER, 2632 MOS_USER_FEATURE_VALUE_TYPE_STRING, 2633 __MOS_USER_FEATURE_KEY_XML_FILEPATH_LOCATION, 2634 "Enable"), 2635 MOS_DECLARE_UF_KEY(__MOS_USER_FEATURE_KEY_XML_DUMP_GROUPS_ID, 2636 __MOS_USER_FEATURE_KEY_XML_DUMP_GROUPS, 2637 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2638 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2639 "MOS", 2640 MOS_USER_FEATURE_TYPE_USER, 2641 MOS_USER_FEATURE_VALUE_TYPE_STRING, 2642 "MOS", 2643 "Enable"), 2644 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_VEBOX_SPLIT_RATIO_ID, 2645 "Vebox Split Ratio", 2646 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2647 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2648 "VP", 2649 MOS_USER_FEATURE_TYPE_USER, 2650 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2651 "50", 2652 "Vebox Scalability Split Ratio. (Default 50: 50 percent"), 2653 /* codec gen11 based */ 2654 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HCP_DECODE_MODE_SWITCH_THRESHOLD1_ID, 2655 "HCP Decode Mode Switch TH1", 2656 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2657 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2658 "Decode", 2659 MOS_USER_FEATURE_TYPE_USER, 2660 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2661 "0", 2662 "Hcp Decode mode switch single pipe - 2 pipe"), 2663 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HCP_DECODE_MODE_SWITCH_THRESHOLD2_ID, 2664 "HCP Decode Mode Switch TH2", 2665 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2666 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2667 "Decode", 2668 MOS_USER_FEATURE_TYPE_USER, 2669 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2670 "0", 2671 "Hcp Decode mode switch single pipe - 2/3 pipe"), 2672 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_ENABLE_VE_DEBUG_OVERRIDE, 2673 "Enable VE Debug Override", 2674 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2675 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2676 "Encode", 2677 MOS_USER_FEATURE_TYPE_USER, 2678 MOS_USER_FEATURE_VALUE_TYPE_INT64, 2679 "0", 2680 "Enable VE Debug Override."), 2681 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_ENABLE_HW_SEMAPHORE, 2682 "Enable HW Semaphore", 2683 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2684 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2685 "Encode", 2686 MOS_USER_FEATURE_TYPE_USER, 2687 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2688 "1", 2689 "Enable HW Semaphore."), 2690 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_ENABLE_VDBOX_HW_SEMAPHORE, 2691 "Enable HEVC Per VDBOX HW Semaphore in GEN11", 2692 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2693 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2694 "Encode", 2695 MOS_USER_FEATURE_TYPE_USER, 2696 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2697 "1", 2698 "Enable HEVC Per VDBOX HW Semaphore in GEN11."), 2699 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_ENABLE_HW_STITCH, 2700 "HEVC Encode Enable HW Stitch", 2701 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2702 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2703 "Encode", 2704 MOS_USER_FEATURE_TYPE_USER, 2705 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2706 "1", 2707 "HEVC Encode Enable HW Stitch."), 2708 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_SUBTHREAD_NUM_ID, 2709 "HEVC Encode SubThread Number", 2710 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2711 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2712 "Encode", 2713 MOS_USER_FEATURE_TYPE_USER, 2714 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2715 "2", 2716 "Used to enable HEVC ENCODE SubThread Number in the ENC kernel."), 2717 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_PAK_ONLY_ID, 2718 "HEVC PAK Only Mode", 2719 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2720 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2721 "Encode", 2722 MOS_USER_FEATURE_TYPE_USER, 2723 MOS_USER_FEATURE_VALUE_TYPE_STRING, 2724 "", 2725 "Set the PAK command/CU record folder name for HEVC encoder"), 2726 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_VME_ENCODE_SSE_ENABLE_ID, 2727 "HEVC Encode SSE Enable", 2728 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2729 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2730 "Encode", 2731 MOS_USER_FEATURE_TYPE_USER, 2732 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2733 "0", 2734 "Used to enable HEVC VME ENCODE SSE.(default 0:disabled)"), 2735 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENCODE_DISABLE_SCALABILITY, 2736 "Disable Media Encode Scalability", 2737 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2738 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2739 "Encode", 2740 MOS_USER_FEATURE_TYPE_USER, 2741 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2742 "0", 2743 "Disable Media Encode Scalability."), 2744 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_RDOQ_PERF_DISABLE_ID, 2745 "Disable HEVC RDOQ Perf", 2746 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2747 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2748 "Encode", 2749 MOS_USER_FEATURE_TYPE_USER, 2750 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2751 "1", 2752 "HEVC"), 2753 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_TCBRC_QUALITY_BOOST_ENABLE_ID, 2754 "HEVC TCBRC Quality Boost Enable", 2755 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2756 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2757 "Encode", 2758 MOS_USER_FEATURE_TYPE_USER, 2759 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2760 "0", 2761 "Enable/Disable quality boost for HEVC TCBRC."), 2762 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_WATCHDOG_TIMER_THRESHOLD, 2763 "Watchdog Timer Threshold", 2764 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2765 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2766 "Decode", 2767 MOS_USER_FEATURE_TYPE_USER, 2768 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2769 "120", 2770 "Used to override default watchdog timer threshold"), 2771 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_ENABLE_ENCODE_VE_CTXSCHEDULING_ID, 2772 "Enable Encode VE CtxBasedScheduling", 2773 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2774 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2775 "Codec", 2776 MOS_USER_FEATURE_TYPE_USER, 2777 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 2778 "0", 2779 "TRUE for Enabling Encode Virtual Engine context based scheduling. (Default false: disabled"), 2780 2781 2782 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HCP_DECODE_ALWAYS_FRAME_SPLIT_ID, 2783 "HCP Decode Always Frame Split", 2784 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2785 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2786 "Codec", 2787 MOS_USER_FEATURE_TYPE_USER, 2788 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 2789 "0", 2790 "HCP Decode always does frame split instead of make decision based on LZ table. (Default 0: using LZ table "), 2791 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_SCALABILITY_OVERRIDE_SPLIT_WIDTH_IN_MINCB, 2792 "Scalability Split Width In MinCb", 2793 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2794 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2795 "Codec", 2796 MOS_USER_FEATURE_TYPE_USER, 2797 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2798 "0", 2799 "Override virtual tile scalability width. (Default 0: not overroded "), 2800 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_SCALABILITY_FE_SEPARATE_SUBMISSION_IN_USE_ID, 2801 "FE Separate Submission In Use", 2802 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2803 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2804 "Report", 2805 MOS_USER_FEATURE_TYPE_USER, 2806 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2807 "0", 2808 "Report FE separate submission is in use in Scalability decode. (Default 0: Disable FE separate submission "), 2809 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_VME_BRC_LTR_DISABLE_ID, 2810 "HEVC VME BRC LTR Disable", 2811 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2812 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2813 "Codec", 2814 MOS_USER_FEATURE_TYPE_USER, 2815 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 2816 "0", 2817 "Disable long term reference in hevc vme brc. (Default 0: LTR Enable"), 2818 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_VME_BRC_LTR_INTERVAL_ID, 2819 "HEVC VME BRC LTR Interval", 2820 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2821 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2822 "Codec", 2823 MOS_USER_FEATURE_TYPE_USER, 2824 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 2825 "0", 2826 "HEVC Vme encode BRC Long term reference interval. (Default 0: interval=0"), 2827 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_VME_FORCE_SCALABILITY_ID, 2828 "HEVC VME Force Scalability For Low Size", 2829 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2830 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2831 "Codec", 2832 MOS_USER_FEATURE_TYPE_USER, 2833 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 2834 "0", 2835 "HEVC Vme encode force scalability for low (below 4K) resolution. (Default 0"), 2836 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_VDENC_SEMA_RESET_DELAY_ID, 2837 "HEVC VDEnc Semaphore Reset Delay", 2838 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2839 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2840 "Codec", 2841 MOS_USER_FEATURE_TYPE_USER, 2842 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2843 "15", 2844 "Control the num of placeholder cmds which are used for the delay of VDEnc sync semaphore"), 2845 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_SET_CMD_DEFAULT_PARS_FROM_FILES_ID, 2846 "Set CMD Default Parameters From File", 2847 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2848 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2849 "Codec", 2850 MOS_USER_FEATURE_TYPE_USER, 2851 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 2852 "0", 2853 "Enable to set cmd default parameters from file (Default 0)"), 2854 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_CMD_PARS_FILES_DIRECORY_ID, 2855 "CMD Parameters Input File Directory", 2856 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2857 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2858 "Codec", 2859 MOS_USER_FEATURE_TYPE_USER, 2860 MOS_USER_FEATURE_VALUE_TYPE_STRING, 2861 "", 2862 "Set CMD Parameters Input File Directory"), 2863 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_APOGEIOS_ENABLE_ID, 2864 "ApogeiosEnable", 2865 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2866 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2867 "VP", 2868 MOS_USER_FEATURE_TYPE_USER, 2869 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2870 "0", 2871 "Eanble Apogeios path. 1: enable, 0: disable."), 2872 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VPP_APOGEIOS_ENABLE_ID, 2873 "VP Apogeios Enabled", 2874 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2875 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2876 "VP", 2877 MOS_USER_FEATURE_TYPE_USER, 2878 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2879 "0", 2880 "Eanble Apogeios path in VP PipeLine. 1: enabled, 0: disabled."), 2881 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_APOGEIOS_HEVCD_ENABLE_ID, 2882 "ApogeiosHevcdEnable", 2883 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2884 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2885 "Codec", 2886 MOS_USER_FEATURE_TYPE_USER, 2887 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2888 "0", 2889 "Eanble Apogeios hevc decode path. 1: enable, 0: disable."), 2890 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_APOGEIOS_AVCD_ENABLE_ID, 2891 "ApogeiosAvcdEnable", 2892 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2893 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2894 "Codec", 2895 MOS_USER_FEATURE_TYPE_USER, 2896 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2897 "0", 2898 "Eanble Apogeios avc decode path. 1: enable, 0: disable."), 2899 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_APOGEIOS_VP9D_ENABLE_ID, 2900 "ApogeiosVp9dEnable", 2901 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2902 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2903 "Codec", 2904 MOS_USER_FEATURE_TYPE_USER, 2905 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2906 "0", 2907 "Eanble Apogeios VP9 decode path. 1: enable, 0: disable."), 2908 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_APOGEIOS_MPEG2D_ENABLE_ID, 2909 "ApogeiosMpeg2dEnable", 2910 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2911 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2912 "Codec", 2913 MOS_USER_FEATURE_TYPE_USER, 2914 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2915 "0", 2916 "Enable Apogeios mpeg2 decode path. 1: enable, 0: disable."), 2917 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_APOGEIOS_JPEGD_ENABLE_ID, 2918 "ApogeiosJpegdEnable", 2919 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2920 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2921 "Codec", 2922 MOS_USER_FEATURE_TYPE_USER, 2923 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2924 "0", 2925 "Enable Apogeios jpeg decode path. 1: enable, 0: disable."), 2926 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_APOGEIOS_VP8D_ENABLE_ID, 2927 "ApogeiosVp8dEnable", 2928 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2929 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2930 "Codec", 2931 MOS_USER_FEATURE_TYPE_USER, 2932 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2933 "0", 2934 "Enable Apogeios vp8 decode path. 1: enable, 0: disable."), 2935 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_RA_MODE_ENABLE_ID, 2936 "RA Mode Enable", 2937 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2938 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2939 "MOS", 2940 MOS_USER_FEATURE_TYPE_USER, 2941 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2942 "0", 2943 "Eanble RA Mode. 1: enable, 0: disable."), 2944 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_INTER_FRAME_MEMORY_NINJA_START_COUNTER_ID, 2945 "InterFrameNinjaStartCounter", 2946 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2947 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2948 "MOS", 2949 MOS_USER_FEATURE_TYPE_USER, 2950 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2951 "0", 2952 "Inter frame ninja start counter"), 2953 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_INTER_FRAME_MEMORY_NINJA_END_COUNTER_ID, 2954 "InterFrameNinjaEndCounter", 2955 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2956 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2957 "MOS", 2958 MOS_USER_FEATURE_TYPE_USER, 2959 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2960 "0", 2961 "Inter frame ninja counter"), 2962 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_LOCAL_MEMORY_LEVEL_SWITCH_ID, 2963 "EnableLocalMemoryLevelSwitch", 2964 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2965 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2966 "MOS", 2967 MOS_USER_FEATURE_TYPE_USER, 2968 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2969 "0", 2970 "Enable local memory level switch."), 2971 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_DISABLE_TLB_PREFETCH_ID, 2972 "DisableTlbPrefetch", 2973 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2974 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2975 "Codec", 2976 MOS_USER_FEATURE_TYPE_USER, 2977 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 2978 "1", 2979 "Disable TLB pre-fetch. 1: disable; 0: enabled. "), 2980 #if (_DEBUG || _RELEASE_INTERNAL) 2981 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_FORCE_DECODE_RESOURCE_LOCKABLE_ID, 2982 "ForceDecodeResourceLockable", 2983 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2984 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2985 "Codec", 2986 MOS_USER_FEATURE_TYPE_USER, 2987 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2988 "0", 2989 "Force decode resource lockable. 1: Force lockable, 0: default."), 2990 2991 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_SFC_LINEAR_OUTPUT_USED_ID, 2992 "Sfc Linear Output Surface In Use", 2993 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 2994 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 2995 "Codec", 2996 MOS_USER_FEATURE_TYPE_USER, 2997 MOS_USER_FEATURE_VALUE_TYPE_INT32, 2998 "0", 2999 "Sfc Linear Output Surface In Use. 1: used, 0: not used."), 3000 #endif 3001 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_PROTECT_MODE_ENABLE_ID, 3002 "Protect Mode Enable", 3003 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3004 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3005 "MOS", 3006 MOS_USER_FEATURE_TYPE_USER, 3007 MOS_USER_FEATURE_VALUE_TYPE_INT32, 3008 "0", 3009 "Enable protect Mode. 1: enable, 0: disable."), 3010 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_OLP_IN_USE_ID, 3011 "OLP IN USE", 3012 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3013 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3014 "Report", 3015 MOS_USER_FEATURE_TYPE_USER, 3016 MOS_USER_FEATURE_VALUE_TYPE_INT32, 3017 "0", 3018 "Report out whether OLP is in use."), 3019 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_SKIP_FRAME_IN_USE_ID, 3020 "Skip Frame IN USE", 3021 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3022 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3023 "Report", 3024 MOS_USER_FEATURE_TYPE_USER, 3025 MOS_USER_FEATURE_VALUE_TYPE_INT32, 3026 "0", 3027 "Report out whether skip frame is in use."), 3028 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_HUC_LOAD_STATUS_ID, 3029 "Huc Load Fail", 3030 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3031 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3032 "Report", 3033 MOS_USER_FEATURE_TYPE_USER, 3034 MOS_USER_FEATURE_VALUE_TYPE_INT32, 3035 "0", 3036 "Report out Huc loaded fails."), 3037 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_HUC_REPORT_CRITICAL_ERROR_ID, 3038 "HuC Report Critical Error", 3039 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3040 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3041 "Report", 3042 MOS_USER_FEATURE_TYPE_USER, 3043 MOS_USER_FEATURE_VALUE_TYPE_INT32, 3044 "0", 3045 "Report out HuC report critical error."), 3046 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_AV1_DECODE_DRIVER_S2L_ENABLE_ID, 3047 "AV1 Decode Driver S2L Enable Flag", 3048 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3049 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3050 "Decode", 3051 MOS_USER_FEATURE_TYPE_USER, 3052 MOS_USER_FEATURE_VALUE_TYPE_INT32, 3053 "1", 3054 "AV1 Decode driver S2L enable flag. 0: HUC FW S2L, 1: Driver S2L."), 3055 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_VDENC_TILEREPLAY_ENABLE_ID, 3056 "HEVC VDEnc TileReplay Enable", 3057 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3058 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3059 "Encode", 3060 MOS_USER_FEATURE_TYPE_USER, 3061 MOS_USER_FEATURE_VALUE_TYPE_INT32, 3062 "0", 3063 "Enable TileReplay for HEVC VDEnc"), 3064 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_VDENC_RGB_ENCODING_ENABLE_ID, 3065 "HEVC VDEnc RGB Encoding Enable", 3066 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3067 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3068 "Encode", 3069 MOS_USER_FEATURE_TYPE_USER, 3070 MOS_USER_FEATURE_VALUE_TYPE_INT32, 3071 "0", 3072 "Enable RGB Encoding for HEVC VDEnc"), 3073 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_VDENC_CAPTURE_MODE_ENABLE_ID, 3074 "HEVC VDEnc Capture Mode Enable", 3075 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3076 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3077 "Encode", 3078 MOS_USER_FEATURE_TYPE_USER, 3079 MOS_USER_FEATURE_VALUE_TYPE_INT32, 3080 "0", 3081 "Enable Capture Mode for HEVC VDEnc"), 3082 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_ENCODE_LOAD_KERNEL_INPUT_ID, 3083 "Load HEVC Kernel Input", 3084 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3085 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3086 "Encode", 3087 MOS_USER_FEATURE_TYPE_USER, 3088 MOS_USER_FEATURE_VALUE_TYPE_STRING, 3089 "", 3090 "Set fodler name for HEVC encoder kernel input loading"), 3091 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_VDENC_ULTRA_MODE_ENABLE_ID, 3092 "VDEnc Ultra Mode Enable", 3093 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3094 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3095 "Encode", 3096 MOS_USER_FEATURE_TYPE_USER, 3097 MOS_USER_FEATURE_VALUE_TYPE_UINT32, 3098 "0", 3099 "Enables/Disables VDEnc Ultra Mode feature. Starting from TGL for AVC VDEnc."), 3100 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_VME_BREAK12_ID, 3101 "HEVC VME Break12", 3102 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3103 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3104 "Encode", 3105 MOS_USER_FEATURE_TYPE_USER, 3106 MOS_USER_FEATURE_VALUE_TYPE_INT32, 3107 "1", 3108 "HEVC Vme encode break12 setting:[0, 3]. (Default 1"), 3109 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_VDENC_FORCE_DELTA_QP_ENABLE_ID, 3110 "HEVC VDEnc Force Delta QP Enable", 3111 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3112 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3113 "Encode", 3114 MOS_USER_FEATURE_TYPE_USER, 3115 MOS_USER_FEATURE_VALUE_TYPE_INT32, 3116 "1", 3117 "Enable Force Delta QP for HEVC VDEnc"), 3118 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_VME_BRC_LTR_ENABLE_ID, 3119 "HEVC VME BRC LTR Enable", 3120 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3121 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3122 "Codec", 3123 MOS_USER_FEATURE_TYPE_USER, 3124 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 3125 "0", 3126 "Enable long term reference in hevc vme brc. (Default 0: Disable)"), 3127 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_VDENC_FORCE_SCALABILITY_ID, 3128 "HEVC VDEnc Force Scalability For Low Size", 3129 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3130 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3131 "Codec", 3132 MOS_USER_FEATURE_TYPE_USER, 3133 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 3134 "0", 3135 "HEVC VDEnc encode force scalability for low (less than 4K) resolution. (Default 0)"), 3136 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_VME_DISABLE_PANIC_MODE_ID, 3137 "HEVC VME Disable Panic Mode", 3138 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3139 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3140 "Codec", 3141 MOS_USER_FEATURE_TYPE_USER, 3142 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 3143 "0", 3144 "HEVC Vme encode disable panic mode. (Default 0)"), 3145 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_VME_NUM_MEDIA_HWWALKER_INUSE_ID, 3146 "HEVC VME Media HW Walker Number In Use", 3147 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3148 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3149 "Codec", 3150 MOS_USER_FEATURE_TYPE_USER, 3151 MOS_USER_FEATURE_VALUE_TYPE_INT32, 3152 "1", 3153 "HEVC Vme encode media hw walker number in use. (Default 1)"), 3154 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_HEVC_VME_ENABLE_RENDER_CONTEXT_ID, 3155 "HEVC VME HP Render Context Enable", 3156 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3157 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3158 "Codec", 3159 MOS_USER_FEATURE_TYPE_USER, 3160 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 3161 "0", 3162 "HEVC Vme encode G12HP enable render context. (Default 0)"), 3163 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_MFE_FAST_SUBMIT_ID, 3164 "Enable MFE Fast Submit", 3165 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3166 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3167 "Codec", 3168 MOS_USER_FEATURE_TYPE_USER, 3169 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 3170 "0", 3171 "Enable MFE fast submission. Default 0: disabled"), 3172 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_MFE_MULTISTREAM_SCHEDULER_ID, 3173 "Enable MFE MultiStream Scheduler", 3174 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3175 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3176 "Codec", 3177 MOS_USER_FEATURE_TYPE_USER, 3178 MOS_USER_FEATURE_VALUE_TYPE_BOOL, 3179 "0", 3180 "Enable MFE multistream scheduler. Default 0: disabled"), 3181 MOS_DECLARE_UF_KEY_DBGONLY(__MEDIA_USER_FEATURE_VALUE_LOCKABLE_RESOURCE_ID, 3182 "Lockable Resource", 3183 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3184 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3185 "Codec", 3186 MOS_USER_FEATURE_TYPE_USER, 3187 MOS_USER_FEATURE_VALUE_TYPE_INT32, 3188 "0", 3189 "Enables/Disables lockable resource."), 3190 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MMC_ENC_POST_CDEF_RECON_COMPRESSIBLE_ID, 3191 "Encode Post CDEF Recon Compressible", 3192 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3193 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3194 "Report", 3195 MOS_USER_FEATURE_TYPE_USER, 3196 MOS_USER_FEATURE_VALUE_TYPE_INT32, 3197 "0", 3198 "Report Key to indicate if the surface is MMCD capable (0: no; 1: yes)."), 3199 MOS_DECLARE_UF_KEY(__MEDIA_USER_FEATURE_VALUE_MMC_ENC_POST_CDEF_RECON_COMPRESSMODE_ID, 3200 "Encode Post CDEF Recon Compress Mode", 3201 __MEDIA_USER_FEATURE_SUBKEY_INTERNAL, 3202 __MEDIA_USER_FEATURE_SUBKEY_REPORT, 3203 "Report", 3204 MOS_USER_FEATURE_TYPE_USER, 3205 MOS_USER_FEATURE_VALUE_TYPE_INT32, 3206 "0", 3207 "Report Key to indicate the MMCD compression mode of a surface "), 3208 }; 3209