diff options
author | Xiang, Haihao <haihao.xiang@intel.com> | 2012-02-29 10:15:47 +0800 |
---|---|---|
committer | Xiang, Haihao <haihao.xiang@intel.com> | 2012-02-29 10:15:47 +0800 |
commit | f97c94a8059c40fe876de32fe5fafc8d188ec246 (patch) | |
tree | cfb1defec8a6b18bfd7656eb219c667a5baaf67e /src/gen6_vme.h | |
parent | 814424d03c88cd7aff57e886587a131f6bf8197f (diff) | |
download | libva-intel-driver-f97c94a8059c40fe876de32fe5fafc8d188ec246.tar.gz |
Cleanup VME
Signed-off-by: Xiang, Haihao <haihao.xiang@intel.com>
Diffstat (limited to 'src/gen6_vme.h')
-rw-r--r-- | src/gen6_vme.h | 53 |
1 files changed, 20 insertions, 33 deletions
diff --git a/src/gen6_vme.h b/src/gen6_vme.h index d53697c5..f38577d0 100644 --- a/src/gen6_vme.h +++ b/src/gen6_vme.h @@ -34,8 +34,9 @@ #include <i915_drm.h> #include <intel_bufmgr.h> +#include "i965_gpe_utils.h" -#define MAX_INTERFACE_DESC_GEN6 32 +#define MAX_INTERFACE_DESC_GEN6 MAX_GPE_KERNELS #define MAX_MEDIA_SURFACES_GEN6 34 #define GEN6_VME_KERNEL_NUMBER 3 @@ -45,45 +46,31 @@ struct intel_encoder_context; struct gen6_vme_context { - struct { - dri_bo *bo; - } surface_state_binding_table; - - struct { - dri_bo *bo; - } idrt; /* interface descriptor remap table */ - - struct { - dri_bo *bo; - } curbe; - - struct { - unsigned int gpgpu_mode:1; - unsigned int max_num_threads:16; - unsigned int num_urb_entries:8; - unsigned int urb_entry_size:16; - unsigned int curbe_allocation_size:16; - } vfe_state; + struct i965_gpe_context gpe_context; struct { dri_bo *bo; } vme_state; - struct { - dri_bo *bo; - unsigned int num_blocks; - unsigned int size_block; /* in bytes */ - unsigned int pitch; - } vme_output; + struct i965_buffer_surface vme_output; + struct i965_buffer_surface vme_batchbuffer; - struct { - dri_bo *bo; - unsigned int num_blocks; - unsigned int size_block; - unsigned int pitch; - } vme_batchbuffer; - struct i965_kernel vme_kernels[GEN6_VME_KERNEL_NUMBER]; + void (*vme_surface2_setup)(VADriverContextP ctx, + struct i965_gpe_context *gpe_context, + struct object_surface *obj_surface, + unsigned long binding_table_offset, + unsigned long surface_state_offset); + void (*vme_media_rw_surface_setup)(VADriverContextP ctx, + struct i965_gpe_context *gpe_context, + struct object_surface *obj_surface, + unsigned long binding_table_offset, + unsigned long surface_state_offset); + void (*vme_buffer_suface_setup)(VADriverContextP ctx, + struct i965_gpe_context *gpe_context, + struct i965_buffer_surface *buffer_surface, + unsigned long binding_table_offset, + unsigned long surface_state_offset); }; #endif /* _GEN6_VME_H_ */ |