From: Gwenole Beauchesne Date: Mon, 30 Jan 2012 10:05:17 +0000 (+0100) Subject: Factor out type definitions (GenFrameStore, GenBuffer). X-Git-Tag: 1.0_branch~140^2~16 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=99ded53e66af1903f1d58ffbc24404d435a6de84;p=profile%2Fivi%2Fvaapi-intel-driver.git Factor out type definitions (GenFrameStore, GenBuffer). Signed-off-by: Gwenole Beauchesne --- diff --git a/src/Makefile.am b/src/Makefile.am index 7a8de4d..f472655 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -76,6 +76,7 @@ source_h = \ i965_avc_bsd.h \ i965_avc_hw_scoreboard.h\ i965_avc_ildb.h \ + i965_decoder.h \ i965_defines.h \ i965_drv_video.h \ i965_encoder.h \ diff --git a/src/gen6_mfd.h b/src/gen6_mfd.h index 46bb0e4..bf06a00 100644 --- a/src/gen6_mfd.h +++ b/src/gen6_mfd.h @@ -33,6 +33,7 @@ #include #include #include +#include "i965_decoder.h" struct gen6_avc_surface { @@ -58,7 +59,6 @@ struct gen6_vc1_surface int picture_type; }; -#define MAX_MFX_REFERENCE_SURFACES 16 struct hw_context; struct gen6_mfd_context @@ -69,45 +69,14 @@ struct gen6_mfd_context VAIQMatrixBufferMPEG2 mpeg2; } iq_matrix; - struct { - VASurfaceID surface_id; - int frame_store_id; - } reference_surface[MAX_MFX_REFERENCE_SURFACES]; - - struct { - dri_bo *bo; - int valid; - } post_deblocking_output; - - struct { - dri_bo *bo; - int valid; - } pre_deblocking_output; - - struct { - dri_bo *bo; - int valid; - } intra_row_store_scratch_buffer; - - struct { - dri_bo *bo; - int valid; - } deblocking_filter_row_store_scratch_buffer; - - struct { - dri_bo *bo; - int valid; - } bsd_mpc_row_store_scratch_buffer; - - struct { - dri_bo *bo; - int valid; - } mpr_row_store_scratch_buffer; - - struct { - dri_bo *bo; - int valid; - } bitplane_read_buffer; + GenFrameStore reference_surface[MAX_GEN_REFERENCE_FRAMES]; + GenBuffer post_deblocking_output; + GenBuffer pre_deblocking_output; + GenBuffer intra_row_store_scratch_buffer; + GenBuffer deblocking_filter_row_store_scratch_buffer; + GenBuffer bsd_mpc_row_store_scratch_buffer; + GenBuffer mpr_row_store_scratch_buffer; + GenBuffer bitplane_read_buffer; }; #endif /* _GEN6_MFD_H_ */ diff --git a/src/gen7_mfd.h b/src/gen7_mfd.h index 088dbda..08658f4 100644 --- a/src/gen7_mfd.h +++ b/src/gen7_mfd.h @@ -33,6 +33,7 @@ #include #include #include +#include "i965_decoder.h" struct gen7_avc_surface { @@ -58,7 +59,6 @@ struct gen7_vc1_surface int picture_type; }; -#define MAX_MFX_REFERENCE_SURFACES 16 struct hw_context; struct gen7_mfd_context @@ -69,45 +69,14 @@ struct gen7_mfd_context VAIQMatrixBufferMPEG2 mpeg2; } iq_matrix; - struct { - VASurfaceID surface_id; - int frame_store_id; - } reference_surface[MAX_MFX_REFERENCE_SURFACES]; - - struct { - dri_bo *bo; - int valid; - } post_deblocking_output; - - struct { - dri_bo *bo; - int valid; - } pre_deblocking_output; - - struct { - dri_bo *bo; - int valid; - } intra_row_store_scratch_buffer; - - struct { - dri_bo *bo; - int valid; - } deblocking_filter_row_store_scratch_buffer; - - struct { - dri_bo *bo; - int valid; - } bsd_mpc_row_store_scratch_buffer; - - struct { - dri_bo *bo; - int valid; - } mpr_row_store_scratch_buffer; - - struct { - dri_bo *bo; - int valid; - } bitplane_read_buffer; + GenFrameStore reference_surface[MAX_GEN_REFERENCE_FRAMES]; + GenBuffer post_deblocking_output; + GenBuffer pre_deblocking_output; + GenBuffer intra_row_store_scratch_buffer; + GenBuffer deblocking_filter_row_store_scratch_buffer; + GenBuffer bsd_mpc_row_store_scratch_buffer; + GenBuffer mpr_row_store_scratch_buffer; + GenBuffer bitplane_read_buffer; }; #endif /* _GEN7_MFD_H_ */ diff --git a/src/i965_decoder.h b/src/i965_decoder.h new file mode 100644 index 0000000..0e69e14 --- /dev/null +++ b/src/i965_decoder.h @@ -0,0 +1,46 @@ +/* + * Copyright (C) 2012 Intel Corporation + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the + * "Software"), to deal in the Software without restriction, including + * without limitation the rights to use, copy, modify, merge, publish, + * distribute, sub license, and/or sell copies of the Software, and to + * permit persons to whom the Software is furnished to do so, subject to + * the following conditions: + * + * The above copyright notice and this permission notice (including the + * next paragraph) shall be included in all copies or substantial portions + * of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. + * IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR + * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, + * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE + * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + */ + +#ifndef I965_DECODER_H +#define I965_DECODER_H + +#include +#include +#include + +#define MAX_GEN_REFERENCE_FRAMES 16 + +typedef struct gen_frame_store GenFrameStore; +struct gen_frame_store { + VASurfaceID surface_id; + int frame_store_id; +}; + +typedef struct gen_buffer GenBuffer; +struct gen_buffer { + dri_bo *bo; + int valid; +}; + +#endif /* I965_DECODER_H */ diff --git a/src/i965_media_h264.h b/src/i965_media_h264.h index 8a8dc8e..490213c 100644 --- a/src/i965_media_h264.h +++ b/src/i965_media_h264.h @@ -4,6 +4,7 @@ #include "i965_avc_bsd.h" #include "i965_avc_hw_scoreboard.h" #include "i965_avc_ildb.h" +#include "i965_decoder.h" struct decode_state; struct i965_media_context; @@ -60,10 +61,7 @@ struct i965_h264_context struct i965_avc_hw_scoreboard_context avc_hw_scoreboard_context; struct i965_avc_ildb_context avc_ildb_context; - struct { - VASurfaceID surface_id; - int frame_store_id; - } fsid_list[16]; + GenFrameStore fsid_list[MAX_GEN_REFERENCE_FRAMES]; struct i965_kernel avc_kernels[NUM_H264_AVC_KERNELS]; struct intel_batchbuffer *batch;