1 /*
2 * Copyright (c) 2017, 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 mhw_vdbox_mfx_hwcmd_g9_skl.cpp
24 //! \brief Auto-generated definitions for MHW commands and states.
25 //!
26
27 #include "mhw_vdbox_mfx_hwcmd_g9_skl.h"
28 #include "mos_utilities.h"
29
MFX_QM_STATE_CMD()30 mhw_vdbox_mfx_g9_skl::MFX_QM_STATE_CMD::MFX_QM_STATE_CMD()
31 {
32 DW0.Value = 0;
33 DW0.DwordLength = GetOpLength(dwSize);
34 DW0.SubopcodeB = SUBOPCODE_B_UNNAMED7;
35 DW0.SubopcodeA = SUBOPCODE_A_UNNAMED0;
36 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_MFXCOMMONSTATE;
37 DW0.Pipeline = PIPELINE_MFXMULTIDW;
38 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
39
40 DW1.Value = 0;
41 DW1.Obj0.Avc = AVC_AVC_4X_4INTRAMATRIX_Y_4DWS_CB_4DWS_CR_4DWS_RESERVED_4DWS;
42 DW1.Obj1.Mpeg2 = MPEG2_MPEGINTRAQUANTIZERMATRIX;
43 DW1.Obj2.Jpeg = JPEG_JPEGLUMAYQUANTIZERMATRIXORR;
44
45 MOS_ZeroMemory(&ForwardQuantizerMatrix, sizeof(ForwardQuantizerMatrix));
46 }
47
MFX_FQM_STATE_CMD()48 mhw_vdbox_mfx_g9_skl::MFX_FQM_STATE_CMD::MFX_FQM_STATE_CMD()
49 {
50 DW0.Value = 0;
51 DW0.DwordLength = GetOpLength(dwSize);
52 DW0.SubopcodeB = SUBOPCODE_B_UNNAMED8;
53 DW0.SubopcodeA = SUBOPCODE_A_UNNAMED0;
54 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_MFXCOMMONSTATE;
55 DW0.Pipeline = PIPELINE_MFXMULTIDW;
56 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
57
58 DW1.Value = 0;
59 DW1.Obj0.Avc = AVC_AVC_4X_4INTRAMATRIX_Y_4DWS_CB_4DWS_CR_4DWS_RESERVED_4DWS;
60 DW1.Obj1.Mpeg2 = MPEG2_MPEGINTRAQUANTIZERMATRIX;
61 DW1.Obj2.Jpeg = JPEG_JPEGLUMAYQUANTIZERMATRIXORR;
62
63 MOS_ZeroMemory(&ForwardQuantizerMatrix, sizeof(ForwardQuantizerMatrix));
64 }
65
MFX_PIPE_MODE_SELECT_CMD()66 mhw_vdbox_mfx_g9_skl::MFX_PIPE_MODE_SELECT_CMD::MFX_PIPE_MODE_SELECT_CMD()
67 {
68 DW0.Value = 0;
69 DW0.DwordLength = GetOpLength(dwSize);
70 DW0.Subopb = SUBOPB_MFXPIPEMODESELECT;
71 DW0.Subopa = SUBOPA_UNNAMED0;
72 DW0.Opcode = OPCODE_MFXCOMMONSTATE;
73 DW0.Pipeline = PIPELINE_MFXCOMMON;
74 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
75
76 DW1.Value = 0;
77 DW1.StandardSelect = STANDARD_SELECT_MPEG2;
78 DW1.CodecSelect = CODEC_SELECT_DECODE;
79 DW1.StitchMode = STITCH_MODE_NOTINSTITCHMODE;
80 DW1.FrameStatisticsStreamoutEnable = FRAME_STATISTICS_STREAMOUT_ENABLE_DISABLE;
81 DW1.ScaledSurfaceEnable = SCALED_SURFACE_ENABLE_DISABLE;
82 DW1.PreDeblockingOutputEnablePredeblockoutenable = PRE_DEBLOCKING_OUTPUT_ENABLE_PREDEBLOCKOUTENABLE_DISABLE;
83 DW1.PostDeblockingOutputEnablePostdeblockoutenable = POST_DEBLOCKING_OUTPUT_ENABLE_POSTDEBLOCKOUTENABLE_DISABLE;
84 DW1.StreamOutEnable = STREAM_OUT_ENABLE_DISABLE;
85 DW1.PicErrorStatusReportEnable = PIC_ERRORSTATUS_REPORT_ENABLE_DISABLE;
86 DW1.DeblockerStreamOutEnable = DEBLOCKER_STREAM_OUT_ENABLE_DISABLE;
87 DW1.VdencMode = VDENC_MODE_MBENCMODE;
88 DW1.StandaloneVdencModeEnable = STANDALONE_VDENC_MODE_ENABLE_VDENCPAK;
89 DW1.DecoderModeSelect = DECODER_MODE_SELECT_VLDMODE;
90 DW1.DecoderShortFormatMode = DECODER_SHORT_FORMAT_MODE_SHORTFORMATDRIVERINTERFACE;
91
92 DW2.Value = 0;
93 DW2.VdsIldbCalculation = VDS_ILDB_CALCULATION_DISABLE;
94 DW2.ClockGateEnableAtSliceLevel = CLOCK_GATE_ENABLE_AT_SLICE_LEVEL_DISABLE;
95 DW2.MpcPref08X8DisableFlagDefault0 = MPC_PREF08X8_DISABLE_FLAG_DEFAULT_0_DISABLE;
96 DW2.Vlf720IOddHeightInVc1Mode = VLF_720I_ODD_HEIGHT_IN_VC1_MODE_DISABLE;
97 DW2.VmbSvcTlbDummyFetchDisableForPerformance = VMB_SVC_TLB_DUMMY_FETCH_DISABLE_FOR_PERFORMANCE_ENABLE;
98 DW2.VmbSvcMvReplicationFor8X8EnableErrorHandling = VMB_SVC_MV_REPLICATION_FOR_8X8_ENABLE_ERROR_HANDLING_DISABLE;
99
100 DW3.Value = 0;
101 DW3.PicStatusErrorReportId = PIC_STATUSERROR_REPORT_ID_32_BITUNSIGNED;
102
103 DW4.Value = 0;
104
105 }
106
MFX_SURFACE_STATE_CMD()107 mhw_vdbox_mfx_g9_skl::MFX_SURFACE_STATE_CMD::MFX_SURFACE_STATE_CMD()
108 {
109 DW0.Value = 0;
110 DW0.DwordLength = GetOpLength(dwSize);
111 DW0.Subopb = SUBOPB_UNNAMED1;
112 DW0.Subopa = SUBOPA_UNNAMED0;
113 DW0.Opcode = OPCODE_MFXCOMMONSTATE;
114 DW0.Pipeline = PIPELINE_MFXCOMMON;
115 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
116
117 DW1.Value = 0;
118 DW1.SurfaceId = SURFACE_ID_DECODEDPICTUREANDREFERENCEPICTURES_SVCUPSAMPLINGSTREAMOUTRECONSTRUCTEDPIXELSCOEFFPREDUPPERLAYERSIZE;
119
120 DW2.Value = 0;
121
122 DW3.Value = 0;
123 DW3.TileWalk = TILE_WALK_XMAJOR;
124 DW3.TiledSurface = TILED_SURFACE_FALSE;
125 DW3.InterleaveChroma = INTERLEAVE_CHROMA_DISABLE;
126 DW3.SurfaceFormat = SURFACE_FORMAT_YCRCBNORMAL;
127
128 DW4.Value = 0;
129
130 DW5.Value = 0;
131
132 }
133
MFX_IND_OBJ_BASE_ADDR_STATE_CMD()134 mhw_vdbox_mfx_g9_skl::MFX_IND_OBJ_BASE_ADDR_STATE_CMD::MFX_IND_OBJ_BASE_ADDR_STATE_CMD()
135 {
136 DW0.Value = 0;
137 DW0.DwordLength = GetOpLength(dwSize);
138 DW0.Subopcodeb = SUBOPCODEB_MFXINDOBJBASEADDRSTATE;
139 DW0.SubOpcodea = SUB_OPCODEA_MFXINDOBJBASEADDRSTATE;
140 DW0.CommonOpcode = COMMON_OPCODE_MFXINDOBJBASEADDRSTATE;
141 DW0.Pipeline = PIPELINE_MFXINDOBJBASEADDRSTATE;
142 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
143
144 DW1.Value = 0;
145
146 DW2.Value = 0;
147
148 DW3.Value = 0;
149 DW3.MfxIndirectBitstreamObjectbaseArbitrationPriorityControl = MFX_INDIRECT_BITSTREAM_OBJECTBASE_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
150 DW3.MfxIndirectBitstreamObjectTiledResourceMode = MFX_INDIRECT_BITSTREAM_OBJECT_TILED_RESOURCE_MODE_TRMODENONE;
151
152 DW4.Value = 0;
153
154 DW5.Value = 0;
155
156 DW6.Value = 0;
157
158 DW7.Value = 0;
159
160 DW8.Value = 0;
161 DW8.MfxIndirectMvObjectArbitrationPriorityControl = MFX_INDIRECT_MV_OBJECT_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
162 DW8.MfxIndirectMvObjectDestinationTiledResourceMode = MFX_INDIRECT_MV_OBJECT_DESTINATION_TILED_RESOURCE_MODE_TRMODENONE;
163
164 DW9.Value = 0;
165
166 DW10.Value = 0;
167
168 DW11.Value = 0;
169
170 DW12.Value = 0;
171
172 DW13.Value = 0;
173 DW13.MfdIndirectItCoeffObjectDesitnationArbitrationPriorityControl = MFD_INDIRECT_IT_COEFF_OBJECT_DESITNATION_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
174 DW13.MfdIndirectItCoeffTiledResourceMode = MFD_INDIRECT_IT_COEFF_TILED_RESOURCE_MODE_TRMODENONE;
175
176 DW14.Value = 0;
177
178 DW15.Value = 0;
179
180 DW16.Value = 0;
181
182 DW17.Value = 0;
183
184 DW18.Value = 0;
185 DW18.MfdIndirectItDblkObjectArbitrationPriorityControl = MFD_INDIRECT_IT_DBLK_OBJECT_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
186 DW18.MfdIndirectItDblkObjectDestinationTiledResourceMode = MFD_INDIRECT_IT_DBLK_OBJECT_DESTINATION_TILED_RESOURCE_MODE_TRMODENONE;
187
188 DW19.Value = 0;
189
190 DW20.Value = 0;
191
192 DW21.Value = 0;
193
194 DW22.Value = 0;
195
196 DW23.Value = 0;
197 DW23.MfcIndirectPakBseObjectDesitnationArbitrationPriorityControl = MFC_INDIRECT_PAK_BSE_OBJECT_DESITNATION_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
198 DW23.MfcIndirectPakBseObjectDestinationTiledResourceMode = MFC_INDIRECT_PAK_BSE_OBJECT_DESTINATION_TILED_RESOURCE_MODE_TRMODENONE;
199
200 DW24.Value = 0;
201
202 DW25.Value = 0;
203
204 }
205
MFX_BSP_BUF_BASE_ADDR_STATE_CMD()206 mhw_vdbox_mfx_g9_skl::MFX_BSP_BUF_BASE_ADDR_STATE_CMD::MFX_BSP_BUF_BASE_ADDR_STATE_CMD()
207 {
208 DW0.Value = 0;
209 DW0.DwordLength = GetOpLength(dwSize);
210 DW0.SubopcodeB = SUBOPCODE_B_UNNAMED_4;
211 DW0.SubopcodeA = SUBOPCODE_A_UNNAMED0;
212 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_MFXCOMMONSTATE;
213 DW0.Pipeline = PIPELINE_PIPELINE;
214 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
215
216 DW1.Value = 0;
217
218 DW2.Value = 0;
219
220 DW3.Value = 0;
221 DW3.BsdMpcRowStoreScratchBufferArbitrationPriorityControl = BSDMPC_ROW_STORE_SCRATCH_BUFFER_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
222 DW3.BsdMpcRowStoreScratchBufferCacheSelect = BSDMPC_ROW_STORE_SCRATCH_BUFFER_CACHE_SELECT_UNNAMED0;
223 DW3.BsdMpcRowStoreScratchBufferTiledResourceMode = BSDMPC_ROW_STORE_SCRATCH_BUFFER_TILED_RESOURCE_MODE_TRMODENONE;
224
225 DW4.Value = 0;
226
227 DW5.Value = 0;
228
229 DW6.Value = 0;
230 DW6.MprRowStoreScratchBufferArbitrationPriorityControl = MPR_ROW_STORE_SCRATCH_BUFFER_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
231 DW6.MprRowStoreScratchBufferCacheSelect = MPR_ROW_STORE_SCRATCH_BUFFER_CACHE_SELECT_UNNAMED0;
232 DW6.MprRowStoreScratchBufferTiledResourceMode = MPR_ROW_STORE_SCRATCH_BUFFER_TILED_RESOURCE_MODE_TRMODENONE;
233
234 DW7.Value = 0;
235
236 DW8.Value = 0;
237
238 DW9.Value = 0;
239 DW9.BitplaneReadBufferArbitrationPriorityControl = BITPLANE_READ_BUFFER_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
240 DW9.BitplaneReadBufferTiledResourceMode = BITPLANE_READ_BUFFER_TILED_RESOURCE_MODE_TRMODENONE;
241
242 }
243
MFD_AVC_PICID_STATE_CMD()244 mhw_vdbox_mfx_g9_skl::MFD_AVC_PICID_STATE_CMD::MFD_AVC_PICID_STATE_CMD()
245 {
246 DW0.Value = 0;
247 DW0.DwordLength = GetOpLength(dwSize);
248 DW0.SubopcodeB = SUBOPCODE_B_MEDIA;
249 DW0.SubopcodeA = SUBOPCODE_A_DEC;
250 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_MFDAVCDPBSTATE;
251 DW0.Pipeline = PIPELINE_MFXMULTIDW;
252 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
253
254 DW1.Value = 0;
255 DW1.PictureidRemappingDisable = PICTUREID_REMAPPING_DISABLE_AVCDECODERWILLUSE16BITSPICTUREIDTOHANDLEDMVANDIDENTIFYTHEREFERENCEPICTURE;
256
257 MOS_ZeroMemory(&Pictureidlist1616Bits, sizeof(Pictureidlist1616Bits));
258 }
259
MFX_AVC_IMG_STATE_CMD()260 mhw_vdbox_mfx_g9_skl::MFX_AVC_IMG_STATE_CMD::MFX_AVC_IMG_STATE_CMD()
261 {
262 DW0.Value = 0;
263 DW0.DwordLength = GetOpLength(dwSize);
264 DW0.SubopcodeB = SUBOPCODE_B_UNNAMED0;
265 DW0.SubopcodeA = SUBOPCODE_A_UNNAMED0;
266 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_AVCCOMMON;
267 DW0.Pipeline = PIPELINE_MFXAVCIMGSTATE;
268 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
269
270 DW1.Value = 0;
271
272 DW2.Value = 0;
273
274 DW3.Value = 0;
275 DW3.ImgstructImageStructureImgStructure10 = IMGSTRUCT_IMAGE_STRUCTURE_IMG_STRUCTURE10_FRAMEPICTURE;
276 DW3.WeightedBipredIdc = WEIGHTED_BIPRED_IDC_DEFAULT;
277 DW3.WeightedPredFlag = WEIGHTED_PRED_FLAG_DISABLE;
278 DW3.RhodomainRateControlEnable = RHODOMAIN_RATE_CONTROL_ENABLE_DISABLE;
279
280 DW4.Value = 0;
281 DW4.Fieldpicflag = FIELDPICFLAG_FRAME;
282 DW4.Mbaffflameflag = MBAFFFLAMEFLAG_FALSE;
283 DW4.Framembonlyflag = FRAMEMBONLYFLAG_FALSE;
284 DW4.Transform8X8Flag = TRANSFORM8X8FLAG_4X_4;
285 DW4.Direct8X8Infflag = DIRECT8X8INFFLAG_SUBBLOCK;
286 DW4.Constrainedipredflag = CONSTRAINEDIPREDFLAG_INTRAANDINTER;
287 DW4.Imgdisposableflag = IMGDISPOSABLEFLAG_REFERENCE;
288 DW4.Entropycodingflag = ENTROPYCODINGFLAG_CAVLCBIT_SERIALENCODINGMODE;
289 DW4.Mbmvformatflag = MBMVFORMATFLAG_IGNORE;
290 DW4.Chromaformatidc = CHROMAFORMATIDC_MONOCHROMEPICTURE;
291 DW4.Mvunpackedflag = MVUNPACKEDFLAG_PACKED;
292 DW4.Loadslicepointerflag = LOADSLICEPOINTERFLAG_DISABLE;
293 DW4.Mbstatenabled = MBSTATENABLED_DISABLE;
294 DW4.Minframewsize = MINFRAMEWSIZE_UNNAMED0;
295
296 DW5.Value = 0;
297 DW5.IntrambmaxbitflagIntrambmaxsizereportmask = INTRAMBMAXBITFLAG_INTRAMBMAXSIZEREPORTMASK_DISABLE;
298 DW5.IntermbmaxbitflagIntermbmaxsizereportmask = INTERMBMAXBITFLAG_INTERMBMAXSIZEREPORTMASK_DISABLE;
299 DW5.FrameszoverflagFramebitratemaxreportmask = FRAMESZOVERFLAG_FRAMEBITRATEMAXREPORTMASK_DISABLE;
300 DW5.FrameszunderflagFramebitrateminreportmask = FRAMESZUNDERFLAG_FRAMEBITRATEMINREPORTMASK_DISABLE;
301 DW5.IntraIntermbipcmflagForceipcmcontrolmask = INTRAINTERMBIPCMFLAG_FORCEIPCMCONTROLMASK_DISABLE;
302 DW5.MbratectrlflagMbLevelRateControlEnablingFlag = MBRATECTRLFLAG_MB_LEVEL_RATE_CONTROL_ENABLING_FLAG_DISABLE;
303 DW5.Minframewsizeunits = MINFRAMEWSIZEUNITS_COMPATIBILITYMODE;
304 DW5.Nonfirstpassflag = NONFIRSTPASSFLAG_DISABLE;
305 DW5.TrellisQuantizationChromaDisableTqchromadisable = TRELLIS_QUANTIZATION_CHROMA_DISABLE_TQCHROMADISABLE_UNNAMED0;
306 DW5.TrellisQuantizationRoundingTqr = TRELLIS_QUANTIZATION_ROUNDING_TQR_UNNAMED0;
307 DW5.TrellisQuantizationEnabledTqenb = TRELLIS_QUANTIZATION_ENABLED_TQENB_DISABLE;
308
309 DW6.Value = 0;
310
311 DW7.Value = 0;
312 DW7.VslTopMbTrans8X8Flag = VSL_TOP_MB_TRANS8X8FLAG_DISABLE;
313 DW7.BspEncoderEcoEnable = BSP_ENCODER_ECO_ENABLE_DISABLE;
314
315 DW8.Value = 0;
316
317 DW9.Value = 0;
318
319 DW10.Value = 0;
320 DW10.Framebitrateminunitmode = FRAMEBITRATEMINUNITMODE_COMPATIBILITYMODE;
321 DW10.Framebitrateminunit = FRAMEBITRATEMINUNIT_BYTE;
322 DW10.Framebitratemaxunitmode = FRAMEBITRATEMAXUNITMODE_COMPATIBILITYMODE;
323 DW10.Framebitratemaxunit = FRAMEBITRATEMAXUNIT_BYTE;
324
325 DW11.Value = 0;
326 DW11.Framebitratemaxdelta = FRAMEBITRATEMAXDELTA_UNNAMED0;
327
328 DW12.Value = 0;
329
330 DW13.Value = 0;
331
332 DW14.Value = 0;
333
334 DW15.Value = 0;
335
336 DW16_17.Value[0] = DW16_17.Value[1] = 0;
337 DW16_17.InterViewOrderDisable = INTER_VIEW_ORDER_DISABLE_DEFAULT;
338
339 DW18.Value = 0;
340
341 DW19.Value = 0;
342
343 DW20.Value = 0;
344
345 }
346
MFX_AVC_REF_IDX_STATE_CMD()347 mhw_vdbox_mfx_g9_skl::MFX_AVC_REF_IDX_STATE_CMD::MFX_AVC_REF_IDX_STATE_CMD()
348 {
349 DW0.Value = 0;
350 DW0.DwordLength = GetOpLength(dwSize);
351 DW0.Subopcodeb = SUBOPCODEB_MFXAVCREFIDXSTATE;
352 DW0.Subopcodea = SUBOPCODEA_MFXAVCREFIDXSTATE;
353 DW0.CommandOpcode = COMMAND_OPCODE_AVC;
354 DW0.Pipeline = PIPELINE_MFXAVCREFIDXSTATE;
355 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
356
357 DW1.Value = 0;
358 DW1.RefpiclistSelect = REFPICLIST_SELECT_REFPICLIST0;
359
360 MOS_ZeroMemory(&ReferenceListEntry, sizeof(ReferenceListEntry));
361 }
362
MFX_AVC_WEIGHTOFFSET_STATE_CMD()363 mhw_vdbox_mfx_g9_skl::MFX_AVC_WEIGHTOFFSET_STATE_CMD::MFX_AVC_WEIGHTOFFSET_STATE_CMD()
364 {
365 DW0.Value = 0;
366 DW0.DwordLength = GetOpLength(dwSize);
367 DW0.SubopcodeB = SUBOPCODE_B_UNNAMED5;
368 DW0.SubopcodeA = SUBOPCODE_A_UNNAMED0;
369 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_AVCCOMMON;
370 DW0.Pipeline = PIPELINE_MFXAVCWEIGHTOFFSETSTATE;
371 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
372
373 DW1.Value = 0;
374 DW1.WeightAndOffsetSelect = WEIGHT_AND_OFFSET_SELECT_WEIGHTANDOFFSETL0TABLE;
375
376 MOS_ZeroMemory(&Weightoffset, sizeof(Weightoffset));
377 }
378
MFX_AVC_SLICE_STATE_CMD()379 mhw_vdbox_mfx_g9_skl::MFX_AVC_SLICE_STATE_CMD::MFX_AVC_SLICE_STATE_CMD()
380 {
381 DW0.Value = 0;
382 DW0.DwordLength = GetOpLength(dwSize);
383 DW0.CommandSubopcodeb = COMMAND_SUBOPCODEB_MFXAVCSLICESTATE;
384 DW0.Subopcodea = SUBOPCODEA_MFXAVCSLICESTATE;
385 DW0.CommandOpcode = COMMAND_OPCODE_AVC;
386 DW0.Pipeline = PIPELINE_MFXAVCSLICESTATE;
387 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
388
389 DW1.Value = 0;
390 DW1.SliceType = SLICE_TYPE_PSLICE;
391
392 DW2.Value = 0;
393
394 DW3.Value = 0;
395 DW3.DisableDeblockingFilterIndicator = DISABLE_DEBLOCKING_FILTER_INDICATOR_UNNAMED0;
396 DW3.DirectPredictionType = DIRECT_PREDICTION_TYPE_TEMPORAL;
397
398 DW4.Value = 0;
399
400 DW5.Value = 0;
401
402 DW6.Value = 0;
403 DW6.Cabaczerowordinsertionenable = CABACZEROWORDINSERTIONENABLE_UNNAMED0;
404 DW6.Emulationbytesliceinsertenable = EMULATIONBYTESLICEINSERTENABLE_UNNAMED0;
405 DW6.TailInsertionPresentInBitstream = TAIL_INSERTION_PRESENT_IN_BITSTREAM_UNNAMED0;
406 DW6.SlicedataInsertionPresentInBitstream = SLICEDATA_INSERTION_PRESENT_IN_BITSTREAM_UNNAMED0;
407 DW6.HeaderInsertionPresentInBitstream = HEADER_INSERTION_PRESENT_IN_BITSTREAM_UNNAMED0;
408 DW6.IsLastSlice = IS_LAST_SLICE_UNNAMED0;
409 DW6.MbTypeSkipConversionDisable = MB_TYPE_SKIP_CONVERSION_DISABLE_ENABLESKIPTYPECONVERSION;
410 DW6.MbTypeDirectConversionDisable = MB_TYPE_DIRECT_CONVERSION_DISABLE_ENABLEDIRECTMODECONVERSION;
411 DW6.RcPanicType = RC_PANIC_TYPE_QPPANIC;
412 DW6.RcPanicEnable = RC_PANIC_ENABLE_DISABLE;
413 DW6.RcTriggleMode = RC_TRIGGLE_MODE_ALWAYSRATECONTROL;
414 DW6.Resetratecontrolcounter = RESETRATECONTROLCOUNTER_NOTRESET;
415 DW6.RateControlCounterEnable = RATE_CONTROL_COUNTER_ENABLE_DISABLE;
416
417 DW7.Value = 0;
418
419 DW8.Value = 0;
420
421 DW9.Value = 0;
422 DW9.Roundintra = ROUNDINTRA_116;
423 DW9.Roundinter = ROUNDINTER_116;
424
425 DW10.Value = 0;
426
427 }
428
MFD_AVC_DPB_STATE_CMD()429 mhw_vdbox_mfx_g9_skl::MFD_AVC_DPB_STATE_CMD::MFD_AVC_DPB_STATE_CMD()
430 {
431 DW0.Value = 0;
432 DW0.DwordLength = GetOpLength(dwSize);
433 DW0.SubopcodeB = SUBOPCODE_B_UNNAMED6;
434 DW0.SubopcodeA = SUBOPCODE_A_UNNAMED1;
435 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_AVCDEC;
436 DW0.Pipeline = PIPELINE_MFXMULTIDW;
437 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
438
439 DW1.Value = 0;
440 DW1.NonExistingframeFlag161Bit = NON_EXISTINGFRAME_FLAG161_BIT_VALID;
441 DW1.LongtermframeFlag161Bit = LONGTERMFRAME_FLAG161_BIT_THEPICTUREISASHORTTERMREFERENCEPICTURE;
442
443 DW2.Value = 0;
444 DW2.UsedforreferenceFlag162Bits = USEDFORREFERENCE_FLAG162_BITS_NOTREFERENCE;
445
446 MOS_ZeroMemory(&Ltstframenumlist1616Bits, sizeof(Ltstframenumlist1616Bits));
447 MOS_ZeroMemory(&Viewidlist1616Bits, sizeof(Viewidlist1616Bits));
448 MOS_ZeroMemory(&Vieworderlistl0168Bits, sizeof(Vieworderlistl0168Bits));
449 MOS_ZeroMemory(&Vieworderlistl1168Bits, sizeof(Vieworderlistl1168Bits));
450 }
451
MFD_AVC_SLICEADDR_CMD()452 mhw_vdbox_mfx_g9_skl::MFD_AVC_SLICEADDR_CMD::MFD_AVC_SLICEADDR_CMD()
453 {
454 DW0.Value = 0;
455 DW0.DwordLength = GetOpLength(dwSize);
456 DW0.SubopcodeB = SUBOPCODE_B_UNNAMED7;
457 DW0.SubopcodeA = SUBOPCODE_A_UNNAMED1;
458 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_AVCDEC;
459 DW0.Pipeline = PIPELINE_MFDAVCSLICEADDR;
460 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
461
462 DW1.Value = 0;
463
464 DW2.Value = 0;
465
466 }
467
MFD_AVC_BSD_OBJECT_CMD()468 mhw_vdbox_mfx_g9_skl::MFD_AVC_BSD_OBJECT_CMD::MFD_AVC_BSD_OBJECT_CMD()
469 {
470 DW0.Value = 0;
471 DW0.DwordLength = GetOpLength(dwSize);
472 DW0.SubopcodeB = SUBOPCODE_B_UNNAMED8;
473 DW0.SubopcodeA = SUBOPCODE_A_UNNAMED1;
474 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_AVCDEC;
475 DW0.Pipeline = PIPELINE_MFDAVCBSDOBJECT;
476 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
477
478 DW1.Value = 0;
479
480 DW2.Value = 0;
481
482 DW3.Value = 0;
483 DW3.MbErrorConcealmentPSliceWeightPredictionDisableFlag = MB_ERROR_CONCEALMENT_P_SLICE_WEIGHT_PREDICTION_DISABLE_FLAG_UNNAMED0;
484 DW3.MbErrorConcealmentPSliceMotionVectorsOverrideDisableFlag = MB_ERROR_CONCEALMENT_P_SLICE_MOTION_VECTORS_OVERRIDE_DISABLE_FLAG_UNNAMED0;
485 DW3.MbErrorConcealmentBSpatialWeightPredictionDisableFlag = MB_ERROR_CONCEALMENT_B_SPATIAL_WEIGHT_PREDICTION_DISABLE_FLAG_UNNAMED0;
486 DW3.MbErrorConcealmentBSpatialMotionVectorsOverrideDisableFlag = MB_ERROR_CONCEALMENT_B_SPATIAL_MOTION_VECTORS_OVERRIDE_DISABLE_FLAG_UNNAMED0;
487 DW3.MbErrorConcealmentBSpatialPredictionMode = MB_ERROR_CONCEALMENT_B_SPATIAL_PREDICTION_MODE_UNNAMED0;
488 DW3.MbHeaderErrorHandling = MB_HEADER_ERROR_HANDLING_UNNAMED0;
489 DW3.EntropyErrorHandling = ENTROPY_ERROR_HANDLING_UNNAMED0;
490 DW3.MprErrorMvOutOfRangeHandling = MPR_ERROR_MV_OUT_OF_RANGE_HANDLING_UNNAMED0;
491 DW3.BsdPrematureCompleteErrorHandling = BSD_PREMATURE_COMPLETE_ERROR_HANDLING_UNNAMED0;
492 DW3.MbErrorConcealmentBTemporalWeightPredictionDisableFlag = MB_ERROR_CONCEALMENT_B_TEMPORAL_WEIGHT_PREDICTION_DISABLE_FLAG_UNNAMED0;
493 DW3.MbErrorConcealmentBTemporalMotionVectorsOverrideEnableFlag = MB_ERROR_CONCEALMENT_B_TEMPORAL_MOTION_VECTORS_OVERRIDE_ENABLE_FLAG_UNNAMED0;
494 DW3.MbErrorConcealmentBTemporalPredictionMode = MB_ERROR_CONCEALMENT_B_TEMPORAL_PREDICTION_MODE_UNNAMED0;
495 DW3.IntraPredmode4X48X8LumaErrorControlBit = INTRA_PREDMODE_4X48X8_LUMA_ERROR_CONTROL_BIT_UNNAMED0;
496 DW3.ConcealmentMethod = CONCEALMENT_METHOD_UNNAMED0;
497
498 DW4.Value = 0;
499 DW4.LastsliceFlag = LASTSLICE_FLAG_UNNAMED0;
500 DW4.EmulationPreventionBytePresent = EMULATION_PREVENTION_BYTE_PRESENT_UNNAMED0;
501
502 DW5.Value = 0;
503 DW5.IntraPredictionErrorControlBitAppliedToIntra16X16Intra8X8Intra4X4LumaAndChroma = INTRA_PREDICTION_ERROR_CONTROL_BIT_APPLIED_TO_INTRA16X16INTRA8X8INTRA4X4_LUMA_AND_CHROMA_UNNAMED0;
504 DW5.Intra8X84X4PredictionErrorConcealmentControlBit = INTRA_8X84X4_PREDICTION_ERROR_CONCEALMENT_CONTROL_BIT_UNNAMED0;
505 DW5.BSliceTemporalInterConcealmentMode = B_SLICE_TEMPORAL_INTER_CONCEALMENT_MODE_UNNAMED0;
506 DW5.BSliceSpatialInterConcealmentMode = B_SLICE_SPATIAL_INTER_CONCEALMENT_MODE_UNNAMED0;
507 DW5.BSliceInterDirectTypeConcealmentMode = B_SLICE_INTER_DIRECT_TYPE_CONCEALMENT_MODE_UNNAMED0;
508 DW5.BSliceConcealmentMode = B_SLICE_CONCEALMENT_MODE_INTERCONCEALMENT;
509 DW5.PSliceInterConcealmentMode = P_SLICE_INTER_CONCEALMENT_MODE_UNNAMED0;
510 DW5.PSliceConcealmentMode = P_SLICE_CONCEALMENT_MODE_INTERCONCEALMENT;
511 DW5.ISliceConcealmentMode = I_SLICE_CONCEALMENT_MODE_INTRACONCEALMENT;
512
513 }
514
MFX_PAK_INSERT_OBJECT_CMD()515 mhw_vdbox_mfx_g9_skl::MFX_PAK_INSERT_OBJECT_CMD::MFX_PAK_INSERT_OBJECT_CMD()
516 {
517 DW0.Value = 0;
518 DW0.DwordLength = GetOpLength(dwSize);
519 DW0.SubopcodeB = SUBOPCODE_B_UNNAMED8;
520 DW0.SubopcodeA = SUBOPCODE_A_UNNAMED2;
521 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_MFXCOMMON;
522 DW0.Pipeline = PIPELINE_MFXPAKINSERTOBJECT;
523 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
524
525 DW1.Value = 0;
526 DW1.BitstreamstartresetResetbitstreamstartingpos = BITSTREAMSTARTRESET_RESETBITSTREAMSTARTINGPOS_INSERT;
527 DW1.EmulationflagEmulationbytebitsinsertenable = EMULATIONFLAG_EMULATIONBYTEBITSINSERTENABLE_NONE;
528 DW1.SliceHeaderIndicator = SLICE_HEADER_INDICATOR_LEGACY;
529 DW1.Headerlengthexcludefrmsize = HEADERLENGTHEXCLUDEFRMSIZE_ACCUMULATE;
530
531 }
532
MFX_MPEG2_PIC_STATE_CMD()533 mhw_vdbox_mfx_g9_skl::MFX_MPEG2_PIC_STATE_CMD::MFX_MPEG2_PIC_STATE_CMD()
534 {
535 DW0.Value = 0;
536 DW0.DwordLength = GetOpLength(dwSize);
537 DW0.SubopcodeB = SUBOPCODE_B_UNNAMED0;
538 DW0.SubopcodeA = SUBOPCODE_A_UNNAMED0;
539 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_MPEG2COMMON;
540 DW0.Pipeline = PIPELINE_MFXMPEG2PICSTATE;
541 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
542
543 DW1.Value = 0;
544 DW1.ScanOrder = SCAN_ORDER_UNNAMED0;
545 DW1.QuantizerScaleType = QUANTIZER_SCALE_TYPE_UNNAMED0;
546
547 DW2.Value = 0;
548 DW2.Mismatchcontroldisabled = MISMATCHCONTROLDISABLED_UNNAMED0;
549 DW2.PictureCodingType = PICTURE_CODING_TYPE_MPEGIPICTURE;
550 DW2.LoadslicepointerflagLoadbitstreampointerperslice = LOADSLICEPOINTERFLAG_LOADBITSTREAMPOINTERPERSLICE_UNNAMED0;
551 DW2.PBSlicePredictedMotionVectorOverrideFinalMvValueOverride = PB_SLICE_PREDICTED_MOTION_VECTOR_OVERRIDE_FINAL_MV_VALUE_OVERRIDE_PREDICTED;
552 DW2.PBSlicePredictedBidirMotionTypeOverrideBiDirectionMvTypeOverride = PB_SLICE_PREDICTED_BIDIR_MOTION_TYPE_OVERRIDE_BI_DIRECTION_MV_TYPE_OVERRIDE_BID;
553 DW2.PBSliceConcealmentMode = PB_SLICE_CONCEALMENT_MODE_INTER;
554 DW2.ISliceConcealmentMode = I_SLICE_CONCEALMENT_MODE_INTRACONCEALMENT;
555
556 DW3.Value = 0;
557 DW3.SliceConcealmentDisableBit = SLICE_CONCEALMENT_DISABLE_BIT_ENABLE;
558
559 DW4.Value = 0;
560 DW4.Minframewsize = MINFRAMEWSIZE_UNNAMED0;
561
562 DW5.Value = 0;
563 DW5.Intrambmaxsizereportmask = INTRAMBMAXSIZEREPORTMASK_UNNAMED0;
564 DW5.Intermbmaxsizereportmask = INTERMBMAXSIZEREPORTMASK_UNNAMED0;
565 DW5.Framebitratemaxreportmask = FRAMEBITRATEMAXREPORTMASK_DISABLE;
566 DW5.Framebitrateminreportmask = FRAMEBITRATEMINREPORTMASK_DISABLE;
567 DW5.Mbratecontrolmask = MBRATECONTROLMASK_UNNAMED0;
568 DW5.Minframewsizeunits = MINFRAMEWSIZEUNITS_COMPATIBILITYMODE;
569 DW5.Intermbforcecbpzerocontrolmask = INTERMBFORCECBPZEROCONTROLMASK_UNNAMED0;
570 DW5.Framesizecontrolmask = FRAMESIZECONTROLMASK_UNNAMED0;
571
572 DW6.Value = 0;
573 DW6.Intrambmaxsize = INTRAMBMAXSIZE_UNNAMED_4095;
574 DW6.Intermbmaxsize = INTERMBMAXSIZE_UNNAMED_4095;
575
576 DW7.Value = 0;
577 DW7.VslTopMbTrans8X8Flag = VSL_TOP_MB_TRANS8X8FLAG_DISABLE;
578
579 DW8.Value = 0;
580 DW8.Slicedeltaqpmax3 = SLICEDELTAQPMAX3_DISABLE;
581
582 DW9.Value = 0;
583
584 DW10.Value = 0;
585 DW10.Framebitrateminunitmode = FRAMEBITRATEMINUNITMODE_COMPATIBILITYMODE;
586 DW10.Framebitrateminunit = FRAMEBITRATEMINUNIT_BYTE;
587 DW10.Framebitratemaxunitmode = FRAMEBITRATEMAXUNITMODE_COMPATIBILITYMODE;
588 DW10.Framebitratemaxunit = FRAMEBITRATEMAXUNIT_BYTE;
589
590 DW11.Value = 0;
591 DW11.Framebitratemaxdelta = FRAMEBITRATEMAXDELTA_UNNAMED0;
592
593 DW12.Value = 0;
594
595 }
596
MFD_MPEG2_BSD_OBJECT_CMD()597 mhw_vdbox_mfx_g9_skl::MFD_MPEG2_BSD_OBJECT_CMD::MFD_MPEG2_BSD_OBJECT_CMD()
598 {
599 DW0.Value = 0;
600 DW0.DwordLength = GetOpLength(dwSize);
601 DW0.SubopcodeB = SUBOPCODE_B_UNNAMED8;
602 DW0.SubopcodeA = SUBOPCODE_A_UNNAMED1;
603 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_MPEG2DEC;
604 DW0.Pipeline = PIPELINE_MFDMPEG2BSDOBJECT;
605 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
606
607 DW1.Value = 0;
608
609 DW2.Value = 0;
610
611 DW3.Value = 0;
612 DW3.IsLastMb = IS_LAST_MB_UNNAMED0;
613 DW3.LastPicSlice = LAST_PIC_SLICE_UNNAMED0;
614 DW3.SliceConcealmentTypeBit = SLICE_CONCEALMENT_TYPE_BIT_UNNAMED0;
615 DW3.SliceConcealmentOverrideBit = SLICE_CONCEALMENT_OVERRIDE_BIT_UNNAMED0;
616
617 DW4.Value = 0;
618
619 }
620
MFD_IT_OBJECT_MPEG2_INLINE_DATA_CMD()621 mhw_vdbox_mfx_g9_skl::MFD_IT_OBJECT_MPEG2_INLINE_DATA_CMD::MFD_IT_OBJECT_MPEG2_INLINE_DATA_CMD()
622 {
623 DW0.Value = 0;
624 DW0.MacroblockIntraType = MACROBLOCK_INTRA_TYPE_NON_INTRAMACROBLOCK;
625 DW0.MacroblockMotionForward = MACROBLOCK_MOTION_FORWARD_NOFORWARDMOTIONVECTOR;
626 DW0.MacroblockMotionBackward = MACROBLOCK_MOTION_BACKWARD_NOBACKWARDMOTIONVECTOR;
627 DW0.DctType = DCT_TYPE_MCFRAMEDCT;
628 DW0.MotionVerticalFieldSelect = MOTION_VERTICAL_FIELD_SELECT_TOPFIELD;
629
630 DW1.Value = 0;
631
632 DW2.Value = 0;
633
634 DW3.Value = 0;
635
636 DW4.Value = 0;
637
638 DW5.Value = 0;
639
640 }
641
MFD_IT_OBJECT_VC1_INLINE_DATA_CMD()642 mhw_vdbox_mfx_g9_skl::MFD_IT_OBJECT_VC1_INLINE_DATA_CMD::MFD_IT_OBJECT_VC1_INLINE_DATA_CMD()
643 {
644 DW0.Value = 0;
645 DW0.MacroblockIntraType = MACROBLOCK_INTRA_TYPE_NON_INTRAMACROBLOCK;
646 DW0.MacroblockMotionForward = MACROBLOCK_MOTION_FORWARD_NOFORWARDMOTIONVECTOR;
647 DW0.MacroblockMotionBackward = MACROBLOCK_MOTION_BACKWARD_NOBACKWARDMOTIONVECTOR;
648 DW0.Motion4Mv = MOTION4MV_1MV_MODE;
649 DW0.Overlaptransform = OVERLAPTRANSFORM_NOOVERLAPSMOOTHINGFILTER;
650 DW0.DctType = DCT_TYPE_MCFRAMEDCT;
651 DW0.MotionVerticalFieldSelect = MOTION_VERTICAL_FIELD_SELECT_TOPFIELD;
652
653 DW1.Value = 0;
654
655 DW2.Value = 0;
656
657 DW3.Value = 0;
658
659 DW4.Value = 0;
660
661 DW5.Value = 0;
662
663 DW6.Value = 0;
664
665 DW7.Value = 0;
666
667 DW8.Value = 0;
668
669 DW9.Value = 0;
670
671 DW10.Value = 0;
672
673 }
674
MFD_IT_OBJECT_CMD()675 mhw_vdbox_mfx_g9_skl::MFD_IT_OBJECT_CMD::MFD_IT_OBJECT_CMD()
676 {
677 DW0.Value = 0;
678 DW0.DwordLength = GetOpLength(dwSize);
679 DW0.SubopcodeB = SUBOPCODE_B_UNNAMED9;
680 DW0.SubopcodeA = SUBOPCODE_A_UNNAMED1;
681 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_MFXCOMMONDEC;
682 DW0.Pipeline = PIPELINE_MFDITOBJECT;
683 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
684
685 DW1.Value = 0;
686
687 DW2.Value = 0;
688
689 DW3.Value = 0;
690
691 DW4.Value = 0;
692
693 DW5.Value = 0;
694
695 DW6.Value = 0;
696
697 }
698
MFC_MPEG2_SLICEGROUP_STATE_CMD()699 mhw_vdbox_mfx_g9_skl::MFC_MPEG2_SLICEGROUP_STATE_CMD::MFC_MPEG2_SLICEGROUP_STATE_CMD()
700 {
701 DW0.Value = 0;
702 DW0.DwordLength = GetOpLength(dwSize);
703 DW0.SubopcodeB = SUBOPCODE_B_MEDIA;
704 DW0.SubopcodeA = SUBOPCODE_A_MEDIA;
705 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_MPEG2;
706 DW0.Pipeline = PIPELINE_MFXMPEG2SLICEGROUPSTATE;
707 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
708
709 DW1.Value = 0;
710 DW1.TailpresentflagTailInsertionPresentInBitstreamEncoderOnly = TAILPRESENTFLAG_TAIL_INSERTION_PRESENT_IN_BITSTREAM_ENCODER_ONLY_UNNAMED0;
711 DW1.SlicedataPresentflagSlicedataInsertionPresentInBitstreamEncoderOnly = SLICEDATA_PRESENTFLAG_SLICEDATA_INSERTION_PRESENT_IN_BITSTREAM_ENCODER_ONLY_DISABLE;
712 DW1.HeaderpresentflagHeaderInsertionPresentInBitstreamEncoderOnly = HEADERPRESENTFLAG_HEADER_INSERTION_PRESENT_IN_BITSTREAM_ENCODER_ONLY_DISABLE;
713 DW1.BitstreamoutputflagCompressedBitstreamOutputDisableFlagEncoderOnly = BITSTREAMOUTPUTFLAG_COMPRESSED_BITSTREAM_OUTPUT_DISABLE_FLAG_ENCODER_ONLY_ENABLE;
714 DW1.SkipconvdisabledMbTypeSkipConversionDisableEncoderOnly = SKIPCONVDISABLED_MB_TYPE_SKIP_CONVERSION_DISABLE_ENCODER_ONLY_ENABLE;
715 DW1.RatectrlpanictypeRcPanicTypeEncoderOnly = RATECTRLPANICTYPE_RC_PANIC_TYPE_ENCODER_ONLY_UNNAMED0;
716 DW1.RatectrlpanicflagRcPanicEnableEncoderOnly = RATECTRLPANICFLAG_RC_PANIC_ENABLE_ENCODER_ONLY_DISABLE;
717 DW1.MbratectrlmodeRcTriggleModeEncoderOnly = MBRATECTRLMODE_RC_TRIGGLE_MODE_ENCODER_ONLY_UNNAMED0;
718 DW1.MbratectrlresetResetratecontrolcounterEncoderOnly = MBRATECTRLRESET_RESETRATECONTROLCOUNTER_ENCODER_ONLY_DISABLE;
719 DW1.MbratectrlflagRatecontrolcounterenableEncoderOnly = MBRATECTRLFLAG_RATECONTROLCOUNTERENABLE_ENCODER_ONLY_DISABLE;
720
721 DW2.Value = 0;
722
723 DW3.Value = 0;
724
725 DW4.Value = 0;
726
727 DW5.Value = 0;
728
729 DW6.Value = 0;
730
731 DW7.Value = 0;
732
733 }
734
MFX_VC1_PRED_PIPE_STATE_CMD()735 mhw_vdbox_mfx_g9_skl::MFX_VC1_PRED_PIPE_STATE_CMD::MFX_VC1_PRED_PIPE_STATE_CMD()
736 {
737 DW0.Value = 0;
738 DW0.DwordLength = GetOpLength(dwSize);
739 DW0.SubopcodeB = SUBOPCODE_B_UNNAMED1;
740 DW0.SubopcodeA = SUBOPCODE_A_UNNAMED0;
741 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_VC1COMMON;
742 DW0.Pipeline = PIPELINE_MFXVC1PREDPIPESTATE;
743 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
744
745 DW1.Value = 0;
746
747 DW2.Value = 0;
748
749 DW3.Value = 0;
750
751 DW4.Value = 0;
752
753 DW5.Value = 0;
754
755 }
756
MFD_VC1_LONG_PIC_STATE_CMD()757 mhw_vdbox_mfx_g9_skl::MFD_VC1_LONG_PIC_STATE_CMD::MFD_VC1_LONG_PIC_STATE_CMD()
758 {
759 DW0.Value = 0;
760 DW0.DwordLength = GetOpLength(dwSize);
761 DW0.SubopcodeB = SUBOPCODE_B_UNNAMED1;
762 DW0.SubopcodeA = SUBOPCODE_A_UNNAMED1;
763 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_VC1DEC;
764 DW0.Pipeline = PIPELINE_MFDVC1LONGPICSTATE;
765 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
766
767 DW1.Value = 0;
768
769 DW2.Value = 0;
770 DW2.Vc1Profile = VC1_PROFILE_DISABLE;
771 DW2.OverlapSmoothingEnableFlag = OVERLAP_SMOOTHING_ENABLE_FLAG_DISABLE;
772 DW2.LoopfilterEnableFlag = LOOPFILTER_ENABLE_FLAG_DISABLE;
773 DW2.RangereductionEnable = RANGEREDUCTION_ENABLE_DISABLE;
774 DW2.Rangereductionscale = RANGEREDUCTIONSCALE_UNNAMED0;
775 DW2.MotionVectorMode = MOTION_VECTOR_MODE_UNNAMED0;
776 DW2.Syncmarker = SYNCMARKER_NOTPRESENT;
777
778 DW3.Value = 0;
779 DW3.FcmFrameCodingMode = FCM_FRAME_CODING_MODE_DISABLE;
780 DW3.Condover = CONDOVER_UNNAMED0;
781
782 DW4.Value = 0;
783 DW4.Pquantuniform = PQUANTUNIFORM_UNNAMED0;
784 DW4.AltpquantconfigAlternativePictureQuantizationConfiguration = ALTPQUANTCONFIG_ALTERNATIVE_PICTURE_QUANTIZATION_CONFIGURATION_UNNAMED0;
785 DW4.ExtendedmvrangeExtendedMotionVectorRangeFlag = EXTENDEDMVRANGE_EXTENDED_MOTION_VECTOR_RANGE_FLAG_UNNAMED0;
786 DW4.ExtendeddmvrangeExtendedDifferentialMotionVectorRangeFlag = EXTENDEDDMVRANGE_EXTENDED_DIFFERENTIAL_MOTION_VECTOR_RANGE_FLAG_UNNAMED0;
787 DW4.NumrefNumberOfReferences = NUMREF_NUMBER_OF_REFERENCES_UNNAMED0;
788 DW4.ReffieldpicpolarityReferenceFieldPicturePolarity = REFFIELDPICPOLARITY_REFERENCE_FIELD_PICTURE_POLARITY_UNNAMED0;
789 DW4.FastuvmcflagFastUvMotionCompensationFlag = FASTUVMCFLAG_FAST_UV_MOTION_COMPENSATION_FLAG_UNNAMED0;
790 DW4.FourmvswitchFourMotionVectorSwitch = FOURMVSWITCH_FOUR_MOTION_VECTOR_SWITCH_DISABLE;
791 DW4.UnifiedmvmodeUnifiedMotionVectorMode = UNIFIEDMVMODE_UNIFIED_MOTION_VECTOR_MODE_UNNAMED0;
792
793 DW5.Value = 0;
794 DW5.TransdctabIntraTransformDcTable = TRANSDCTAB_INTRA_TRANSFORM_DC_TABLE_UNNAMED0;
795 DW5.TranstypembflagMacroblockTransformTypeFlag = TRANSTYPEMBFLAG_MACROBLOCK_TRANSFORM_TYPE_FLAG_UNNAMED0;
796 DW5.Fieldtxraw = FIELDTXRAW_DISABLE;
797 DW5.Acpredraw = ACPREDRAW_DISABLE;
798 DW5.Overflagsraw = OVERFLAGSRAW_UNNAMED0;
799 DW5.Directmbraw = DIRECTMBRAW_UNNAMED0;
800 DW5.Skipmbraw = SKIPMBRAW_DISABLE;
801 DW5.Mvtypembraw = MVTYPEMBRAW_UNNAMED0;
802 DW5.Forwardmbraw = FORWARDMBRAW_UNNAMED0;
803 DW5.BitplanepresentflagBitplaneBufferPresentFlag = BITPLANEPRESENTFLAG_BITPLANE_BUFFER_PRESENT_FLAG_UNNAMED0;
804
805 }
806
MFD_VC1_SHORT_PIC_STATE_CMD()807 mhw_vdbox_mfx_g9_skl::MFD_VC1_SHORT_PIC_STATE_CMD::MFD_VC1_SHORT_PIC_STATE_CMD()
808 {
809 DW0.Value = 0;
810 DW0.DwordLength = GetOpLength(dwSize);
811 DW0.SubopcodeB = SUBOPCODE_B_UNNAMED0;
812 DW0.SubopcodeA = SUBOPCODE_A_UNNAMED1;
813 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_VC1DEC;
814 DW0.Pipeline = PIPELINE_MFDVC1SHORTPICSTATE;
815 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
816
817 DW1.Value = 0;
818
819 DW2.Value = 0;
820 DW2.PictureStructure = PICTURE_STRUCTURE_UNNAMED0;
821 DW2.IntraPictureFlag = INTRA_PICTURE_FLAG_UNNAMED0;
822 DW2.Vc1Profile = VC1_PROFILE_UNNAMED0;
823
824 DW3.Value = 0;
825 DW3.VstransformFlag = VSTRANSFORM_FLAG_DISABLE;
826 DW3.Dquant = DQUANT_UNNAMED0;
827 DW3.ExtendedMvPresentFlag = EXTENDED_MV_PRESENT_FLAG_UNNAMED0;
828 DW3.FastuvmcflagFastUvMotionCompensationFlag = FASTUVMCFLAG_FAST_UV_MOTION_COMPENSATION_FLAG_UNNAMED0;
829 DW3.LoopfilterEnableFlag = LOOPFILTER_ENABLE_FLAG_UNNAMED0;
830 DW3.PanscanPresentFlag = PANSCAN_PRESENT_FLAG_UNNAMED0;
831 DW3.RangeredPresentFlagForSimpleMainProfileOnly = RANGERED_PRESENT_FLAG_FOR_SIMPLEMAIN_PROFILE_ONLY_UNNAMED0;
832 DW3.SyncmarkerPresentFlagForSimpleMainProfileOnly = SYNCMARKER_PRESENT_FLAG_FOR_SIMPLEMAIN_PROFILE_ONLY_UNNAMED0;
833 DW3.MultiresPresentFlagForSimpleMainProfileOnly = MULTIRES_PRESENT_FLAG_FOR_SIMPLEMAIN_PROFILE_ONLY_UNNAMED0;
834 DW3.Quantizer = QUANTIZER_UNNAMED0;
835 DW3.PPicRefDistance = P_PIC_REF_DISTANCE_UNNAMED0;
836 DW3.ProgressivePicType = PROGRESSIVE_PIC_TYPE_UNNAMED0;
837 DW3.RangeReductionEnable = RANGE_REDUCTION_ENABLE_DISABLE;
838 DW3.RangeReductionScale = RANGE_REDUCTION_SCALE_DISABLE;
839 DW3.OverlapSmoothingEnableFlag = OVERLAP_SMOOTHING_ENABLE_FLAG_DISABLE;
840
841 DW4.Value = 0;
842 DW4.ExtendedDmvPresentFlag = EXTENDED_DMV_PRESENT_FLAG_UNNAMED0;
843 DW4.RefpicFlag = REFPIC_FLAG_UNNAMED0;
844
845 }
846
MFX_VC1_DIRECTMODE_STATE_CMD()847 mhw_vdbox_mfx_g9_skl::MFX_VC1_DIRECTMODE_STATE_CMD::MFX_VC1_DIRECTMODE_STATE_CMD()
848 {
849 DW0.Value = 0;
850 DW0.DwordLength = GetOpLength(dwSize);
851 DW0.SubopcodeB = SUBOPCODE_B_UNNAMED2;
852 DW0.SubopcodeA = SUBOPCODE_A_UNNAMED0;
853 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_VC1COMMON;
854 DW0.Pipeline = PIPELINE_MFXVC1DIRECTMODESTATE;
855 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
856
857 DW1.Value = 0;
858
859 DW2.Value = 0;
860
861 DW3.Value = 0;
862 DW3.DirectMvWriteBufferBaseAddressForTheCurrentPictureArbitrationPriorityControl = DIRECT_MV_WRITE_BUFFER_BASE_ADDRESS_FOR_THE_CURRENT_PICTURE_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
863 DW3.DirectMvWriteBufferMemoryCompressionMode = DIRECT_MV_WRITE_BUFFER_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
864 DW3.DirectMvWriteBufferTiledResourceMode = DIRECT_MV_WRITE_BUFFER_TILED_RESOURCE_MODE_TRMODENONE;
865
866 DW4.Value = 0;
867
868 DW5.Value = 0;
869
870 DW6.Value = 0;
871 DW6.DirectMvReadBufferBaseAddressForTheCurrentPictureArbitrationPriorityControl = DIRECT_MV_READ_BUFFER_BASE_ADDRESS_FOR_THE_CURRENT_PICTURE_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
872 DW6.DirectMvReadBufferMemoryCompressionMode = DIRECT_MV_READ_BUFFER_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
873 DW6.DirectMvReadBufferTiledResourceMode = DIRECT_MV_READ_BUFFER_TILED_RESOURCE_MODE_TRMODENONE;
874
875 }
876
MFD_VC1_BSD_OBJECT_CMD()877 mhw_vdbox_mfx_g9_skl::MFD_VC1_BSD_OBJECT_CMD::MFD_VC1_BSD_OBJECT_CMD()
878 {
879 DW0.Value = 0;
880 DW0.DwordLength = GetOpLength(dwSize);
881 DW0.SubopcodeB = SUBOPCODE_B_UNNAMED8;
882 DW0.SubopcodeA = SUBOPCODE_A_UNNAMED1;
883 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_VC1DEC;
884 DW0.Pipeline = PIPELINE_MFXMULTIDW;
885 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
886
887 DW1.Value = 0;
888
889 DW2.Value = 0;
890
891 DW3.Value = 0;
892
893 DW4.Value = 0;
894 DW4.EmulationPreventionBytePresent = EMULATION_PREVENTION_BYTE_PRESENT_UNNAMED0;
895
896 }
897
MFX_JPEG_PIC_STATE_CMD()898 mhw_vdbox_mfx_g9_skl::MFX_JPEG_PIC_STATE_CMD::MFX_JPEG_PIC_STATE_CMD()
899 {
900 DW0.Value = 0;
901 DW0.DwordLength = GetOpLength(dwSize);
902 DW0.SubopcodeB = SUBOPCODE_B_MEDIA;
903 DW0.SubopcodeA = SUBOPCODE_A_COMMON;
904 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_JPEG;
905 DW0.Pipeline = PIPELINE_MFXMULTIDW;
906 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
907
908 DW1.Value = 0;
909 DW1.Obj0.OutputMcuStructure = OUTPUT_MCU_STRUCTURE_YUV_400;
910 DW1.Obj0.InputSurfaceFormatYuv = INPUT_SURFACE_FORMAT_YUV_UNNAMED0;
911 DW1.Obj1.InputFormatYuv = INPUT_FORMAT_YUV_UNNAMED0;
912 DW1.Obj1.Rotation = ROTATION_UNNAMED0;
913 DW1.Obj1.OutputFormatYuv = OUTPUT_FORMAT_YUV_UNNAMED0;
914 DW1.Obj1.AverageDownSampling = AVERAGE_DOWN_SAMPLING_UNNAMED0;
915 DW1.Obj1.VerticalDownSamplingEnable = VERTICAL_DOWN_SAMPLING_ENABLE_UNNAMED0;
916 DW1.Obj1.HorizontalDownSamplingEnable = HORIZONTAL_DOWN_SAMPLING_ENABLE_UNNAMED0;
917 DW1.Obj1.VerticalUpSamplingEnable = VERTICAL_UP_SAMPLING_ENABLE_UNNAMED0;
918
919 DW2.Value = 0;
920 DW2.Obj0.OutputPixelNormalize = OUTPUT_PIXEL_NORMALIZE_UNNAMED0;
921 DW2.Obj1.Roundingquant = ROUNDINGQUANT_UNNAMED0;
922
923 }
924
MFC_JPEG_HUFF_TABLE_STATE_CMD()925 mhw_vdbox_mfx_g9_skl::MFC_JPEG_HUFF_TABLE_STATE_CMD::MFC_JPEG_HUFF_TABLE_STATE_CMD()
926 {
927 DW0.Value = 0;
928 DW0.DwordLength = GetOpLength(dwSize);
929 DW0.SubopcodeB = SUBOPCODE_B_MEDIA;
930 DW0.SubopcodeA = SUBOPCODE_A_COMMON;
931 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_JPEG;
932 DW0.Pipeline = PIPELINE_MFCJPEGHUFFTABLESTATE;
933 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
934
935 DW1.Value = 0;
936 DW1.HuffTableId = HUFF_TABLE_ID_UNNAMED0;
937
938 MOS_ZeroMemory(&DcTable, sizeof(DcTable));
939 MOS_ZeroMemory(&AcTable, sizeof(AcTable));
940 }
941
MFD_JPEG_BSD_OBJECT_CMD()942 mhw_vdbox_mfx_g9_skl::MFD_JPEG_BSD_OBJECT_CMD::MFD_JPEG_BSD_OBJECT_CMD()
943 {
944 DW0.Value = 0;
945 DW0.DwordLength = GetOpLength(dwSize);
946 DW0.SubopcodeB = SUBOPCODE_B_UNNAMED8;
947 DW0.SubopcodeA = SUBOPCODE_A_UNNAMED1;
948 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_JPEGDEC;
949 DW0.Pipeline = PIPELINE_MFDJPEGBSDOBJECT;
950 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
951
952 DW1.Value = 0;
953
954 DW2.Value = 0;
955
956 DW3.Value = 0;
957
958 DW4.Value = 0;
959 DW4.Interleaved = INTERLEAVED_NON_INTERLEAVED;
960
961 DW5.Value = 0;
962
963 }
964
MFC_JPEG_SCAN_OBJECT_CMD()965 mhw_vdbox_mfx_g9_skl::MFC_JPEG_SCAN_OBJECT_CMD::MFC_JPEG_SCAN_OBJECT_CMD()
966 {
967 DW0.Value = 0;
968 DW0.DwordLength = GetOpLength(dwSize);
969 DW0.SubopcodeB = SUBOPCODE_B_UNNAMED9;
970 DW0.SubopcodeA = SUBOPCODE_A_UNNAMED2;
971 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_JPEGENC;
972 DW0.Pipeline = PIPELINE_MFCJPEGSCANOBJECT;
973 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
974
975 DW1.Value = 0;
976
977 DW2.Value = 0;
978 DW2.IsLastScan = IS_LAST_SCAN_UNNAMED0;
979 DW2.HeadPresentFlag = HEAD_PRESENT_FLAG_UNNAMED0;
980 DW2.HuffmanDcTable = HUFFMAN_DC_TABLE_BIT20V0;
981 DW2.HuffmanAcTable = HUFFMAN_AC_TABLE_BIT2_4V0;
982
983 }
984
MFX_VP8_Encoder_CFG_CMD()985 mhw_vdbox_mfx_g9_skl::MFX_VP8_Encoder_CFG_CMD::MFX_VP8_Encoder_CFG_CMD()
986 {
987 DW0.Value = 0;
988 DW0.DwordLength = GetOpLength(dwSize);
989 DW0.SubOpcodeB = SUB_OPCODE_B_MFXVP8ENCODERCFG;
990 DW0.SubOpcodeA = SUB_OPCODE_A_VP8COMMON;
991 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_VP8;
992 DW0.Pipeline = PIPELINE_VIDEOCODEC;
993 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
994
995 DW1.Value = 0;
996 DW1.RateControlInitialPass = RATE_CONTROL_INITIAL_PASS_SUBSEQUENCEPASSES;
997
998 DW2.Value = 0;
999 DW2.MaxFrameBitCountRateControlEnableMask = MAX_FRAME_BIT_COUNT_RATE_CONTROL_ENABLE_MASK_UNNAMED0;
1000 DW2.MinFrameBitCountRateControlEnableMask = MIN_FRAME_BIT_COUNT_RATE_CONTROL_ENABLE_MASK_UNNAMED0;
1001
1002 DW3.Value = 0;
1003
1004 DW4.Value = 0;
1005 DW4.FrameBitRateMaxUnit = FRAME_BIT_RATE_MAX_UNIT_32_B;
1006 DW4.FrameBitrateMaxUnitMode = FRAME_BITRATE_MAX_UNIT_MODE_COMPATIBILITYMODE;
1007 DW4.FrameBitRateMinUnit = FRAME_BIT_RATE_MIN_UNIT_32_B;
1008 DW4.FrameBitrateMinUnitMode = FRAME_BITRATE_MIN_UNIT_MODE_COMPATIBILITYMODE;
1009
1010 DW5.Value = 0;
1011
1012 DW6.Value = 0;
1013
1014 DW7.Value = 0;
1015
1016 DW8.Value = 0;
1017
1018 DW9.Value = 0;
1019
1020 DW10.Value = 0;
1021
1022 DW11.Value = 0;
1023
1024 DW12.Value = 0;
1025
1026 DW13.Value = 0;
1027
1028 DW14.Value = 0;
1029
1030 DW15.Value = 0;
1031
1032 DW16.Value = 0;
1033
1034 DW17.Value = 0;
1035
1036 DW18.Value = 0;
1037
1038 DW19.Value = 0;
1039
1040 DW20.Value = 0;
1041
1042 DW21.Value = 0;
1043
1044 DW22.Value = 0;
1045 DW22.MinFrameWsizeUnit = MIN_FRAME_WSIZE_UNIT_COMPATIBILITYMODE;
1046
1047 DW23.Value = 0;
1048
1049 DW24.Value = 0;
1050
1051 DW25.Value = 0;
1052
1053 DW26.Value = 0;
1054
1055 DW27.Value = 0;
1056
1057 DW28.Value = 0;
1058
1059 DW29.Value = 0;
1060
1061 }
1062
MFX_VP8_BSP_BUF_BASE_ADDR_STATE_CMD()1063 mhw_vdbox_mfx_g9_skl::MFX_VP8_BSP_BUF_BASE_ADDR_STATE_CMD::MFX_VP8_BSP_BUF_BASE_ADDR_STATE_CMD()
1064 {
1065 DW0.Value = 0;
1066 DW0.DwordLength = GetOpLength(dwSize);
1067 DW0.SubOpcodeB = SUB_OPCODE_B_MFXVP8BSPBUFBASEADDRSTATE;
1068 DW0.SubOpcodeA = SUB_OPCODE_A_VP8COMMON;
1069 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_VP8;
1070 DW0.Pipeline = PIPELINE_VIDEOCODEC;
1071 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
1072
1073 DW1.Value = 0;
1074
1075 DW2.Value = 0;
1076
1077 DW3.Value = 0;
1078 DW3.FrameHeaderBaseAddrAgeForQuadlruAge = FRAME_HEADER_BASE_ADDR_AGE_FOR_QUADLRU_AGE_GOODCHANCEOFGENERATINGHITS;
1079 DW3.FrameHeaderBaseAddrTargetCacheTc = FRAME_HEADER_BASE_ADDR_TARGET_CACHE_TC_ELLCONLY_NOTSNOOPEDINGT;
1080 DW3.ForFrameheaderbaseaddrLlcEllcCacheabilityControlLellccc = FOR_FRAMEHEADERBASEADDR_LLCELLC_CACHEABILITY_CONTROL_LELLCCC_CACHEABLE;
1081 DW3.FrameHeaderBaseAddrArbitrationPriorityControl = FRAME_HEADER_BASE_ADDR_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1082
1083 DW4.Value = 0;
1084
1085 DW5.Value = 0;
1086
1087 DW6.Value = 0;
1088 DW6.IntermediateBufferBaseAddrAgeForQuadlruAge = INTERMEDIATE_BUFFER_BASE_ADDR_AGE_FOR_QUADLRU_AGE_GOODCHANCEOFGENERATINGHITS;
1089 DW6.IntermediateBufferBaseAddrTargetCacheTc = INTERMEDIATE_BUFFER_BASE_ADDR_TARGET_CACHE_TC_ELLCONLY_NOTSNOOPEDINGT;
1090 DW6.IntermediateBufferBaseAddrLlcEllcCacheabilityControlLellccc = INTERMEDIATE_BUFFER_BASE_ADDR_LLCELLC_CACHEABILITY_CONTROL_LELLCCC_CACHEABLE;
1091 DW6.IntermediateBufferBaseAddrArbitrationPriorityControl = INTERMEDIATE_BUFFER_BASE_ADDR_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1092
1093 DW7.Value = 0;
1094
1095 DW8.Value = 0;
1096
1097 DW9.Value = 0;
1098
1099 DW10.Value = 0;
1100
1101 DW11.Value = 0;
1102
1103 DW12.Value = 0;
1104
1105 DW13.Value = 0;
1106
1107 DW14.Value = 0;
1108
1109 DW15.Value = 0;
1110
1111 DW16.Value = 0;
1112
1113 DW17.Value = 0;
1114
1115 DW18.Value = 0;
1116 DW18.FinalFrameBaseAddrAgeForQuadlruAge = FINAL_FRAME_BASE_ADDR_AGE_FOR_QUADLRU_AGE_GOODCHANCEOFGENERATINGHITS;
1117 DW18.FinalFrameBaseAddrTargetCacheTc = FINAL_FRAME_BASE_ADDR_TARGET_CACHE_TC_ELLCONLY_NOTSNOOPEDINGT;
1118 DW18.FinalFrameBaseAddrLlcEllcCacheabilityControlLellccc = FINAL_FRAME_BASE_ADDR_LLCELLC_CACHEABILITY_CONTROL_LELLCCC_CACHEABLE;
1119 DW18.FinalFrameBaseAddrArbitrationPriorityControl = FINAL_FRAME_BASE_ADDR_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1120
1121 DW19.Value = 0;
1122
1123 DW20.Value = 0;
1124 DW20.StreamoutBaseAddrCacheabilityControl = STREAMOUT_BASE_ADDR_CACHEABILITY_CONTROL_GTTENTRY;
1125 DW20.StreamoutBaseAddrArbitrationPriorityControl = STREAMOUT_BASE_ADDR_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1126
1127 DW21.Value = 0;
1128
1129 DW22.Value = 0;
1130 DW22.StreamoutBaseAddrAgeForQuadlruAge = STREAMOUT_BASE_ADDR_AGE_FOR_QUADLRU_AGE_GOODCHANCEOFGENERATINGHITS;
1131 DW22.StreamoutBaseAddrTargetCacheTc = STREAMOUT_BASE_ADDR_TARGET_CACHE_TC_ELLCONLY_NOTSNOOPEDINGT;
1132 DW22.StreamoutBaseAddrLlcEllcCacheabilityControlLellccc = STREAMOUT_BASE_ADDR_LLCELLC_CACHEABILITY_CONTROL_LELLCCC_CACHEABLE;
1133 DW22.StreamoutBaseAddrArbitrationPriorityControl = STREAMOUT_BASE_ADDR_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1134
1135 DW23.Value = 0;
1136 DW23.CoeffProbsStreaminSurfaceCacheabilityControl = COEFF_PROBS_STREAMIN_SURFACE_CACHEABILITY_CONTROL_GTTENTRY;
1137 DW23.CoeffProbsStreaminSurfaceArbitrationPriorityControl = COEFF_PROBS_STREAMIN_SURFACE_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1138
1139 DW24.Value = 0;
1140
1141 DW25.Value = 0;
1142 DW25.CoeffProbsStreaminSurfaceAgeForQuadlruAge = COEFF_PROBS_STREAMIN_SURFACE_AGE_FOR_QUADLRU_AGE_GOODCHANCEOFGENERATINGHITS;
1143 DW25.CoeffProbsStreaminSurfaceTargetCacheTc = COEFF_PROBS_STREAMIN_SURFACE_TARGET_CACHE_TC_ELLCONLY_NOTSNOOPEDINGT;
1144 DW25.CoeffProbsStreaminSurfaceLlcEllcCacheabilityControlLellccc = COEFF_PROBS_STREAMIN_SURFACE_LLCELLC_CACHEABILITY_CONTROL_LELLCCC_CACHEABLE;
1145 DW25.CoeffProbsStreaminSurfaceArbitrationPriorityControl = COEFF_PROBS_STREAMIN_SURFACE_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1146
1147 DW26.Value = 0;
1148 DW26.TokenStatisticsSurfaceCacheabilityControl = TOKEN_STATISTICS_SURFACE_CACHEABILITY_CONTROL_GTTENTRY;
1149 DW26.FrameHeaderBaseAddrArbitrationPriorityControl = FRAME_HEADER_BASE_ADDR_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1150
1151 DW27.Value = 0;
1152
1153 DW28.Value = 0;
1154 DW28.TokenStatisticsSurfaceAgeForQuadlruAge = TOKEN_STATISTICS_SURFACE_AGE_FOR_QUADLRU_AGE_POORCHANCEOFGENERATINGHITS;
1155 DW28.TokenStatisticsSurfaceTargetCacheTc = TOKEN_STATISTICS_SURFACE_TARGET_CACHE_TC_ELLCONLY_NOTSNOOPEDINGTBDW;
1156 DW28.MemoryTypeLlcEllcCacheabilityControlLellcccForCoeffprobsStreaminSurface = MEMORY_TYPE_LLCELLC_CACHEABILITY_CONTROL_LELLCCC_FOR_COEFFPROBS_STREAMIN_SURFACE_USECACHEABILITYCONTROLSFROMPAGETABLEUCWITHFENCEIFCOHERENTCYCLE;
1157 DW28.TokenStatisticsSurfaceArbitrationPriorityControl = TOKEN_STATISTICS_SURFACE_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1158
1159 DW29_30.Value[0] = DW29_30.Value[1] = 0;
1160 DW29_30.MpcRowstoreSurfaceCacheabilityControl = MPC_ROWSTORE_SURFACE_CACHEABILITY_CONTROL_GTTENTRY;
1161 DW31.Value = 0;
1162 DW31.MpcRowstoreSurfaceAgeForQuadlruAge = MPC_ROWSTORE_SURFACE_AGE_FOR_QUADLRU_AGE_POORCHANCEOFGENERATINGHITS;
1163 DW31.MpcRowstoreTargetCache = MPC_ROWSTORE_TARGET_CACHE_ELLCONLY;
1164 DW31.MpcRowstoreMemoryTypeLlcEllcCacheabilityControl = MPC_ROWSTORE_MEMORY_TYPE_LLCELLC_CACHEABILITY_CONTROL_USECACHEABILITYCONTROLSFROMPAGETABLEUCWITHFENCEIFCOHERENTCYCLE;
1165 DW31.MpcRowstoreArbitrationPriorityControl = MPC_ROWSTORE_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1166
1167 }
1168
MFD_VP8_BSD_OBJECT_CMD()1169 mhw_vdbox_mfx_g9_skl::MFD_VP8_BSD_OBJECT_CMD::MFD_VP8_BSD_OBJECT_CMD()
1170 {
1171 DW0.Value = 0;
1172 DW0.DwordLength = GetOpLength(dwSize);
1173 DW0.Subopcodeb = SUBOPCODEB_UNNAMED8;
1174 DW0.Subopcodea = SUBOPCODEA_UNNAMED1;
1175 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_VP8DEC;
1176 DW0.Pipeline = PIPELINE_MFDVP8BSDOBJECT;
1177 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
1178
1179 DW1.Value = 0;
1180
1181 DW2.Value = 0;
1182
1183 DW3.Value = 0;
1184
1185 DW4.Value = 0;
1186
1187 DW5.Value = 0;
1188
1189 DW6.Value = 0;
1190
1191 DW7.Value = 0;
1192
1193 DW8.Value = 0;
1194
1195 DW9.Value = 0;
1196
1197 DW10.Value = 0;
1198
1199 DW11.Value = 0;
1200
1201 DW12.Value = 0;
1202
1203 DW13.Value = 0;
1204
1205 DW14.Value = 0;
1206
1207 DW15.Value = 0;
1208
1209 DW16.Value = 0;
1210
1211 DW17.Value = 0;
1212
1213 DW18.Value = 0;
1214
1215 DW19.Value = 0;
1216
1217 DW20.Value = 0;
1218
1219 DW21.Value = 0;
1220 DW21.MbHeaderErrorHandling = MB_HEADER_ERROR_HANDLING_IGNORETHEERRORANDCONTINUEMASKEDTHEINTERRUPT_ASSUMETHEHARDWAREAUTOMATICALLYPERFORMTHEERRORHANDLING;
1221 DW21.EntropyErrorHandling = ENTROPY_ERROR_HANDLING_IGNORETHEERRORANDCONTINUEMASKEDTHEINTERRUPT_ASSUMETHEHARDWAREAUTOMATICALLYPERFORMTHEERRORHANDLING;
1222 DW21.MprErrorMvOutOfRangeHandling = MPR_ERROR_MV_OUT_OF_RANGE_HANDLING_IGNORETHEERRORANDCONTINUEMASKEDTHEINTERRUPT_ASSUMETHEHARDWAREAUTOMATICALLYPERFORMTHEERRORHANDLING;
1223 DW21.BsdprematurecompleteErrorHandling = BSDPREMATURECOMPLETE_ERROR_HANDLING_IGNORETHEERRORANDCONTINUEMASKEDTHEINTERRUPT_ASSUMETHEHARDWAREAUTOMATICALLYPERFORMTHEERRORHANDLING;
1224 DW21.ConcealmentMethod = CONCEALMENT_METHOD_INTRA16X16PREDICTION;
1225
1226 }
1227
MFX_VP8_PIC_STATE_CMD()1228 mhw_vdbox_mfx_g9_skl::MFX_VP8_PIC_STATE_CMD::MFX_VP8_PIC_STATE_CMD()
1229 {
1230 DW0.Value = 0;
1231 DW0.DwordLength = GetOpLength(dwSize);
1232 DW0.SubOpcodeB = SUB_OPCODE_B_MFXVP8PICSTATE;
1233 DW0.SubOpcodeA = SUB_OPCODE_A_VP8COMMON;
1234 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_VP8;
1235 DW0.Pipeline = PIPELINE_VIDEOCODEC;
1236 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
1237
1238 DW1.Value = 0;
1239
1240 DW2.Value = 0;
1241 DW2.McFilterSelect = MC_FILTER_SELECT_UNNAMED0;
1242 DW2.ChromaFullPixelMcFilterMode = CHROMA_FULL_PIXEL_MC_FILTER_MODE_UNNAMED0;
1243 DW2.Dblkfiltertype = DBLKFILTERTYPE_UNNAMED0;
1244 DW2.Skeyframeflag = SKEYFRAMEFLAG_NON_KEYFRAMEP_FRAME;
1245 DW2.SegmentationIdStreamoutEnable = SEGMENTATION_ID_STREAMOUT_ENABLE_STREAMOUTDISABLED;
1246 DW2.SegmentationIdStreaminEnable = SEGMENTATION_ID_STREAMIN_ENABLE_STREAMINDISABLED;
1247 DW2.SegmentEnableFlag = SEGMENT_ENABLE_FLAG_UNNAMED0;
1248 DW2.UpdateMbsegmentMapFlag = UPDATE_MBSEGMENT_MAP_FLAG_UNNAMED0;
1249 DW2.MbNocoeffSkipflag = MB_NOCOEFF_SKIPFLAG_UNNAMED0;
1250 DW2.ModeReferenceLoopFilterDeltaEnabled = MODE_REFERENCE_LOOP_FILTER_DELTA_ENABLED_UNNAMED0;
1251 DW2.Log2NumOfPartition = LOG2_NUM_OF_PARTITION_1TOKENPARTITION;
1252
1253 DW3.Value = 0;
1254 DW3.DblkfilterlevelForSegment0 = DBLKFILTERLEVEL_FOR_SEGMENT0_SIGNIFIESDISABLEINLOOPDEBLOCKINGOPERATION;
1255 DW3.DblkfilterlevelForSegment1 = DBLKFILTERLEVEL_FOR_SEGMENT1_SIGNIFIESDISABLEINLOOPDEBLOCKINGOPERATION;
1256 DW3.DblkfilterlevelForSegment2 = DBLKFILTERLEVEL_FOR_SEGMENT2_SIGNIFIESDISABLEINLOOPDEBLOCKINGOPERATION;
1257 DW3.DblkfilterlevelForSegment3 = DBLKFILTERLEVEL_FOR_SEGMENT3_SIGNIFIESDISABLEINLOOPDEBLOCKINGOPERATION;
1258
1259 DW4.Value = 0;
1260
1261 DW5.Value = 0;
1262
1263 DW6.Value = 0;
1264
1265 DW7.Value = 0;
1266
1267 DW8.Value = 0;
1268
1269 DW9.Value = 0;
1270
1271 DW10.Value = 0;
1272
1273 DW11.Value = 0;
1274
1275 DW12.Value = 0;
1276
1277 DW13.Value = 0;
1278
1279 DW14.Value = 0;
1280
1281 DW15.Value = 0;
1282
1283 DW16.Value = 0;
1284
1285 DW17.Value = 0;
1286
1287 DW18.Value = 0;
1288 DW18.CoeffprobabilityStreaminArbitrationPriorityControl = COEFFPROBABILITY_STREAMIN_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1289 DW18.CoeffprobabilityStreaminMemoryCompressionMode = COEFFPROBABILITY_STREAMIN_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1290 DW18.CoeffprobabilityStreaminTiledResourceMode = COEFFPROBABILITY_STREAMIN_TILED_RESOURCE_MODE_TRMODENONE;
1291
1292 DW19.Value = 0;
1293
1294 DW20.Value = 0;
1295
1296 DW21.Value = 0;
1297
1298 DW22.Value = 0;
1299
1300 DW23.Value = 0;
1301
1302 DW24.Value = 0;
1303
1304 DW25.Value = 0;
1305
1306 DW26.Value = 0;
1307
1308 DW27.Value = 0;
1309
1310 DW28.Value = 0;
1311
1312 DW29.Value = 0;
1313
1314 DW30.Value = 0;
1315
1316 DW31.Value = 0;
1317
1318 DW32.Value = 0;
1319
1320 DW33.Value = 0;
1321
1322 DW34.Value = 0;
1323
1324 DW35.Value = 0;
1325
1326 DW36.Value = 0;
1327
1328 DW37.Value = 0;
1329 DW37.SegmentationIdStreamArbitrationPriorityControl = SEGMENTATION_ID_STREAM_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1330 DW37.SegmentationIdStreamMemoryCompressionMode = SEGMENTATION_ID_STREAM_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1331 DW37.SegmentationIdStreamTiledResourceMode = SEGMENTATION_ID_STREAM_TILED_RESOURCE_MODE_TRMODENONE;
1332
1333 }
1334
MFX_JPEG_HUFF_TABLE_STATE_CMD()1335 mhw_vdbox_mfx_g9_skl::MFX_JPEG_HUFF_TABLE_STATE_CMD::MFX_JPEG_HUFF_TABLE_STATE_CMD()
1336 {
1337 DW0.Value = 0;
1338 DW0.DwordLength = GetOpLength(dwSize);
1339 DW0.SubopcodeB = SUBOPCODE_B_UNNAMED2;
1340 DW0.SubopcodeA = SUBOPCODE_A_UNNAMED0;
1341 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_JPEGCOMMON;
1342 DW0.Pipeline = PIPELINE_MFXMULTIDW;
1343 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
1344
1345 DW1.Value = 0;
1346 DW1.Hufftableid1Bit = HUFFTABLEID_1_BIT_Y;
1347
1348 MOS_ZeroMemory(&DcBits128BitArray, sizeof(DcBits128BitArray));
1349 MOS_ZeroMemory(&DcHuffval128BitArray, sizeof(DcHuffval128BitArray));
1350 MOS_ZeroMemory(&AcBits168BitArray, sizeof(AcBits168BitArray));
1351 MOS_ZeroMemory(&AcHuffval1608BitArray, sizeof(AcHuffval1608BitArray));
1352 DW52.Value = 0;
1353
1354 }
1355
GRAPHICSADDRESS63_6_CMD()1356 mhw_vdbox_mfx_g9_skl::GRAPHICSADDRESS63_6_CMD::GRAPHICSADDRESS63_6_CMD()
1357 {
1358 DW0_1.Value[0] = DW0_1.Value[1] = 0;
1359
1360 }
1361
MFX_PIPE_BUF_ADDR_STATE_CMD()1362 mhw_vdbox_mfx_g9_skl::MFX_PIPE_BUF_ADDR_STATE_CMD::MFX_PIPE_BUF_ADDR_STATE_CMD()
1363 {
1364 DW0.Value = 0;
1365 DW0.DwordLength = GetOpLength(dwSize);
1366 DW0.SubopcodeB = SUBOPCODE_B_UNNAMED2;
1367 DW0.SubopcodeA = SUBOPCODE_A_UNNAMED0;
1368 DW0.CommonOpcode = COMMON_OPCODE_MFXCOMMONSTATE;
1369 DW0.Pipeline = PIPELINE_MFXPIPEBUFADDRSTATE;
1370 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
1371
1372 DW1.Value = 0;
1373
1374 DW2.Value = 0;
1375
1376 DW3.Value = 0;
1377 DW3.PreDeblockingArbitrationPriorityControl = PRE_DEBLOCKING_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1378 DW3.PreDeblockingMemoryCompressionEnable = PRE_DEBLOCKING_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1379 DW3.PreDeblockingTiledResourceMode = PRE_DEBLOCKING_TILED_RESOURCE_MODE_TRMODENONE;
1380
1381 DW4.Value = 0;
1382
1383 DW5.Value = 0;
1384
1385 DW6.Value = 0;
1386 DW6.PostDeblockingArbitrationPriorityControl = POST_DEBLOCKING_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1387 DW6.PostDeblockingMemoryCompressionEnable = POST_DEBLOCKING_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1388 DW6.PostDeblockingMemoryCompressionMode = POST_DEBLOCKING_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1389 DW6.PostDeblockingTiledResourceMode = POST_DEBLOCKING_TILED_RESOURCE_MODE_TRMODENONE;
1390
1391 DW7.Value = 0;
1392
1393 DW8.Value = 0;
1394
1395 DW9.Value = 0;
1396 DW9.OriginalUncompressedPictureSourceArbitrationPriorityControl = ORIGINAL_UNCOMPRESSED_PICTURE_SOURCE_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1397 DW9.OriginalUncompressedPictureMemoryCompressionEnable = ORIGINAL_UNCOMPRESSED_PICTURE_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1398 DW9.OriginalUncompressedPictureMemoryCompressionMode = ORIGINAL_UNCOMPRESSED_PICTURE_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1399 DW9.OriginalUncompressedPictureTiledResourceMode = ORIGINAL_UNCOMPRESSED_PICTURE_TILED_RESOURCE_MODE_TRMODENONE;
1400
1401 DW10.Value = 0;
1402
1403 DW11.Value = 0;
1404
1405 DW12.Value = 0;
1406 DW12.StreamoutDataDestinationArbitrationPriorityControl = STREAMOUT_DATA_DESTINATION_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1407 DW12.StreamoutDataDestinationMemoryCompressionEnable = STREAMOUT_DATA_DESTINATION_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1408 DW12.StreamoutDataDestinationMemoryCompressionMode = STREAMOUT_DATA_DESTINATION_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1409 DW12.StreamoutDataDestinationTiledResourceMode = STREAMOUT_DATA_DESTINATION_TILED_RESOURCE_MODE_TRMODENONE;
1410
1411 DW13.Value = 0;
1412
1413 DW14.Value = 0;
1414
1415 DW15.Value = 0;
1416 DW15.IntraRowStoreScratchBufferArbitrationPriorityControl = INTRA_ROW_STORE_SCRATCH_BUFFER_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1417 DW15.IntraRowStoreScratchBufferMemoryCompressionEnable = INTRA_ROW_STORE_SCRATCH_BUFFER_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1418 DW15.IntraRowStoreScratchBufferMemoryCompressionMode = INTRA_ROW_STORE_SCRATCH_BUFFER_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1419 DW15.IntraRowStoreScratchBufferCacheSelect = INTRA_ROW_STORE_SCRATCH_BUFFER_CACHE_SELECT_UNNAMED0;
1420 DW15.IntraRowStoreScratchBufferTiledResourceMode = INTRA_ROW_STORE_SCRATCH_BUFFER_TILED_RESOURCE_MODE_TRMODENONE;
1421
1422 DW16.Value = 0;
1423
1424 DW17.Value = 0;
1425
1426 DW18.Value = 0;
1427 DW18.DeblockingFilterRowStoreScratchArbitrationPriorityControl = DEBLOCKING_FILTER_ROW_STORE_SCRATCH_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1428 DW18.DeblockingFilterRowStoreScratchMemoryCompressionEnable = DEBLOCKING_FILTER_ROW_STORE_SCRATCH_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1429 DW18.DeblockingFilterRowStoreScratchMemoryCompressionMode = DEBLOCKING_FILTER_ROW_STORE_SCRATCH_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1430 DW18.DeblockingFilterRowStoreScratchBufferCacheSelect = DEBLOCKING_FILTER_ROW_STORE_SCRATCH_BUFFER_CACHE_SELECT_UNNAMED0;
1431 DW18.DeblockingFilterRowStoreTiledResourceMode = DEBLOCKING_FILTER_ROW_STORE_TILED_RESOURCE_MODE_TRMODENONE;
1432
1433 DW51.Value = 0;
1434 DW51.ReferencePictureArbitrationPriorityControl = REFERENCE_PICTURE_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1435 DW51.ReferencePictureTiledResourceMode = REFERENCE_PICTURE_TILED_RESOURCE_MODE_TRMODENONE;
1436
1437 DW52.Value = 0;
1438
1439 DW53.Value = 0;
1440
1441 DW54.Value = 0;
1442 DW54.MacroblockStatusBufferArbitrationPriorityControl = MACROBLOCK_STATUS_BUFFER_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1443 DW54.MacroblockStatusBufferMemoryCompressionEnable = MACROBLOCK_STATUS_BUFFER_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1444 DW54.MacroblockStatusBufferMemoryCompressionMode = MACROBLOCK_STATUS_BUFFER_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1445 DW54.MacroblockStatusBufferTiledResourceMode = MACROBLOCK_STATUS_BUFFER_TILED_RESOURCE_MODE_TRMODENONE;
1446
1447 DW55.Value = 0;
1448
1449 DW56.Value = 0;
1450
1451 DW57.Value = 0;
1452 DW57.MacroblockIldbStreamoutBufferArbitrationPriorityControl = MACROBLOCK_ILDB_STREAMOUT_BUFFER_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1453 DW57.MacroblockIldbStreamoutBufferMemoryCompressionEnable = MACROBLOCK_ILDB_STREAMOUT_BUFFER_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1454 DW57.MacroblockIldbStreamoutBufferMemoryCompressionMode = MACROBLOCK_ILDB_STREAMOUT_BUFFER_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1455 DW57.MacroblockIldbStreamoutTiledResourceMode = MACROBLOCK_ILDB_STREAMOUT_TILED_RESOURCE_MODE_TRMODENONE;
1456
1457 DW58.Value = 0;
1458
1459 DW59.Value = 0;
1460
1461 DW60.Value = 0;
1462 DW60.SecondMacroblockIldbStreamoutBufferMemoryCompressionEnable = SECOND_MACROBLOCK_ILDB_STREAMOUT_BUFFER_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1463 DW60.SecondMacroblockIldbStreamoutBufferMemoryCompressionMode = SECOND_MACROBLOCK_ILDB_STREAMOUT_BUFFER_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1464 DW60.SecondMacroblockIldbStreamoutBufferTiledResourceMode = SECOND_MACROBLOCK_ILDB_STREAMOUT_BUFFER_TILED_RESOURCE_MODE_TRMODENONE;
1465
1466 DW61.Value = 0;
1467 DW61.ReferencePicture0MemoryCompressionEnable = REFERENCE_PICTURE_0_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1468 DW61.ReferencePicture0MemoryCompressionMode = REFERENCE_PICTURE_0_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1469 DW61.ReferencePicture1MemoryCompressionEnable = REFERENCE_PICTURE_1_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1470 DW61.ReferencePicture1MemoryCompressionMode = REFERENCE_PICTURE_1_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1471 DW61.ReferencePicture2MemoryCompressionEnable = REFERENCE_PICTURE_2_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1472 DW61.ReferencePicture2MemoryCompressionMode = REFERENCE_PICTURE_2_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1473 DW61.ReferencePicture3MemoryCompressionEnable = REFERENCE_PICTURE_3_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1474 DW61.ReferencePicture3MemoryCompressionMode = REFERENCE_PICTURE_3_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1475 DW61.ReferencePicture4MemoryCompressionEnable = REFERENCE_PICTURE_4_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1476 DW61.ReferencePicture4MemoryCompressionMode = REFERENCE_PICTURE_4_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1477 DW61.ReferencePicture5MemoryCompressionEnable = REFERENCE_PICTURE_5_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1478 DW61.ReferencePicture5MemoryCompressionMode = REFERENCE_PICTURE_5_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1479 DW61.ReferencePicture6MemoryCompressionEnable = REFERENCE_PICTURE_6_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1480 DW61.ReferencePicture6MemoryCompressionMode = REFERENCE_PICTURE_6_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1481 DW61.ReferencePicture7MemoryCompressionEnable = REFERENCE_PICTURE_7_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1482 DW61.ReferencePicture7MemoryCompressionMode = REFERENCE_PICTURE_7_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1483 DW61.ReferencePicture8MemoryCompressionEnable = REFERENCE_PICTURE_8_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1484 DW61.ReferencePicture8MemoryCompressionMode = REFERENCE_PICTURE_8_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1485 DW61.ReferencePicture9MemoryCompressionEnable = REFERENCE_PICTURE_9_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1486 DW61.ReferencePicture9MemoryCompressionMode = REFERENCE_PICTURE_9_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1487 DW61.ReferencePicture10MemoryCompressionEnable = REFERENCE_PICTURE_10_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1488 DW61.ReferencePicture10MemoryCompressionMode = REFERENCE_PICTURE_10_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1489 DW61.ReferencePicture11MemoryCompressionEnable = REFERENCE_PICTURE_11_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1490 DW61.ReferencePicture11MemoryCompressionMode = REFERENCE_PICTURE_11_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1491 DW61.ReferencePicture12MemoryCompressionEnable = REFERENCE_PICTURE_12_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1492 DW61.ReferencePicture12MemoryCompressionMode = REFERENCE_PICTURE_12_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1493 DW61.ReferencePicture13MemoryCompressionEnable = REFERENCE_PICTURE_13_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1494 DW61.ReferencePicture13MemoryCompressionMode = REFERENCE_PICTURE_13_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1495 DW61.ReferencePicture14MemoryCompressionEnable = REFERENCE_PICTURE_14_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1496 DW61.ReferencePicture14MemoryCompressionMode = REFERENCE_PICTURE_14_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1497 DW61.ReferencePicture15MemoryCompressionEnable = REFERENCE_PICTURE_15_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1498 DW61.ReferencePicture15MemoryCompressionMode = REFERENCE_PICTURE_15_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1499
1500 DW62.Value = 0;
1501
1502 DW63.Value = 0;
1503
1504 DW64.Value = 0;
1505 DW64.ScaleReferenceSurfaceArbitrationPriorityControl = SCALE_REFERENCE_SURFACE_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1506 DW64.ScaledReferenceSurfaceMemoryCompressionMode = SCALED_REFERENCE_SURFACE_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1507 DW64.ScaledReferenceSurfaceTiledResourceMode = SCALED_REFERENCE_SURFACE_TILED_RESOURCE_MODE_TRMODENONE;
1508
1509 }
1510
MFX_AVC_DIRECTMODE_STATE_CMD()1511 mhw_vdbox_mfx_g9_skl::MFX_AVC_DIRECTMODE_STATE_CMD::MFX_AVC_DIRECTMODE_STATE_CMD()
1512 {
1513 DW0.Value = 0;
1514 DW0.DwordLength = GetOpLength(dwSize);
1515 DW0.Subopcodeb = SUBOPCODEB_UNNAMED2;
1516 DW0.Subopcodea = SUBOPCODEA_UNNAMED0;
1517 DW0.MediaCommandOpcode = MEDIA_COMMAND_OPCODE_AVCCOMMON;
1518 DW0.Pipeline = PIPELINE_MFXSINGLEDW;
1519 DW0.CommandType = COMMAND_TYPE_PARALLELVIDEOPIPE;
1520
1521 DW33.Value = 0;
1522 DW33.DirectMvBufferBaseAddressForReferenceFrameArbitrationPriorityControl = DIRECT_MV_BUFFER_BASE_ADDRESS_FOR_REFERENCE_FRAME_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1523 DW33.DirectMvBufferBaseAddressForReferenceFrameMemoryCompressionEnable = DIRECT_MV_BUFFER_BASE_ADDRESS_FOR_REFERENCE_FRAME_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1524 DW33.DirectMvBufferBaseAddressForReferenceFrameMemoryCompressionMode = DIRECT_MV_BUFFER_BASE_ADDRESS_FOR_REFERENCE_FRAME_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1525 DW33.DirectMvBufferBaseAddressForReferenceFrameTiledResourceMode = DIRECT_MV_BUFFER_BASE_ADDRESS_FOR_REFERENCE_FRAME_TILED_RESOURCE_MODE_TRMODENONE;
1526
1527 DW36.Value = 0;
1528 DW36.DirectMvBufferBaseAddressForWriteArbitrationPriorityControl = DIRECT_MV_BUFFER_BASE_ADDRESS_FOR_WRITE_ARBITRATION_PRIORITY_CONTROL_HIGHESTPRIORITY;
1529 DW36.DirectMvBufferBaseAddressForWriteMemoryCompressionEnable = DIRECT_MV_BUFFER_BASE_ADDRESS_FOR_WRITE_MEMORY_COMPRESSION_ENABLE_COMPRESSIONDISABLE;
1530 DW36.DirectMvBufferBaseAddressForWriteMemoryCompressionMode = DIRECT_MV_BUFFER_BASE_ADDRESS_FOR_WRITE_MEMORY_COMPRESSION_MODE_HORIZONTALCOMPRESSIONMODE;
1531 DW36.DirectMvBufferBaseAddressForWriteTiledResourceMode = DIRECT_MV_BUFFER_BASE_ADDRESS_FOR_WRITE_TILED_RESOURCE_MODE_TRMODENONE;
1532
1533 MOS_ZeroMemory(&PocList, sizeof(PocList));
1534 }
1535
1536