1 /*===================== begin_copyright_notice ==================================
2 
3 Copyright (c) 2018-2019, Intel Corporation
4 
5 Permission is hereby granted, free of charge, to any person obtaining a
6 copy of this software and associated documentation files (the "Software"),
7 to deal in the Software without restriction, including without limitation
8 the rights to use, copy, modify, merge, publish, distribute, sublicense,
9 and/or sell copies of the Software, and to permit persons to whom the
10 Software is furnished to do so, subject to the following conditions:
11 
12 The above copyright notice and this permission notice shall be included
13 in all copies or substantial portions of the Software.
14 
15 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
16 OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
18 THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
19 OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
20 ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
21 OTHER DEALINGS IN THE SOFTWARE.
22 
23 ======================= end_copyright_notice ==================================*/
24 //!
25 //! \file   mhw_vdbox_hcp_hwcmd_g12_X.cpp
26 //! \brief  Auto-generated definitions for MHW commands and states.
27 //!
28 
29 // DO NOT EDIT
30 
31 #include "mhw_vdbox_hcp_hwcmd_g12_X.h"
32 #include <string.h>
33 
MEMORYADDRESSATTRIBUTES_CMD()34 mhw_vdbox_hcp_g12_X::MEMORYADDRESSATTRIBUTES_CMD::MEMORYADDRESSATTRIBUTES_CMD()
35 {
36     DW0.Value                                        = 0x00000000;
37     //DW0.CompressionType                              = COMPRESSION_TYPE_MEDIACOMPRESSIONENABLE;
38     //DW0.BaseAddressRowStoreScratchBufferCacheSelect  = BASE_ADDRESS_ROW_STORE_SCRATCH_BUFFER_CACHE_SELECT_UNNAMED0;
39     //DW0.BaseAddressTiledResourceMode                 = BASE_ADDRESS_TILED_RESOURCE_MODE_TRMODENONE;
40 
41 }
42 
SPLITBASEADDRESS64BYTEALIGNED_CMD()43 mhw_vdbox_hcp_g12_X::SPLITBASEADDRESS64BYTEALIGNED_CMD::SPLITBASEADDRESS64BYTEALIGNED_CMD()
44 {
45     DW0_1.Value[0] = DW0_1.Value[1]                  = 0x00000000;
46 
47 }
48 
SPLITBASEADDRESS4KBYTEALIGNED_CMD()49 mhw_vdbox_hcp_g12_X::SPLITBASEADDRESS4KBYTEALIGNED_CMD::SPLITBASEADDRESS4KBYTEALIGNED_CMD()
50 {
51     DW0_1.Value[0] = DW0_1.Value[1]                  = 0x00000000;
52 
53 }
54 
HCP_PIPE_MODE_SELECT_CMD()55 mhw_vdbox_hcp_g12_X::HCP_PIPE_MODE_SELECT_CMD::HCP_PIPE_MODE_SELECT_CMD()
56 {
57     DW0.Value                                        = 0x73800005;
58     //DW0.DwordLength                                  = GetOpLength(dwSize);
59     //DW0.MediaInstructionCommand                      = MEDIA_INSTRUCTION_COMMAND_HCPPIPEMODESELECT;
60     //DW0.MediaInstructionOpcode                       = MEDIA_INSTRUCTION_OPCODE_CODECENGINENAME;
61     //DW0.PipelineType                                 = PIPELINE_TYPE_UNNAMED2;
62     //DW0.CommandType                                  = COMMAND_TYPE_PARALLELVIDEOPIPE;
63 
64     DW1.Value                                        = 0x00000000;
65     //DW1.CodecSelect                                  = CODEC_SELECT_DECODE;
66     //DW1.DeblockerStreamoutEnable                     = DEBLOCKER_STREAMOUT_ENABLE_DISABLE;
67     //DW1.PakPipelineStreamoutEnable                   = PAK_PIPELINE_STREAMOUT_ENABLE_DISABLEPIPELINESTATESANDPARAMETERSSTREAMOUT;
68     //DW1.PicStatusErrorReportEnable                   = PIC_STATUSERROR_REPORT_ENABLE_DISABLE;
69     //DW1.CodecStandardSelect                          = CODEC_STANDARD_SELECT_HEVC;
70     //DW1.RdoqEnabledFlag                              = RDOQ_ENABLED_FLAG_DISABLED;
71     //DW1.MultiEngineMode                              = MULTI_ENGINE_MODE_SINGLEENGINEMODEORCABACFEONLYDECODEMODE;
72     //DW1.PipeWorkingMode                              = PIPE_WORKING_MODE_LEGACYDECODERENCODERMODE_SINGLEPIPE;
73 
74     DW2.Value                                        = 0x00000000;
75     //DW2.MediaSoftResetCounterPer1000Clocks           = MEDIA_SOFT_RESET_COUNTER_PER_1000_CLOCKS_DISABLE;
76 
77     DW3.Value                                        = 0x00000000;
78     //DW3.PicStatusErrorReportId                       = PIC_STATUSERROR_REPORT_ID_32_BITUNSIGNED;
79 
80     DW4.Value                                        = 0x00000000;
81 
82     DW5.Value                                        = 0x00000000;
83 
84     DW6.Value                                        = 0x00000000;
85     //DW6.PhaseIndicator                               = PHASE_INDICATOR_FIRSTPHASE;
86 
87 }
88 
HCP_SURFACE_STATE_CMD()89 mhw_vdbox_hcp_g12_X::HCP_SURFACE_STATE_CMD::HCP_SURFACE_STATE_CMD()
90 {
91     DW0.Value                                        = 0x73810003;
92     //DW0.DwordLength                                  = GetOpLength(dwSize);
93     //DW0.MediaInstructionCommand                      = MEDIA_INSTRUCTION_COMMAND_HCPSURFACESTATE;
94     //DW0.MediaInstructionOpcode                       = MEDIA_INSTRUCTION_OPCODE_CODECENGINENAME;
95     //DW0.PipelineType                                 = PIPELINE_TYPE_UNNAMED2;
96     //DW0.CommandType                                  = COMMAND_TYPE_PARALLELVIDEOPIPE;
97 
98     DW1.Value                                        = 0x00000000;
99     //DW1.SurfaceId                                    = SURFACE_ID_HEVCFORCURRENTDECODEDPICTURE;
100 
101     DW2.Value                                        = 0x00000000;
102     //DW2.SurfaceFormat                                = SURFACE_FORMAT_YUY2FORMAT;
103 
104     DW3.Value                                        = 0x00000000;
105 
106     DW4.Value                                        = 0x00000000;
107     //DW4.MemoryCompressionEnable                      = MEMORY_COMPRESSION_ENABLE_MEMORYCOMPRESSIONDISABLE;
108     //DW4.CompressionType                              = COMPRESSION_TYPE_MEDIACOMPRESSIONENABLED;
109 
110 }
111 
HCP_PIPE_BUF_ADDR_STATE_CMD()112 mhw_vdbox_hcp_g12_X::HCP_PIPE_BUF_ADDR_STATE_CMD::HCP_PIPE_BUF_ADDR_STATE_CMD()
113 {
114     DW0.Value                                        = 0x73820077;
115     //DW0.DwordLength                                  = GetOpLength(dwSize);
116     //DW0.MediaInstructionCommand                      = MEDIA_INSTRUCTION_COMMAND_HCPPIPEBUFADDRSTATE;
117     //DW0.MediaInstructionOpcode                       = MEDIA_INSTRUCTION_OPCODE_CODECENGINENAME;
118     //DW0.PipelineType                                 = PIPELINE_TYPE_UNNAMED2;
119     //DW0.CommandType                                  = COMMAND_TYPE_PARALLELVIDEOPIPE;
120 
121     DW34_35.Value[0] = DW34_35.Value[1]              = 0x00000000;
122 
123     DW36.Value                                       = 0x00000000;
124 
125     DW86_87.Value[0] = DW86_87.Value[1]              = 0x00000000;
126 
127     DW95_96.Value[0] = DW95_96.Value[1]              = 0x00000000;
128 
129 }
130 
HCP_IND_OBJ_BASE_ADDR_STATE_CMD()131 mhw_vdbox_hcp_g12_X::HCP_IND_OBJ_BASE_ADDR_STATE_CMD::HCP_IND_OBJ_BASE_ADDR_STATE_CMD()
132 {
133     DW0.Value                                        = 0x7383001b;
134     //DW0.DwordLength                                  = GetOpLength(dwSize);
135     //DW0.MediaInstructionCommand                      = MEDIA_INSTRUCTION_COMMAND_HCPINDOBJBASEADDRSTATE;
136     //DW0.MediaInstructionOpcode                       = MEDIA_INSTRUCTION_OPCODE_CODECENGINENAME;
137     //DW0.PipelineType                                 = PIPELINE_TYPE_UNNAMED2;
138     //DW0.CommandType                                  = COMMAND_TYPE_PARALLELVIDEOPIPE;
139 
140     DW6_7.Value[0] = DW6_7.Value[1]                  = 0x00000000;
141 
142     DW9_10.Value[0] = DW9_10.Value[1]                = 0x00000000;
143 
144     DW14_15.Value[0] = DW14_15.Value[1]              = 0x00000000;
145 
146     DW17_18.Value[0] = DW17_18.Value[1]              = 0x00000000;
147 
148     DW20_21.Value[0] = DW20_21.Value[1]              = 0x00000000;
149 
150     DW23_24.Value[0] = DW23_24.Value[1]              = 0x00000000;
151 
152     DW26_27.Value[0] = DW26_27.Value[1]              = 0x00000000;
153 
154 }
155 
HCP_QM_STATE_CMD()156 mhw_vdbox_hcp_g12_X::HCP_QM_STATE_CMD::HCP_QM_STATE_CMD()
157 {
158     DW0.Value                                        = 0x73840010;
159     //DW0.DwordLength                                  = GetOpLength(dwSize);
160     //DW0.MediaInstructionCommand                      = MEDIA_INSTRUCTION_COMMAND_HCPQMSTATE;
161     //DW0.MediaInstructionOpcode                       = MEDIA_INSTRUCTION_OPCODE_CODECENGINENAME;
162     //DW0.PipelineType                                 = PIPELINE_TYPE_UNNAMED2;
163     //DW0.CommandType                                  = COMMAND_TYPE_PARALLELVIDEOPIPE;
164 
165     DW1.Value                                        = 0x00000000;
166     //DW1.PredictionType                               = PREDICTION_TYPE_INTRA;
167     //DW1.Sizeid                                       = SIZEID_4X4;
168     //DW1.ColorComponent                               = COLOR_COMPONENT_LUMA;
169 
170     memset(&Quantizermatrix, 0, sizeof(Quantizermatrix));
171 
172 }
173 
HCP_PIC_STATE_CMD()174 mhw_vdbox_hcp_g12_X::HCP_PIC_STATE_CMD::HCP_PIC_STATE_CMD()
175 {
176     DW0.Value                                        = 0x73900027;
177     //DW0.DwordLength                                  = GetOpLength(dwSize);
178     //DW0.MediaInstructionCommand                      = MEDIA_INSTRUCTION_COMMAND_HCPPICSTATE;
179     //DW0.MediaInstructionOpcode                       = MEDIA_INSTRUCTION_OPCODE_CODECENGINENAME;
180     //DW0.PipelineType                                 = PIPELINE_TYPE_UNNAMED2;
181     //DW0.CommandType                                  = COMMAND_TYPE_PARALLELVIDEOPIPE;
182 
183     DW1.Value                                        = 0x00000000;
184 
185     DW2.Value                                        = 0x00000000;
186     //DW2.Mincusize                                    = MINCUSIZE_8X8;
187     //DW2.CtbsizeLcusize                               = CTBSIZE_LCUSIZE_ILLEGALRESERVED;
188     //DW2.Mintusize                                    = MINTUSIZE_4X4;
189     //DW2.Maxtusize                                    = MAXTUSIZE_4X4;
190     //DW2.Minpcmsize                                   = MINPCMSIZE_8X8;
191     //DW2.Maxpcmsize                                   = MAXPCMSIZE_8X8;
192     //DW2.Log2SaoOffsetScaleLuma                       = LOG2_SAO_OFFSET_SCALE_LUMA_0;
193     //DW2.Log2SaoOffsetScaleChroma                     = LOG2_SAO_OFFSET_SCALE_CHROMA_0;
194     //DW2.ChromaSubsampling                            = 0;
195 
196     DW3.Value                                        = 0x00000000;
197     //DW3.Colpicisi                                    = COLPICISI_COLLOCATEDPICTUREHASATLEASTONEPORBSLICE;
198     //DW3.Curpicisi                                    = CURPICISI_CURRENTPICTUREHASATLEASTONEPORBSLICE;
199     //DW3.Inserttestflag                               = INSERTTESTFLAG_UNNAMED0;
200 
201     DW4.Value                                        = 0x00000000;
202     //DW4.CuQpDeltaEnabledFlag                         = CU_QP_DELTA_ENABLED_FLAG_DISABLE;
203     //DW4.SignDataHidingFlag                           = SIGN_DATA_HIDING_FLAG_DISABLE;
204     //DW4.Fieldpic                                     = FIELDPIC_VIDEOFRAME;
205     //DW4.Bottomfield                                  = BOTTOMFIELD_BOTTOMFIELD;
206     //DW4.TransformSkipEnabledFlag                     = TRANSFORM_SKIP_ENABLED_FLAG_DISABLE;
207     //DW4.AmpEnabledFlag                               = AMP_ENABLED_FLAG_DISABLE;
208     //DW4.TransquantBypassEnableFlag                   = TRANSQUANT_BYPASS_ENABLE_FLAG_DISABLE;
209 
210     DW5.Value                                        = 0x00000000;
211     //DW5.BitDepthChromaMinus8                         = BIT_DEPTH_CHROMA_MINUS8_CHROMA8BIT;
212     //DW5.BitDepthLumaMinus8                           = BIT_DEPTH_LUMA_MINUS8_LUMA8BIT;
213 
214     DW6.Value                                        = 0x00000000;
215     //DW6.Nonfirstpassflag                             = NONFIRSTPASSFLAG_DISABLE;
216     //DW6.LcumaxbitstatusenLcumaxsizereportmask        = LCUMAXBITSTATUSEN_LCUMAXSIZEREPORTMASK_DISABLE;
217     //DW6.FrameszoverstatusenFramebitratemaxreportmask = FRAMESZOVERSTATUSEN_FRAMEBITRATEMAXREPORTMASK_DISABLE;
218     //DW6.FrameszunderstatusenFramebitrateminreportmask = FRAMESZUNDERSTATUSEN_FRAMEBITRATEMINREPORTMASK_DISABLE;
219     //DW6.LoadSlicePointerFlag                         = LOAD_SLICE_POINTER_FLAG_DISABLE;
220 
221     DW7.Value                                        = 0x00000000;
222     //DW7.Framebitratemaxunit                          = FRAMEBITRATEMAXUNIT_BYTE;
223 
224     DW8.Value                                        = 0x00000000;
225     //DW8.Framebitrateminunit                          = FRAMEBITRATEMINUNIT_BYTE;
226 
227     DW9.Value                                        = 0x00000000;
228     //DW9.Framebitratemindelta                         = FRAMEBITRATEMINDELTA_UNNAMED0;
229     //DW9.Framebitratemaxdelta                         = FRAMEBITRATEMAXDELTA_UNNAMED0;
230 
231     DW10_11.Value[0] = DW10_11.Value[1]              = 0x00000000;
232 
233     DW12_13.Value[0] = DW12_13.Value[1]              = 0x00000000;
234 
235     DW14_15.Value[0] = DW14_15.Value[1]              = 0x00000000;
236 
237     DW16_17.Value[0] = DW16_17.Value[1]              = 0x00000000;
238 
239     DW18.Value                                       = 0x00000000;
240     //DW18.Minframesize                                = MINFRAMESIZE_UNNAMED0;
241     //DW18.Minframesizeunits                           = MINFRAMESIZEUNITS_4KB;
242 
243     DW19.Value                                       = 0x00000000;
244 
245     DW20.Value                                       = 0x00000000;
246 
247     DW21.Value                                       = 0x00000000;
248 
249     DW22.Value                                       = 0x00000000;
250 
251     DW23.Value                                       = 0x00000000;
252 
253     memset(&SseThresholdsForClass18, 0, sizeof(SseThresholdsForClass18));
254 
255     DW32.Value                                       = 0x00000000;
256 
257     DW33.Value                                       = 0x00000000;
258 
259     DW34.Value                                       = 0x00000000;
260     //DW34.MotionVectorResolutionControlIdc            = MOTION_VECTOR_RESOLUTION_CONTROL_IDC_NOINTEGERMVFORTHEFRAME;
261 
262     DW35.Value                                       = 0x00000000;
263     //DW35.IbcConfiguration                            = IBC_CONFIGURATION_UNNAMED0;
264 
265     DW36.Value                                       = 0x00000000;
266     //DW36.FrameCrcType                                = FRAME_CRC_TYPE_CRCWITHYUVVALUE;
267 
268     DW37.Value                                       = 0x00000000;
269 
270     DW38.Value                                       = 0x00000000;
271 
272     DW39_40.Value[0] = DW39_40.Value[1]              = 0x00000000;
273 
274 }
275 
HCP_TILE_POSITION_IN_CTB_CMD()276 mhw_vdbox_hcp_g12_X::HCP_TILE_POSITION_IN_CTB_CMD::HCP_TILE_POSITION_IN_CTB_CMD()
277 {
278     DW0.Value                                        = 0x00000000;
279 
280 }
281 
HCP_TILE_POSITION_IN_CTB_MSB_CMD()282 mhw_vdbox_hcp_g12_X::HCP_TILE_POSITION_IN_CTB_MSB_CMD::HCP_TILE_POSITION_IN_CTB_MSB_CMD()
283 {
284     DW0.Value                                        = 0x00000000;
285 
286     DW1.Value                                        = 0x00000000;
287 
288 }
289 
HCP_TILE_STATE_CMD()290 mhw_vdbox_hcp_g12_X::HCP_TILE_STATE_CMD::HCP_TILE_STATE_CMD()
291 {
292     DW0.Value                                        = 0x7391000f;
293     //DW0.DwordLength                                  = GetOpLength(dwSize);
294     //DW0.MediaInstructionCommand                      = MEDIA_INSTRUCTION_COMMAND_HCPTILESTATE;
295     //DW0.MediaInstructionOpcode                       = MEDIA_INSTRUCTION_OPCODE_CODECENGINENAME;
296     //DW0.PipelineType                                 = PIPELINE_TYPE_UNNAMED2;
297     //DW0.CommandType                                  = COMMAND_TYPE_PARALLELVIDEOPIPE;
298 
299     DW1.Value                                        = 0x00000000;
300 
301 }
302 
HCP_REF_LIST_ENTRY_CMD()303 mhw_vdbox_hcp_g12_X::HCP_REF_LIST_ENTRY_CMD::HCP_REF_LIST_ENTRY_CMD()
304 {
305     DW0.Value                                        = 0x00000000;
306     //DW0.ChromaWeightLxFlag                           = CHROMA_WEIGHT_LX_FLAG_DEFAULTWEIGHTEDPREDICTIONFORCHROMA;
307     //DW0.LumaWeightLxFlag                             = LUMA_WEIGHT_LX_FLAG_DEFAULTWEIGHTEDPREDICTIONFORLUMA;
308     //DW0.Longtermreference                            = LONGTERMREFERENCE_SHORTTERMREFERENCE;
309     //DW0.FieldPicFlag                                 = FIELD_PIC_FLAG_VIDEOFRAME;
310     //DW0.BottomFieldFlag                              = BOTTOM_FIELD_FLAG_BOTTOMFIELD;
311 
312 }
313 
HCP_REF_IDX_STATE_CMD()314 mhw_vdbox_hcp_g12_X::HCP_REF_IDX_STATE_CMD::HCP_REF_IDX_STATE_CMD()
315 {
316     DW0.Value                                        = 0x73920010;
317     //DW0.DwordLength                                  = GetOpLength(dwSize);
318     //DW0.MediaInstructionCommand                      = MEDIA_INSTRUCTION_COMMAND_HCPREFIDXSTATE;
319     //DW0.MediaInstructionOpcode                       = MEDIA_INSTRUCTION_OPCODE_CODECENGINENAME;
320     //DW0.PipelineType                                 = PIPELINE_TYPE_UNNAMED2;
321     //DW0.CommandType                                  = COMMAND_TYPE_PARALLELVIDEOPIPE;
322 
323     DW1.Value                                        = 0x00000000;
324     //DW1.Refpiclistnum                                = REFPICLISTNUM_REFERENCEPICTURELIST0;
325 
326 }
327 
HCP_WEIGHTOFFSET_LUMA_ENTRY_CMD()328 mhw_vdbox_hcp_g12_X::HCP_WEIGHTOFFSET_LUMA_ENTRY_CMD::HCP_WEIGHTOFFSET_LUMA_ENTRY_CMD()
329 {
330     DW0.Value                                        = 0x00000000;
331 
332 }
333 
HCP_WEIGHTOFFSET_CHROMA_ENTRY_CMD()334 mhw_vdbox_hcp_g12_X::HCP_WEIGHTOFFSET_CHROMA_ENTRY_CMD::HCP_WEIGHTOFFSET_CHROMA_ENTRY_CMD()
335 {
336     DW0.Value                                        = 0x00000000;
337 
338 }
339 
HCP_WEIGHTOFFSET_CHROMA_EXT_ENTRY_CMD()340 mhw_vdbox_hcp_g12_X::HCP_WEIGHTOFFSET_CHROMA_EXT_ENTRY_CMD::HCP_WEIGHTOFFSET_CHROMA_EXT_ENTRY_CMD()
341 {
342     DW0.Value                                        = 0x00000000;
343 
344 }
345 
HCP_WEIGHTOFFSET_STATE_CMD()346 mhw_vdbox_hcp_g12_X::HCP_WEIGHTOFFSET_STATE_CMD::HCP_WEIGHTOFFSET_STATE_CMD()
347 {
348     DW0.Value                                        = 0x73930028;
349     //DW0.DwordLength                                  = GetOpLength(dwSize);
350     //DW0.MediaInstructionCommand                      = MEDIA_INSTRUCTION_COMMAND_HCPWEIGHTOFFSETSTATE;
351     //DW0.MediaInstructionOpcode                       = MEDIA_INSTRUCTION_OPCODE_CODECENGINENAME;
352     //DW0.PipelineType                                 = PIPELINE_TYPE_UNNAMED2;
353     //DW0.CommandType                                  = COMMAND_TYPE_PARALLELVIDEOPIPE;
354 
355     DW1.Value                                        = 0x00000000;
356     //DW1.Refpiclistnum                                = REFPICLISTNUM_REFERENCEPICTURELIST0;
357 
358 }
359 
HCP_SLICE_STATE_CMD()360 mhw_vdbox_hcp_g12_X::HCP_SLICE_STATE_CMD::HCP_SLICE_STATE_CMD()
361 {
362     DW0.Value                                        = 0x7394000b;
363     //DW0.DwordLength                                  = GetOpLength(dwSize);
364     //DW0.MediaInstructionCommand                      = MEDIA_INSTRUCTION_COMMAND_HCPSLICESTATE;
365     //DW0.MediaInstructionOpcode                       = MEDIA_INSTRUCTION_OPCODE_CODECENGINENAME;
366     //DW0.PipelineType                                 = PIPELINE_TYPE_UNNAMED2;
367     //DW0.CommandType                                  = COMMAND_TYPE_PARALLELVIDEOPIPE;
368 
369     DW1.Value                                        = 0x00000000;
370 
371     DW2.Value                                        = 0x00000000;
372 
373     DW3.Value                                        = 0x00000000;
374     //DW3.SliceType                                    = SLICE_TYPE_B_SLICE;
375     //DW3.Lastsliceofpic                               = LASTSLICEOFPIC_NOTTHELASTSLICEOFTHEPICTURE;
376     //DW3.SliceCbQpOffset                              = SLICE_CB_QP_OFFSET_0;
377     //DW3.SliceCrQpOffset                              = SLICE_CR_QP_OFFSET_0;
378 
379     DW4.Value                                        = 0x00000000;
380     //DW4.Maxmergeidx                                  = MAXMERGEIDX_0;
381 
382     DW5.Value                                        = 0x00000000;
383 
384     DW6.Value                                        = 0x10400000;
385     //DW6.Roundintra                                   = ROUNDINTRA_532;
386     //DW6.Roundinter                                   = ROUNDINTER_532;
387 
388     DW7.Value                                        = 0x00000000;
389     //DW7.Cabaczerowordinsertionenable                 = CABACZEROWORDINSERTIONENABLE_UNNAMED0;
390     //DW7.Emulationbytesliceinsertenable               = EMULATIONBYTESLICEINSERTENABLE_OUTPUTTINGRBSP;
391     //DW7.TailInsertionEnable                          = TAIL_INSERTION_ENABLE_UNNAMED0;
392     //DW7.SlicedataEnable                              = SLICEDATA_ENABLE_UNNAMED0;
393     //DW7.HeaderInsertionEnable                        = HEADER_INSERTION_ENABLE_UNNAMED0;
394 
395     DW8.Value                                        = 0x00000000;
396 
397     DW9.Value                                        = 0x00000000;
398 
399     DW10.Value                                       = 0x00000000;
400 
401     DW11.Value                                       = 0x00000000;
402 
403     DW12.Value                                       = 0x00000000;
404 
405 }
406 
HCP_BSD_OBJECT_CMD()407 mhw_vdbox_hcp_g12_X::HCP_BSD_OBJECT_CMD::HCP_BSD_OBJECT_CMD()
408 {
409     DW0.Value                                        = 0x73a00001;
410     //DW0.DwordLength                                  = GetOpLength(dwSize);
411     //DW0.MediaInstructionCommand                      = MEDIA_INSTRUCTION_COMMAND_HCPBSDOBJECTSTATE;
412     //DW0.MediaInstructionOpcode                       = MEDIA_INSTRUCTION_OPCODE_CODECENGINENAME;
413     //DW0.PipelineType                                 = PIPELINE_TYPE_UNNAMED2;
414     //DW0.CommandType                                  = COMMAND_TYPE_PARALLELVIDEOPIPE;
415 
416     DW1.Value                                        = 0x00000000;
417 
418     DW2.Value                                        = 0x00000000;
419 
420 }
421 
HCP_VP9_SEGMENT_STATE_CMD()422 mhw_vdbox_hcp_g12_X::HCP_VP9_SEGMENT_STATE_CMD::HCP_VP9_SEGMENT_STATE_CMD()
423 {
424     DW0.Value                                        = 0x73b20006;
425     //DW0.DwordLength                                  = GetOpLength(dwSize);
426     //DW0.MediaInstructionCommand                      = MEDIA_INSTRUCTION_COMMAND_HCPVP9SEGMENTSTATE;
427     //DW0.MediaInstructionOpcode                       = MEDIA_INSTRUCTION_OPCODE_CODECENGINENAME;
428     //DW0.PipelineType                                 = PIPELINE_TYPE_UNNAMED2;
429     //DW0.CommandType                                  = COMMAND_TYPE_PARALLELVIDEOPIPE;
430 
431     DW1.Value                                        = 0x00000000;
432 
433     DW2.Value                                        = 0x00000000;
434 
435     DW3.Value                                        = 0x00000000;
436 
437     DW4.Value                                        = 0x00000000;
438 
439     DW5.Value                                        = 0x00000000;
440 
441     DW6.Value                                        = 0x00000000;
442 
443     DW7.Value                                        = 0x00000000;
444 
445 }
446 
HCP_FQM_STATE_CMD()447 mhw_vdbox_hcp_g12_X::HCP_FQM_STATE_CMD::HCP_FQM_STATE_CMD()
448 {
449     DW0.Value                                        = 0x73850020;
450     //DW0.DwordLength                                  = GetOpLength(dwSize);
451     //DW0.MediaInstructionCommand                      = MEDIA_INSTRUCTION_COMMAND_HCPFQMSTATE;
452     //DW0.MediaInstructionOpcode                       = MEDIA_INSTRUCTION_OPCODE_CODECENGINENAME;
453     //DW0.PipelineType                                 = PIPELINE_TYPE_UNNAMED2;
454     //DW0.CommandType                                  = COMMAND_TYPE_PARALLELVIDEOPIPE;
455 
456     DW1.Value                                        = 0x00000000;
457     //DW1.IntraInter                                   = INTRAINTER_INTRA;
458     //DW1.Sizeid                                       = SIZEID_SIZEID04X4;
459     //DW1.ColorComponent                               = COLOR_COMPONENT_LUMA;
460 
461     memset(&Quantizermatrix, 0, sizeof(Quantizermatrix));
462 
463 }
464 
HCP_PAK_INSERT_OBJECT_CMD()465 mhw_vdbox_hcp_g12_X::HCP_PAK_INSERT_OBJECT_CMD::HCP_PAK_INSERT_OBJECT_CMD()
466 {
467     DW0.Value                                        = 0x73a20000;
468     //DW0.MediaInstructionCommand                      = MEDIA_INSTRUCTION_COMMAND_HCPPAKINSERTOBJECT;
469     //DW0.MediaInstructionOpcode                       = MEDIA_INSTRUCTION_OPCODE_CODECENGINENAME;
470     //DW0.PipelineType                                 = PIPELINE_TYPE_UNNAMED2;
471     //DW0.CommandType                                  = COMMAND_TYPE_PARALLELVIDEOPIPE;
472 
473     DW1.Value                                        = 0x00000000;
474     //DW1.EmulationflagEmulationbytebitsinsertenable   = 0;
475     //DW1.Headerlengthexcludefrmsize                   = HEADERLENGTHEXCLUDEFRMSIZE_ALLBITSACCUMULATED;
476     //DW1.IndirectPayloadEnable                        = INDIRECT_PAYLOAD_ENABLE_INLINEPAYLOADISUSED;
477 
478 }
479 
HCP_VP9_PIC_STATE_CMD()480 mhw_vdbox_hcp_g12_X::HCP_VP9_PIC_STATE_CMD::HCP_VP9_PIC_STATE_CMD()
481 {
482     DW0.Value                                        = 0x73b00028;
483     //DW0.DwordLength                                  = GetOpLength(dwSize);
484     //DW0.MediaInstructionCommand                      = MEDIA_INSTRUCTION_COMMAND_HCPVP9PICSTATE;
485     //DW0.MediaInstructionOpcode                       = MEDIA_INSTRUCTION_OPCODE_CODECENGINENAME;
486     //DW0.PipelineType                                 = PIPELINE_TYPE_UNNAMED2;
487     //DW0.CommandType                                  = COMMAND_TYPE_PARALLELVIDEOPIPE;
488 
489     DW1.Value                                        = 0x00000000;
490 
491     DW2.Value                                        = 0x00000000;
492     //DW2.FrameType                                    = FRAME_TYPE_KEYFRAME;
493     //DW2.AdaptProbabilitiesFlag                       = ADAPT_PROBABILITIES_FLAG_0DONOTADAPT_ERRORRESILIENTORFRAMEPARALLELMODEARESET;
494     //DW2.AllowHiPrecisionMv                           = ALLOW_HI_PRECISION_MV_NORMALMODE;
495     //DW2.McompFilterType                              = MCOMP_FILTER_TYPE_EIGHT_TAP;
496     //DW2.HybridPredictionMode                         = HYBRID_PREDICTION_MODE_COMPPREDICTIONMODEHYBRID_ENCODERDOESNOTPACKCOMPPREDMODEINTERPREDCOMPINPAKOBJINTOBITSTREAM;
497     //DW2.SelectableTxMode                             = SELECTABLE_TX_MODE_ENCODERDOESNOTPACKTUSIZEINTOBITSTREAMTHISHELPSREDUCEBITSTREAMSIZEFURTHER;
498     //DW2.LastFrameType                                = LAST_FRAME_TYPE_KEYFRAME;
499     //DW2.RefreshFrameContext                          = REFRESH_FRAME_CONTEXT_DISABLE;
500     //DW2.ErrorResilientMode                           = ERROR_RESILIENT_MODE_DISABLE;
501     //DW2.FrameParallelDecodingMode                    = FRAME_PARALLEL_DECODING_MODE_DISABLE;
502     //DW2.SegmentationEnabled                          = SEGMENTATION_ENABLED_ALLBLOCKSAREIMPLIEDTOBELONGTOSEGMENT0;
503     //DW2.SegmentationUpdateMap                        = SEGMENTATION_UPDATE_MAP_UNNAMED0;
504     //DW2.SegmentationTemporalUpdate                   = SEGMENTATION_TEMPORAL_UPDATE_DECODESEGIDFROMBITSTREAM;
505     //DW2.LosslessMode                                 = LOSSLESS_MODE_NORMALMODE;
506     //DW2.SegmentIdStreamoutEnable                     = SEGMENT_ID_STREAMOUT_ENABLE_DISABLE;
507     //DW2.SegmentIdStreaminEnable                      = SEGMENT_ID_STREAMIN_ENABLE_DISABLE;
508 
509     DW3.Value                                        = 0x00000000;
510     //DW3.Log2TileColumn                               = LOG2_TILE_COLUMN_1TILECOLUMN;
511     //DW3.Log2TileRow                                  = LOG2_TILE_ROW_1TILEROW;
512     //DW3.ChromaSamplingFormat                         = CHROMA_SAMPLING_FORMAT_FORMAT420;
513     //DW3.Bitdepthminus8                               = BITDEPTHMINUS8_BITDEPTH8;
514     //DW3.ProfileLevel                                 = PROFILE_LEVEL_PROFILE0;
515 
516     DW4.Value                                        = 0x00000000;
517 
518     DW5.Value                                        = 0x00000000;
519 
520     DW6.Value                                        = 0x00000000;
521 
522     DW7.Value                                        = 0x00000000;
523 
524     DW8.Value                                        = 0x00000000;
525 
526     DW9.Value                                        = 0x00000000;
527 
528     DW10.Value                                       = 0x00000000;
529 
530     DW11.Value                                       = 0x00000002;
531     //DW11.MotionCompScalingEnableBit                  = MOTION_COMP_SCALING_ENABLE_BIT_ENABLE;
532 
533     DW12.Value                                       = 0x00000000;
534 
535     DW13.Value                                       = 0x00000000;
536 
537     DW14.Value                                       = 0x00000000;
538 
539     DW15.Value                                       = 0x00000000;
540 
541     DW16.Value                                       = 0x00000000;
542 
543     DW17.Value                                       = 0x00000000;
544 
545     DW18.Value                                       = 0x00000000;
546 
547     DW19.Value                                       = 0x00000000;
548     //DW19.Nonfirstpassflag                            = NONFIRSTPASSFLAG_DISABLE;
549     //DW19.FrameszoverstatusenFramebitratemaxreportmask = FRAMESZOVERSTATUSEN_FRAMEBITRATEMAXREPORTMASK_DISABLE;
550     //DW19.FrameszunderstatusenFramebitrateminreportmask = FRAMESZUNDERSTATUSEN_FRAMEBITRATEMINREPORTMASK_DISABLE;
551 
552     DW20.Value                                       = 0x00000000;
553     //DW20.Framebitratemaxunit                         = FRAMEBITRATEMAXUNIT_BYTE;
554 
555     DW21.Value                                       = 0x00000000;
556     //DW21.Framebitrateminunit                         = FRAMEBITRATEMINUNIT_BYTE;
557 
558     DW22_23.Value[0] = DW22_23.Value[1]              = 0x00000000;
559 
560     DW24.Value                                       = 0x00000000;
561 
562     DW25_26.Value[0] = DW25_26.Value[1]              = 0x00000000;
563 
564     DW27.Value                                       = 0x00000000;
565 
566     DW28_29.Value[0] = DW28_29.Value[1]              = 0x00000000;
567 
568     DW30.Value                                       = 0x00000000;
569 
570     DW31.Value                                       = 0x00000000;
571     //DW31.Minframesizeunits                           = MINFRAMESIZEUNITS_4KB;
572 
573     DW32.Value                                       = 0x00000000;
574 
575     DW33.Value                                       = 0x00000000;
576 
577     memset(&SseThresholdsForClass18, 0, sizeof(SseThresholdsForClass18));
578 
579 }
580 
HEVC_VP9_RDOQ_LAMBDA_FIELDS_CMD()581 mhw_vdbox_hcp_g12_X::HEVC_VP9_RDOQ_LAMBDA_FIELDS_CMD::HEVC_VP9_RDOQ_LAMBDA_FIELDS_CMD()
582 {
583     DW0.Value                                        = 0x00000000;
584 
585 }
586 
HEVC_VP9_RDOQ_STATE_CMD()587 mhw_vdbox_hcp_g12_X::HEVC_VP9_RDOQ_STATE_CMD::HEVC_VP9_RDOQ_STATE_CMD()
588 {
589     DW0.Value                                        = 0x73880098;
590     //DW0.DwordLength                                  = GetOpLength(dwSize);
591     //DW0.Subopb                                       = SUBOPB_UNNAMED8;
592     //DW0.Subopa                                       = SUBOPA_UNNAMED0;
593     //DW0.Opcode                                       = OPCODE_UNNAMED7;
594     //DW0.Pipeline                                     = PIPELINE_UNNAMED2;
595     //DW0.CommandType                                  = COMMAND_TYPE_UNNAMED3;
596 
597     DW1.Value                                        = 0x00000000;
598 
599 }
600 
HCP_TILE_CODING_CMD()601 mhw_vdbox_hcp_g12_X::HCP_TILE_CODING_CMD::HCP_TILE_CODING_CMD()
602 {
603     DW0.Value                                        = 0x73950012;
604     //DW0.DwordLength                                  = GetOpLength(dwSize);
605     //DW0.MediaInstructionCommand                      = MEDIA_INSTRUCTION_COMMAND_HCPTILECODING;
606     //DW0.MediaInstructionOpcode                       = MEDIA_INSTRUCTION_OPCODE_CODECENGINENAME;
607     //DW0.PipelineType                                 = PIPELINE_TYPE_UNNAMED2;
608     //DW0.CommandType                                  = COMMAND_TYPE_PARALLELVIDEOPIPE;
609 
610     DW1.Value                                        = 0x00000000;
611 
612     DW2.Value                                        = 0x00000000;
613 
614     DW3.Value                                        = 0x00000000;
615 
616     DW4.Value                                        = 0x00000000;
617 
618     DW5.Value                                        = 0x00000000;
619 
620     DW6.Value                                        = 0x00000000;
621 
622     DW7.Value                                        = 0x00000000;
623 
624     DW8.Value                                        = 0x00000000;
625 
626     DW9.Value                                        = 0x00000000;
627 
628     DW10.Value                                       = 0x00000000;
629 
630     DW11.Value                                       = 0x00000000;
631 
632     DW12.Value                                       = 0x00000000;
633 
634     DW16.Value                                       = 0x00000000;
635 
636     DW17.Value                                       = 0x00000000;
637 
638     DW18.Value                                       = 0x00000000;
639 
640     DW19.Value                                       = 0x00000000;
641 
642 }
643 
VDENC_CONTROL_STATE_CMD()644 mhw_vdbox_hcp_g12_X::VDENC_CONTROL_STATE_CMD::VDENC_CONTROL_STATE_CMD()
645 {
646     DW0.Value                                        = 0x708b0000;
647     //DW0.DwordLength                                  = GetOpLength(dwSize);
648     //DW0.MediaInstructionCommand                      = MEDIA_INSTRUCTION_COMMAND_VDCONTROLSTATEFORVDNEC;
649     //DW0.MediaInstructionOpcode                       = MEDIA_INSTRUCTION_OPCODE_CODECENGINENAMEFORVDENC;
650     //DW0.PipelineType                                 = PIPELINE_TYPE_UNNAMED2;
651     //DW0.CommandType                                  = COMMAND_TYPE_PARALLELVIDEOPIPE;
652 
653     DW1.Value                                        = 0x00000000;
654 
655 }
656 
HCP_PALETTE_INITIALIZER_STATE_CMD()657 mhw_vdbox_hcp_g12_X::HCP_PALETTE_INITIALIZER_STATE_CMD::HCP_PALETTE_INITIALIZER_STATE_CMD()
658 {
659     DW0.Value                                        = 0x738900c0;
660     //DW0.DwordLength                                  = GetOpLength(dwSize);
661     //DW0.MediaInstructionCommand                      = MEDIA_INSTRUCTION_COMMAND_HCPPALETTEINITIALIZERSTATE;
662     //DW0.MediaInstructionOpcode                       = MEDIA_INSTRUCTION_OPCODE_CODECENGINENAME;
663     //DW0.PipelineType                                 = PIPELINE_TYPE_UNNAMED2;
664     //DW0.CommandType                                  = COMMAND_TYPE_PARALLELVIDEOPIPE;
665 
666     DW1.Value                                        = 0x00000000;
667 
668     memset(&First64ColorEntries, 0, sizeof(First64ColorEntries));
669 
670     memset(&Second64ColorEntries, 0, sizeof(Second64ColorEntries));
671 
672 }
673 
674