00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032 #ifndef BRW_AUB_H
00033 #define BRW_AUB_H
00034
00035
00036
00037 #define AUB_BUF_START (4096*4)
00038 #define AUB_BUF_SIZE (8*1024*1024)
00039
00040 struct intel_context;
00041 struct pipe_surface;
00042
00043 struct brw_aubfile *brw_aubfile_create( void );
00044
00045 void brw_aub_destroy( struct brw_aubfile *aubfile );
00046
00047 void brw_aub_gtt_data( struct brw_aubfile *aubfile,
00048 unsigned offset,
00049 const void *data,
00050 unsigned sz,
00051 unsigned type,
00052 unsigned state_type );
00053
00054 void brw_aub_gtt_cmds( struct brw_aubfile *aubfile,
00055 unsigned offset,
00056 const void *data,
00057 unsigned sz );
00058
00059 void brw_aub_dump_bmp( struct brw_aubfile *aubfile,
00060 struct pipe_surface *surface,
00061 unsigned gtt_offset );
00062
00063
00064 enum data_write_type {
00065 DW_NOTYPE,
00066 DW_BATCH_BUFFER,
00067 DW_BIN_BUFFER,
00068 DW_BIN_POINTER_LIST,
00069 DW_SLOW_STATE_BUFFER,
00070 DW_VERTEX_BUFFER,
00071 DW_2D_MAP,
00072 DW_CUBE_MAP,
00073 DW_INDIRECT_STATE_BUFFER,
00074 DW_VOLUME_MAP,
00075 DW_1D_MAP,
00076 DW_CONSTANT_BUFFER,
00077 DW_CONSTANT_URB_ENTRY,
00078 DW_INDEX_BUFFER,
00079 DW_GENERAL_STATE,
00080 DW_SURFACE_STATE,
00081 DW_MEDIA_OBJECT_INDIRECT_DATA,
00082 DW_MAX_TYPE
00083 };
00084
00085 enum data_write_general_state_type {
00086 DWGS_NOTYPE,
00087 DWGS_VERTEX_SHADER_STATE,
00088 DWGS_GEOMETRY_SHADER_STATE ,
00089 DWGS_CLIPPER_STATE,
00090 DWGS_STRIPS_FANS_STATE,
00091 DWGS_WINDOWER_IZ_STATE,
00092 DWGS_COLOR_CALC_STATE,
00093 DWGS_CLIPPER_VIEWPORT_STATE,
00094 DWGS_STRIPS_FANS_VIEWPORT_STATE,
00095 DWGS_COLOR_CALC_VIEWPORT_STATE,
00096 DWGS_SAMPLER_STATE,
00097 DWGS_KERNEL_INSTRUCTIONS,
00098 DWGS_SCRATCH_SPACE,
00099 DWGS_SAMPLER_DEFAULT_COLOR,
00100 DWGS_INTERFACE_DESCRIPTOR,
00101 DWGS_VLD_STATE,
00102 DWGS_VFE_STATE,
00103 DWGS_MAX_TYPE
00104 };
00105
00106 enum data_write_surface_state_type {
00107 DWSS_NOTYPE,
00108 DWSS_BINDING_TABLE_STATE,
00109 DWSS_SURFACE_STATE,
00110 DWSS_MAX_TYPE
00111 };
00112
00113
00114 #endif