diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2013-07-26 09:35:06 +0100 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2013-07-28 14:49:07 +0100 |
commit | 45d4e8dcf9aee37015b1ee026997ed4dabdf112e (patch) | |
tree | c140efa6a28d80266849d08d5ea368419e95c977 | |
parent | ab28526ea43728fb675448515e1519a970fb5f56 (diff) |
uxa: Clear up the common intel directory
Move all the UXA backend specifc files into their own subdirectory.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
-rw-r--r-- | Makefile.am | 2 | ||||
-rw-r--r-- | configure.ac | 13 | ||||
-rw-r--r-- | src/Makefile.am | 67 | ||||
-rw-r--r-- | src/intel_module.c | 3 | ||||
-rw-r--r-- | src/uxa/Makefile.am | 79 | ||||
-rw-r--r-- | src/uxa/brw_defines.h (renamed from src/brw_defines.h) | 0 | ||||
-rw-r--r-- | src/uxa/brw_structs.h (renamed from src/brw_structs.h) | 0 | ||||
-rw-r--r-- | src/uxa/common.h (renamed from src/common.h) | 2 | ||||
-rw-r--r-- | src/uxa/i830_3d.c (renamed from src/i830_3d.c) | 0 | ||||
-rw-r--r-- | src/uxa/i830_reg.h (renamed from src/i830_reg.h) | 0 | ||||
-rw-r--r-- | src/uxa/i830_render.c (renamed from src/i830_render.c) | 0 | ||||
-rw-r--r-- | src/uxa/i915_3d.c (renamed from src/i915_3d.c) | 0 | ||||
-rw-r--r-- | src/uxa/i915_3d.h (renamed from src/i915_3d.h) | 0 | ||||
-rw-r--r-- | src/uxa/i915_reg.h (renamed from src/i915_reg.h) | 0 | ||||
-rw-r--r-- | src/uxa/i915_render.c (renamed from src/i915_render.c) | 0 | ||||
-rw-r--r-- | src/uxa/i915_video.c (renamed from src/i915_video.c) | 0 | ||||
-rw-r--r-- | src/uxa/i965_3d.c (renamed from src/i965_3d.c) | 0 | ||||
-rw-r--r-- | src/uxa/i965_reg.h (renamed from src/i965_reg.h) | 0 | ||||
-rw-r--r-- | src/uxa/i965_render.c (renamed from src/i965_render.c) | 0 | ||||
-rw-r--r-- | src/uxa/i965_video.c (renamed from src/i965_video.c) | 2 | ||||
-rw-r--r-- | src/uxa/intel.h (renamed from src/intel.h) | 0 | ||||
-rw-r--r-- | src/uxa/intel_batchbuffer.c (renamed from src/intel_batchbuffer.c) | 0 | ||||
-rw-r--r-- | src/uxa/intel_batchbuffer.h (renamed from src/intel_batchbuffer.h) | 0 | ||||
-rw-r--r-- | src/uxa/intel_display.c (renamed from src/intel_display.c) | 0 | ||||
-rw-r--r-- | src/uxa/intel_dri.c (renamed from src/intel_dri.c) | 0 | ||||
-rw-r--r-- | src/uxa/intel_driver.c (renamed from src/intel_driver.c) | 2 | ||||
-rw-r--r-- | src/uxa/intel_glamor.c (renamed from src/intel_glamor.c) | 0 | ||||
-rw-r--r-- | src/uxa/intel_glamor.h (renamed from src/intel_glamor.h) | 0 | ||||
-rw-r--r-- | src/uxa/intel_hwmc.c (renamed from src/intel_hwmc.c) | 2 | ||||
-rw-r--r-- | src/uxa/intel_memory.c (renamed from src/intel_memory.c) | 0 | ||||
-rw-r--r-- | src/uxa/intel_uxa.c (renamed from src/intel_uxa.c) | 0 | ||||
-rw-r--r-- | src/uxa/intel_video.c (renamed from src/intel_video.c) | 2 | ||||
-rw-r--r-- | src/uxa/intel_video.h (renamed from src/intel_video.h) | 0 | ||||
-rw-r--r-- | src/uxa/uxa_module.h | 6 | ||||
-rw-r--r-- | src/xvmc/Makefile.am | 24 | ||||
-rw-r--r-- | uxa/Makefile.am | 2 | ||||
-rw-r--r-- | uxa/uxa-glyphs.c | 2 | ||||
-rw-r--r-- | xvmc/Makefile.am | 32 | ||||
-rw-r--r-- | xvmc/brw_defines.h | 881 | ||||
-rw-r--r-- | xvmc/brw_structs.h | 1723 | ||||
-rw-r--r-- | xvmc/i830_reg.h | 805 | ||||
-rw-r--r-- | xvmc/i915_program.h (renamed from src/xvmc/i915_program.h) | 0 | ||||
-rw-r--r-- | xvmc/i915_reg.h | 844 | ||||
-rw-r--r-- | xvmc/i915_structs.h (renamed from src/xvmc/i915_structs.h) | 0 | ||||
-rw-r--r-- | xvmc/i915_xvmc.c (renamed from src/xvmc/i915_xvmc.c) | 0 | ||||
-rw-r--r-- | xvmc/i915_xvmc.h (renamed from src/xvmc/i915_xvmc.h) | 3 | ||||
-rw-r--r-- | xvmc/i965_reg.h | 476 | ||||
-rw-r--r-- | xvmc/i965_xvmc.c (renamed from src/xvmc/i965_xvmc.c) | 4 | ||||
-rw-r--r-- | xvmc/intel_batchbuffer.c (renamed from src/xvmc/intel_batchbuffer.c) | 2 | ||||
-rw-r--r-- | xvmc/intel_batchbuffer.h (renamed from src/xvmc/intel_batchbuffer.h) | 0 | ||||
-rw-r--r-- | xvmc/intel_xvmc.c (renamed from src/xvmc/intel_xvmc.c) | 2 | ||||
-rw-r--r-- | xvmc/intel_xvmc.h (renamed from src/intel_hwmc.h) | 0 | ||||
-rw-r--r-- | xvmc/intel_xvmc_dump.c (renamed from src/xvmc/intel_xvmc_dump.c) | 2 | ||||
-rw-r--r-- | xvmc/intel_xvmc_private.h (renamed from src/xvmc/intel_xvmc.h) | 3 | ||||
-rw-r--r-- | xvmc/shader/Makefile.am (renamed from src/xvmc/shader/Makefile.am) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/Makefile.am (renamed from src/xvmc/shader/mc/Makefile.am) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/addidct.g4i (renamed from src/xvmc/shader/mc/addidct.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/addidct_igd.g4i (renamed from src/xvmc/shader/mc/addidct_igd.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/block_clear.g4i (renamed from src/xvmc/shader/mc/block_clear.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/dual_prime.g4a (renamed from src/xvmc/shader/mc/dual_prime.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/dual_prime.g4b (renamed from src/xvmc/shader/mc/dual_prime.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/dual_prime.g4b.gen5 (renamed from src/xvmc/shader/mc/dual_prime.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/dual_prime_igd.g4a (renamed from src/xvmc/shader/mc/dual_prime_igd.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/dual_prime_igd.g4b (renamed from src/xvmc/shader/mc/dual_prime_igd.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/dual_prime_igd.g4b.gen5 (renamed from src/xvmc/shader/mc/dual_prime_igd.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/field_backward.g4a (renamed from src/xvmc/shader/mc/field_backward.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/field_backward.g4b (renamed from src/xvmc/shader/mc/field_backward.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/field_backward.g4b.gen5 (renamed from src/xvmc/shader/mc/field_backward.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/field_backward_igd.g4a (renamed from src/xvmc/shader/mc/field_backward_igd.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/field_backward_igd.g4b (renamed from src/xvmc/shader/mc/field_backward_igd.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/field_backward_igd.g4b.gen5 (renamed from src/xvmc/shader/mc/field_backward_igd.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/field_f_b.g4a (renamed from src/xvmc/shader/mc/field_f_b.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/field_f_b.g4b (renamed from src/xvmc/shader/mc/field_f_b.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/field_f_b.g4b.gen5 (renamed from src/xvmc/shader/mc/field_f_b.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/field_f_b_igd.g4a (renamed from src/xvmc/shader/mc/field_f_b_igd.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/field_f_b_igd.g4b (renamed from src/xvmc/shader/mc/field_f_b_igd.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/field_f_b_igd.g4b.gen5 (renamed from src/xvmc/shader/mc/field_f_b_igd.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/field_forward.g4a (renamed from src/xvmc/shader/mc/field_forward.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/field_forward.g4b (renamed from src/xvmc/shader/mc/field_forward.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/field_forward.g4b.gen5 (renamed from src/xvmc/shader/mc/field_forward.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/field_forward_igd.g4a (renamed from src/xvmc/shader/mc/field_forward_igd.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/field_forward_igd.g4b (renamed from src/xvmc/shader/mc/field_forward_igd.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/field_forward_igd.g4b.gen5 (renamed from src/xvmc/shader/mc/field_forward_igd.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/frame_backward.g4a (renamed from src/xvmc/shader/mc/frame_backward.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/frame_backward.g4b (renamed from src/xvmc/shader/mc/frame_backward.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/frame_backward.g4b.gen5 (renamed from src/xvmc/shader/mc/frame_backward.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/frame_backward_igd.g4a (renamed from src/xvmc/shader/mc/frame_backward_igd.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/frame_backward_igd.g4b (renamed from src/xvmc/shader/mc/frame_backward_igd.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/frame_backward_igd.g4b.gen5 (renamed from src/xvmc/shader/mc/frame_backward_igd.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/frame_f_b.g4a (renamed from src/xvmc/shader/mc/frame_f_b.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/frame_f_b.g4b (renamed from src/xvmc/shader/mc/frame_f_b.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/frame_f_b.g4b.gen5 (renamed from src/xvmc/shader/mc/frame_f_b.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/frame_f_b_igd.g4a (renamed from src/xvmc/shader/mc/frame_f_b_igd.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/frame_f_b_igd.g4b (renamed from src/xvmc/shader/mc/frame_f_b_igd.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/frame_f_b_igd.g4b.gen5 (renamed from src/xvmc/shader/mc/frame_f_b_igd.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/frame_forward.g4a (renamed from src/xvmc/shader/mc/frame_forward.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/frame_forward.g4b (renamed from src/xvmc/shader/mc/frame_forward.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/frame_forward.g4b.gen5 (renamed from src/xvmc/shader/mc/frame_forward.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/frame_forward_igd.g4a (renamed from src/xvmc/shader/mc/frame_forward_igd.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/frame_forward_igd.g4b (renamed from src/xvmc/shader/mc/frame_forward_igd.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/frame_forward_igd.g4b.gen5 (renamed from src/xvmc/shader/mc/frame_forward_igd.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/ipicture.g4a (renamed from src/xvmc/shader/mc/ipicture.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/ipicture.g4b (renamed from src/xvmc/shader/mc/ipicture.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/ipicture.g4b.gen5 (renamed from src/xvmc/shader/mc/ipicture.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/ipicture_igd.g4a (renamed from src/xvmc/shader/mc/ipicture_igd.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/ipicture_igd.g4b (renamed from src/xvmc/shader/mc/ipicture_igd.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/ipicture_igd.g4b.gen5 (renamed from src/xvmc/shader/mc/ipicture_igd.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/lib_igd.g4a (renamed from src/xvmc/shader/mc/lib_igd.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/lib_igd.g4b (renamed from src/xvmc/shader/mc/lib_igd.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/lib_igd.g4b.gen5 (renamed from src/xvmc/shader/mc/lib_igd.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/motion_field_uv.g4i (renamed from src/xvmc/shader/mc/motion_field_uv.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/motion_field_uv_igd.g4i (renamed from src/xvmc/shader/mc/motion_field_uv_igd.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/motion_field_y.g4i (renamed from src/xvmc/shader/mc/motion_field_y.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/motion_field_y_igd.g4i (renamed from src/xvmc/shader/mc/motion_field_y_igd.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/motion_frame_uv.g4i (renamed from src/xvmc/shader/mc/motion_frame_uv.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/motion_frame_uv_igd.g4i (renamed from src/xvmc/shader/mc/motion_frame_uv_igd.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/motion_frame_y.g4i (renamed from src/xvmc/shader/mc/motion_frame_y.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/motion_frame_y_igd.g4i (renamed from src/xvmc/shader/mc/motion_frame_y_igd.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/null.g4a (renamed from src/xvmc/shader/mc/null.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/null.g4b (renamed from src/xvmc/shader/mc/null.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/null.g4b.gen5 (renamed from src/xvmc/shader/mc/null.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_field_x0y0_uv.g4i (renamed from src/xvmc/shader/mc/read_field_x0y0_uv.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_field_x0y0_uv_igd.g4i (renamed from src/xvmc/shader/mc/read_field_x0y0_uv_igd.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_field_x0y0_y.g4i (renamed from src/xvmc/shader/mc/read_field_x0y0_y.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_field_x0y0_y_igd.g4i (renamed from src/xvmc/shader/mc/read_field_x0y0_y_igd.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_field_x0y1_uv.g4i (renamed from src/xvmc/shader/mc/read_field_x0y1_uv.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_field_x0y1_uv_igd.g4i (renamed from src/xvmc/shader/mc/read_field_x0y1_uv_igd.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_field_x0y1_y.g4i (renamed from src/xvmc/shader/mc/read_field_x0y1_y.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_field_x0y1_y_igd.g4i (renamed from src/xvmc/shader/mc/read_field_x0y1_y_igd.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_field_x1y0_uv.g4i (renamed from src/xvmc/shader/mc/read_field_x1y0_uv.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_field_x1y0_uv_igd.g4i (renamed from src/xvmc/shader/mc/read_field_x1y0_uv_igd.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_field_x1y0_y.g4i (renamed from src/xvmc/shader/mc/read_field_x1y0_y.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_field_x1y0_y_igd.g4i (renamed from src/xvmc/shader/mc/read_field_x1y0_y_igd.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_field_x1y1_uv.g4i (renamed from src/xvmc/shader/mc/read_field_x1y1_uv.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_field_x1y1_uv_igd.g4i (renamed from src/xvmc/shader/mc/read_field_x1y1_uv_igd.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_field_x1y1_y.g4i (renamed from src/xvmc/shader/mc/read_field_x1y1_y.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_field_x1y1_y_igd.g4i (renamed from src/xvmc/shader/mc/read_field_x1y1_y_igd.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_frame_x0y0_uv.g4i (renamed from src/xvmc/shader/mc/read_frame_x0y0_uv.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_frame_x0y0_uv_igd.g4i (renamed from src/xvmc/shader/mc/read_frame_x0y0_uv_igd.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_frame_x0y0_y.g4i (renamed from src/xvmc/shader/mc/read_frame_x0y0_y.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_frame_x0y0_y_igd.g4i (renamed from src/xvmc/shader/mc/read_frame_x0y0_y_igd.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_frame_x0y1_uv.g4i (renamed from src/xvmc/shader/mc/read_frame_x0y1_uv.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_frame_x0y1_uv_igd.g4i (renamed from src/xvmc/shader/mc/read_frame_x0y1_uv_igd.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_frame_x0y1_y.g4i (renamed from src/xvmc/shader/mc/read_frame_x0y1_y.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_frame_x0y1_y_igd.g4i (renamed from src/xvmc/shader/mc/read_frame_x0y1_y_igd.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_frame_x1y0_uv.g4i (renamed from src/xvmc/shader/mc/read_frame_x1y0_uv.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_frame_x1y0_uv_igd.g4i (renamed from src/xvmc/shader/mc/read_frame_x1y0_uv_igd.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_frame_x1y0_y.g4i (renamed from src/xvmc/shader/mc/read_frame_x1y0_y.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_frame_x1y0_y_igd.g4i (renamed from src/xvmc/shader/mc/read_frame_x1y0_y_igd.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_frame_x1y1_uv.g4i (renamed from src/xvmc/shader/mc/read_frame_x1y1_uv.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_frame_x1y1_uv_igd.g4i (renamed from src/xvmc/shader/mc/read_frame_x1y1_uv_igd.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_frame_x1y1_y.g4i (renamed from src/xvmc/shader/mc/read_frame_x1y1_y.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/mc/read_frame_x1y1_y_igd.g4i (renamed from src/xvmc/shader/mc/read_frame_x1y1_y_igd.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/Makefile.am (renamed from src/xvmc/shader/vld/Makefile.am) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/addidct.g4i (renamed from src/xvmc/shader/vld/addidct.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/do_iq_intra.g4i (renamed from src/xvmc/shader/vld/do_iq_intra.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/do_iq_non_intra.g4i (renamed from src/xvmc/shader/vld/do_iq_non_intra.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/field_backward.g4a (renamed from src/xvmc/shader/vld/field_backward.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/field_backward.g4b (renamed from src/xvmc/shader/vld/field_backward.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/field_backward.g4b.gen5 (renamed from src/xvmc/shader/vld/field_backward.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/field_f_b.g4a (renamed from src/xvmc/shader/vld/field_f_b.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/field_f_b.g4b (renamed from src/xvmc/shader/vld/field_f_b.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/field_f_b.g4b.gen5 (renamed from src/xvmc/shader/vld/field_f_b.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/field_forward.g4a (renamed from src/xvmc/shader/vld/field_forward.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/field_forward.g4b (renamed from src/xvmc/shader/vld/field_forward.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/field_forward.g4b.gen5 (renamed from src/xvmc/shader/vld/field_forward.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/frame_backward.g4a (renamed from src/xvmc/shader/vld/frame_backward.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/frame_backward.g4b (renamed from src/xvmc/shader/vld/frame_backward.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/frame_backward.g4b.gen5 (renamed from src/xvmc/shader/vld/frame_backward.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/frame_f_b.g4a (renamed from src/xvmc/shader/vld/frame_f_b.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/frame_f_b.g4b (renamed from src/xvmc/shader/vld/frame_f_b.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/frame_f_b.g4b.gen5 (renamed from src/xvmc/shader/vld/frame_f_b.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/frame_forward.g4a (renamed from src/xvmc/shader/vld/frame_forward.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/frame_forward.g4b (renamed from src/xvmc/shader/vld/frame_forward.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/frame_forward.g4b.gen5 (renamed from src/xvmc/shader/vld/frame_forward.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/idct.g4i (renamed from src/xvmc/shader/vld/idct.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/ipicture.g4a (renamed from src/xvmc/shader/vld/ipicture.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/ipicture.g4b (renamed from src/xvmc/shader/vld/ipicture.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/ipicture.g4b.gen5 (renamed from src/xvmc/shader/vld/ipicture.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/iq_intra.g4i (renamed from src/xvmc/shader/vld/iq_intra.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/iq_non_intra.g4i (renamed from src/xvmc/shader/vld/iq_non_intra.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/lib.g4a (renamed from src/xvmc/shader/vld/lib.g4a) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/lib.g4b (renamed from src/xvmc/shader/vld/lib.g4b) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/lib.g4b.gen5 (renamed from src/xvmc/shader/vld/lib.g4b.gen5) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/motion_field_uv.g4i (renamed from src/xvmc/shader/vld/motion_field_uv.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/motion_field_y.g4i (renamed from src/xvmc/shader/vld/motion_field_y.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/motion_frame_uv.g4i (renamed from src/xvmc/shader/vld/motion_frame_uv.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/motion_frame_y.g4i (renamed from src/xvmc/shader/vld/motion_frame_y.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/read_field_x0y0_uv.g4i (renamed from src/xvmc/shader/vld/read_field_x0y0_uv.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/read_field_x0y0_y.g4i (renamed from src/xvmc/shader/vld/read_field_x0y0_y.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/read_field_x0y1_uv.g4i (renamed from src/xvmc/shader/vld/read_field_x0y1_uv.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/read_field_x0y1_y.g4i (renamed from src/xvmc/shader/vld/read_field_x0y1_y.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/read_field_x1y0_uv.g4i (renamed from src/xvmc/shader/vld/read_field_x1y0_uv.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/read_field_x1y0_y.g4i (renamed from src/xvmc/shader/vld/read_field_x1y0_y.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/read_field_x1y1_uv.g4i (renamed from src/xvmc/shader/vld/read_field_x1y1_uv.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/read_field_x1y1_y.g4i (renamed from src/xvmc/shader/vld/read_field_x1y1_y.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/read_frame_x0y0_uv.g4i (renamed from src/xvmc/shader/vld/read_frame_x0y0_uv.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/read_frame_x0y0_y.g4i (renamed from src/xvmc/shader/vld/read_frame_x0y0_y.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/read_frame_x0y1_uv.g4i (renamed from src/xvmc/shader/vld/read_frame_x0y1_uv.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/read_frame_x0y1_y.g4i (renamed from src/xvmc/shader/vld/read_frame_x0y1_y.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/read_frame_x1y0_uv.g4i (renamed from src/xvmc/shader/vld/read_frame_x1y0_uv.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/read_frame_x1y0_y.g4i (renamed from src/xvmc/shader/vld/read_frame_x1y0_y.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/read_frame_x1y1_uv.g4i (renamed from src/xvmc/shader/vld/read_frame_x1y1_uv.g4i) | 0 | ||||
-rw-r--r-- | xvmc/shader/vld/read_frame_x1y1_y.g4i (renamed from src/xvmc/shader/vld/read_frame_x1y1_y.g4i) | 0 | ||||
-rw-r--r-- | xvmc/xvmc_vld.c (renamed from src/xvmc/xvmc_vld.c) | 3 |
205 files changed, 4877 insertions, 111 deletions
diff --git a/Makefile.am b/Makefile.am index b4b027d1..75913a62 100644 --- a/Makefile.am +++ b/Makefile.am | |||
@@ -20,7 +20,7 @@ | |||
20 | 20 | ||
21 | ACLOCAL_AMFLAGS = ${ACLOCAL_FLAGS} -I m4 | 21 | ACLOCAL_AMFLAGS = ${ACLOCAL_FLAGS} -I m4 |
22 | 22 | ||
23 | SUBDIRS = man | 23 | SUBDIRS = man xvmc |
24 | 24 | ||
25 | if UXA | 25 | if UXA |
26 | SUBDIRS += uxa | 26 | SUBDIRS += uxa |
diff --git a/configure.ac b/configure.ac index 3987461a..0eadbabf 100644 --- a/configure.ac +++ b/configure.ac | |||
@@ -506,20 +506,21 @@ AC_SUBST([moduledir]) | |||
506 | 506 | ||
507 | AC_CONFIG_FILES([ | 507 | AC_CONFIG_FILES([ |
508 | Makefile | 508 | Makefile |
509 | man/Makefile | ||
509 | uxa/Makefile | 510 | uxa/Makefile |
510 | src/Makefile | 511 | src/Makefile |
511 | src/xvmc/Makefile | ||
512 | src/xvmc/shader/Makefile | ||
513 | src/xvmc/shader/mc/Makefile | ||
514 | src/xvmc/shader/vld/Makefile | ||
515 | src/legacy/Makefile | 512 | src/legacy/Makefile |
516 | src/legacy/i810/Makefile | 513 | src/legacy/i810/Makefile |
517 | src/legacy/i810/xvmc/Makefile | 514 | src/legacy/i810/xvmc/Makefile |
515 | src/render_program/Makefile | ||
518 | src/sna/Makefile | 516 | src/sna/Makefile |
519 | src/sna/brw/Makefile | 517 | src/sna/brw/Makefile |
520 | src/sna/fb/Makefile | 518 | src/sna/fb/Makefile |
521 | man/Makefile | 519 | src/uxa/Makefile |
522 | src/render_program/Makefile | 520 | xvmc/Makefile |
521 | xvmc/shader/Makefile | ||
522 | xvmc/shader/mc/Makefile | ||
523 | xvmc/shader/vld/Makefile | ||
523 | test/Makefile | 524 | test/Makefile |
524 | ]) | 525 | ]) |
525 | AC_OUTPUT | 526 | AC_OUTPUT |
diff --git a/src/Makefile.am b/src/Makefile.am index 098a94a9..9df09159 100644 --- a/src/Makefile.am +++ b/src/Makefile.am | |||
@@ -18,7 +18,7 @@ | |||
18 | # IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN | 18 | # IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN |
19 | # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | 19 | # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
20 | 20 | ||
21 | SUBDIRS = xvmc render_program legacy | 21 | SUBDIRS = render_program legacy |
22 | 22 | ||
23 | # this is obnoxious: | 23 | # this is obnoxious: |
24 | # -module lets us name the module exactly how we want | 24 | # -module lets us name the module exactly how we want |
@@ -38,6 +38,11 @@ SUBDIRS += sna | |||
38 | intel_drv_la_LIBADD += sna/libsna.la | 38 | intel_drv_la_LIBADD += sna/libsna.la |
39 | endif | 39 | endif |
40 | 40 | ||
41 | if UXA | ||
42 | SUBDIRS += uxa | ||
43 | intel_drv_la_LIBADD += uxa/libuxa.la | ||
44 | endif | ||
45 | |||
41 | NULL:=# | 46 | NULL:=# |
42 | 47 | ||
43 | intel_drv_la_SOURCES = \ | 48 | intel_drv_la_SOURCES = \ |
@@ -45,70 +50,12 @@ intel_drv_la_SOURCES = \ | |||
45 | intel_list.h \ | 50 | intel_list.h \ |
46 | intel_options.h \ | 51 | intel_options.h \ |
47 | intel_device.c \ | 52 | intel_device.c \ |
53 | intel_driver.h \ | ||
48 | intel_options.c \ | 54 | intel_options.c \ |
49 | intel_module.c \ | 55 | intel_module.c \ |
50 | compat-api.h \ | 56 | compat-api.h \ |
51 | $(NULL) | 57 | $(NULL) |
52 | 58 | ||
53 | if UXA | ||
54 | AM_CFLAGS += @UDEV_CFLAGS@ @DRM_CFLAGS@ @DRMINTEL_CFLAGS@ | ||
55 | AM_CFLAGS += -I$(top_srcdir)/uxa -I$(top_srcdir)/src/render_program | ||
56 | intel_drv_la_LIBADD += @UDEV_LIBS@ @DRMINTEL_LIBS@ @DRM_LIBS@ ../uxa/libuxa.la | ||
57 | intel_drv_la_SOURCES += \ | ||
58 | brw_defines.h \ | ||
59 | brw_structs.h \ | ||
60 | common.h \ | ||
61 | intel.h \ | ||
62 | intel_batchbuffer.c \ | ||
63 | intel_batchbuffer.h \ | ||
64 | intel_display.c \ | ||
65 | intel_driver.c \ | ||
66 | intel_driver.h \ | ||
67 | intel_glamor.h \ | ||
68 | intel_memory.c \ | ||
69 | intel_uxa.c \ | ||
70 | intel_video.c \ | ||
71 | intel_video.h \ | ||
72 | i830_3d.c \ | ||
73 | i830_render.c \ | ||
74 | i830_reg.h \ | ||
75 | i915_3d.h \ | ||
76 | i915_reg.h \ | ||
77 | i915_3d.c \ | ||
78 | i915_render.c \ | ||
79 | i915_video.c \ | ||
80 | i965_reg.h \ | ||
81 | i965_3d.c \ | ||
82 | i965_video.c \ | ||
83 | i965_render.c \ | ||
84 | $(NULL) | ||
85 | |||
86 | if GLAMOR | ||
87 | AM_CFLAGS += @LIBGLAMOR_CFLAGS@ | ||
88 | intel_drv_la_LIBADD += @LIBGLAMOR_LIBS@ | ||
89 | intel_drv_la_SOURCES += \ | ||
90 | intel_glamor.c \ | ||
91 | $(NULL) | ||
92 | endif | ||
93 | |||
94 | if DRI2 | ||
95 | intel_drv_la_SOURCES += \ | ||
96 | intel_dri.c \ | ||
97 | $(NULL) | ||
98 | intel_drv_la_LIBADD += \ | ||
99 | $(DRI_LIBS) \ | ||
100 | @CLOCK_GETTIME_LIBS@ \ | ||
101 | $(NULL) | ||
102 | endif | ||
103 | |||
104 | if XVMC | ||
105 | intel_drv_la_SOURCES += \ | ||
106 | intel_hwmc.h \ | ||
107 | intel_hwmc.c \ | ||
108 | $(NULL) | ||
109 | endif | ||
110 | endif | ||
111 | |||
112 | EXTRA_DIST = \ | 59 | EXTRA_DIST = \ |
113 | scripts/clock.5c \ | 60 | scripts/clock.5c \ |
114 | scripts/clock-graph.5c \ | 61 | scripts/clock-graph.5c \ |
diff --git a/src/intel_module.c b/src/intel_module.c index 005e4185..90643d35 100644 --- a/src/intel_module.c +++ b/src/intel_module.c | |||
@@ -28,6 +28,7 @@ | |||
28 | #include "config.h" | 28 | #include "config.h" |
29 | #endif | 29 | #endif |
30 | 30 | ||
31 | #include <xf86.h> | ||
31 | #include <xf86Parser.h> | 32 | #include <xf86Parser.h> |
32 | #include <xorgVersion.h> | 33 | #include <xorgVersion.h> |
33 | 34 | ||
@@ -35,11 +36,11 @@ | |||
35 | #include <xf86Resources.h> | 36 | #include <xf86Resources.h> |
36 | #endif | 37 | #endif |
37 | 38 | ||
38 | #include "common.h" | ||
39 | #include "intel_driver.h" | 39 | #include "intel_driver.h" |
40 | #include "intel_options.h" | 40 | #include "intel_options.h" |
41 | #include "legacy/legacy.h" | 41 | #include "legacy/legacy.h" |
42 | #include "sna/sna_module.h" | 42 | #include "sna/sna_module.h" |
43 | #include "uxa/uxa_module.h" | ||
43 | 44 | ||
44 | #include "i915_pciids.h" /* copied from (kernel) include/drm/i915_pciids.h */ | 45 | #include "i915_pciids.h" /* copied from (kernel) include/drm/i915_pciids.h */ |
45 | 46 | ||
diff --git a/src/uxa/Makefile.am b/src/uxa/Makefile.am new file mode 100644 index 00000000..5f89cfc2 --- /dev/null +++ b/src/uxa/Makefile.am | |||
@@ -0,0 +1,79 @@ | |||
1 | # Copyright 2005 Adam Jackson. | ||
2 | # | ||
3 | # Permission is hereby granted, free of charge, to any person obtaining a | ||
4 | # copy of this software and associated documentation files (the "Software"), | ||
5 | # to deal in the Software without restriction, including without limitation | ||
6 | # on the rights to use, copy, modify, merge, publish, distribute, sub | ||
7 | # license, and/or sell copies of the Software, and to permit persons to whom | ||
8 | # the Software is furnished to do so, subject to the following conditions: | ||
9 | # | ||
10 | # The above copyright notice and this permission notice (including the next | ||
11 | # paragraph) shall be included in all copies or substantial portions of the | ||
12 | # Software. | ||
13 | # | ||
14 | # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
15 | # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
16 | # FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL | ||
17 | # ADAM JACKSON BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER | ||
18 | # IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN | ||
19 | # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
20 | |||
21 | AM_CFLAGS = @CWARNFLAGS@ @XORG_CFLAGS@ @DRM_CFLAGS@ @PCIACCESS_CFLAGS@ | ||
22 | AM_CFLAGS += @UDEV_CFLAGS@ @DRM_CFLAGS@ @DRMINTEL_CFLAGS@ | ||
23 | AM_CFLAGS += -I$(top_srcdir)/uxa -I$(top_srcdir)/src -I$(top_srcdir)/src/render_program | ||
24 | |||
25 | noinst_LTLIBRARIES = libuxa.la | ||
26 | libuxa_la_LIBADD = @UDEV_LIBS@ @DRMINTEL_LIBS@ @DRM_LIBS@ $(top_builddir)/uxa/libuxa.la | ||
27 | libuxa_la_SOURCES = \ | ||
28 | brw_defines.h \ | ||
29 | brw_structs.h \ | ||
30 | common.h \ | ||
31 | intel.h \ | ||
32 | intel_batchbuffer.c \ | ||
33 | intel_batchbuffer.h \ | ||
34 | intel_display.c \ | ||
35 | intel_driver.c \ | ||
36 | intel_glamor.h \ | ||
37 | intel_memory.c \ | ||
38 | intel_uxa.c \ | ||
39 | intel_video.c \ | ||
40 | intel_video.h \ | ||
41 | i830_3d.c \ | ||
42 | i830_render.c \ | ||
43 | i830_reg.h \ | ||
44 | i915_3d.h \ | ||
45 | i915_reg.h \ | ||
46 | i915_3d.c \ | ||
47 | i915_render.c \ | ||
48 | i915_video.c \ | ||
49 | i965_reg.h \ | ||
50 | i965_3d.c \ | ||
51 | i965_video.c \ | ||
52 | i965_render.c \ | ||
53 | uxa_module.h \ | ||
54 | $(NULL) | ||
55 | |||
56 | if GLAMOR | ||
57 | AM_CFLAGS += @LIBGLAMOR_CFLAGS@ | ||
58 | libuxa_la_LIBADD += @LIBGLAMOR_LIBS@ | ||
59 | libuxa_la_SOURCES += \ | ||
60 | intel_glamor.c \ | ||
61 | $(NULL) | ||
62 | endif | ||
63 | |||
64 | if DRI2 | ||
65 | libuxa_la_SOURCES += \ | ||
66 | intel_dri.c \ | ||
67 | $(NULL) | ||
68 | libuxa_la_LIBADD += \ | ||
69 | $(DRI_LIBS) \ | ||
70 | @CLOCK_GETTIME_LIBS@ \ | ||
71 | $(NULL) | ||
72 | endif | ||
73 | |||
74 | if XVMC | ||
75 | AM_CFLAGS += -I$(top_srcdir)/xvmc | ||
76 | libuxa_la_SOURCES += \ | ||
77 | intel_hwmc.c \ | ||
78 | $(NULL) | ||
79 | endif | ||
diff --git a/src/brw_defines.h b/src/uxa/brw_defines.h index e580a8f4..e580a8f4 100644 --- a/src/brw_defines.h +++ b/src/uxa/brw_defines.h | |||
diff --git a/src/brw_structs.h b/src/uxa/brw_structs.h index 20c2f857..20c2f857 100644 --- a/src/brw_structs.h +++ b/src/uxa/brw_structs.h | |||
diff --git a/src/common.h b/src/uxa/common.h index 86e5b11d..4f55846b 100644 --- a/src/common.h +++ b/src/uxa/common.h | |||
@@ -55,8 +55,6 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | |||
55 | #define KB(x) ((x) * 1024) | 55 | #define KB(x) ((x) * 1024) |
56 | #define MB(x) ((x) * KB(1024)) | 56 | #define MB(x) ((x) * KB(1024)) |
57 | 57 | ||
58 | extern Bool intel_init_scrn(ScrnInfoPtr scrn); | ||
59 | |||
60 | /** | 58 | /** |
61 | * Hints to CreatePixmap to tell the driver how the pixmap is going to be | 59 | * Hints to CreatePixmap to tell the driver how the pixmap is going to be |
62 | * used. | 60 | * used. |
diff --git a/src/i830_3d.c b/src/uxa/i830_3d.c index 10432011..10432011 100644 --- a/src/i830_3d.c +++ b/src/uxa/i830_3d.c | |||
diff --git a/src/i830_reg.h b/src/uxa/i830_reg.h index 93d03cf3..93d03cf3 100644 --- a/src/i830_reg.h +++ b/src/uxa/i830_reg.h | |||
diff --git a/src/i830_render.c b/src/uxa/i830_render.c index e169cc11..e169cc11 100644 --- a/src/i830_render.c +++ b/src/uxa/i830_render.c | |||
diff --git a/src/i915_3d.c b/src/uxa/i915_3d.c index 77db5685..77db5685 100644 --- a/src/i915_3d.c +++ b/src/uxa/i915_3d.c | |||
diff --git a/src/i915_3d.h b/src/uxa/i915_3d.h index 04531f33..04531f33 100644 --- a/src/i915_3d.h +++ b/src/uxa/i915_3d.h | |||
diff --git a/src/i915_reg.h b/src/uxa/i915_reg.h index 746a4131..746a4131 100644 --- a/src/i915_reg.h +++ b/src/uxa/i915_reg.h | |||
diff --git a/src/i915_render.c b/src/uxa/i915_render.c index 6d3400e7..6d3400e7 100644 --- a/src/i915_render.c +++ b/src/uxa/i915_render.c | |||
diff --git a/src/i915_video.c b/src/uxa/i915_video.c index ae2e6bb5..ae2e6bb5 100644 --- a/src/i915_video.c +++ b/src/uxa/i915_video.c | |||
diff --git a/src/i965_3d.c b/src/uxa/i965_3d.c index fe2d9aa6..fe2d9aa6 100644 --- a/src/i965_3d.c +++ b/src/uxa/i965_3d.c | |||
diff --git a/src/i965_reg.h b/src/uxa/i965_reg.h index 4bb5e4d2..4bb5e4d2 100644 --- a/src/i965_reg.h +++ b/src/uxa/i965_reg.h | |||
diff --git a/src/i965_render.c b/src/uxa/i965_render.c index 39698b0d..39698b0d 100644 --- a/src/i965_render.c +++ b/src/uxa/i965_render.c | |||
diff --git a/src/i965_video.c b/src/uxa/i965_video.c index 65f60612..5706b201 100644 --- a/src/i965_video.c +++ b/src/uxa/i965_video.c | |||
@@ -36,7 +36,7 @@ | |||
36 | #include "fourcc.h" | 36 | #include "fourcc.h" |
37 | 37 | ||
38 | #include "intel.h" | 38 | #include "intel.h" |
39 | #include "intel_hwmc.h" | 39 | #include "intel_xvmc.h" |
40 | #include "intel_video.h" | 40 | #include "intel_video.h" |
41 | #include "i830_reg.h" | 41 | #include "i830_reg.h" |
42 | #include "i965_reg.h" | 42 | #include "i965_reg.h" |
diff --git a/src/intel.h b/src/uxa/intel.h index d4c9aff2..d4c9aff2 100644 --- a/src/intel.h +++ b/src/uxa/intel.h | |||
diff --git a/src/intel_batchbuffer.c b/src/uxa/intel_batchbuffer.c index a44a1563..a44a1563 100644 --- a/src/intel_batchbuffer.c +++ b/src/uxa/intel_batchbuffer.c | |||
diff --git a/src/intel_batchbuffer.h b/src/uxa/intel_batchbuffer.h index b2bb390c..b2bb390c 100644 --- a/src/intel_batchbuffer.h +++ b/src/uxa/intel_batchbuffer.h | |||
diff --git a/src/intel_display.c b/src/uxa/intel_display.c index 0acb86d4..0acb86d4 100644 --- a/src/intel_display.c +++ b/src/uxa/intel_display.c | |||
diff --git a/src/intel_dri.c b/src/uxa/intel_dri.c index 03700343..03700343 100644 --- a/src/intel_dri.c +++ b/src/uxa/intel_dri.c | |||
diff --git a/src/intel_driver.c b/src/uxa/intel_driver.c index f4d76bb4..726f0b8b 100644 --- a/src/intel_driver.c +++ b/src/uxa/intel_driver.c | |||
@@ -66,7 +66,7 @@ USE OR OTHER DEALINGS IN THE SOFTWARE. | |||
66 | 66 | ||
67 | #ifdef INTEL_XVMC | 67 | #ifdef INTEL_XVMC |
68 | #define _INTEL_XVMC_SERVER_ | 68 | #define _INTEL_XVMC_SERVER_ |
69 | #include "intel_hwmc.h" | 69 | #include "intel_xvmc.h" |
70 | #endif | 70 | #endif |
71 | 71 | ||
72 | #include "legacy/legacy.h" | 72 | #include "legacy/legacy.h" |
diff --git a/src/intel_glamor.c b/src/uxa/intel_glamor.c index 0c4e3a77..0c4e3a77 100644 --- a/src/intel_glamor.c +++ b/src/uxa/intel_glamor.c | |||
diff --git a/src/intel_glamor.h b/src/uxa/intel_glamor.h index 46692bc8..46692bc8 100644 --- a/src/intel_glamor.h +++ b/src/uxa/intel_glamor.h | |||
diff --git a/src/intel_hwmc.c b/src/uxa/intel_hwmc.c index 25978d22..f991aa65 100644 --- a/src/intel_hwmc.c +++ b/src/uxa/intel_hwmc.c | |||
@@ -30,7 +30,7 @@ | |||
30 | 30 | ||
31 | #define _INTEL_XVMC_SERVER_ | 31 | #define _INTEL_XVMC_SERVER_ |
32 | #include "intel.h" | 32 | #include "intel.h" |
33 | #include "intel_hwmc.h" | 33 | #include "intel_xvmc.h" |
34 | 34 | ||
35 | #include <X11/extensions/Xv.h> | 35 | #include <X11/extensions/Xv.h> |
36 | #include <X11/extensions/XvMC.h> | 36 | #include <X11/extensions/XvMC.h> |
diff --git a/src/intel_memory.c b/src/uxa/intel_memory.c index e51fa33a..e51fa33a 100644 --- a/src/intel_memory.c +++ b/src/uxa/intel_memory.c | |||
diff --git a/src/intel_uxa.c b/src/uxa/intel_uxa.c index 2f141735..2f141735 100644 --- a/src/intel_uxa.c +++ b/src/uxa/intel_uxa.c | |||
diff --git a/src/intel_video.c b/src/uxa/intel_video.c index 6cce1824..c74b793b 100644 --- a/src/intel_video.c +++ b/src/uxa/intel_video.c | |||
@@ -75,7 +75,7 @@ | |||
75 | 75 | ||
76 | #ifdef INTEL_XVMC | 76 | #ifdef INTEL_XVMC |
77 | #define _INTEL_XVMC_SERVER_ | 77 | #define _INTEL_XVMC_SERVER_ |
78 | #include "intel_hwmc.h" | 78 | #include "intel_xvmc.h" |
79 | #endif | 79 | #endif |
80 | 80 | ||
81 | #define OFF_DELAY 250 /* milliseconds */ | 81 | #define OFF_DELAY 250 /* milliseconds */ |
diff --git a/src/intel_video.h b/src/uxa/intel_video.h index f405d40b..f405d40b 100644 --- a/src/intel_video.h +++ b/src/uxa/intel_video.h | |||
diff --git a/src/uxa/uxa_module.h b/src/uxa/uxa_module.h new file mode 100644 index 00000000..7a248f08 --- /dev/null +++ b/src/uxa/uxa_module.h | |||
@@ -0,0 +1,6 @@ | |||
1 | #ifndef INTEL_MODULE_H | ||
2 | #define INTEL_MODULE_H | ||
3 | |||
4 | extern Bool intel_init_scrn(ScrnInfoPtr scrn); | ||
5 | |||
6 | #endif /* INTEL_MODULE_H */ | ||
diff --git a/src/xvmc/Makefile.am b/src/xvmc/Makefile.am deleted file mode 100644 index 51c98b0c..00000000 --- a/src/xvmc/Makefile.am +++ /dev/null | |||
@@ -1,24 +0,0 @@ | |||
1 | if XVMC | ||
2 | lib_LTLIBRARIES=libIntelXvMC.la | ||
3 | endif | ||
4 | |||
5 | SUBDIRS = shader | ||
6 | |||
7 | libIntelXvMC_la_SOURCES = intel_xvmc.c \ | ||
8 | intel_xvmc.h \ | ||
9 | intel_xvmc_dump.c \ | ||
10 | i915_structs.h \ | ||
11 | i915_program.h \ | ||
12 | i915_xvmc.c \ | ||
13 | i915_xvmc.h \ | ||
14 | i965_xvmc.c \ | ||
15 | xvmc_vld.c \ | ||
16 | intel_batchbuffer.c \ | ||
17 | intel_batchbuffer.h | ||
18 | |||
19 | AM_CFLAGS = @XORG_CFLAGS@ @DRM_CFLAGS@ @DRI_CFLAGS@ \ | ||
20 | @XVMCLIB_CFLAGS@ @XCB_CFLAGS@ \ | ||
21 | -I$(top_srcdir)/src -DTRUE=1 -DFALSE=0 | ||
22 | |||
23 | libIntelXvMC_la_LDFLAGS = -version-number 1:0:0 | ||
24 | libIntelXvMC_la_LIBADD = @DRI_LIBS@ @DRM_LIBS@ @XVMCLIB_LIBS@ @XCB_LIBS@ @DRMINTEL_LIBS@ -lpthread | ||
diff --git a/uxa/Makefile.am b/uxa/Makefile.am index 9763637a..2d10f229 100644 --- a/uxa/Makefile.am +++ b/uxa/Makefile.am | |||
@@ -4,7 +4,7 @@ noinst_LTLIBRARIES = libuxa.la | |||
4 | # built (in hw/xfree86/os-support/solaris) until after UXA is built | 4 | # built (in hw/xfree86/os-support/solaris) until after UXA is built |
5 | SOLARIS_ASM_CFLAGS="" | 5 | SOLARIS_ASM_CFLAGS="" |
6 | 6 | ||
7 | AM_CFLAGS = $(CWARNFLAGS) $(XORG_CFLAGS) | 7 | AM_CFLAGS = $(CWARNFLAGS) $(XORG_CFLAGS) -I$(top_srcdir)/src/uxa |
8 | 8 | ||
9 | if GLAMOR | 9 | if GLAMOR |
10 | AM_CFLAGS += @LIBGLAMOR_CFLAGS@ | 10 | AM_CFLAGS += @LIBGLAMOR_CFLAGS@ |
diff --git a/uxa/uxa-glyphs.c b/uxa/uxa-glyphs.c index f5d4d08b..b022c833 100644 --- a/uxa/uxa-glyphs.c +++ b/uxa/uxa-glyphs.c | |||
@@ -66,7 +66,7 @@ | |||
66 | 66 | ||
67 | #include "uxa-priv.h" | 67 | #include "uxa-priv.h" |
68 | #include "uxa-glamor.h" | 68 | #include "uxa-glamor.h" |
69 | #include "../src/common.h" | 69 | #include "common.h" |
70 | 70 | ||
71 | #include "mipict.h" | 71 | #include "mipict.h" |
72 | 72 | ||
diff --git a/xvmc/Makefile.am b/xvmc/Makefile.am new file mode 100644 index 00000000..dd884a51 --- /dev/null +++ b/xvmc/Makefile.am | |||
@@ -0,0 +1,32 @@ | |||
1 | if XVMC | ||
2 | lib_LTLIBRARIES=libIntelXvMC.la | ||
3 | endif | ||
4 | |||
5 | SUBDIRS = shader | ||
6 | |||
7 | libIntelXvMC_la_SOURCES = \ | ||
8 | intel_xvmc.c \ | ||
9 | intel_xvmc.h \ | ||
10 | intel_xvmc_private.h \ | ||
11 | intel_xvmc_dump.c \ | ||
12 | i830_reg.h \ | ||
13 | i915_reg.h \ | ||
14 | i915_structs.h \ | ||
15 | i915_program.h \ | ||
16 | i915_xvmc.c \ | ||
17 | i915_xvmc.h \ | ||
18 | brw_defines.h \ | ||
19 | brw_structs.h \ | ||
20 | i965_reg.h \ | ||
21 | i965_xvmc.c \ | ||
22 | xvmc_vld.c \ | ||
23 | intel_batchbuffer.c \ | ||
24 | intel_batchbuffer.h \ | ||
25 | $(NULL) | ||
26 | |||
27 | AM_CFLAGS = @XORG_CFLAGS@ @DRM_CFLAGS@ @DRI_CFLAGS@ \ | ||
28 | @XVMCLIB_CFLAGS@ @XCB_CFLAGS@ \ | ||
29 | -I$(top_srcdir)/src -DTRUE=1 -DFALSE=0 | ||
30 | |||
31 | libIntelXvMC_la_LDFLAGS = -version-number 1:0:0 | ||
32 | libIntelXvMC_la_LIBADD = @DRI_LIBS@ @DRM_LIBS@ @XVMCLIB_LIBS@ @XCB_LIBS@ @DRMINTEL_LIBS@ -lpthread | ||
diff --git a/xvmc/brw_defines.h b/xvmc/brw_defines.h new file mode 100644 index 00000000..e580a8f4 --- /dev/null +++ b/xvmc/brw_defines.h | |||
@@ -0,0 +1,881 @@ | |||
1 | /************************************************************************** | ||
2 | * | ||
3 | * Copyright 2005 Tungsten Graphics, Inc., Cedar Park, Texas. | ||
4 | * All Rights Reserved. | ||
5 | * | ||
6 | * Permission is hereby granted, free of charge, to any person obtaining a | ||
7 | * copy of this software and associated documentation files (the | ||
8 | * "Software"), to deal in the Software without restriction, including | ||
9 | * without limitation the rights to use, copy, modify, merge, publish, | ||
10 | * distribute, sub license, and/or sell copies of the Software, and to | ||
11 | * permit persons to whom the Software is furnished to do so, subject to | ||
12 | * the following conditions: | ||
13 | * | ||
14 | * The above copyright notice and this permission notice (including the | ||
15 | * next paragraph) shall be included in all copies or substantial portions | ||
16 | * of the Software. | ||
17 | * | ||
18 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS | ||
19 | * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | ||
20 | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. | ||
21 | * IN NO EVENT SHALL TUNGSTEN GRAPHICS AND/OR ITS SUPPLIERS BE LIABLE FOR | ||
22 | * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, | ||
23 | * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE | ||
24 | * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
25 | * | ||
26 | **************************************************************************/ | ||
27 | |||
28 | #ifndef BRW_DEFINES_H | ||
29 | #define BRW_DEFINES_H | ||
30 | |||
31 | /* | ||
32 | */ | ||
33 | #if 0 | ||
34 | #define MI_NOOP 0x00 | ||
35 | #define MI_USER_INTERRUPT 0x02 | ||
36 | #define MI_WAIT_FOR_EVENT 0x03 | ||
37 | #define MI_FLUSH 0x04 | ||
38 | #define MI_REPORT_HEAD 0x07 | ||
39 | #define MI_ARB_ON_OFF 0x08 | ||
40 | #define MI_BATCH_BUFFER_END 0x0A | ||
41 | #define MI_OVERLAY_FLIP 0x11 | ||
42 | #define MI_LOAD_SCAN_LINES_INCL 0x12 | ||
43 | #define MI_LOAD_SCAN_LINES_EXCL 0x13 | ||
44 | #define MI_DISPLAY_BUFFER_INFO 0x14 | ||
45 | #define MI_SET_CONTEXT 0x18 | ||
46 | #define MI_STORE_DATA_IMM 0x20 | ||
47 | #define MI_STORE_DATA_INDEX 0x21 | ||
48 | #define MI_LOAD_REGISTER_IMM 0x22 | ||
49 | #define MI_STORE_REGISTER_MEM 0x24 | ||
50 | #define MI_BATCH_BUFFER_START 0x31 | ||
51 | |||
52 | #define MI_SYNCHRONOUS_FLIP 0x0 | ||
53 | #define MI_ASYNCHRONOUS_FLIP 0x1 | ||
54 | |||
55 | #define MI_BUFFER_SECURE 0x0 | ||
56 | #define MI_BUFFER_NONSECURE 0x1 | ||
57 | |||
58 | #define MI_ARBITRATE_AT_CHAIN_POINTS 0x0 | ||
59 | #define MI_ARBITRATE_BETWEEN_INSTS 0x1 | ||
60 | #define MI_NO_ARBITRATION 0x3 | ||
61 | |||
62 | #define MI_CONDITION_CODE_WAIT_DISABLED 0x0 | ||
63 | #define MI_CONDITION_CODE_WAIT_0 0x1 | ||
64 | #define MI_CONDITION_CODE_WAIT_1 0x2 | ||
65 | #define MI_CONDITION_CODE_WAIT_2 0x3 | ||
66 | #define MI_CONDITION_CODE_WAIT_3 0x4 | ||
67 | #define MI_CONDITION_CODE_WAIT_4 0x5 | ||
68 | |||
69 | #define MI_DISPLAY_PIPE_A 0x0 | ||
70 | #define MI_DISPLAY_PIPE_B 0x1 | ||
71 | |||
72 | #define MI_DISPLAY_PLANE_A 0x0 | ||
73 | #define MI_DISPLAY_PLANE_B 0x1 | ||
74 | #define MI_DISPLAY_PLANE_C 0x2 | ||
75 | |||
76 | #define MI_STANDARD_FLIP 0x0 | ||
77 | #define MI_ENQUEUE_FLIP_PERFORM_BASE_FRAME_NUMBER_LOAD 0x1 | ||
78 | #define MI_ENQUEUE_FLIP_TARGET_FRAME_NUMBER_RELATIVE 0x2 | ||
79 | #define MI_ENQUEUE_FLIP_ABSOLUTE_TARGET_FRAME_NUMBER 0x3 | ||
80 | |||
81 | #define MI_PHYSICAL_ADDRESS 0x0 | ||
82 | #define MI_VIRTUAL_ADDRESS 0x1 | ||
83 | |||
84 | #define MI_BUFFER_MEMORY_MAIN 0x0 | ||
85 | #define MI_BUFFER_MEMORY_GTT 0x2 | ||
86 | #define MI_BUFFER_MEMORY_PER_PROCESS_GTT 0x3 | ||
87 | |||
88 | #define MI_FLIP_CONTINUE 0x0 | ||
89 | #define MI_FLIP_ON 0x1 | ||
90 | #define MI_FLIP_OFF 0x2 | ||
91 | |||
92 | #define MI_UNTRUSTED_REGISTER_SPACE 0x0 | ||
93 | #define MI_TRUSTED_REGISTER_SPACE 0x1 | ||
94 | #endif | ||
95 | |||
96 | /* 3D state: | ||
97 | */ | ||
98 | #define _3DOP_3DSTATE_PIPELINED 0x0 | ||
99 | #define _3DOP_3DSTATE_NONPIPELINED 0x1 | ||
100 | #define _3DOP_3DCONTROL 0x2 | ||
101 | #define _3DOP_3DPRIMITIVE 0x3 | ||
102 | |||
103 | #define _3DSTATE_PIPELINED_POINTERS 0x00 | ||
104 | #define _3DSTATE_BINDING_TABLE_POINTERS 0x01 | ||
105 | #define _3DSTATE_VERTEX_BUFFERS 0x08 | ||
106 | #define _3DSTATE_VERTEX_ELEMENTS 0x09 | ||
107 | #define _3DSTATE_INDEX_BUFFER 0x0A | ||
108 | #define _3DSTATE_VF_STATISTICS 0x0B | ||
109 | #define _3DSTATE_DRAWING_RECTANGLE 0x00 | ||
110 | #define _3DSTATE_CONSTANT_COLOR 0x01 | ||
111 | #define _3DSTATE_SAMPLER_PALETTE_LOAD 0x02 | ||
112 | #define _3DSTATE_CHROMA_KEY 0x04 | ||
113 | #define _3DSTATE_DEPTH_BUFFER 0x05 | ||
114 | #define _3DSTATE_POLY_STIPPLE_OFFSET 0x06 | ||
115 | #define _3DSTATE_POLY_STIPPLE_PATTERN 0x07 | ||
116 | #define _3DSTATE_LINE_STIPPLE 0x08 | ||
117 | #define _3DSTATE_GLOBAL_DEPTH_OFFSET_CLAMP 0x09 | ||
118 | #define _3DCONTROL 0x00 | ||
119 | #define _3DPRIMITIVE 0x00 | ||
120 | |||
121 | #define PIPE_CONTROL_NOWRITE 0x00 | ||
122 | #define PIPE_CONTROL_WRITEIMMEDIATE 0x01 | ||
123 | #define PIPE_CONTROL_WRITEDEPTH 0x02 | ||
124 | #define PIPE_CONTROL_WRITETIMESTAMP 0x03 | ||
125 | |||
126 | #define PIPE_CONTROL_GTTWRITE_PROCESS_LOCAL 0x00 | ||
127 | #define PIPE_CONTROL_GTTWRITE_GLOBAL 0x01 | ||
128 | |||
129 | #define _3DPRIM_POINTLIST 0x01 | ||
130 | #define _3DPRIM_LINELIST 0x02 | ||
131 | #define _3DPRIM_LINESTRIP 0x03 | ||
132 | #define _3DPRIM_TRILIST 0x04 | ||
133 | #define _3DPRIM_TRISTRIP 0x05 | ||
134 | #define _3DPRIM_TRIFAN 0x06 | ||
135 | #define _3DPRIM_QUADLIST 0x07 | ||
136 | #define _3DPRIM_QUADSTRIP 0x08 | ||
137 | #define _3DPRIM_LINELIST_ADJ 0x09 | ||
138 | #define _3DPRIM_LINESTRIP_ADJ 0x0A | ||
139 | #define _3DPRIM_TRILIST_ADJ 0x0B | ||
140 | #define _3DPRIM_TRISTRIP_ADJ 0x0C | ||
141 | #define _3DPRIM_TRISTRIP_REVERSE 0x0D | ||
142 | #define _3DPRIM_POLYGON 0x0E | ||
143 | #define _3DPRIM_RECTLIST 0x0F | ||
144 | #define _3DPRIM_LINELOOP 0x10 | ||
145 | #define _3DPRIM_POINTLIST_BF 0x11 | ||
146 | #define _3DPRIM_LINESTRIP_CONT 0x12 | ||
147 | #define _3DPRIM_LINESTRIP_BF 0x13 | ||
148 | #define _3DPRIM_LINESTRIP_CONT_BF 0x14 | ||
149 | #define _3DPRIM_TRIFAN_NOSTIPPLE 0x15 | ||
150 | |||
151 | #define _3DPRIM_VERTEXBUFFER_ACCESS_SEQUENTIAL 0 | ||
152 | #define _3DPRIM_VERTEXBUFFER_ACCESS_RANDOM 1 | ||
153 | |||
154 | #define BRW_ANISORATIO_2 0 | ||
155 | #define BRW_ANISORATIO_4 1 | ||
156 | #define BRW_ANISORATIO_6 2 | ||
157 | #define BRW_ANISORATIO_8 3 | ||
158 | #define BRW_ANISORATIO_10 4 | ||
159 | #define BRW_ANISORATIO_12 5 | ||
160 | #define BRW_ANISORATIO_14 6 | ||
161 | #define BRW_ANISORATIO_16 7 | ||
162 | |||
163 | #define BRW_BLENDFACTOR_ONE 0x1 | ||
164 | #define BRW_BLENDFACTOR_SRC_COLOR 0x2 | ||
165 | #define BRW_BLENDFACTOR_SRC_ALPHA 0x3 | ||
166 | #define BRW_BLENDFACTOR_DST_ALPHA 0x4 | ||
167 | #define BRW_BLENDFACTOR_DST_COLOR 0x5 | ||
168 | #define BRW_BLENDFACTOR_SRC_ALPHA_SATURATE 0x6 | ||
169 | #define BRW_BLENDFACTOR_CONST_COLOR 0x7 | ||
170 | #define BRW_BLENDFACTOR_CONST_ALPHA 0x8 | ||
171 | #define BRW_BLENDFACTOR_SRC1_COLOR 0x9 | ||
172 | #define BRW_BLENDFACTOR_SRC1_ALPHA 0x0A | ||
173 | #define BRW_BLENDFACTOR_ZERO 0x11 | ||
174 | #define BRW_BLENDFACTOR_INV_SRC_COLOR 0x12 | ||
175 | #define BRW_BLENDFACTOR_INV_SRC_ALPHA 0x13 | ||
176 | #define BRW_BLENDFACTOR_INV_DST_ALPHA 0x14 | ||
177 | #define BRW_BLENDFACTOR_INV_DST_COLOR 0x15 | ||
178 | #define BRW_BLENDFACTOR_INV_CONST_COLOR 0x17 | ||
179 | #define BRW_BLENDFACTOR_INV_CONST_ALPHA 0x18 | ||
180 | #define BRW_BLENDFACTOR_INV_SRC1_COLOR 0x19 | ||
181 | #define BRW_BLENDFACTOR_INV_SRC1_ALPHA 0x1A | ||
182 | |||
183 | #define BRW_BLENDFUNCTION_ADD 0 | ||
184 | #define BRW_BLENDFUNCTION_SUBTRACT 1 | ||
185 | #define BRW_BLENDFUNCTION_REVERSE_SUBTRACT 2 | ||
186 | #define BRW_BLENDFUNCTION_MIN 3 | ||
187 | #define BRW_BLENDFUNCTION_MAX 4 | ||
188 | |||
189 | #define BRW_ALPHATEST_FORMAT_UNORM8 0 | ||
190 | #define BRW_ALPHATEST_FORMAT_FLOAT32 1 | ||
191 | |||
192 | #define BRW_CHROMAKEY_KILL_ON_ANY_MATCH 0 | ||
193 | #define BRW_CHROMAKEY_REPLACE_BLACK 1 | ||
194 | |||
195 | #define BRW_CLIP_API_OGL 0 | ||
196 | #define BRW_CLIP_API_DX 1 | ||
197 | |||
198 | #define BRW_CLIPMODE_NORMAL 0 | ||
199 | #define BRW_CLIPMODE_CLIP_ALL 1 | ||
200 | #define BRW_CLIPMODE_CLIP_NON_REJECTED 2 | ||
201 | #define BRW_CLIPMODE_REJECT_ALL 3 | ||
202 | #define BRW_CLIPMODE_ACCEPT_ALL 4 | ||
203 | |||
204 | #define BRW_CLIP_NDCSPACE 0 | ||
205 | #define BRW_CLIP_SCREENSPACE 1 | ||
206 | |||
207 | #define BRW_COMPAREFUNCTION_ALWAYS 0 | ||
208 | #define BRW_COMPAREFUNCTION_NEVER 1 | ||
209 | #define BRW_COMPAREFUNCTION_LESS 2 | ||
210 | #define BRW_COMPAREFUNCTION_EQUAL 3 | ||
211 | #define BRW_COMPAREFUNCTION_LEQUAL 4 | ||
212 | #define BRW_COMPAREFUNCTION_GREATER 5 | ||
213 | #define BRW_COMPAREFUNCTION_NOTEQUAL 6 | ||
214 | #define BRW_COMPAREFUNCTION_GEQUAL 7 | ||
215 | |||
216 | #define BRW_COVERAGE_PIXELS_HALF 0 | ||
217 | #define BRW_COVERAGE_PIXELS_1 1 | ||
218 | #define BRW_COVERAGE_PIXELS_2 2 | ||
219 | #define BRW_COVERAGE_PIXELS_4 3 | ||
220 | |||
221 | #define BRW_CULLMODE_BOTH 0 | ||
222 | #define BRW_CULLMODE_NONE 1 | ||
223 | #define BRW_CULLMODE_FRONT 2 | ||
224 | #define BRW_CULLMODE_BACK 3 | ||
225 | |||
226 | #define BRW_DEFAULTCOLOR_R8G8B8A8_UNORM 0 | ||
227 | #define BRW_DEFAULTCOLOR_R32G32B32A32_FLOAT 1 | ||
228 | |||
229 | #define BRW_DEPTHFORMAT_D32_FLOAT_S8X24_UINT 0 | ||
230 | #define BRW_DEPTHFORMAT_D32_FLOAT 1 | ||
231 | #define BRW_DEPTHFORMAT_D24_UNORM_S8_UINT 2 | ||
232 | #define BRW_DEPTHFORMAT_D16_UNORM 5 | ||
233 | |||
234 | #define BRW_FLOATING_POINT_IEEE_754 0 | ||
235 | #define BRW_FLOATING_POINT_NON_IEEE_754 1 | ||
236 | |||
237 | #define BRW_FRONTWINDING_CW 0 | ||
238 | #define BRW_FRONTWINDING_CCW 1 | ||
239 | |||
240 | #define BRW_INDEX_BYTE 0 | ||
241 | #define BRW_INDEX_WORD 1 | ||
242 | #define BRW_INDEX_DWORD 2 | ||
243 | |||
244 | #define BRW_LOGICOPFUNCTION_CLEAR 0 | ||
245 | #define BRW_LOGICOPFUNCTION_NOR 1 | ||
246 | #define BRW_LOGICOPFUNCTION_AND_INVERTED 2 | ||
247 | #define BRW_LOGICOPFUNCTION_COPY_INVERTED 3 | ||
248 | #define BRW_LOGICOPFUNCTION_AND_REVERSE 4 | ||
249 | #define BRW_LOGICOPFUNCTION_INVERT 5 | ||
250 | #define BRW_LOGICOPFUNCTION_XOR 6 | ||
251 | #define BRW_LOGICOPFUNCTION_NAND 7 | ||
252 | #define BRW_LOGICOPFUNCTION_AND 8 | ||
253 | #define BRW_LOGICOPFUNCTION_EQUIV 9 | ||
254 | #define BRW_LOGICOPFUNCTION_NOOP 10 | ||
255 | #define BRW_LOGICOPFUNCTION_OR_INVERTED 11 | ||
256 | #define BRW_LOGICOPFUNCTION_COPY 12 | ||
257 | #define BRW_LOGICOPFUNCTION_OR_REVERSE 13 | ||
258 | #define BRW_LOGICOPFUNCTION_OR 14 | ||
259 | #define BRW_LOGICOPFUNCTION_SET 15 | ||
260 | |||
261 | #define BRW_MAPFILTER_NEAREST 0x0 | ||
262 | #define BRW_MAPFILTER_LINEAR 0x1 | ||
263 | #define BRW_MAPFILTER_ANISOTROPIC 0x2 | ||
264 | |||
265 | #define BRW_MIPFILTER_NONE 0 | ||
266 | #define BRW_MIPFILTER_NEAREST 1 | ||
267 | #define BRW_MIPFILTER_LINEAR 3 | ||
268 | |||
269 | #define BRW_POLYGON_FRONT_FACING 0 | ||
270 | #define BRW_POLYGON_BACK_FACING 1 | ||
271 | |||
272 | #define BRW_PREFILTER_ALWAYS 0x0 | ||
273 | #define BRW_PREFILTER_NEVER 0x1 | ||
274 | #define BRW_PREFILTER_LESS 0x2 | ||
275 | #define BRW_PREFILTER_EQUAL 0x3 | ||
276 | #define BRW_PREFILTER_LEQUAL 0x4 | ||
277 | #define BRW_PREFILTER_GREATER 0x5 | ||
278 | #define BRW_PREFILTER_NOTEQUAL 0x6 | ||
279 | #define BRW_PREFILTER_GEQUAL 0x7 | ||
280 | |||
281 | #define BRW_PROVOKING_VERTEX_0 0 | ||
282 | #define BRW_PROVOKING_VERTEX_1 1 | ||
283 | #define BRW_PROVOKING_VERTEX_2 2 | ||
284 | |||
285 | #define BRW_RASTRULE_UPPER_LEFT 0 | ||
286 | #define BRW_RASTRULE_UPPER_RIGHT 1 | ||
287 | |||
288 | #define BRW_RENDERTARGET_CLAMPRANGE_UNORM 0 | ||
289 | #define BRW_RENDERTARGET_CLAMPRANGE_SNORM 1 | ||
290 | #define BRW_RENDERTARGET_CLAMPRANGE_FORMAT 2 | ||
291 | |||
292 | #define BRW_STENCILOP_KEEP 0 | ||
293 | #define BRW_STENCILOP_ZERO 1 | ||
294 | #define BRW_STENCILOP_REPLACE 2 | ||
295 | #define BRW_STENCILOP_INCRSAT 3 | ||
296 | #define BRW_STENCILOP_DECRSAT 4 | ||
297 | #define BRW_STENCILOP_INCR 5 | ||
298 | #define BRW_STENCILOP_DECR 6 | ||
299 | #define BRW_STENCILOP_INVERT 7 | ||
300 | |||
301 | #define BRW_SURFACE_MIPMAPLAYOUT_BELOW 0 | ||
302 | #define BRW_SURFACE_MIPMAPLAYOUT_RIGHT 1 | ||
303 | |||
304 | #define BRW_SURFACEFORMAT_R32G32B32A32_FLOAT 0x000 | ||
305 | #define BRW_SURFACEFORMAT_R32G32B32A32_SINT 0x001 | ||
306 | #define BRW_SURFACEFORMAT_R32G32B32A32_UINT 0x002 | ||
307 | #define BRW_SURFACEFORMAT_R32G32B32A32_UNORM 0x003 | ||
308 | #define BRW_SURFACEFORMAT_R32G32B32A32_SNORM 0x004 | ||
309 | #define BRW_SURFACEFORMAT_R64G64_FLOAT 0x005 | ||
310 | #define BRW_SURFACEFORMAT_R32G32B32X32_FLOAT 0x006 | ||
311 | #define BRW_SURFACEFORMAT_R32G32B32A32_SSCALED 0x007 | ||
312 | #define BRW_SURFACEFORMAT_R32G32B32A32_USCALED 0x008 | ||
313 | #define BRW_SURFACEFORMAT_R32G32B32_FLOAT 0x040 | ||
314 | #define BRW_SURFACEFORMAT_R32G32B32_SINT 0x041 | ||
315 | #define BRW_SURFACEFORMAT_R32G32B32_UINT 0x042 | ||
316 | #define BRW_SURFACEFORMAT_R32G32B32_UNORM 0x043 | ||
317 | #define BRW_SURFACEFORMAT_R32G32B32_SNORM 0x044 | ||
318 | #define BRW_SURFACEFORMAT_R32G32B32_SSCALED 0x045 | ||
319 | #define BRW_SURFACEFORMAT_R32G32B32_USCALED 0x046 | ||
320 | #define BRW_SURFACEFORMAT_R16G16B16A16_UNORM 0x080 | ||
321 | #define BRW_SURFACEFORMAT_R16G16B16A16_SNORM 0x081 | ||
322 | #define BRW_SURFACEFORMAT_R16G16B16A16_SINT 0x082 | ||
323 | #define BRW_SURFACEFORMAT_R16G16B16A16_UINT 0x083 | ||
324 | #define BRW_SURFACEFORMAT_R16G16B16A16_FLOAT 0x084 | ||
325 | #define BRW_SURFACEFORMAT_R32G32_FLOAT 0x085 | ||
326 | #define BRW_SURFACEFORMAT_R32G32_SINT 0x086 | ||
327 | #define BRW_SURFACEFORMAT_R32G32_UINT 0x087 | ||
328 | #define BRW_SURFACEFORMAT_R32_FLOAT_X8X24_TYPELESS 0x088 | ||
329 | #define BRW_SURFACEFORMAT_X32_TYPELESS_G8X24_UINT 0x089 | ||
330 | #define BRW_SURFACEFORMAT_L32A32_FLOAT 0x08A | ||
331 | #define BRW_SURFACEFORMAT_R32G32_UNORM 0x08B | ||
332 | #define BRW_SURFACEFORMAT_R32G32_SNORM 0x08C | ||
333 | #define BRW_SURFACEFORMAT_R64_FLOAT 0x08D | ||
334 | #define BRW_SURFACEFORMAT_R16G16B16X16_UNORM 0x08E | ||
335 | #define BRW_SURFACEFORMAT_R16G16B16X16_FLOAT 0x08F | ||
336 | #define BRW_SURFACEFORMAT_A32X32_FLOAT 0x090 | ||
337 | #define BRW_SURFACEFORMAT_L32X32_FLOAT 0x091 | ||
338 | #define BRW_SURFACEFORMAT_I32X32_FLOAT 0x092 | ||
339 | #define BRW_SURFACEFORMAT_R16G16B16A16_SSCALED 0x093 | ||
340 | #define BRW_SURFACEFORMAT_R16G16B16A16_USCALED 0x094 | ||
341 | #define BRW_SURFACEFORMAT_R32G32_SSCALED 0x095 | ||
342 | #define BRW_SURFACEFORMAT_R32G32_USCALED 0x096 | ||
343 | #define BRW_SURFACEFORMAT_B8G8R8A8_UNORM 0x0C0 | ||
344 | #define BRW_SURFACEFORMAT_B8G8R8A8_UNORM_SRGB 0x0C1 | ||
345 | #define BRW_SURFACEFORMAT_R10G10B10A2_UNORM 0x0C2 | ||
346 | #define BRW_SURFACEFORMAT_R10G10B10A2_UNORM_SRGB 0x0C3 | ||
347 | #define BRW_SURFACEFORMAT_R10G10B10A2_UINT 0x0C4 | ||
348 | #define BRW_SURFACEFORMAT_R10G10B10_SNORM_A2_UNORM 0x0C5 | ||
349 | #define BRW_SURFACEFORMAT_R8G8B8A8_UNORM 0x0C7 | ||
350 | #define BRW_SURFACEFORMAT_R8G8B8A8_UNORM_SRGB 0x0C8 | ||
351 | #define BRW_SURFACEFORMAT_R8G8B8A8_SNORM 0x0C9 | ||
352 | #define BRW_SURFACEFORMAT_R8G8B8A8_SINT 0x0CA | ||
353 | #define BRW_SURFACEFORMAT_R8G8B8A8_UINT 0x0CB | ||
354 | #define BRW_SURFACEFORMAT_R16G16_UNORM 0x0CC | ||
355 | #define BRW_SURFACEFORMAT_R16G16_SNORM 0x0CD | ||
356 | #define BRW_SURFACEFORMAT_R16G16_SINT 0x0CE | ||
357 | #define BRW_SURFACEFORMAT_R16G16_UINT 0x0CF | ||
358 | #define BRW_SURFACEFORMAT_R16G16_FLOAT 0x0D0 | ||
359 | #define BRW_SURFACEFORMAT_B10G10R10A2_UNORM 0x0D1 | ||
360 | #define BRW_SURFACEFORMAT_B10G10R10A2_UNORM_SRGB 0x0D2 | ||
361 | #define BRW_SURFACEFORMAT_R11G11B10_FLOAT 0x0D3 | ||
362 | #define BRW_SURFACEFORMAT_R32_SINT 0x0D6 | ||
363 | #define BRW_SURFACEFORMAT_R32_UINT 0x0D7 | ||
364 | #define BRW_SURFACEFORMAT_R32_FLOAT 0x0D8 | ||
365 | #define BRW_SURFACEFORMAT_R24_UNORM_X8_TYPELESS 0x0D9 | ||
366 | #define BRW_SURFACEFORMAT_X24_TYPELESS_G8_UINT 0x0DA | ||
367 | #define BRW_SURFACEFORMAT_L16A16_UNORM 0x0DF | ||
368 | #define BRW_SURFACEFORMAT_I24X8_UNORM 0x0E0 | ||
369 | #define BRW_SURFACEFORMAT_L24X8_UNORM 0x0E1 | ||
370 | #define BRW_SURFACEFORMAT_A24X8_UNORM 0x0E2 | ||
371 | #define BRW_SURFACEFORMAT_I32_FLOAT 0x0E3 | ||
372 | #define BRW_SURFACEFORMAT_L32_FLOAT 0x0E4 | ||
373 | #define BRW_SURFACEFORMAT_A32_FLOAT 0x0E5 | ||
374 | #define BRW_SURFACEFORMAT_B8G8R8X8_UNORM 0x0E9 | ||
375 | #define BRW_SURFACEFORMAT_B8G8R8X8_UNORM_SRGB 0x0EA | ||
376 | #define BRW_SURFACEFORMAT_R8G8B8X8_UNORM 0x0EB | ||
377 | #define BRW_SURFACEFORMAT_R8G8B8X8_UNORM_SRGB 0x0EC | ||
378 | #define BRW_SURFACEFORMAT_R9G9B9E5_SHAREDEXP 0x0ED | ||
379 | #define BRW_SURFACEFORMAT_B10G10R10X2_UNORM 0x0EE | ||
380 | #define BRW_SURFACEFORMAT_L16A16_FLOAT 0x0F0 | ||
381 | #define BRW_SURFACEFORMAT_R32_UNORM 0x0F1 | ||
382 | #define BRW_SURFACEFORMAT_R32_SNORM 0x0F2 | ||
383 | #define BRW_SURFACEFORMAT_R10G10B10X2_USCALED 0x0F3 | ||
384 | #define BRW_SURFACEFORMAT_R8G8B8A8_SSCALED 0x0F4 | ||
385 | #define BRW_SURFACEFORMAT_R8G8B8A8_USCALED 0x0F5 | ||
386 | #define BRW_SURFACEFORMAT_R16G16_SSCALED 0x0F6 | ||
387 | #define BRW_SURFACEFORMAT_R16G16_USCALED 0x0F7 | ||
388 | #define BRW_SURFACEFORMAT_R32_SSCALED 0x0F8 | ||
389 | #define BRW_SURFACEFORMAT_R32_USCALED 0x0F9 | ||
390 | #define BRW_SURFACEFORMAT_B5G6R5_UNORM 0x100 | ||
391 | #define BRW_SURFACEFORMAT_B5G6R5_UNORM_SRGB 0x101 | ||
392 | #define BRW_SURFACEFORMAT_B5G5R5A1_UNORM 0x102 | ||
393 | #define BRW_SURFACEFORMAT_B5G5R5A1_UNORM_SRGB 0x103 | ||
394 | #define BRW_SURFACEFORMAT_B4G4R4A4_UNORM 0x104 | ||
395 | #define BRW_SURFACEFORMAT_B4G4R4A4_UNORM_SRGB 0x105 | ||
396 | #define BRW_SURFACEFORMAT_R8G8_UNORM 0x106 | ||
397 | #define BRW_SURFACEFORMAT_R8G8_SNORM 0x107 | ||
398 | #define BRW_SURFACEFORMAT_R8G8_SINT 0x108 | ||
399 | #define BRW_SURFACEFORMAT_R8G8_UINT 0x109 | ||
400 | #define BRW_SURFACEFORMAT_R16_UNORM 0x10A | ||
401 | #define BRW_SURFACEFORMAT_R16_SNORM 0x10B | ||
402 | #define BRW_SURFACEFORMAT_R16_SINT 0x10C | ||
403 | #define BRW_SURFACEFORMAT_R16_UINT 0x10D | ||
404 | #define BRW_SURFACEFORMAT_R16_FLOAT 0x10E | ||
405 | #define BRW_SURFACEFORMAT_I16_UNORM 0x111 | ||
406 | #define BRW_SURFACEFORMAT_L16_UNORM 0x112 | ||
407 | #define BRW_SURFACEFORMAT_A16_UNORM 0x113 | ||
408 | #define BRW_SURFACEFORMAT_L8A8_UNORM 0x114 | ||
409 | #define BRW_SURFACEFORMAT_I16_FLOAT 0x115 | ||
410 | #define BRW_SURFACEFORMAT_L16_FLOAT 0x116 | ||
411 | #define BRW_SURFACEFORMAT_A16_FLOAT 0x117 | ||
412 | #define BRW_SURFACEFORMAT_R5G5_SNORM_B6_UNORM 0x119 | ||
413 | #define BRW_SURFACEFORMAT_B5G5R5X1_UNORM 0x11A | ||
414 | #define BRW_SURFACEFORMAT_B5G5R5X1_UNORM_SRGB 0x11B | ||
415 | #define BRW_SURFACEFORMAT_R8G8_SSCALED 0x11C | ||
416 | #define BRW_SURFACEFORMAT_R8G8_USCALED 0x11D | ||
417 | #define BRW_SURFACEFORMAT_R16_SSCALED 0x11E | ||
418 | #define BRW_SURFACEFORMAT_R16_USCALED 0x11F | ||
419 | #define BRW_SURFACEFORMAT_R8_UNORM 0x140 | ||
420 | #define BRW_SURFACEFORMAT_R8_SNORM 0x141 | ||
421 | #define BRW_SURFACEFORMAT_R8_SINT 0x142 | ||
422 | #define BRW_SURFACEFORMAT_R8_UINT 0x143 | ||
423 | #define BRW_SURFACEFORMAT_A8_UNORM 0x144 | ||
424 | #define BRW_SURFACEFORMAT_I8_UNORM 0x145 | ||
425 | #define BRW_SURFACEFORMAT_L8_UNORM 0x146 | ||
426 | #define BRW_SURFACEFORMAT_P4A4_UNORM 0x147 | ||
427 | #define BRW_SURFACEFORMAT_A4P4_UNORM 0x148 | ||
428 | #define BRW_SURFACEFORMAT_R8_SSCALED 0x149 | ||
429 | #define BRW_SURFACEFORMAT_R8_USCALED 0x14A | ||
430 | #define BRW_SURFACEFORMAT_R1_UINT 0x181 | ||
431 | #define BRW_SURFACEFORMAT_YCRCB_NORMAL 0x182 | ||
432 | #define BRW_SURFACEFORMAT_YCRCB_SWAPUVY 0x183 | ||
433 | #define BRW_SURFACEFORMAT_BC1_UNORM 0x186 | ||
434 | #define BRW_SURFACEFORMAT_BC2_UNORM 0x187 | ||
435 | #define BRW_SURFACEFORMAT_BC3_UNORM 0x188 | ||
436 | #define BRW_SURFACEFORMAT_BC4_UNORM 0x189 | ||
437 | #define BRW_SURFACEFORMAT_BC5_UNORM 0x18A | ||
438 | #define BRW_SURFACEFORMAT_BC1_UNORM_SRGB 0x18B | ||
439 | #define BRW_SURFACEFORMAT_BC2_UNORM_SRGB 0x18C | ||
440 | #define BRW_SURFACEFORMAT_BC3_UNORM_SRGB 0x18D | ||
441 | #define BRW_SURFACEFORMAT_MONO8 0x18E | ||
442 | #define BRW_SURFACEFORMAT_YCRCB_SWAPUV 0x18F | ||
443 | #define BRW_SURFACEFORMAT_YCRCB_SWAPY 0x190 | ||
444 | #define BRW_SURFACEFORMAT_DXT1_RGB 0x191 | ||
445 | #define BRW_SURFACEFORMAT_FXT1 0x192 | ||
446 | #define BRW_SURFACEFORMAT_R8G8B8_UNORM 0x193 | ||
447 | #define BRW_SURFACEFORMAT_R8G8B8_SNORM 0x194 | ||
448 | #define BRW_SURFACEFORMAT_R8G8B8_SSCALED 0x195 | ||
449 | #define BRW_SURFACEFORMAT_R8G8B8_USCALED 0x196 | ||
450 | #define BRW_SURFACEFORMAT_R64G64B64A64_FLOAT 0x197 | ||
451 | #define BRW_SURFACEFORMAT_R64G64B64_FLOAT 0x198 | ||
452 | #define BRW_SURFACEFORMAT_BC4_SNORM 0x199 | ||
453 | #define BRW_SURFACEFORMAT_BC5_SNORM 0x19A | ||
454 | #define BRW_SURFACEFORMAT_R16G16B16_UNORM 0x19C | ||
455 | #define BRW_SURFACEFORMAT_R16G16B16_SNORM 0x19D | ||
456 | #define BRW_SURFACEFORMAT_R16G16B16_SSCALED 0x19E | ||
457 | #define BRW_SURFACEFORMAT_R16G16B16_USCALED 0x19F | ||
458 | |||
459 | #define BRW_SURFACERETURNFORMAT_FLOAT32 0 | ||
460 | #define BRW_SURFACERETURNFORMAT_S1 1 | ||
461 | |||
462 | #define BRW_SURFACE_1D 0 | ||
463 | #define BRW_SURFACE_2D 1 | ||
464 | #define BRW_SURFACE_3D 2 | ||
465 | #define BRW_SURFACE_CUBE 3 | ||
466 | #define BRW_SURFACE_BUFFER 4 | ||
467 | #define BRW_SURFACE_NULL 7 | ||
468 | |||
469 | #define BRW_BORDER_COLOR_MODE_DEFAULT 0 | ||
470 | #define BRW_BORDER_COLOR_MODE_LEGACY 1 | ||
471 | |||
472 | #define HSW_SCS_ZERO 0 | ||
473 | #define HSW_SCS_ONE 1 | ||
474 | #define HSW_SCS_RED 4 | ||
475 | #define HSW_SCS_GREEN 5 | ||
476 | #define HSW_SCS_BLUE 6 | ||
477 | #define HSW_SCS_ALPHA 7 | ||
478 | |||
479 | #define BRW_TEXCOORDMODE_WRAP 0 | ||
480 | #define BRW_TEXCOORDMODE_MIRROR 1 | ||
481 | #define BRW_TEXCOORDMODE_CLAMP 2 | ||
482 | #define BRW_TEXCOORDMODE_CUBE 3 | ||
483 | #define BRW_TEXCOORDMODE_CLAMP_BORDER 4 | ||
484 | #define BRW_TEXCOORDMODE_MIRROR_ONCE 5 | ||
485 | |||
486 | #define BRW_THREAD_PRIORITY_NORMAL 0 | ||
487 | #define BRW_THREAD_PRIORITY_HIGH 1 | ||
488 | |||
489 | #define BRW_TILEWALK_XMAJOR 0 | ||
490 | #define BRW_TILEWALK_YMAJOR 1 | ||
491 | |||
492 | #define BRW_VERTEX_SUBPIXEL_PRECISION_8BITS 0 | ||
493 | #define BRW_VERTEX_SUBPIXEL_PRECISION_4BITS 1 | ||
494 | |||
495 | #define BRW_VERTEXBUFFER_ACCESS_VERTEXDATA 0 | ||
496 | #define BRW_VERTEXBUFFER_ACCESS_INSTANCEDATA 1 | ||
497 | |||
498 | #define BRW_VFCOMPONENT_NOSTORE 0 | ||
499 | #define BRW_VFCOMPONENT_STORE_SRC 1 | ||
500 | #define BRW_VFCOMPONENT_STORE_0 2 | ||
501 | #define BRW_VFCOMPONENT_STORE_1_FLT 3 | ||
502 | #define BRW_VFCOMPONENT_STORE_1_INT 4 | ||
503 | #define BRW_VFCOMPONENT_STORE_VID 5 | ||
504 | #define BRW_VFCOMPONENT_STORE_IID 6 | ||
505 | #define BRW_VFCOMPONENT_STORE_PID 7 | ||
506 | |||
507 | |||
508 | |||
509 | /* Execution Unit (EU) defines | ||
510 | */ | ||
511 | |||
512 | #define BRW_ALIGN_1 0 | ||
513 | #define BRW_ALIGN_16 1 | ||
514 | |||
515 | #define BRW_ADDRESS_DIRECT 0 | ||
516 | #define BRW_ADDRESS_REGISTER_INDIRECT_REGISTER 1 | ||
517 | |||
518 | #define BRW_CHANNEL_X 0 | ||
519 | #define BRW_CHANNEL_Y 1 | ||
520 | #define BRW_CHANNEL_Z 2 | ||
521 | #define BRW_CHANNEL_W 3 | ||
522 | |||
523 | #define BRW_COMPRESSION_NONE 0 | ||
524 | #define BRW_COMPRESSION_2NDHALF 1 | ||
525 | #define BRW_COMPRESSION_COMPRESSED 2 | ||
526 | |||
527 | #define BRW_CONDITIONAL_NONE 0 | ||
528 | #define BRW_CONDITIONAL_Z 1 | ||
529 | #define BRW_CONDITIONAL_NZ 2 | ||
530 | #define BRW_CONDITIONAL_EQ 1 /* Z */ | ||
531 | #define BRW_CONDITIONAL_NEQ 2 /* NZ */ | ||
532 | #define BRW_CONDITIONAL_G 3 | ||
533 | #define BRW_CONDITIONAL_GE 4 | ||
534 | #define BRW_CONDITIONAL_L 5 | ||
535 | #define BRW_CONDITIONAL_LE 6 | ||
536 | #define BRW_CONDITIONAL_C 7 | ||
537 | #define BRW_CONDITIONAL_O 8 | ||
538 | |||
539 | #define BRW_DEBUG_NONE 0 | ||
540 | #define BRW_DEBUG_BREAKPOINT 1 | ||
541 | |||
542 | #define BRW_DEPENDENCY_NORMAL 0 | ||
543 | #define BRW_DEPENDENCY_NOTCLEARED 1 | ||
544 | #define BRW_DEPENDENCY_NOTCHECKED 2 | ||
545 | #define BRW_DEPENDENCY_DISABLE 3 | ||
546 | |||
547 | #define BRW_EXECUTE_1 0 | ||
548 | #define BRW_EXECUTE_2 1 | ||
549 | #define BRW_EXECUTE_4 2 | ||
550 | #define BRW_EXECUTE_8 3 | ||
551 | #define BRW_EXECUTE_16 4 | ||
552 | #define BRW_EXECUTE_32 5 | ||
553 | |||
554 | #define BRW_HORIZONTAL_STRIDE_0 0 | ||
555 | #define BRW_HORIZONTAL_STRIDE_1 1 | ||
556 | #define BRW_HORIZONTAL_STRIDE_2 2 | ||
557 | #define BRW_HORIZONTAL_STRIDE_4 3 | ||
558 | |||
559 | #define BRW_INSTRUCTION_NORMAL 0 | ||
560 | #define BRW_INSTRUCTION_SATURATE 1 | ||
561 | |||
562 | #define BRW_MASK_ENABLE 0 | ||
563 | #define BRW_MASK_DISABLE 1 | ||
564 | |||
565 | #define BRW_OPCODE_MOV 1 | ||
566 | #define BRW_OPCODE_SEL 2 | ||
567 | #define BRW_OPCODE_NOT 4 | ||
568 | #define BRW_OPCODE_AND 5 | ||
569 | #define BRW_OPCODE_OR 6 | ||
570 | #define BRW_OPCODE_XOR 7 | ||
571 | #define BRW_OPCODE_SHR 8 | ||
572 | #define BRW_OPCODE_SHL 9 | ||
573 | #define BRW_OPCODE_RSR 10 | ||
574 | #define BRW_OPCODE_RSL 11 | ||
575 | #define BRW_OPCODE_ASR 12 | ||
576 | #define BRW_OPCODE_CMP 16 | ||
577 | #define BRW_OPCODE_JMPI 32 | ||
578 | #define BRW_OPCODE_IF 34 | ||
579 | #define BRW_OPCODE_IFF 35 | ||
580 | #define BRW_OPCODE_ELSE 36 | ||
581 | #define BRW_OPCODE_ENDIF 37 | ||
582 | #define BRW_OPCODE_DO 38 | ||
583 | #define BRW_OPCODE_WHILE 39 | ||
584 | #define BRW_OPCODE_BREAK 40 | ||
585 | #define BRW_OPCODE_CONTINUE 41 | ||
586 | #define BRW_OPCODE_HALT 42 | ||
587 | #define BRW_OPCODE_MSAVE 44 | ||
588 | #define BRW_OPCODE_MRESTORE 45 | ||
589 | #define BRW_OPCODE_PUSH 46 | ||
590 | #define BRW_OPCODE_POP 47 | ||
591 | #define BRW_OPCODE_WAIT 48 | ||
592 | #define BRW_OPCODE_SEND 49 | ||
593 | #define BRW_OPCODE_ADD 64 | ||
594 | #define BRW_OPCODE_MUL 65 | ||
595 | #define BRW_OPCODE_AVG 66 | ||
596 | #define BRW_OPCODE_FRC 67 | ||
597 | #define BRW_OPCODE_RNDU 68 | ||
598 | #define BRW_OPCODE_RNDD 69 | ||
599 | #define BRW_OPCODE_RNDE 70 | ||
600 | #define BRW_OPCODE_RNDZ 71 | ||
601 | #define BRW_OPCODE_MAC 72 | ||
602 | #define BRW_OPCODE_MACH 73 | ||
603 | #define BRW_OPCODE_LZD 74 | ||
604 | #define BRW_OPCODE_SAD2 80 | ||
605 | #define BRW_OPCODE_SADA2 81 | ||
606 | #define BRW_OPCODE_DP4 84 | ||
607 | #define BRW_OPCODE_DPH 85 | ||
608 | #define BRW_OPCODE_DP3 86 | ||
609 | #define BRW_OPCODE_DP2 87 | ||
610 | #define BRW_OPCODE_DPA2 88 | ||
611 | #define BRW_OPCODE_LINE 89 | ||
612 | #define BRW_OPCODE_NOP 126 | ||
613 | |||
614 | #define BRW_PREDICATE_NONE 0 | ||
615 | #define BRW_PREDICATE_NORMAL 1 | ||
616 | #define BRW_PREDICATE_ALIGN1_ANYV 2 | ||
617 | #define BRW_PREDICATE_ALIGN1_ALLV 3 | ||
618 | #define BRW_PREDICATE_ALIGN1_ANY2H 4 | ||
619 | #define BRW_PREDICATE_ALIGN1_ALL2H 5 | ||
620 | #define BRW_PREDICATE_ALIGN1_ANY4H 6 | ||
621 | #define BRW_PREDICATE_ALIGN1_ALL4H 7 | ||
622 | #define BRW_PREDICATE_ALIGN1_ANY8H 8 | ||
623 | #define BRW_PREDICATE_ALIGN1_ALL8H 9 | ||
624 | #define BRW_PREDICATE_ALIGN1_ANY16H 10 | ||
625 | #define BRW_PREDICATE_ALIGN1_ALL16H 11 | ||
626 | #define BRW_PREDICATE_ALIGN16_REPLICATE_X 2 | ||
627 | #define BRW_PREDICATE_ALIGN16_REPLICATE_Y 3 | ||
628 | #define BRW_PREDICATE_ALIGN16_REPLICATE_Z 4 | ||
629 | #define BRW_PREDICATE_ALIGN16_REPLICATE_W 5 | ||
630 | #define BRW_PREDICATE_ALIGN16_ANY4H 6 | ||
631 | #define BRW_PREDICATE_ALIGN16_ALL4H 7 | ||
632 | |||
633 | #define BRW_ARCHITECTURE_REGISTER_FILE 0 | ||
634 | #define BRW_GENERAL_REGISTER_FILE 1 | ||
635 | #define BRW_MESSAGE_REGISTER_FILE 2 | ||
636 | #define BRW_IMMEDIATE_VALUE 3 | ||
637 | |||
638 | #define BRW_REGISTER_TYPE_UD 0 | ||
639 | #define BRW_REGISTER_TYPE_D 1 | ||
640 | #define BRW_REGISTER_TYPE_UW 2 | ||
641 | #define BRW_REGISTER_TYPE_W 3 | ||
642 | #define BRW_REGISTER_TYPE_UB 4 | ||
643 | #define BRW_REGISTER_TYPE_B 5 | ||
644 | #define BRW_REGISTER_TYPE_VF 5 /* packed float vector, immediates only? */ | ||
645 | #define BRW_REGISTER_TYPE_HF 6 | ||
646 | #define BRW_REGISTER_TYPE_V 6 /* packed int vector, immediates only, uword dest only */ | ||
647 | #define BRW_REGISTER_TYPE_F 7 | ||
648 | |||
649 | #define BRW_ARF_NULL 0x00 | ||
650 | #define BRW_ARF_ADDRESS 0x10 | ||
651 | #define BRW_ARF_ACCUMULATOR 0x20 | ||
652 | #define BRW_ARF_FLAG 0x30 | ||
653 | #define BRW_ARF_MASK 0x40 | ||
654 | #define BRW_ARF_MASK_STACK 0x50 | ||
655 | #define BRW_ARF_MASK_STACK_DEPTH 0x60 | ||
656 | #define BRW_ARF_STATE 0x70 | ||
657 | #define BRW_ARF_CONTROL 0x80 | ||
658 | #define BRW_ARF_NOTIFICATION_COUNT 0x90 | ||
659 | #define BRW_ARF_IP 0xA0 | ||
660 | |||
661 | #define BRW_AMASK 0 | ||
662 | #define BRW_IMASK 1 | ||
663 | #define BRW_LMASK 2 | ||
664 | #define BRW_CMASK 3 | ||
665 | |||
666 | |||
667 | |||
668 | #define BRW_THREAD_NORMAL 0 | ||
669 | #define BRW_THREAD_ATOMIC 1 | ||
670 | #define BRW_THREAD_SWITCH 2 | ||
671 | |||
672 | #define BRW_VERTICAL_STRIDE_0 0 | ||
673 | #define BRW_VERTICAL_STRIDE_1 1 | ||
674 | #define BRW_VERTICAL_STRIDE_2 2 | ||
675 | #define BRW_VERTICAL_STRIDE_4 3 | ||
676 | #define BRW_VERTICAL_STRIDE_8 4 | ||
677 | #define BRW_VERTICAL_STRIDE_16 5 | ||
678 | #define BRW_VERTICAL_STRIDE_32 6 | ||
679 | #define BRW_VERTICAL_STRIDE_64 7 | ||
680 | #define BRW_VERTICAL_STRIDE_128 8 | ||
681 | #define BRW_VERTICAL_STRIDE_256 9 | ||
682 | #define BRW_VERTICAL_STRIDE_ONE_DIMENSIONAL 0xF | ||
683 | |||
684 | #define BRW_WIDTH_1 0 | ||
685 | #define BRW_WIDTH_2 1 | ||
686 | #define BRW_WIDTH_4 2 | ||
687 | #define BRW_WIDTH_8 3 | ||
688 | #define BRW_WIDTH_16 4 | ||
689 | |||
690 | #define BRW_STATELESS_BUFFER_BOUNDARY_1K 0 | ||
691 | #define BRW_STATELESS_BUFFER_BOUNDARY_2K 1 | ||
692 | #define BRW_STATELESS_BUFFER_BOUNDARY_4K 2 | ||
693 | #define BRW_STATELESS_BUFFER_BOUNDARY_8K 3 | ||
694 | #define BRW_STATELESS_BUFFER_BOUNDARY_16K 4 | ||
695 | #define BRW_STATELESS_BUFFER_BOUNDARY_32K 5 | ||
696 | #define BRW_STATELESS_BUFFER_BOUNDARY_64K 6 | ||
697 | #define BRW_STATELESS_BUFFER_BOUNDARY_128K 7 | ||
698 | #define BRW_STATELESS_BUFFER_BOUNDARY_256K 8 | ||
699 | #define BRW_STATELESS_BUFFER_BOUNDARY_512K 9 | ||
700 | #define BRW_STATELESS_BUFFER_BOUNDARY_1M 10 | ||
701 | #define BRW_STATELESS_BUFFER_BOUNDARY_2M 11 | ||
702 | |||
703 | #define BRW_POLYGON_FACING_FRONT 0 | ||
704 | #define BRW_POLYGON_FACING_BACK 1 | ||
705 | |||
706 | #define BRW_MESSAGE_TARGET_NULL 0 | ||
707 | #define BRW_MESSAGE_TARGET_MATH 1 | ||
708 | #define BRW_MESSAGE_TARGET_SAMPLER 2 | ||
709 | #define BRW_MESSAGE_TARGET_GATEWAY 3 | ||
710 | #define BRW_MESSAGE_TARGET_DATAPORT_READ 4 | ||
711 | #define BRW_MESSAGE_TARGET_DATAPORT_WRITE 5 | ||
712 | #define BRW_MESSAGE_TARGET_URB 6 | ||
713 | #define BRW_MESSAGE_TARGET_THREAD_SPAWNER 7 | ||
714 | |||
715 | #define BRW_SAMPLER_RETURN_FORMAT_FLOAT32 0 | ||
716 | #define BRW_SAMPLER_RETURN_FORMAT_UINT32 2 | ||
717 | #define BRW_SAMPLER_RETURN_FORMAT_SINT32 3 | ||
718 | |||
719 | #define BRW_SAMPLER_MESSAGE_SIMD8_SAMPLE 0 | ||
720 | #define BRW_SAMPLER_MESSAGE_SIMD16_SAMPLE 0 | ||
721 | #define BRW_SAMPLER_MESSAGE_SIMD16_SAMPLE_BIAS 0 | ||
722 | #define BRW_SAMPLER_MESSAGE_SIMD8_KILLPIX 1 | ||
723 | #define BRW_SAMPLER_MESSAGE_SIMD4X2_SAMPLE_LOD 1 | ||
724 | #define BRW_SAMPLER_MESSAGE_SIMD16_SAMPLE_LOD 1 | ||
725 | #define BRW_SAMPLER_MESSAGE_SIMD4X2_SAMPLE_GRADIENTS 2 | ||
726 | #define BRW_SAMPLER_MESSAGE_SIMD8_SAMPLE_GRADIENTS 2 | ||
727 | #define BRW_SAMPLER_MESSAGE_SIMD4X2_SAMPLE_COMPARE 0 | ||
728 | #define BRW_SAMPLER_MESSAGE_SIMD16_SAMPLE_COMPARE 2 | ||
729 | #define BRW_SAMPLER_MESSAGE_SIMD4X2_RESINFO 2 | ||
730 | #define BRW_SAMPLER_MESSAGE_SIMD8_RESINFO 2 | ||
731 | #define BRW_SAMPLER_MESSAGE_SIMD16_RESINFO 2 | ||
732 | #define BRW_SAMPLER_MESSAGE_SIMD4X2_LD 3 | ||
733 | #define BRW_SAMPLER_MESSAGE_SIMD8_LD 3 | ||
734 | #define BRW_SAMPLER_MESSAGE_SIMD16_LD 3 | ||
735 | |||
736 | #define BRW_DATAPORT_OWORD_BLOCK_1_OWORDLOW 0 | ||
737 | #define BRW_DATAPORT_OWORD_BLOCK_1_OWORDHIGH 1 | ||
738 | #define BRW_DATAPORT_OWORD_BLOCK_2_OWORDS 2 | ||
739 | #define BRW_DATAPORT_OWORD_BLOCK_4_OWORDS 3 | ||
740 | #define BRW_DATAPORT_OWORD_BLOCK_8_OWORDS 4 | ||
741 | |||
742 | #define BRW_DATAPORT_OWORD_DUAL_BLOCK_1OWORD 0 | ||
743 | #define BRW_DATAPORT_OWORD_DUAL_BLOCK_4OWORDS 2 | ||
744 | |||
745 | #define BRW_DATAPORT_DWORD_SCATTERED_BLOCK_8DWORDS 2 | ||
746 | #define BRW_DATAPORT_DWORD_SCATTERED_BLOCK_16DWORDS 3 | ||
747 | |||
748 | #define BRW_DATAPORT_READ_MESSAGE_OWORD_BLOCK_READ 0 | ||
749 | #define BRW_DATAPORT_READ_MESSAGE_OWORD_DUAL_BLOCK_READ 1 | ||
750 | #define BRW_DATAPORT_READ_MESSAGE_DWORD_BLOCK_READ 2 | ||
751 | #define BRW_DATAPORT_READ_MESSAGE_DWORD_SCATTERED_READ 3 | ||
752 | |||
753 | #define BRW_DATAPORT_READ_TARGET_DATA_CACHE 0 | ||
754 | #define BRW_DATAPORT_READ_TARGET_RENDER_CACHE 1 | ||
755 | #define BRW_DATAPORT_READ_TARGET_SAMPLER_CACHE 2 | ||
756 | |||
757 | #define BRW_DATAPORT_RENDER_TARGET_WRITE_SIMD16_SINGLE_SOURCE 0 | ||
758 | #define BRW_DATAPORT_RENDER_TARGET_WRITE_SIMD16_SINGLE_SOURCE_REPLICATED 1 | ||
759 | #define BRW_DATAPORT_RENDER_TARGET_WRITE_SIMD8_DUAL_SOURCE_SUBSPAN01 2 | ||
760 | #define BRW_DATAPORT_RENDER_TARGET_WRITE_SIMD8_DUAL_SOURCE_SUBSPAN23 3 | ||
761 | #define BRW_DATAPORT_RENDER_TARGET_WRITE_SIMD8_SINGLE_SOURCE_SUBSPAN01 4 | ||
762 | |||
763 | #define BRW_DATAPORT_WRITE_MESSAGE_OWORD_BLOCK_WRITE 0 | ||
764 | #define BRW_DATAPORT_WRITE_MESSAGE_OWORD_DUAL_BLOCK_WRITE 1 | ||
765 | #define BRW_DATAPORT_WRITE_MESSAGE_DWORD_BLOCK_WRITE 2 | ||
766 | #define BRW_DATAPORT_WRITE_MESSAGE_DWORD_SCATTERED_WRITE 3 | ||
767 | #define BRW_DATAPORT_WRITE_MESSAGE_RENDER_TARGET_WRITE 4 | ||
768 | #define BRW_DATAPORT_WRITE_MESSAGE_STREAMED_VERTEX_BUFFER_WRITE 5 | ||
769 | #define BRW_DATAPORT_WRITE_MESSAGE_FLUSH_RENDER_CACHE 7 | ||
770 | |||
771 | #define BRW_MATH_FUNCTION_INV 1 | ||
772 | #define BRW_MATH_FUNCTION_LOG 2 | ||
773 | #define BRW_MATH_FUNCTION_EXP 3 | ||
774 | #define BRW_MATH_FUNCTION_SQRT 4 | ||
775 | #define BRW_MATH_FUNCTION_RSQ 5 | ||
776 | #define BRW_MATH_FUNCTION_SIN 6 /* was 7 */ | ||
777 | #define BRW_MATH_FUNCTION_COS 7 /* was 8 */ | ||
778 | #define BRW_MATH_FUNCTION_SINCOS 8 /* was 6 */ | ||
779 | #define BRW_MATH_FUNCTION_TAN 9 | ||
780 | #define BRW_MATH_FUNCTION_POW 10 | ||
781 | #define BRW_MATH_FUNCTION_INT_DIV_QUOTIENT_AND_REMAINDER 11 | ||
782 | #define BRW_MATH_FUNCTION_INT_DIV_QUOTIENT 12 | ||
783 | #define BRW_MATH_FUNCTION_INT_DIV_REMAINDER 13 | ||
784 | |||
785 | #define BRW_MATH_INTEGER_UNSIGNED 0 | ||
786 | #define BRW_MATH_INTEGER_SIGNED 1 | ||
787 | |||
788 | #define BRW_MATH_PRECISION_FULL 0 | ||
789 | #define BRW_MATH_PRECISION_PARTIAL 1 | ||
790 | |||
791 | #define BRW_MATH_SATURATE_NONE 0 | ||
792 | #define BRW_MATH_SATURATE_SATURATE 1 | ||
793 | |||
794 | #define BRW_MATH_DATA_VECTOR 0 | ||
795 | #define BRW_MATH_DATA_SCALAR 1 | ||
796 | |||
797 | #define BRW_URB_OPCODE_WRITE 0 | ||
798 | |||
799 | #define BRW_URB_SWIZZLE_NONE 0 | ||
800 | #define BRW_URB_SWIZZLE_INTERLEAVE 1 | ||
801 | #define BRW_URB_SWIZZLE_TRANSPOSE 2 | ||
802 | |||
803 | #define BRW_SCRATCH_SPACE_SIZE_1K 0 | ||
804 | #define BRW_SCRATCH_SPACE_SIZE_2K 1 | ||
805 | #define BRW_SCRATCH_SPACE_SIZE_4K 2 | ||
806 | #define BRW_SCRATCH_SPACE_SIZE_8K 3 | ||
807 | #define BRW_SCRATCH_SPACE_SIZE_16K 4 | ||
808 | #define BRW_SCRATCH_SPACE_SIZE_32K 5 | ||
809 | #define BRW_SCRATCH_SPACE_SIZE_64K 6 | ||
810 | #define BRW_SCRATCH_SPACE_SIZE_128K 7 | ||
811 | #define BRW_SCRATCH_SPACE_SIZE_256K 8 | ||
812 | #define BRW_SCRATCH_SPACE_SIZE_512K 9 | ||
813 | #define BRW_SCRATCH_SPACE_SIZE_1M 10 | ||
814 | #define BRW_SCRATCH_SPACE_SIZE_2M 11 | ||
815 | |||
816 | |||
817 | |||
818 | |||
819 | #define CMD_URB_FENCE 0x6000 | ||
820 | #define CMD_CONST_BUFFER_STATE 0x6001 | ||
821 | #define CMD_CONST_BUFFER 0x6002 | ||
822 | |||
823 | #define CMD_STATE_BASE_ADDRESS 0x6101 | ||
824 | #define CMD_STATE_INSN_POINTER 0x6102 | ||
825 | #define CMD_PIPELINE_SELECT 0x6104 | ||
826 | |||
827 | #define CMD_PIPELINED_STATE_POINTERS 0x7800 | ||
828 | #define CMD_BINDING_TABLE_PTRS 0x7801 | ||
829 | #define CMD_VERTEX_BUFFER 0x7808 | ||
830 | #define CMD_VERTEX_ELEMENT 0x7809 | ||
831 | #define CMD_INDEX_BUFFER 0x780a | ||
832 | #define CMD_VF_STATISTICS 0x780b | ||
833 | |||
834 | #define CMD_DRAW_RECT 0x7900 | ||
835 | #define CMD_BLEND_CONSTANT_COLOR 0x7901 | ||
836 | #define CMD_CHROMA_KEY 0x7904 | ||
837 | #define CMD_DEPTH_BUFFER 0x7905 | ||
838 | #define CMD_POLY_STIPPLE_OFFSET 0x7906 | ||
839 | #define CMD_POLY_STIPPLE_PATTERN 0x7907 | ||
840 | #define CMD_LINE_STIPPLE_PATTERN 0x7908 | ||
841 | #define CMD_GLOBAL_DEPTH_OFFSET_CLAMP 0x7908 | ||
842 | |||
843 | #define CMD_PIPE_CONTROL 0x7a00 | ||
844 | |||
845 | #define CMD_3D_PRIM 0x7b00 | ||
846 | |||
847 | #define CMD_MI_FLUSH 0x0200 | ||
848 | |||
849 | |||
850 | /* Various values from the R0 vertex header: | ||
851 | */ | ||
852 | #define R02_PRIM_END 0x1 | ||
853 | #define R02_PRIM_START 0x2 | ||
854 | |||
855 | /* media pipeline */ | ||
856 | |||
857 | #define BRW_VFE_MODE_GENERIC 0x0 | ||
858 | #define BRW_VFE_MODE_VLD_MPEG2 0x1 | ||
859 | #define BRW_VFE_MODE_IS 0x2 | ||
860 | #define BRW_VFE_MODE_AVC_MC 0x4 | ||
861 | #define BRW_VFE_MODE_AVC_IT 0x7 | ||
862 | #define BRW_VFE_MODE_VC1_IT 0xB | ||
863 | |||
864 | #define BRW_VFE_DEBUG_COUNTER_FREE 0 | ||
865 | #define BRW_VFE_DEBUG_COUNTER_FROZEN 1 | ||
866 | #define BRW_VFE_DEBUG_COUNTER_ONCE 2 | ||
867 | #define BRW_VFE_DEBUG_COUNTER_ALWAYS 3 | ||
868 | |||
869 | /* VLD_STATE */ | ||
870 | #define BRW_MPEG_TOP_FIELD 1 | ||
871 | #define BRW_MPEG_BOTTOM_FIELD 2 | ||
872 | #define BRW_MPEG_FRAME 3 | ||
873 | #define BRW_MPEG_QSCALE_LINEAR 0 | ||
874 | #define BRW_MPEG_QSCALE_NONLINEAR 1 | ||
875 | #define BRW_MPEG_ZIGZAG_SCAN 0 | ||
876 | #define BRW_MPEG_ALTER_VERTICAL_SCAN 1 | ||
877 | #define BRW_MPEG_I_PICTURE 1 | ||
878 | #define BRW_MPEG_P_PICTURE 2 | ||
879 | #define BRW_MPEG_B_PICTURE 3 | ||
880 | |||
881 | #endif | ||
diff --git a/xvmc/brw_structs.h b/xvmc/brw_structs.h new file mode 100644 index 00000000..20c2f857 --- /dev/null +++ b/xvmc/brw_structs.h | |||
@@ -0,0 +1,1723 @@ | |||
1 | /************************************************************************** | ||
2 | * | ||
3 | * Copyright 2005 Tungsten Graphics, Inc., Cedar Park, Texas. | ||
4 | * All Rights Reserved. | ||
5 | * | ||
6 | * Permission is hereby granted, free of charge, to any person obtaining a | ||
7 | * copy of this software and associated documentation files (the | ||
8 | * "Software"), to deal in the Software without restriction, including | ||
9 | * without limitation the rights to use, copy, modify, merge, publish, | ||
10 | * distribute, sub license, and/or sell copies of the Software, and to | ||
11 | * permit persons to whom the Software is furnished to do so, subject to | ||
12 | * the following conditions: | ||
13 | * | ||
14 | * The above copyright notice and this permission notice (including the | ||
15 | * next paragraph) shall be included in all copies or substantial portions | ||
16 | * of the Software. | ||
17 | * | ||
18 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS | ||
19 | * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | ||
20 | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. | ||
21 | * IN NO EVENT SHALL TUNGSTEN GRAPHICS AND/OR ITS SUPPLIERS BE LIABLE FOR | ||
22 | * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, | ||
23 | * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE | ||
24 | * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
25 | * | ||
26 | **************************************************************************/ | ||
27 | |||
28 | #ifndef BRW_STRUCTS_H | ||
29 | #define BRW_STRUCTS_H | ||
30 | |||
31 | /* Command packets: | ||
32 | */ | ||
33 | struct header | ||
34 | { | ||
35 | unsigned int length:16; | ||
36 | unsigned int opcode:16; | ||
37 | }; | ||
38 | |||
39 | |||
40 | union header_union | ||
41 | { | ||
42 | struct header bits; | ||
43 | unsigned int dword; | ||
44 | }; | ||
45 | |||
46 | struct brw_3d_control | ||
47 | { | ||
48 | struct | ||
49 | { | ||
50 | unsigned int length:8; | ||
51 | unsigned int notify_enable:1; | ||
52 | unsigned int pad:3; | ||
53 | unsigned int wc_flush_enable:1; | ||
54 | unsigned int depth_stall_enable:1; | ||
55 | unsigned int operation:2; | ||
56 | unsigned int opcode:16; | ||
57 | } header; | ||
58 | |||
59 | struct | ||
60 | { | ||
61 | unsigned int pad:2; | ||
62 | unsigned int dest_addr_type:1; | ||
63 | unsigned int dest_addr:29; | ||
64 | } dest; | ||
65 | |||
66 | unsigned int dword2; | ||
67 | unsigned int dword3; | ||
68 | }; | ||
69 | |||
70 | |||
71 | struct brw_3d_primitive | ||
72 | { | ||
73 | struct | ||
74 | { | ||
75 | unsigned int length:8; | ||
76 | unsigned int pad:2; | ||
77 | unsigned int topology:5; | ||
78 | unsigned int indexed:1; | ||
79 | unsigned int opcode:16; | ||
80 | } header; | ||
81 | |||
82 | unsigned int verts_per_instance; | ||
83 | unsigned int start_vert_location; | ||
84 | unsigned int instance_count; | ||
85 | unsigned int start_instance_location; | ||
86 | unsigned int base_vert_location; | ||
87 | }; | ||
88 | |||
89 | /* These seem to be passed around as function args, so it works out | ||
90 | * better to keep them as #defines: | ||
91 | */ | ||
92 | #define BRW_FLUSH_READ_CACHE 0x1 | ||
93 | #define BRW_FLUSH_STATE_CACHE 0x2 | ||
94 | #define BRW_INHIBIT_FLUSH_RENDER_CACHE 0x4 | ||
95 | #define BRW_FLUSH_SNAPSHOT_COUNTERS 0x8 | ||
96 | |||
97 | struct brw_mi_flush | ||
98 | { | ||
99 | unsigned int flags:4; | ||
100 | unsigned int pad:12; | ||
101 | unsigned int opcode:16; | ||
102 | }; | ||
103 | |||
104 | struct brw_vf_statistics | ||
105 | { | ||
106 | unsigned int statistics_enable:1; | ||
107 | unsigned int pad:15; | ||
108 | unsigned int opcode:16; | ||
109 | }; | ||
110 | |||
111 | |||
112 | |||
113 | struct brw_binding_table_pointers | ||
114 | { | ||
115 | struct header header; | ||
116 | unsigned int vs; | ||
117 | unsigned int gs; | ||
118 | unsigned int clp; | ||
119 | unsigned int sf; | ||
120 | unsigned int wm; | ||
121 | }; | ||
122 | |||
123 | |||
124 | struct brw_blend_constant_color | ||
125 | { | ||
126 | struct header header; | ||
127 | float blend_constant_color[4]; | ||
128 | }; | ||
129 | |||
130 | |||
131 | struct brw_depthbuffer | ||
132 | { | ||
133 | union header_union header; | ||
134 | |||
135 | union { | ||
136 | struct { | ||
137 | unsigned int pitch:18; | ||
138 | unsigned int format:3; | ||
139 | unsigned int pad:4; | ||
140 | unsigned int depth_offset_disable:1; | ||
141 | unsigned int tile_walk:1; | ||
142 | unsigned int tiled_surface:1; | ||
143 | unsigned int pad2:1; | ||
144 | unsigned int surface_type:3; | ||
145 | } bits; | ||
146 | unsigned int dword; | ||
147 | } dword1; | ||
148 | |||
149 | unsigned int dword2_base_addr; | ||
150 | |||
151 | union { | ||
152 | struct { | ||
153 | unsigned int pad:1; | ||
154 | unsigned int mipmap_layout:1; | ||
155 | unsigned int lod:4; | ||
156 | unsigned int width:13; | ||
157 | unsigned int height:13; | ||
158 | } bits; | ||
159 | unsigned int dword; | ||
160 | } dword3; | ||
161 | |||
162 | union { | ||
163 | struct { | ||
164 | unsigned int pad:12; | ||
165 | unsigned int min_array_element:9; | ||
166 | unsigned int depth:11; | ||
167 | } bits; | ||
168 | unsigned int dword; | ||
169 | } dword4; | ||
170 | }; | ||
171 | |||
172 | struct brw_drawrect | ||
173 | { | ||
174 | struct header header; | ||
175 | unsigned int xmin:16; | ||
176 | unsigned int ymin:16; | ||
177 | unsigned int xmax:16; | ||
178 | unsigned int ymax:16; | ||
179 | unsigned int xorg:16; | ||
180 | unsigned int yorg:16; | ||
181 | }; | ||
182 | |||
183 | |||
184 | |||
185 | |||
186 | struct brw_global_depth_offset_clamp | ||
187 | { | ||
188 | struct header header; | ||
189 | float depth_offset_clamp; | ||
190 | }; | ||
191 | |||
192 | struct brw_indexbuffer | ||
193 | { | ||
194 | union { | ||
195 | struct | ||
196 | { | ||
197 | unsigned int length:8; | ||
198 | unsigned int index_format:2; | ||
199 | unsigned int cut_index_enable:1; | ||
200 | unsigned int pad:5; | ||
201 | unsigned int opcode:16; | ||
202 | } bits; | ||
203 | unsigned int dword; | ||
204 | |||
205 | } header; | ||
206 | |||
207 | unsigned int buffer_start; | ||
208 | unsigned int buffer_end; | ||
209 | }; | ||
210 | |||
211 | |||
212 | struct brw_line_stipple | ||
213 | { | ||
214 | struct header header; | ||
215 | |||
216 | struct | ||
217 | { | ||
218 | unsigned int pattern:16; | ||
219 | unsigned int pad:16; | ||
220 | } bits0; | ||
221 | |||
222 | struct | ||
223 | { | ||
224 | unsigned int repeat_count:9; | ||
225 | unsigned int pad:7; | ||
226 | unsigned int inverse_repeat_count:16; | ||
227 | } bits1; | ||
228 | }; | ||
229 | |||
230 | |||
231 | struct brw_pipelined_state_pointers | ||
232 | { | ||
233 | struct header header; | ||
234 | |||
235 | struct { | ||
236 | unsigned int pad:5; | ||
237 | unsigned int offset:27; | ||
238 | } vs; | ||
239 | |||
240 | struct | ||
241 | { | ||
242 | unsigned int enable:1; | ||
243 | unsigned int pad:4; | ||
244 | unsigned int offset:27; | ||
245 | } gs; | ||
246 | |||
247 | struct | ||
248 | { | ||
249 | unsigned int enable:1; | ||
250 | unsigned int pad:4; | ||
251 | unsigned int offset:27; | ||
252 | } clp; | ||
253 | |||
254 | struct | ||
255 | { | ||
256 | unsigned int pad:5; | ||
257 | unsigned int offset:27; | ||
258 | } sf; | ||
259 | |||
260 | struct | ||
261 | { | ||
262 | unsigned int pad:5; | ||
263 | unsigned int offset:27; | ||
264 | } wm; | ||
265 | |||
266 | struct | ||
267 | { | ||
268 | unsigned int pad:5; | ||
269 | unsigned int offset:27; /* KW: check me! */ | ||
270 | } cc; | ||
271 | }; | ||
272 | |||
273 | |||
274 | struct brw_polygon_stipple_offset | ||
275 | { | ||
276 | struct header header; | ||
277 | |||
278 | struct { | ||
279 | unsigned int y_offset:5; | ||
280 | unsigned int pad:3; | ||
281 | unsigned int x_offset:5; | ||
282 | unsigned int pad0:19; | ||
283 | } bits0; | ||
284 | }; | ||
285 | |||
286 | |||
287 | |||
288 | struct brw_polygon_stipple | ||
289 | { | ||
290 | struct header header; | ||
291 | unsigned int stipple[32]; | ||
292 | }; | ||
293 | |||
294 | |||
295 | |||
296 | struct brw_pipeline_select | ||
297 | { | ||
298 | struct | ||
299 | { | ||
300 | unsigned int pipeline_select:1; | ||
301 | unsigned int pad:15; | ||
302 | unsigned int opcode:16; | ||
303 | } header; | ||
304 | }; | ||
305 | |||
306 | |||
307 | struct brw_pipe_control | ||
308 | { | ||
309 | struct | ||
310 | { | ||
311 | unsigned int length:8; | ||
312 | unsigned int notify_enable:1; | ||
313 | unsigned int pad:2; | ||
314 | unsigned int instruction_state_cache_flush_enable:1; | ||
315 | unsigned int write_cache_flush_enable:1; | ||
316 | unsigned int depth_stall_enable:1; | ||
317 | unsigned int post_sync_operation:2; | ||
318 | |||
319 | unsigned int opcode:16; | ||
320 | } header; | ||
321 | |||
322 | struct | ||
323 | { | ||
324 | unsigned int pad:2; | ||
325 | unsigned int dest_addr_type:1; | ||
326 | unsigned int dest_addr:29; | ||
327 | } bits1; | ||
328 | |||
329 | unsigned int data0; | ||
330 | unsigned int data1; | ||
331 | }; | ||
332 | |||
333 | |||
334 | struct brw_urb_fence | ||
335 | { | ||
336 | struct | ||
337 | { | ||
338 | unsigned int length:8; | ||
339 | unsigned int vs_realloc:1; | ||
340 | unsigned int gs_realloc:1; | ||
341 | unsigned int clp_realloc:1; | ||
342 | unsigned int sf_realloc:1; | ||
343 | unsigned int vfe_realloc:1; | ||
344 | unsigned int cs_realloc:1; | ||
345 | unsigned int pad:2; | ||
346 | unsigned int opcode:16; | ||
347 | } header; | ||
348 | |||
349 | struct | ||
350 | { | ||
351 | unsigned int vs_fence:10; | ||
352 | unsigned int gs_fence:10; | ||
353 | unsigned int clp_fence:10; | ||
354 | unsigned int pad:2; | ||
355 | } bits0; | ||
356 | |||
357 | struct | ||
358 | { | ||
359 | unsigned int sf_fence:10; | ||
360 | unsigned int vf_fence:10; | ||
361 | unsigned int cs_fence:10; | ||
362 | unsigned int pad:2; | ||
363 | } bits1; | ||
364 | }; | ||
365 | |||
366 | struct brw_constant_buffer_state /* previously brw_command_streamer */ | ||
367 | { | ||
368 | struct header header; | ||
369 | |||
370 | struct | ||
371 | { | ||
372 | unsigned int nr_urb_entries:3; | ||
373 | unsigned int pad:1; | ||
374 | unsigned int urb_entry_size:5; | ||
375 | unsigned int pad0:23; | ||
376 | } bits0; | ||
377 | }; | ||
378 | |||
379 | struct brw_constant_buffer | ||
380 | { | ||
381 | struct | ||
382 | { | ||
383 | unsigned int length:8; | ||
384 | unsigned int valid:1; | ||
385 | unsigned int pad:7; | ||
386 | unsigned int opcode:16; | ||
387 | } header; | ||
388 | |||
389 | struct | ||
390 | { | ||
391 | unsigned int buffer_length:6; | ||
392 | unsigned int buffer_address:26; | ||
393 | } bits0; | ||
394 | }; | ||
395 | |||
396 | struct brw_state_base_address | ||
397 | { | ||
398 | struct header header; | ||
399 | |||
400 | struct | ||
401 | { | ||
402 | unsigned int modify_enable:1; | ||
403 | unsigned int pad:4; | ||
404 | unsigned int general_state_address:27; | ||
405 | } bits0; | ||
406 | |||
407 | struct | ||
408 | { | ||
409 | unsigned int modify_enable:1; | ||
410 | unsigned int pad:4; | ||
411 | unsigned int surface_state_address:27; | ||
412 | } bits1; | ||
413 | |||
414 | struct | ||
415 | { | ||
416 | unsigned int modify_enable:1; | ||
417 | unsigned int pad:4; | ||
418 | unsigned int indirect_object_state_address:27; | ||
419 | } bits2; | ||
420 | |||
421 | struct | ||
422 | { | ||
423 | unsigned int modify_enable:1; | ||
424 | unsigned int pad:11; | ||
425 | unsigned int general_state_upper_bound:20; | ||
426 | } bits3; | ||
427 | |||
428 | struct | ||
429 | { | ||
430 | unsigned int modify_enable:1; | ||
431 | unsigned int pad:11; | ||
432 | unsigned int indirect_object_state_upper_bound:20; | ||
433 | } bits4; | ||
434 | }; | ||
435 | |||
436 | struct brw_state_prefetch | ||
437 | { | ||
438 | struct header header; | ||
439 | |||
440 | struct | ||
441 | { | ||
442 | unsigned int prefetch_count:3; | ||
443 | unsigned int pad:3; | ||
444 | unsigned int prefetch_pointer:26; | ||
445 | } bits0; | ||
446 | }; | ||
447 | |||
448 | struct brw_system_instruction_pointer | ||
449 | { | ||
450 | struct header header; | ||
451 | |||
452 | struct | ||
453 | { | ||
454 | unsigned int pad:4; | ||
455 | unsigned int system_instruction_pointer:28; | ||
456 | } bits0; | ||
457 | }; | ||
458 | |||
459 | |||
460 | |||
461 | |||
462 | /* State structs for the various fixed function units: | ||
463 | */ | ||
464 | |||
465 | |||
466 | struct thread0 | ||
467 | { | ||
468 | unsigned int pad0:1; | ||
469 | unsigned int grf_reg_count:3; | ||
470 | unsigned int pad1:2; | ||
471 | unsigned int kernel_start_pointer:26; | ||
472 | }; | ||
473 | |||
474 | struct thread1 | ||
475 | { | ||
476 | unsigned int ext_halt_exception_enable:1; | ||
477 | unsigned int sw_exception_enable:1; | ||
478 | unsigned int mask_stack_exception_enable:1; | ||
479 | unsigned int timeout_exception_enable:1; | ||
480 | unsigned int illegal_op_exception_enable:1; | ||
481 | unsigned int pad0:3; | ||
482 | unsigned int depth_coef_urb_read_offset:6; /* WM only */ | ||
483 | unsigned int pad1:2; | ||
484 | unsigned int floating_point_mode:1; | ||
485 | unsigned int thread_priority:1; | ||
486 | unsigned int binding_table_entry_count:8; | ||
487 | unsigned int pad3:5; | ||
488 | unsigned int single_program_flow:1; | ||
489 | }; | ||
490 | |||
491 | struct thread2 | ||
492 | { | ||
493 | unsigned int per_thread_scratch_space:4; | ||
494 | unsigned int pad0:6; | ||
495 | unsigned int scratch_space_base_pointer:22; | ||
496 | }; | ||
497 | |||
498 | |||
499 | struct thread3 | ||
500 | { | ||
501 | unsigned int dispatch_grf_start_reg:4; | ||
502 | unsigned int urb_entry_read_offset:6; | ||
503 | unsigned int pad0:1; | ||
504 | unsigned int urb_entry_read_length:6; | ||
505 | unsigned int pad1:1; | ||
506 | unsigned int const_urb_entry_read_offset:6; | ||
507 | unsigned int pad2:1; | ||
508 | unsigned int const_urb_entry_read_length:6; | ||
509 | unsigned int pad3:1; | ||
510 | }; | ||
511 | |||
512 | |||
513 | |||
514 | struct brw_clip_unit_state | ||
515 | { | ||
516 | struct thread0 thread0; | ||
517 | struct thread1 thread1; | ||
518 | struct thread2 thread2; | ||
519 | struct thread3 thread3; | ||
520 | |||
521 | struct | ||
522 | { | ||
523 | unsigned int pad0:9; | ||
524 | unsigned int gs_output_stats:1; /* not always */ | ||
525 | unsigned int stats_enable:1; | ||
526 | unsigned int nr_urb_entries:7; | ||
527 | unsigned int pad1:1; | ||
528 | unsigned int urb_entry_allocation_size:5; | ||
529 | unsigned int pad2:1; | ||
530 | unsigned int max_threads:6; /* may be less */ | ||
531 | unsigned int pad3:1; | ||
532 | } thread4; | ||
533 | |||
534 | struct | ||
535 | { | ||
536 | unsigned int pad0:13; | ||
537 | unsigned int clip_mode:3; | ||
538 | unsigned int userclip_enable_flags:8; | ||
539 | unsigned int userclip_must_clip:1; | ||
540 | unsigned int pad1:1; | ||
541 | unsigned int guard_band_enable:1; | ||
542 | unsigned int viewport_z_clip_enable:1; | ||
543 | unsigned int viewport_xy_clip_enable:1; | ||
544 | unsigned int vertex_position_space:1; | ||
545 | unsigned int api_mode:1; | ||
546 | unsigned int pad2:1; | ||
547 | } clip5; | ||
548 | |||
549 | struct | ||
550 | { | ||
551 | unsigned int pad0:5; | ||
552 | unsigned int clipper_viewport_state_ptr:27; | ||
553 | } clip6; | ||
554 | |||
555 | |||
556 | float viewport_xmin; | ||
557 | float viewport_xmax; | ||
558 | float viewport_ymin; | ||
559 | float viewport_ymax; | ||
560 | }; | ||
561 | |||
562 | |||
563 | |||
564 | struct brw_cc_unit_state | ||
565 | { | ||
566 | struct | ||
567 | { | ||
568 | unsigned int pad0:3; | ||
569 | unsigned int bf_stencil_pass_depth_pass_op:3; | ||
570 | unsigned int bf_stencil_pass_depth_fail_op:3; | ||
571 | unsigned int bf_stencil_fail_op:3; | ||
572 | unsigned int bf_stencil_func:3; | ||
573 | unsigned int bf_stencil_enable:1; | ||
574 | unsigned int pad1:2; | ||
575 | unsigned int stencil_write_enable:1; | ||
576 | unsigned int stencil_pass_depth_pass_op:3; | ||
577 | unsigned int stencil_pass_depth_fail_op:3; | ||
578 | unsigned int stencil_fail_op:3; | ||
579 | unsigned int stencil_func:3; | ||
580 | unsigned int stencil_enable:1; | ||
581 | } cc0; | ||
582 | |||
583 | |||
584 | struct | ||
585 | { | ||
586 | unsigned int bf_stencil_ref:8; | ||
587 | unsigned int stencil_write_mask:8; | ||
588 | unsigned int stencil_test_mask:8; | ||
589 | unsigned int stencil_ref:8; | ||
590 | } cc1; | ||
591 | |||
592 | |||
593 | struct | ||
594 | { | ||
595 | unsigned int logicop_enable:1; | ||
596 | unsigned int pad0:10; | ||
597 | unsigned int depth_write_enable:1; | ||
598 | unsigned int depth_test_function:3; | ||
599 | unsigned int depth_test:1; | ||
600 | unsigned int bf_stencil_write_mask:8; | ||
601 | unsigned int bf_stencil_test_mask:8; | ||
602 | } cc2; | ||
603 | |||
604 | |||
605 | struct | ||
606 | { | ||
607 | unsigned int pad0:8; | ||
608 | unsigned int alpha_test_func:3; | ||
609 | unsigned int alpha_test:1; | ||
610 | unsigned int blend_enable:1; | ||
611 | unsigned int ia_blend_enable:1; | ||
612 | unsigned int pad1:1; | ||
613 | unsigned int alpha_test_format:1; | ||
614 | unsigned int pad2:16; | ||
615 | } cc3; | ||
616 | |||
617 | struct | ||
618 | { | ||
619 | unsigned int pad0:5; | ||
620 | unsigned int cc_viewport_state_offset:27; | ||
621 | } cc4; | ||
622 | |||
623 | struct | ||
624 | { | ||
625 | unsigned int pad0:2; | ||
626 | unsigned int ia_dest_blend_factor:5; | ||
627 | unsigned int ia_src_blend_factor:5; | ||
628 | unsigned int ia_blend_function:3; | ||
629 | unsigned int statistics_enable:1; | ||
630 | unsigned int logicop_func:4; | ||
631 | unsigned int pad1:11; | ||
632 | unsigned int dither_enable:1; | ||
633 | } cc5; | ||
634 | |||
635 | struct | ||
636 | { | ||
637 | unsigned int clamp_post_alpha_blend:1; | ||
638 | unsigned int clamp_pre_alpha_blend:1; | ||
639 | unsigned int clamp_range:2; | ||
640 | unsigned int pad0:11; | ||
641 | unsigned int y_dither_offset:2; | ||
642 | unsigned int x_dither_offset:2; | ||
643 | unsigned int dest_blend_factor:5; | ||
644 | unsigned int src_blend_factor:5; | ||
645 | unsigned int blend_function:3; | ||
646 | } cc6; | ||
647 | |||
648 | struct { | ||
649 | union { | ||
650 | float f; | ||
651 | unsigned char ub[4]; | ||
652 | } alpha_ref; | ||
653 | } cc7; | ||
654 | }; | ||
655 | |||
656 | |||
657 | |||
658 | struct brw_sf_unit_state | ||
659 | { | ||
660 | struct thread0 thread0; | ||
661 | struct { | ||
662 | unsigned int pad0:7; | ||
663 | unsigned int sw_exception_enable:1; | ||
664 | unsigned int pad1:3; | ||
665 | unsigned int mask_stack_exception_enable:1; | ||
666 | unsigned int pad2:1; | ||
667 | unsigned int illegal_op_exception_enable:1; | ||
668 | unsigned int pad3:2; | ||
669 | unsigned int floating_point_mode:1; | ||
670 | unsigned int thread_priority:1; | ||
671 | unsigned int binding_table_entry_count:8; | ||
672 | unsigned int pad4:5; | ||
673 | unsigned int single_program_flow:1; | ||
674 | } sf1; | ||
675 | |||
676 | struct thread2 thread2; | ||
677 | struct thread3 thread3; | ||
678 | |||
679 | struct | ||
680 | { | ||
681 | unsigned int pad0:10; | ||
682 | unsigned int stats_enable:1; | ||
683 | unsigned int nr_urb_entries:7; | ||
684 | unsigned int pad1:1; | ||
685 | unsigned int urb_entry_allocation_size:5; | ||
686 | unsigned int pad2:1; | ||
687 | unsigned int max_threads:6; | ||
688 | unsigned int pad3:1; | ||
689 | } thread4; | ||
690 | |||
691 | struct | ||
692 | { | ||
693 | unsigned int front_winding:1; | ||
694 | unsigned int viewport_transform:1; | ||
695 | unsigned int pad0:3; | ||
696 | unsigned int sf_viewport_state_offset:27; | ||
697 | } sf5; | ||
698 | |||
699 | struct | ||
700 | { | ||
701 | unsigned int pad0:9; | ||
702 | unsigned int dest_org_vbias:4; | ||
703 | unsigned int dest_org_hbias:4; | ||
704 | unsigned int scissor:1; | ||
705 | unsigned int disable_2x2_trifilter:1; | ||
706 | unsigned int disable_zero_pix_trifilter:1; | ||
707 | unsigned int point_rast_rule:2; | ||
708 | unsigned int line_endcap_aa_region_width:2; | ||
709 | unsigned int line_width:4; | ||
710 | unsigned int fast_scissor_disable:1; | ||
711 | unsigned int cull_mode:2; | ||
712 | unsigned int aa_enable:1; | ||
713 | } sf6; | ||
714 | |||
715 | struct | ||
716 | { | ||
717 | unsigned int point_size:11; | ||
718 | unsigned int use_point_size_state:1; | ||
719 | unsigned int subpixel_precision:1; | ||
720 | unsigned int sprite_point:1; | ||
721 | unsigned int pad0:11; | ||
722 | unsigned int trifan_pv:2; | ||
723 | unsigned int linestrip_pv:2; | ||
724 | unsigned int tristrip_pv:2; | ||
725 | unsigned int line_last_pixel_enable:1; | ||
726 | } sf7; | ||
727 | |||
728 | }; | ||
729 | |||
730 | |||
731 | struct brw_gs_unit_state | ||
732 | { | ||
733 | struct thread0 thread0; | ||
734 | struct thread1 thread1; | ||
735 | struct thread2 thread2; | ||
736 | struct thread3 thread3; | ||
737 | |||
738 | struct | ||
739 | { | ||
740 | unsigned int pad0:10; | ||
741 | unsigned int stats_enable:1; | ||
742 | unsigned int nr_urb_entries:7; | ||
743 | unsigned int pad1:1; | ||
744 | unsigned int urb_entry_allocation_size:5; | ||
745 | unsigned int pad2:1; | ||
746 | unsigned int max_threads:1; | ||
747 | unsigned int pad3:6; | ||
748 | } thread4; | ||
749 | |||
750 | struct | ||
751 | { | ||
752 | unsigned int sampler_count:3; | ||
753 | unsigned int pad0:2; | ||
754 | unsigned int sampler_state_pointer:27; | ||
755 | } gs5; | ||
756 | |||
757 | |||
758 | struct | ||
759 | { | ||
760 | unsigned int max_vp_index:4; | ||
761 | unsigned int pad0:26; | ||
762 | unsigned int reorder_enable:1; | ||
763 | unsigned int pad1:1; | ||
764 | } gs6; | ||
765 | }; | ||
766 | |||
767 | |||
768 | struct brw_vs_unit_state | ||
769 | { | ||
770 | struct thread0 thread0; | ||
771 | struct thread1 thread1; | ||
772 | struct thread2 thread2; | ||
773 | struct thread3 thread3; | ||
774 | |||
775 | struct | ||
776 | { | ||
777 | unsigned int pad0:10; | ||
778 | unsigned int stats_enable:1; | ||
779 | unsigned int nr_urb_entries:7; | ||
780 | unsigned int pad1:1; | ||
781 | unsigned int urb_entry_allocation_size:5; | ||
782 | unsigned int pad2:1; | ||
783 | unsigned int max_threads:4; | ||
784 | unsigned int pad3:3; | ||
785 | } thread4; | ||
786 | |||
787 | struct | ||
788 | { | ||
789 | unsigned int sampler_count:3; | ||
790 | unsigned int pad0:2; | ||
791 | unsigned int sampler_state_pointer:27; | ||
792 | } vs5; | ||
793 | |||
794 | struct | ||
795 | { | ||
796 | unsigned int vs_enable:1; | ||
797 | unsigned int vert_cache_disable:1; | ||
798 | unsigned int pad0:30; | ||
799 | } vs6; | ||
800 | }; | ||
801 | |||
802 | |||
803 | struct brw_wm_unit_state | ||
804 | { | ||
805 | struct thread0 thread0; | ||
806 | struct thread1 thread1; | ||
807 | struct thread2 thread2; | ||
808 | struct thread3 thread3; | ||
809 | |||
810 | struct { | ||
811 | unsigned int stats_enable:1; | ||
812 | unsigned int pad0:1; | ||
813 | unsigned int sampler_count:3; | ||
814 | unsigned int sampler_state_pointer:27; | ||
815 | } wm4; | ||
816 | |||
817 | struct | ||
818 | { | ||
819 | unsigned int enable_8_pix:1; | ||
820 | unsigned int enable_16_pix:1; | ||
821 | unsigned int enable_32_pix:1; | ||
822 | unsigned int pad0:7; | ||
823 | unsigned int legacy_global_depth_bias:1; | ||
824 | unsigned int line_stipple:1; | ||
825 | unsigned int depth_offset:1; | ||
826 | unsigned int polygon_stipple:1; | ||
827 | unsigned int line_aa_region_width:2; | ||
828 | unsigned int line_endcap_aa_region_width:2; | ||
829 | unsigned int early_depth_test:1; | ||
830 | unsigned int thread_dispatch_enable:1; | ||
831 | unsigned int program_uses_depth:1; | ||
832 | unsigned int program_computes_depth:1; | ||
833 | unsigned int program_uses_killpixel:1; | ||
834 | unsigned int legacy_line_rast: 1; | ||
835 | unsigned int transposed_urb_read:1; | ||
836 | unsigned int max_threads:7; | ||
837 | } wm5; | ||
838 | |||
839 | float global_depth_offset_constant; | ||
840 | float global_depth_offset_scale; | ||
841 | |||
842 | struct { | ||
843 | unsigned int pad0:1; | ||
844 | unsigned int grf_reg_count_1:3; | ||
845 | unsigned int pad1:2; | ||
846 | unsigned int kernel_start_pointer_1:26; | ||
847 | } wm8; | ||
848 | |||
849 | struct { | ||
850 | unsigned int pad0:1; | ||
851 | unsigned int grf_reg_count_2:3; | ||
852 | unsigned int pad1:2; | ||
853 | unsigned int kernel_start_pointer_2:26; | ||
854 | } wm9; | ||
855 | |||
856 | struct { | ||
857 | unsigned int pad0:1; | ||
858 | unsigned int grf_reg_count_3:3; | ||
859 | unsigned int pad1:2; | ||
860 | unsigned int kernel_start_pointer_3:26; | ||
861 | } wm10; | ||
862 | }; | ||
863 | |||
864 | struct brw_wm_unit_state_padded { | ||
865 | struct brw_wm_unit_state state; | ||
866 | char pad[64 - sizeof(struct brw_wm_unit_state)]; | ||
867 | }; | ||
868 | |||
869 | /* The hardware supports two different modes for border color. The | ||
870 | * default (OpenGL) mode uses floating-point color channels, while the | ||
871 | * legacy mode uses 4 bytes. | ||
872 | * | ||
873 | * More significantly, the legacy mode respects the components of the | ||
874 | * border color for channels not present in the source, (whereas the | ||
875 | * default mode will ignore the border color's alpha channel and use | ||
876 | * alpha==1 for an RGB source, for example). | ||
877 | * | ||
878 | * The legacy mode matches the semantics specified by the Render | ||
879 | * extension. | ||
880 | */ | ||
881 | struct brw_sampler_default_border_color { | ||
882 | float color[4]; | ||
883 | }; | ||
884 | |||
885 | struct brw_sampler_legacy_border_color { | ||
886 | uint8_t color[4]; | ||
887 | }; | ||
888 | |||
889 | struct brw_sampler_state | ||
890 | { | ||
891 | |||
892 | struct | ||
893 | { | ||
894 | unsigned int shadow_function:3; | ||
895 | unsigned int lod_bias:11; | ||
896 | unsigned int min_filter:3; | ||
897 | unsigned int mag_filter:3; | ||
898 | unsigned int mip_filter:2; | ||
899 | unsigned int base_level:5; | ||
900 | unsigned int pad:1; | ||
901 | unsigned int lod_preclamp:1; | ||
902 | unsigned int border_color_mode:1; | ||
903 | unsigned int pad0:1; | ||
904 | unsigned int disable:1; | ||
905 | } ss0; | ||
906 | |||
907 | struct | ||
908 | { | ||
909 | unsigned int r_wrap_mode:3; | ||
910 | unsigned int t_wrap_mode:3; | ||
911 | unsigned int s_wrap_mode:3; | ||
912 | unsigned int pad:3; | ||
913 | unsigned int max_lod:10; | ||
914 | unsigned int min_lod:10; | ||
915 | } ss1; | ||
916 | |||
917 | |||
918 | struct | ||
919 | { | ||
920 | unsigned int pad:5; | ||
921 | unsigned int border_color_pointer:27; | ||
922 | } ss2; | ||
923 | |||
924 | struct | ||
925 | { | ||
926 | unsigned int pad:19; | ||
927 | unsigned int max_aniso:3; | ||
928 | unsigned int chroma_key_mode:1; | ||
929 | unsigned int chroma_key_index:2; | ||
930 | unsigned int chroma_key_enable:1; | ||
931 | unsigned int monochrome_filter_width:3; | ||
932 | unsigned int monochrome_filter_height:3; | ||
933 | } ss3; | ||
934 | }; | ||
935 | |||
936 | |||
937 | struct brw_clipper_viewport | ||
938 | { | ||
939 | float xmin; | ||
940 | float xmax; | ||
941 | float ymin; | ||
942 | float ymax; | ||
943 | }; | ||
944 | |||
945 | struct brw_cc_viewport | ||
946 | { | ||
947 | float min_depth; | ||
948 | float max_depth; | ||
949 | }; | ||
950 | |||
951 | struct brw_sf_viewport | ||
952 | { | ||
953 | struct { | ||
954 | float m00; | ||
955 | float m11; | ||
956 | float m22; | ||
957 | float m30; | ||
958 | float m31; | ||
959 | float m32; | ||
960 | } viewport; | ||
961 | |||
962 | struct { | ||
963 | short xmin; | ||
964 | short ymin; | ||
965 | short xmax; | ||
966 | short ymax; | ||
967 | } scissor; | ||
968 | }; | ||
969 | |||
970 | /* Documented in the subsystem/shared-functions/sampler chapter... | ||
971 | */ | ||
972 | struct brw_surface_state | ||
973 | { | ||
974 | struct { | ||
975 | unsigned int cube_pos_z:1; | ||
976 | unsigned int cube_neg_z:1; | ||
977 | unsigned int cube_pos_y:1; | ||
978 | unsigned int cube_neg_y:1; | ||
979 | unsigned int cube_pos_x:1; | ||
980 | unsigned int cube_neg_x:1; | ||
981 | unsigned int pad:3; | ||
982 | unsigned int render_cache_read_mode:1; | ||
983 | unsigned int mipmap_layout_mode:1; | ||
984 | unsigned int vert_line_stride_ofs:1; | ||
985 | unsigned int vert_line_stride:1; | ||
986 | unsigned int color_blend:1; | ||
987 | unsigned int writedisable_blue:1; | ||
988 | unsigned int writedisable_green:1; | ||
989 | unsigned int writedisable_red:1; | ||
990 | unsigned int writedisable_alpha:1; | ||
991 | unsigned int surface_format:9; | ||
992 | unsigned int data_return_format:1; | ||
993 | unsigned int pad0:1; | ||
994 | unsigned int surface_type:3; | ||
995 | } ss0; | ||
996 | |||
997 | struct { | ||
998 | unsigned int base_addr; | ||
999 | } ss1; | ||
1000 | |||
1001 | struct { | ||
1002 | unsigned int render_target_rotation:2; | ||
1003 | unsigned int mip_count:4; | ||
1004 | unsigned int width:13; | ||
1005 | unsigned int height:13; | ||
1006 | } ss2; | ||
1007 | |||
1008 | struct { | ||
1009 | unsigned int tile_walk:1; | ||
1010 | unsigned int tiled_surface:1; | ||
1011 | unsigned int pad:1; | ||
1012 | unsigned int pitch:18; | ||
1013 | unsigned int depth:11; | ||
1014 | } ss3; | ||
1015 | |||
1016 | struct { | ||
1017 | unsigned int pad:19; | ||
1018 | unsigned int min_array_elt:9; | ||
1019 | unsigned int min_lod:4; | ||
1020 | } ss4; | ||
1021 | |||
1022 | struct { | ||
1023 | unsigned int pad:20; | ||
1024 | unsigned int y_offset:4; | ||
1025 | unsigned int pad2:1; | ||
1026 | unsigned int x_offset:7; | ||
1027 | } ss5; | ||
1028 | }; | ||
1029 | |||
1030 | |||
1031 | |||
1032 | struct brw_vertex_buffer_state | ||
1033 | { | ||
1034 | struct { | ||
1035 | unsigned int pitch:11; | ||
1036 | unsigned int pad:15; | ||
1037 | unsigned int access_type:1; | ||
1038 | unsigned int vb_index:5; | ||
1039 | } vb0; | ||
1040 | |||
1041 | unsigned int start_addr; | ||
1042 | unsigned int max_index; | ||
1043 | #if 1 | ||
1044 | unsigned int instance_data_step_rate; /* not included for sequential/random vertices? */ | ||
1045 | #endif | ||
1046 | }; | ||
1047 | |||
1048 | #define BRW_VBP_MAX 17 | ||
1049 | |||
1050 | struct brw_vb_array_state { | ||
1051 | struct header header; | ||
1052 | struct brw_vertex_buffer_state vb[BRW_VBP_MAX]; | ||
1053 | }; | ||
1054 | |||
1055 | |||
1056 | struct brw_vertex_element_state | ||
1057 | { | ||
1058 | struct | ||
1059 | { | ||
1060 | unsigned int src_offset:11; | ||
1061 | unsigned int pad:5; | ||
1062 | unsigned int src_format:9; | ||
1063 | unsigned int pad0:1; | ||
1064 | unsigned int valid:1; | ||
1065 | unsigned int vertex_buffer_index:5; | ||
1066 | } ve0; | ||
1067 | |||
1068 | struct | ||
1069 | { | ||
1070 | unsigned int dst_offset:8; | ||
1071 | unsigned int pad:8; | ||
1072 | unsigned int vfcomponent3:4; | ||
1073 | unsigned int vfcomponent2:4; | ||
1074 | unsigned int vfcomponent1:4; | ||
1075 | unsigned int vfcomponent0:4; | ||
1076 | } ve1; | ||
1077 | }; | ||
1078 | |||
1079 | #define BRW_VEP_MAX 18 | ||
1080 | |||
1081 | struct brw_vertex_element_packet { | ||
1082 | struct header header; | ||
1083 | struct brw_vertex_element_state ve[BRW_VEP_MAX]; /* note: less than _TNL_ATTRIB_MAX */ | ||
1084 | }; | ||
1085 | |||
1086 | |||
1087 | struct brw_urb_immediate { | ||
1088 | unsigned int opcode:4; | ||
1089 | unsigned int offset:6; | ||
1090 | unsigned int swizzle_control:2; | ||
1091 | unsigned int pad:1; | ||
1092 | unsigned int allocate:1; | ||
1093 | unsigned int used:1; | ||
1094 | unsigned int complete:1; | ||
1095 | unsigned int response_length:4; | ||
1096 | unsigned int msg_length:4; | ||
1097 | unsigned int msg_target:4; | ||
1098 | unsigned int pad1:3; | ||
1099 | unsigned int end_of_thread:1; | ||
1100 | }; | ||
1101 | |||
1102 | /* Instruction format for the execution units: | ||
1103 | */ | ||
1104 | |||
1105 | struct brw_instruction | ||
1106 | { | ||
1107 | struct | ||
1108 | { | ||
1109 | unsigned int opcode:7; | ||
1110 | unsigned int pad:1; | ||
1111 | unsigned int access_mode:1; | ||
1112 | unsigned int mask_control:1; | ||
1113 | unsigned int dependency_control:2; | ||
1114 | unsigned int compression_control:2; | ||
1115 | unsigned int thread_control:2; | ||
1116 | unsigned int predicate_control:4; | ||
1117 | unsigned int predicate_inverse:1; | ||
1118 | unsigned int execution_size:3; | ||
1119 | unsigned int destreg__conditonalmod:4; /* destreg - send, conditionalmod - others */ | ||
1120 | unsigned int pad0:2; | ||
1121 | unsigned int debug_control:1; | ||
1122 | unsigned int saturate:1; | ||
1123 | } header; | ||
1124 | |||
1125 | union { | ||
1126 | struct | ||
1127 | { | ||
1128 | unsigned int dest_reg_file:2; | ||
1129 | unsigned int dest_reg_type:3; | ||
1130 | unsigned int src0_reg_file:2; | ||
1131 | unsigned int src0_reg_type:3; | ||
1132 | unsigned int src1_reg_file:2; | ||
1133 | unsigned int src1_reg_type:3; | ||
1134 | unsigned int pad:1; | ||
1135 | unsigned int dest_subreg_nr:5; | ||
1136 | unsigned int dest_reg_nr:8; | ||
1137 | unsigned int dest_horiz_stride:2; | ||
1138 | unsigned int dest_address_mode:1; | ||
1139 | } da1; | ||
1140 | |||
1141 | struct | ||
1142 | { | ||
1143 | unsigned int dest_reg_file:2; | ||
1144 | unsigned int dest_reg_type:3; | ||
1145 | unsigned int src0_reg_file:2; | ||
1146 | unsigned int src0_reg_type:3; | ||
1147 | unsigned int pad:6; | ||
1148 | int dest_indirect_offset:10; /* offset against the deref'd address reg */ | ||
1149 | unsigned int dest_subreg_nr:3; /* subnr for the address reg a0.x */ | ||
1150 | unsigned int dest_horiz_stride:2; | ||
1151 | unsigned int dest_address_mode:1; | ||
1152 | } ia1; | ||
1153 | |||
1154 | struct | ||
1155 | { | ||
1156 | unsigned int dest_reg_file:2; | ||
1157 | unsigned int dest_reg_type:3; | ||
1158 | unsigned int src0_reg_file:2; | ||
1159 | unsigned int src0_reg_type:3; | ||
1160 | unsigned int src1_reg_file:2; | ||
1161 | unsigned int src1_reg_type:3; | ||
1162 | unsigned int pad0:1; | ||
1163 | unsigned int dest_writemask:4; | ||
1164 | unsigned int dest_subreg_nr:1; | ||
1165 | unsigned int dest_reg_nr:8; | ||
1166 | unsigned int pad1:2; | ||
1167 | unsigned int dest_address_mode:1; | ||
1168 | } da16; | ||
1169 | |||
1170 | struct | ||
1171 | { | ||
1172 | unsigned int dest_reg_file:2; | ||
1173 | unsigned int dest_reg_type:3; | ||
1174 | unsigned int src0_reg_file:2; | ||
1175 | unsigned int src0_reg_type:3; | ||
1176 | unsigned int pad0:6; | ||
1177 | unsigned int dest_writemask:4; | ||
1178 | int dest_indirect_offset:6; | ||
1179 | unsigned int dest_subreg_nr:3; | ||
1180 | unsigned int pad1:2; | ||
1181 | unsigned int dest_address_mode:1; | ||
1182 | } ia16; | ||
1183 | } bits1; | ||
1184 | |||
1185 | |||
1186 | union { | ||
1187 | struct | ||
1188 | { | ||
1189 | unsigned int src0_subreg_nr:5; | ||
1190 | unsigned int src0_reg_nr:8; | ||
1191 | unsigned int src0_abs:1; | ||
1192 | unsigned int src0_negate:1; | ||
1193 | unsigned int src0_address_mode:1; | ||
1194 | unsigned int src0_horiz_stride:2; | ||
1195 | unsigned int src0_width:3; | ||
1196 | unsigned int src0_vert_stride:4; | ||
1197 | unsigned int flag_reg_nr:1; | ||
1198 | unsigned int pad:6; | ||
1199 | } da1; | ||
1200 | |||
1201 | struct | ||
1202 | { | ||
1203 | int src0_indirect_offset:10; | ||
1204 | unsigned int src0_subreg_nr:3; | ||
1205 | unsigned int src0_abs:1; | ||
1206 | unsigned int src0_negate:1; | ||
1207 | unsigned int src0_address_mode:1; | ||
1208 | unsigned int src0_horiz_stride:2; | ||
1209 | unsigned int src0_width:3; | ||
1210 | unsigned int src0_vert_stride:4; | ||
1211 | unsigned int flag_reg_nr:1; | ||
1212 | unsigned int pad:6; | ||
1213 | } ia1; | ||
1214 | |||
1215 | struct | ||
1216 | { | ||
1217 | unsigned int src0_swz_x:2; | ||
1218 | unsigned int src0_swz_y:2; | ||
1219 | unsigned int src0_subreg_nr:1; | ||
1220 | unsigned int src0_reg_nr:8; | ||
1221 | unsigned int src0_abs:1; | ||
1222 | unsigned int src0_negate:1; | ||
1223 | unsigned int src0_address_mode:1; | ||
1224 | unsigned int src0_swz_z:2; | ||
1225 | unsigned int src0_swz_w:2; | ||
1226 | unsigned int pad0:1; | ||
1227 | unsigned int src0_vert_stride:4; | ||
1228 | unsigned int flag_reg_nr:1; | ||
1229 | unsigned int pad1:6; | ||
1230 | } da16; | ||
1231 | |||
1232 | struct | ||
1233 | { | ||
1234 | unsigned int src0_swz_x:2; | ||
1235 | unsigned int src0_swz_y:2; | ||
1236 | int src0_indirect_offset:6; | ||
1237 | unsigned int src0_subreg_nr:3; | ||
1238 | unsigned int src0_abs:1; | ||
1239 | unsigned int src0_negate:1; | ||
1240 | unsigned int src0_address_mode:1; | ||
1241 | unsigned int src0_swz_z:2; | ||
1242 | unsigned int src0_swz_w:2; | ||
1243 | unsigned int pad0:1; | ||
1244 | unsigned int src0_vert_stride:4; | ||
1245 | unsigned int flag_reg_nr:1; | ||
1246 | unsigned int pad1:6; | ||
1247 | } ia16; | ||
1248 | |||
1249 | } bits2; | ||
1250 | |||
1251 | union | ||
1252 | { | ||
1253 | struct | ||
1254 | { | ||
1255 | unsigned int src1_subreg_nr:5; | ||
1256 | unsigned int src1_reg_nr:8; | ||
1257 | unsigned int src1_abs:1; | ||
1258 | unsigned int src1_negate:1; | ||
1259 | unsigned int pad:1; | ||
1260 | unsigned int src1_horiz_stride:2; | ||
1261 | unsigned int src1_width:3; | ||
1262 | unsigned int src1_vert_stride:4; | ||
1263 | unsigned int pad0:7; | ||
1264 | } da1; | ||
1265 | |||
1266 | struct | ||
1267 | { | ||
1268 | unsigned int src1_swz_x:2; | ||
1269 | unsigned int src1_swz_y:2; | ||
1270 | unsigned int src1_subreg_nr:1; | ||
1271 | unsigned int src1_reg_nr:8; | ||
1272 | unsigned int src1_abs:1; | ||
1273 | unsigned int src1_negate:1; | ||
1274 | unsigned int pad0:1; | ||
1275 | unsigned int src1_swz_z:2; | ||
1276 | unsigned int src1_swz_w:2; | ||
1277 | unsigned int pad1:1; | ||
1278 | unsigned int src1_vert_stride:4; | ||
1279 | unsigned int pad2:7; | ||
1280 | } da16; | ||
1281 | |||
1282 | struct | ||
1283 | { | ||
1284 | int src1_indirect_offset:10; | ||
1285 | unsigned int src1_subreg_nr:3; | ||
1286 | unsigned int src1_abs:1; | ||
1287 | unsigned int src1_negate:1; | ||
1288 | unsigned int pad0:1; | ||
1289 | unsigned int src1_horiz_stride:2; | ||
1290 | unsigned int src1_width:3; | ||
1291 | unsigned int src1_vert_stride:4; | ||
1292 | unsigned int flag_reg_nr:1; | ||
1293 | unsigned int pad1:6; | ||
1294 | } ia1; | ||
1295 | |||
1296 | struct | ||
1297 | { | ||
1298 | unsigned int src1_swz_x:2; | ||
1299 | unsigned int src1_swz_y:2; | ||
1300 | int src1_indirect_offset:6; | ||
1301 | unsigned int src1_subreg_nr:3; | ||
1302 | unsigned int src1_abs:1; | ||
1303 | unsigned int src1_negate:1; | ||
1304 | unsigned int pad0:1; | ||
1305 | unsigned int src1_swz_z:2; | ||
1306 | unsigned int src1_swz_w:2; | ||
1307 | unsigned int pad1:1; | ||
1308 | unsigned int src1_vert_stride:4; | ||
1309 | unsigned int flag_reg_nr:1; | ||
1310 | unsigned int pad2:6; | ||
1311 | } ia16; | ||
1312 | |||
1313 | |||
1314 | struct | ||
1315 | { | ||
1316 | int jump_count:16; /* note: signed */ | ||
1317 | unsigned int pop_count:4; | ||
1318 | unsigned int pad0:12; | ||
1319 | } if_else; | ||
1320 | |||
1321 | struct { | ||
1322 | unsigned int function:4; | ||
1323 | unsigned int int_type:1; | ||
1324 | unsigned int precision:1; | ||
1325 | unsigned int saturate:1; | ||
1326 | unsigned int data_type:1; | ||
1327 | unsigned int pad0:8; | ||
1328 | unsigned int response_length:4; | ||
1329 | unsigned int msg_length:4; | ||
1330 | unsigned int msg_target:4; | ||
1331 | unsigned int pad1:3; | ||
1332 | unsigned int end_of_thread:1; | ||
1333 | } math; | ||
1334 | |||
1335 | struct { | ||
1336 | unsigned int binding_table_index:8; | ||
1337 | unsigned int sampler:4; | ||
1338 | unsigned int return_format:2; | ||
1339 | unsigned int msg_type:2; | ||
1340 | unsigned int response_length:4; | ||
1341 | unsigned int msg_length:4; | ||
1342 | unsigned int msg_target:4; | ||
1343 | unsigned int pad1:3; | ||
1344 | unsigned int end_of_thread:1; | ||
1345 | } sampler; | ||
1346 | |||
1347 | struct brw_urb_immediate urb; | ||
1348 | |||
1349 | struct { | ||
1350 | unsigned int binding_table_index:8; | ||
1351 | unsigned int msg_control:4; | ||
1352 | unsigned int msg_type:2; | ||
1353 | unsigned int target_cache:2; | ||
1354 | unsigned int response_length:4; | ||
1355 | unsigned int msg_length:4; | ||
1356 | unsigned int msg_target:4; | ||
1357 | unsigned int pad1:3; | ||
1358 | unsigned int end_of_thread:1; | ||
1359 | } dp_read; | ||
1360 | |||
1361 | struct { | ||
1362 | unsigned int binding_table_index:8; | ||
1363 | unsigned int msg_control:3; | ||
1364 | unsigned int pixel_scoreboard_clear:1; | ||
1365 | unsigned int msg_type:3; | ||
1366 | unsigned int send_commit_msg:1; | ||
1367 | unsigned int response_length:4; | ||
1368 | unsigned int msg_length:4; | ||
1369 | unsigned int msg_target:4; | ||
1370 | unsigned int pad1:3; | ||
1371 | unsigned int end_of_thread:1; | ||
1372 | } dp_write; | ||
1373 | |||
1374 | struct { | ||
1375 | unsigned int pad:16; | ||
1376 | unsigned int response_length:4; | ||
1377 | unsigned int msg_length:4; | ||
1378 | unsigned int msg_target:4; | ||
1379 | unsigned int pad1:3; | ||
1380 | unsigned int end_of_thread:1; | ||
1381 | } generic; | ||
1382 | |||
1383 | unsigned int ud; | ||
1384 | } bits3; | ||
1385 | }; | ||
1386 | |||
1387 | /* media pipeline */ | ||
1388 | |||
1389 | struct brw_vfe_state { | ||
1390 | struct { | ||
1391 | unsigned int per_thread_scratch_space:4; | ||
1392 | unsigned int pad3:3; | ||
1393 | unsigned int extend_vfe_state_present:1; | ||
1394 | unsigned int pad2:2; | ||
1395 | unsigned int scratch_base:22; | ||
1396 | } vfe0; | ||
1397 | |||
1398 | struct { | ||
1399 | unsigned int debug_counter_control:2; | ||
1400 | unsigned int children_present:1; | ||
1401 | unsigned int vfe_mode:4; | ||
1402 | unsigned int pad2:2; | ||
1403 | unsigned int num_urb_entries:7; | ||
1404 | unsigned int urb_entry_alloc_size:9; | ||
1405 | unsigned int max_threads:7; | ||
1406 | } vfe1; | ||
1407 | |||
1408 | struct { | ||
1409 | unsigned int pad4:4; | ||
1410 | unsigned int interface_descriptor_base:28; | ||
1411 | } vfe2; | ||
1412 | }; | ||
1413 | |||
1414 | struct brw_vld_state { | ||
1415 | struct { | ||
1416 | unsigned int pad6:6; | ||
1417 | unsigned int scan_order:1; | ||
1418 | unsigned int intra_vlc_format:1; | ||
1419 | unsigned int quantizer_scale_type:1; | ||
1420 | unsigned int concealment_motion_vector:1; | ||
1421 | unsigned int frame_predict_frame_dct:1; | ||
1422 | unsigned int top_field_first:1; | ||
1423 | unsigned int picture_structure:2; | ||
1424 | unsigned int intra_dc_precision:2; | ||
1425 | unsigned int f_code_0_0:4; | ||
1426 | unsigned int f_code_0_1:4; | ||
1427 | unsigned int f_code_1_0:4; | ||
1428 | unsigned int f_code_1_1:4; | ||
1429 | } vld0; | ||
1430 | |||
1431 | struct { | ||
1432 | unsigned int pad2:9; | ||
1433 | unsigned int picture_coding_type:2; | ||
1434 | unsigned int pad:21; | ||
1435 | } vld1; | ||
1436 | |||
1437 | struct { | ||
1438 | unsigned int index_0:4; | ||
1439 | unsigned int index_1:4; | ||
1440 | unsigned int index_2:4; | ||
1441 | unsigned int index_3:4; | ||
1442 | unsigned int index_4:4; | ||
1443 | unsigned int index_5:4; | ||
1444 | unsigned int index_6:4; | ||
1445 | unsigned int index_7:4; | ||
1446 | } desc_remap_table0; | ||
1447 | |||
1448 | struct { | ||
1449 | unsigned int index_8:4; | ||
1450 | unsigned int index_9:4; | ||
1451 | unsigned int index_10:4; | ||
1452 | unsigned int index_11:4; | ||
1453 | unsigned int index_12:4; | ||
1454 | unsigned int index_13:4; | ||
1455 | unsigned int index_14:4; | ||
1456 | unsigned int index_15:4; | ||
1457 | } desc_remap_table1; | ||
1458 | }; | ||
1459 | |||
1460 | struct brw_interface_descriptor { | ||
1461 | struct { | ||
1462 | unsigned int grf_reg_blocks:4; | ||
1463 | unsigned int pad:2; | ||
1464 | unsigned int kernel_start_pointer:26; | ||
1465 | } desc0; | ||
1466 | |||
1467 | struct { | ||
1468 | unsigned int pad:7; | ||
1469 | unsigned int software_exception:1; | ||
1470 | unsigned int pad2:3; | ||
1471 | unsigned int maskstack_exception:1; | ||
1472 | unsigned int pad3:1; | ||
1473 | unsigned int illegal_opcode_exception:1; | ||
1474 | unsigned int pad4:2; | ||
1475 | unsigned int floating_point_mode:1; | ||
1476 | unsigned int thread_priority:1; | ||
1477 | unsigned int single_program_flow:1; | ||
1478 | unsigned int pad5:1; | ||
1479 | unsigned int const_urb_entry_read_offset:6; | ||
1480 | unsigned int const_urb_entry_read_len:6; | ||
1481 | } desc1; | ||
1482 | |||
1483 | struct { | ||
1484 | unsigned int pad:2; | ||
1485 | unsigned int sampler_count:3; | ||
1486 | unsigned int sampler_state_pointer:27; | ||
1487 | } desc2; | ||
1488 | |||
1489 | struct { | ||
1490 | unsigned int binding_table_entry_count:5; | ||
1491 | unsigned int binding_table_pointer:27; | ||
1492 | } desc3; | ||
1493 | }; | ||
1494 | |||
1495 | struct gen6_blend_state | ||
1496 | { | ||
1497 | struct { | ||
1498 | unsigned int dest_blend_factor:5; | ||
1499 | unsigned int source_blend_factor:5; | ||
1500 | unsigned int pad3:1; | ||
1501 | unsigned int blend_func:3; | ||
1502 | unsigned int pad2:1; | ||
1503 | unsigned int ia_dest_blend_factor:5; | ||
1504 | unsigned int ia_source_blend_factor:5; | ||
1505 | unsigned int pad1:1; | ||
1506 | unsigned int ia_blend_func:3; | ||
1507 | unsigned int pad0:1; | ||
1508 | unsigned int ia_blend_enable:1; | ||
1509 | unsigned int blend_enable:1; | ||
1510 | } blend0; | ||
1511 | |||
1512 | struct { | ||
1513 | unsigned int post_blend_clamp_enable:1; | ||
1514 | unsigned int pre_blend_clamp_enable:1; | ||
1515 | unsigned int clamp_range:2; | ||
1516 | unsigned int pad0:4; | ||
1517 | unsigned int x_dither_offset:2; | ||
1518 | unsigned int y_dither_offset:2; | ||
1519 | unsigned int dither_enable:1; | ||
1520 | unsigned int alpha_test_func:3; | ||
1521 | unsigned int alpha_test_enable:1; | ||
1522 | unsigned int pad1:1; | ||
1523 | unsigned int logic_op_func:4; | ||
1524 | unsigned int logic_op_enable:1; | ||
1525 | unsigned int pad2:1; | ||
1526 | unsigned int write_disable_b:1; | ||
1527 | unsigned int write_disable_g:1; | ||
1528 | unsigned int write_disable_r:1; | ||
1529 | unsigned int write_disable_a:1; | ||
1530 | unsigned int pad3:1; | ||
1531 | unsigned int alpha_to_coverage_dither:1; | ||
1532 | unsigned int alpha_to_one:1; | ||
1533 | unsigned int alpha_to_coverage:1; | ||
1534 | } blend1; | ||
1535 | }; | ||
1536 | |||
1537 | struct gen6_color_calc_state | ||
1538 | { | ||
1539 | struct { | ||
1540 | unsigned int alpha_test_format:1; | ||
1541 | unsigned int pad0:14; | ||
1542 | unsigned int round_disable:1; | ||
1543 | unsigned int bf_stencil_ref:8; | ||
1544 | unsigned int stencil_ref:8; | ||
1545 | } cc0; | ||
1546 | |||
1547 | union { | ||
1548 | float alpha_ref_f; | ||
1549 | struct { | ||
1550 | unsigned int ui:8; | ||
1551 | unsigned int pad0:24; | ||
1552 | } alpha_ref_fi; | ||
1553 | } cc1; | ||
1554 | |||
1555 | float constant_r; | ||
1556 | float constant_g; | ||
1557 | float constant_b; | ||
1558 | float constant_a; | ||
1559 | }; | ||
1560 | |||
1561 | struct gen6_depth_stencil_state | ||
1562 | { | ||
1563 | struct { | ||
1564 | unsigned int pad0:3; | ||
1565 | unsigned int bf_stencil_pass_depth_pass_op:3; | ||
1566 | unsigned int bf_stencil_pass_depth_fail_op:3; | ||
1567 | unsigned int bf_stencil_fail_op:3; | ||
1568 | unsigned int bf_stencil_func:3; | ||
1569 | unsigned int bf_stencil_enable:1; | ||
1570 | unsigned int pad1:2; | ||
1571 | unsigned int stencil_write_enable:1; | ||
1572 | unsigned int stencil_pass_depth_pass_op:3; | ||
1573 | unsigned int stencil_pass_depth_fail_op:3; | ||
1574 | unsigned int stencil_fail_op:3; | ||
1575 | unsigned int stencil_func:3; | ||
1576 | unsigned int stencil_enable:1; | ||
1577 | } ds0; | ||
1578 | |||
1579 | struct { | ||
1580 | unsigned int bf_stencil_write_mask:8; | ||
1581 | unsigned int bf_stencil_test_mask:8; | ||
1582 | unsigned int stencil_write_mask:8; | ||
1583 | unsigned int stencil_test_mask:8; | ||
1584 | } ds1; | ||
1585 | |||
1586 | struct { | ||
1587 | unsigned int pad0:26; | ||
1588 | unsigned int depth_write_enable:1; | ||
1589 | unsigned int depth_test_func:3; | ||
1590 | unsigned int pad1:1; | ||
1591 | unsigned int depth_test_enable:1; | ||
1592 | } ds2; | ||
1593 | }; | ||
1594 | |||
1595 | struct gen7_surface_state | ||
1596 | { | ||
1597 | struct { | ||
1598 | unsigned int cube_pos_z:1; | ||
1599 | unsigned int cube_neg_z:1; | ||
1600 | unsigned int cube_pos_y:1; | ||
1601 | unsigned int cube_neg_y:1; | ||
1602 | unsigned int cube_pos_x:1; | ||
1603 | unsigned int cube_neg_x:1; | ||
1604 | unsigned int pad2:2; | ||
1605 | unsigned int render_cache_read_write:1; | ||
1606 | unsigned int pad1:1; | ||
1607 | unsigned int surface_array_spacing:1; | ||
1608 | unsigned int vert_line_stride_ofs:1; | ||
1609 | unsigned int vert_line_stride:1; | ||
1610 | unsigned int tile_walk:1; | ||
1611 | unsigned int tiled_surface:1; | ||
1612 | unsigned int horizontal_alignment:1; | ||
1613 | unsigned int vertical_alignment:2; | ||
1614 | unsigned int surface_format:9; /**< BRW_SURFACEFORMAT_x */ | ||
1615 | unsigned int pad0:1; | ||
1616 | unsigned int is_array:1; | ||
1617 | unsigned int surface_type:3; /**< BRW_SURFACE_1D/2D/3D/CUBE */ | ||
1618 | } ss0; | ||
1619 | |||
1620 | struct { | ||
1621 | unsigned int base_addr; | ||
1622 | } ss1; | ||
1623 | |||
1624 | struct { | ||
1625 | unsigned int width:14; | ||
1626 | unsigned int pad1:2; | ||
1627 | unsigned int height:14; | ||
1628 | unsigned int pad0:2; | ||
1629 | } ss2; | ||
1630 | |||
1631 | struct { | ||
1632 | unsigned int pitch:18; | ||
1633 | unsigned int pad:3; | ||
1634 | unsigned int depth:11; | ||
1635 | } ss3; | ||
1636 | |||
1637 | struct { | ||
1638 | unsigned int multisample_position_palette_index:3; | ||
1639 | unsigned int num_multisamples:3; | ||
1640 | unsigned int multisampled_surface_storage_format:1; | ||
1641 | unsigned int render_target_view_extent:11; | ||
1642 | unsigned int min_array_elt:11; | ||
1643 | unsigned int rotation:2; | ||
1644 | unsigned int pad0:1; | ||
1645 | } ss4; | ||
1646 | |||
1647 | struct { | ||
1648 | unsigned int mip_count:4; | ||
1649 | unsigned int min_lod:4; | ||
1650 | unsigned int pad1:12; | ||
1651 | unsigned int y_offset:4; | ||
1652 | unsigned int pad0:1; | ||
1653 | unsigned int x_offset:7; | ||
1654 | } ss5; | ||
1655 | |||
1656 | struct { | ||
1657 | unsigned int pad; /* Multisample Control Surface stuff */ | ||
1658 | } ss6; | ||
1659 | |||
1660 | struct { | ||
1661 | unsigned int resource_min_lod:12; | ||
1662 | unsigned int pad0:4; | ||
1663 | unsigned int shader_chanel_select_a:3; | ||
1664 | unsigned int shader_chanel_select_b:3; | ||
1665 | unsigned int shader_chanel_select_g:3; | ||
1666 | unsigned int shader_chanel_select_r:3; | ||
1667 | unsigned int alpha_clear_color:1; | ||
1668 | unsigned int blue_clear_color:1; | ||
1669 | unsigned int green_clear_color:1; | ||
1670 | unsigned int red_clear_color:1; | ||
1671 | } ss7; | ||
1672 | }; | ||
1673 | |||
1674 | struct gen7_sampler_state | ||
1675 | { | ||
1676 | struct | ||
1677 | { | ||
1678 | unsigned int aniso_algorithm:1; | ||
1679 | unsigned int lod_bias:13; | ||
1680 | unsigned int min_filter:3; | ||
1681 | unsigned int mag_filter:3; | ||
1682 | unsigned int mip_filter:2; | ||
1683 | unsigned int base_level:5; | ||
1684 | unsigned int pad1:1; | ||
1685 | unsigned int lod_preclamp:1; | ||
1686 | unsigned int default_color_mode:1; | ||
1687 | unsigned int pad0:1; | ||
1688 | unsigned int disable:1; | ||
1689 | } ss0; | ||
1690 | |||
1691 | struct | ||
1692 | { | ||
1693 | unsigned int cube_control_mode:1; | ||
1694 | unsigned int shadow_function:3; | ||
1695 | unsigned int pad:4; | ||
1696 | unsigned int max_lod:12; | ||
1697 | unsigned int min_lod:12; | ||
1698 | } ss1; | ||
1699 | |||
1700 | struct | ||
1701 | { | ||
1702 | unsigned int pad:5; | ||
1703 | unsigned int default_color_pointer:27; | ||
1704 | } ss2; | ||
1705 | |||
1706 | struct | ||
1707 | { | ||
1708 | unsigned int r_wrap_mode:3; | ||
1709 | unsigned int t_wrap_mode:3; | ||
1710 | unsigned int s_wrap_mode:3; | ||
1711 | unsigned int pad:1; | ||
1712 | unsigned int non_normalized_coord:1; | ||
1713 | unsigned int trilinear_quality:2; | ||
1714 | unsigned int address_round:6; | ||
1715 | unsigned int max_aniso:3; | ||
1716 | unsigned int chroma_key_mode:1; | ||
1717 | unsigned int chroma_key_index:2; | ||
1718 | unsigned int chroma_key_enable:1; | ||
1719 | unsigned int pad0:6; | ||
1720 | } ss3; | ||
1721 | }; | ||
1722 | |||
1723 | #endif | ||
diff --git a/xvmc/i830_reg.h b/xvmc/i830_reg.h new file mode 100644 index 00000000..93d03cf3 --- /dev/null +++ b/xvmc/i830_reg.h | |||
@@ -0,0 +1,805 @@ | |||
1 | /************************************************************************** | ||
2 | * | ||
3 | * Copyright 2003 Tungsten Graphics, Inc., Cedar Park, Texas. | ||
4 | * All Rights Reserved. | ||
5 | * | ||
6 | * Permission is hereby granted, free of charge, to any person obtaining a | ||
7 | * copy of this software and associated documentation files (the | ||
8 | * "Software"), to deal in the Software without restriction, including | ||
9 | * without limitation the rights to use, copy, modify, merge, publish, | ||
10 | * distribute, sub license, and/or sell copies of the Software, and to | ||
11 | * permit persons to whom the Software is furnished to do so, subject to | ||
12 | * the following conditions: | ||
13 | * | ||
14 | * The above copyright notice and this permission notice (including the | ||
15 | * next paragraph) shall be included in all copies or substantial portions | ||
16 | * of the Software. | ||
17 | * | ||
18 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS | ||
19 | * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | ||
20 | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. | ||
21 | * IN NO EVENT SHALL TUNGSTEN GRAPHICS AND/OR ITS SUPPLIERS BE LIABLE FOR | ||
22 | * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, | ||
23 | * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE | ||
24 | * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
25 | * | ||
26 | **************************************************************************/ | ||
27 | |||
28 | #ifndef _I830_REG_H_ | ||
29 | #define _I830_REG_H_ | ||
30 | |||
31 | #define I830_SET_FIELD( var, mask, value ) (var &= ~(mask), var |= value) | ||
32 | |||
33 | /* Flush */ | ||
34 | #define MI_FLUSH (0x04<<23) | ||
35 | #define MI_FLUSH_DW (0x26<<23) | ||
36 | |||
37 | #define MI_WRITE_DIRTY_STATE (1<<4) | ||
38 | #define MI_END_SCENE (1<<3) | ||
39 | #define MI_GLOBAL_SNAPSHOT_COUNT_RESET (1<<3) | ||
40 | #define MI_INHIBIT_RENDER_CACHE_FLUSH (1<<2) | ||
41 | #define MI_STATE_INSTRUCTION_CACHE_FLUSH (1<<1) | ||
42 | #define MI_INVALIDATE_MAP_CACHE (1<<0) | ||
43 | /* broadwater flush bits */ | ||
44 | #define BRW_MI_GLOBAL_SNAPSHOT_RESET (1 << 3) | ||
45 | |||
46 | #define MI_BATCH_BUFFER_END (0xA << 23) | ||
47 | |||
48 | /* Noop */ | ||
49 | #define MI_NOOP 0x00 | ||
50 | #define MI_NOOP_WRITE_ID (1<<22) | ||
51 | #define MI_NOOP_ID_MASK (1<<22 - 1) | ||
52 | |||
53 | /* Wait for Events */ | ||
54 | #define MI_WAIT_FOR_EVENT (0x03<<23) | ||
55 | #define MI_WAIT_FOR_PIPEB_SVBLANK (1<<18) | ||
56 | #define MI_WAIT_FOR_PIPEA_SVBLANK (1<<17) | ||
57 | #define MI_WAIT_FOR_OVERLAY_FLIP (1<<16) | ||
58 | #define MI_WAIT_FOR_PIPEB_VBLANK (1<<7) | ||
59 | #define MI_WAIT_FOR_PIPEB_SCAN_LINE_WINDOW (1<<5) | ||
60 | #define MI_WAIT_FOR_PIPEA_VBLANK (1<<3) | ||
61 | #define MI_WAIT_FOR_PIPEA_SCAN_LINE_WINDOW (1<<1) | ||
62 | |||
63 | /* Set the scan line for MI_WAIT_FOR_PIPE?_SCAN_LINE_WINDOW */ | ||
64 | #define MI_LOAD_SCAN_LINES_INCL (0x12<<23) | ||
65 | #define MI_LOAD_SCAN_LINES_DISPLAY_PIPEA (0) | ||
66 | #define MI_LOAD_SCAN_LINES_DISPLAY_PIPEB (0x1<<20) | ||
67 | |||
68 | /* BLT commands */ | ||
69 | #define COLOR_BLT_CMD ((2<<29)|(0x40<<22)|(0x3)) | ||
70 | #define COLOR_BLT_WRITE_ALPHA (1<<21) | ||
71 | #define COLOR_BLT_WRITE_RGB (1<<20) | ||
72 | |||
73 | #define XY_COLOR_BLT_CMD ((2<<29)|(0x50<<22)|(0x4)) | ||
74 | #define XY_COLOR_BLT_WRITE_ALPHA (1<<21) | ||
75 | #define XY_COLOR_BLT_WRITE_RGB (1<<20) | ||
76 | #define XY_COLOR_BLT_TILED (1<<11) | ||
77 | |||
78 | #define XY_SETUP_CLIP_BLT_CMD ((2<<29)|(3<<22)|1) | ||
79 | |||
80 | #define XY_SRC_COPY_BLT_CMD ((2<<29)|(0x53<<22)|6) | ||
81 | #define XY_SRC_COPY_BLT_WRITE_ALPHA (1<<21) | ||
82 | #define XY_SRC_COPY_BLT_WRITE_RGB (1<<20) | ||
83 | #define XY_SRC_COPY_BLT_SRC_TILED (1<<15) | ||
84 | #define XY_SRC_COPY_BLT_DST_TILED (1<<11) | ||
85 | |||
86 | #define SRC_COPY_BLT_CMD ((2<<29)|(0x43<<22)|0x4) | ||
87 | #define SRC_COPY_BLT_WRITE_ALPHA (1<<21) | ||
88 | #define SRC_COPY_BLT_WRITE_RGB (1<<20) | ||
89 | |||
90 | #define XY_PAT_BLT_IMMEDIATE ((2<<29)|(0x72<<22)) | ||
91 | |||
92 | #define XY_MONO_PAT_BLT_CMD ((0x2<<29)|(0x52<<22)|0x7) | ||
93 | #define XY_MONO_PAT_VERT_SEED ((1<<10)|(1<<9)|(1<<8)) | ||
94 | #define XY_MONO_PAT_HORT_SEED ((1<<14)|(1<<13)|(1<<12)) | ||
95 | #define XY_MONO_PAT_BLT_WRITE_ALPHA (1<<21) | ||
96 | #define XY_MONO_PAT_BLT_WRITE_RGB (1<<20) | ||
97 | |||
98 | #define XY_MONO_SRC_BLT_CMD ((0x2<<29)|(0x54<<22)|(0x6)) | ||
99 | #define XY_MONO_SRC_BLT_WRITE_ALPHA (1<<21) | ||
100 | #define XY_MONO_SRC_BLT_WRITE_RGB (1<<20) | ||
101 | |||
102 | #define CMD_3D (0x3<<29) | ||
103 | |||
104 | #define PRIM3D_INLINE (CMD_3D | (0x1f<<24)) | ||
105 | #define PRIM3D_TRILIST (0x0<<18) | ||
106 | #define PRIM3D_TRISTRIP (0x1<<18) | ||
107 | #define PRIM3D_TRISTRIP_RVRSE (0x2<<18) | ||
108 | #define PRIM3D_TRIFAN (0x3<<18) | ||
109 | #define PRIM3D_POLY (0x4<<18) | ||
110 | #define PRIM3D_LINELIST (0x5<<18) | ||
111 | #define PRIM3D_LINESTRIP (0x6<<18) | ||
112 | #define PRIM3D_RECTLIST (0x7<<18) | ||
113 | #define PRIM3D_POINTLIST (0x8<<18) | ||
114 | #define PRIM3D_DIB (0x9<<18) | ||
115 | #define PRIM3D_CLEAR_RECT (0xa<<18) | ||
116 | #define PRIM3D_ZONE_INIT (0xd<<18) | ||
117 | #define PRIM3D_MASK (0x1f<<18) | ||
118 | |||
119 | #define _3DSTATE_AA_CMD (CMD_3D | (0x06<<24)) | ||
120 | #define AA_LINE_ECAAR_WIDTH_ENABLE (1<<16) | ||
121 | #define AA_LINE_ECAAR_WIDTH_0_5 0 | ||
122 | #define AA_LINE_ECAAR_WIDTH_1_0 (1<<14) | ||
123 | #define AA_LINE_ECAAR_WIDTH_2_0 (2<<14) | ||
124 | #define AA_LINE_ECAAR_WIDTH_4_0 (3<<14) | ||
125 | #define AA_LINE_REGION_WIDTH_ENABLE (1<<8) | ||
126 | #define AA_LINE_REGION_WIDTH_0_5 0 | ||
127 | #define AA_LINE_REGION_WIDTH_1_0 (1<<6) | ||
128 | #define AA_LINE_REGION_WIDTH_2_0 (2<<6) | ||
129 | #define AA_LINE_REGION_WIDTH_4_0 (3<<6) | ||
130 | #define AA_LINE_ENABLE ((1<<1) | 1) | ||
131 | #define AA_LINE_DISABLE (1<<1) | ||
132 | |||
133 | #define _3DSTATE_BUF_INFO_CMD (CMD_3D | (0x1d<<24) | (0x8e<<16) | 1) | ||
134 | /* Dword 1 */ | ||
135 | #define BUF_3D_ID_COLOR_BACK (0x3<<24) | ||
136 | #define BUF_3D_ID_DEPTH (0x7<<24) | ||
137 | #define BUF_3D_USE_FENCE (1<<23) | ||
138 | #define BUF_3D_TILED_SURFACE (1<<22) | ||
139 | #define BUF_3D_TILE_WALK_X 0 | ||
140 | #define BUF_3D_TILE_WALK_Y (1<<21) | ||
141 | #define BUF_3D_PITCH(x) (((x)/4)<<2) | ||
142 | /* Dword 2 */ | ||
143 | #define BUF_3D_ADDR(x) ((x) & ~0x3) | ||
144 | |||
145 | #define _3DSTATE_COLOR_FACTOR_CMD (CMD_3D | (0x1d<<24) | (0x1<<16)) | ||
146 | |||
147 | #define _3DSTATE_COLOR_FACTOR_N_CMD(stage) (CMD_3D | (0x1d<<24) | \ | ||
148 | ((0x90+(stage))<<16)) | ||
149 | |||
150 | #define _3DSTATE_CONST_BLEND_COLOR_CMD (CMD_3D | (0x1d<<24) | (0x88<<16)) | ||
151 | |||
152 | #define _3DSTATE_DFLT_DIFFUSE_CMD (CMD_3D | (0x1d<<24) | (0x99<<16)) | ||
153 | |||
154 | #define _3DSTATE_DFLT_SPEC_CMD (CMD_3D | (0x1d<<24) | (0x9a<<16)) | ||
155 | |||
156 | #define _3DSTATE_DFLT_Z_CMD (CMD_3D | (0x1d<<24) | (0x98<<16)) | ||
157 | |||
158 | #define _3DSTATE_DST_BUF_VARS_CMD (CMD_3D | (0x1d<<24) | (0x85<<16)) | ||
159 | /* Dword 1 */ | ||
160 | #define DSTORG_HORT_BIAS(x) ((x)<<20) | ||
161 | #define DSTORG_VERT_BIAS(x) ((x)<<16) | ||
162 | #define COLOR_4_2_2_CHNL_WRT_ALL 0 | ||
163 | #define COLOR_4_2_2_CHNL_WRT_Y (1<<12) | ||
164 | #define COLOR_4_2_2_CHNL_WRT_CR (2<<12) | ||
165 | #define COLOR_4_2_2_CHNL_WRT_CB (3<<12) | ||
166 | #define COLOR_4_2_2_CHNL_WRT_CRCB (4<<12) | ||
167 | #define COLR_BUF_8BIT 0 | ||
168 | #define COLR_BUF_RGB555 (1<<8) | ||
169 | #define COLR_BUF_RGB565 (2<<8) | ||
170 | #define COLR_BUF_ARGB8888 (3<<8) | ||
171 | #define COLR_BUF_ARGB4444 (8<<8) | ||
172 | #define COLR_BUF_ARGB1555 (9<<8) | ||
173 | #define DEPTH_IS_Z 0 | ||
174 | #define DEPTH_IS_W (1<<6) | ||
175 | #define DEPTH_FRMT_16_FIXED 0 | ||
176 | #define DEPTH_FRMT_16_FLOAT (1<<2) | ||
177 | #define DEPTH_FRMT_24_FIXED_8_OTHER (2<<2) | ||
178 | #define DEPTH_FRMT_24_FLOAT_8_OTHER (3<<2) | ||
179 | #define VERT_LINE_STRIDE_1 (1<<1) | ||
180 | #define VERT_LINE_STRIDE_0 0 | ||
181 | #define VERT_LINE_STRIDE_OFS_1 1 | ||
182 | #define VERT_LINE_STRIDE_OFS_0 0 | ||
183 | |||
184 | #define _3DSTATE_DRAW_RECT_CMD (CMD_3D|(0x1d<<24)|(0x80<<16)|3) | ||
185 | /* Dword 1 */ | ||
186 | #define DRAW_RECT_DIS_DEPTH_OFS (1<<30) | ||
187 | #define DRAW_DITHER_OFS_X(x) ((x)<<26) | ||
188 | #define DRAW_DITHER_OFS_Y(x) ((x)<<24) | ||
189 | /* Dword 2 */ | ||
190 | #define DRAW_YMIN(x) ((x)<<16) | ||
191 | #define DRAW_XMIN(x) (x) | ||
192 | /* Dword 3 */ | ||
193 | #define DRAW_YMAX(x) ((x)<<16) | ||
194 | #define DRAW_XMAX(x) (x) | ||
195 | /* Dword 4 */ | ||
196 | #define DRAW_YORG(x) ((x)<<16) | ||
197 | #define DRAW_XORG(x) (x) | ||
198 | |||
199 | #define _3DSTATE_ENABLES_1_CMD (CMD_3D|(0x3<<24)) | ||
200 | #define ENABLE_LOGIC_OP_MASK ((1<<23)|(1<<22)) | ||
201 | #define ENABLE_LOGIC_OP ((1<<23)|(1<<22)) | ||
202 | #define DISABLE_LOGIC_OP (1<<23) | ||
203 | #define ENABLE_STENCIL_TEST ((1<<21)|(1<<20)) | ||
204 | #define DISABLE_STENCIL_TEST (1<<21) | ||
205 | #define ENABLE_DEPTH_BIAS ((1<<11)|(1<<10)) | ||
206 | #define DISABLE_DEPTH_BIAS (1<<11) | ||
207 | #define ENABLE_SPEC_ADD_MASK ((1<<9)|(1<<8)) | ||
208 | #define ENABLE_SPEC_ADD ((1<<9)|(1<<8)) | ||
209 | #define DISABLE_SPEC_ADD (1<<9) | ||
210 | #define ENABLE_DIS_FOG_MASK ((1<<7)|(1<<6)) | ||
211 | #define ENABLE_FOG ((1<<7)|(1<<6)) | ||
212 | #define DISABLE_FOG (1<<7) | ||
213 | #define ENABLE_DIS_ALPHA_TEST_MASK ((1<<5)|(1<<4)) | ||
214 | #define ENABLE_ALPHA_TEST ((1<<5)|(1<<4)) | ||
215 | #define DISABLE_ALPHA_TEST (1<<5) | ||
216 | #define ENABLE_DIS_CBLEND_MASK ((1<<3)|(1<<2)) | ||
217 | #define ENABLE_COLOR_BLEND ((1<<3)|(1<<2)) | ||
218 | #define DISABLE_COLOR_BLEND (1<<3) | ||
219 | #define ENABLE_DIS_DEPTH_TEST_MASK ((1<<1)|1) | ||
220 | #define ENABLE_DEPTH_TEST ((1<<1)|1) | ||
221 | #define DISABLE_DEPTH_TEST (1<<1) | ||
222 | |||
223 | /* _3DSTATE_ENABLES_2, p138 */ | ||
224 | #define _3DSTATE_ENABLES_2_CMD (CMD_3D|(0x4<<24)) | ||
225 | #define ENABLE_STENCIL_WRITE ((1<<21)|(1<<20)) | ||
226 | #define DISABLE_STENCIL_WRITE (1<<21) | ||
227 | #define ENABLE_TEX_CACHE ((1<<17)|(1<<16)) | ||
228 | #define DISABLE_TEX_CACHE (1<<17) | ||
229 | #define ENABLE_DITHER ((1<<9)|(1<<8)) | ||
230 | #define DISABLE_DITHER (1<<9) | ||
231 | #define ENABLE_COLOR_MASK (1<<10) | ||
232 | #define WRITEMASK_ALPHA (1<<7) | ||
233 | #define WRITEMASK_ALPHA_SHIFT 7 | ||
234 | #define WRITEMASK_RED (1<<6) | ||
235 | #define WRITEMASK_RED_SHIFT 6 | ||
236 | #define WRITEMASK_GREEN (1<<5) | ||
237 | #define WRITEMASK_GREEN_SHIFT 5 | ||
238 | #define WRITEMASK_BLUE (1<<4) | ||
239 | #define WRITEMASK_BLUE_SHIFT 4 | ||
240 | #define WRITEMASK_MASK ((1<<4)|(1<<5)|(1<<6)|(1<<7)) | ||
241 | #define ENABLE_COLOR_WRITE ((1<<3)|(1<<2)) | ||
242 | #define DISABLE_COLOR_WRITE (1<<3) | ||
243 | #define ENABLE_DIS_DEPTH_WRITE_MASK 0x3 | ||
244 | #define ENABLE_DEPTH_WRITE ((1<<1)|1) | ||
245 | #define DISABLE_DEPTH_WRITE (1<<1) | ||
246 | |||
247 | /* _3DSTATE_FOG_COLOR, p139 */ | ||
248 | #define _3DSTATE_FOG_COLOR_CMD (CMD_3D|(0x15<<24)) | ||
249 | #define FOG_COLOR_RED(x) ((x)<<16) | ||
250 | #define FOG_COLOR_GREEN(x) ((x)<<8) | ||
251 | #define FOG_COLOR_BLUE(x) (x) | ||
252 | |||
253 | /* _3DSTATE_FOG_MODE, p140 */ | ||
254 | #define _3DSTATE_FOG_MODE_CMD (CMD_3D|(0x1d<<24)|(0x89<<16)|2) | ||
255 | /* Dword 1 */ | ||
256 | #define FOGFUNC_ENABLE (1<<31) | ||
257 | #define FOGFUNC_VERTEX 0 | ||
258 | #define FOGFUNC_PIXEL_EXP (1<<28) | ||
259 | #define FOGFUNC_PIXEL_EXP2 (2<<28) | ||
260 | #define FOGFUNC_PIXEL_LINEAR (3<<28) | ||
261 | #define FOGSRC_INDEX_Z (1<<27) | ||
262 | #define FOGSRC_INDEX_W ((1<<27)|(1<<25)) | ||
263 | #define FOG_LINEAR_CONST (1<<24) | ||
264 | #define FOG_CONST_1(x) ((x)<<4) | ||
265 | #define ENABLE_FOG_DENSITY (1<<23) | ||
266 | /* Dword 2 */ | ||
267 | #define FOG_CONST_2(x) (x) | ||
268 | /* Dword 3 */ | ||
269 | #define FOG_DENSITY(x) (x) | ||
270 | |||
271 | /* _3DSTATE_INDEPENDENT_ALPHA_BLEND, p142 */ | ||
272 | #define _3DSTATE_INDPT_ALPHA_BLEND_CMD (CMD_3D|(0x0b<<24)) | ||
273 | #define ENABLE_INDPT_ALPHA_BLEND ((1<<23)|(1<<22)) | ||
274 | #define DISABLE_INDPT_ALPHA_BLEND (1<<23) | ||
275 | #define ALPHA_BLENDFUNC_MASK 0x3f0000 | ||
276 | #define ENABLE_ALPHA_BLENDFUNC (1<<21) | ||
277 | #define ABLENDFUNC_ADD 0 | ||
278 | #define ABLENDFUNC_SUB (1<<16) | ||
279 | #define ABLENDFUNC_RVSE_SUB (2<<16) | ||
280 | #define ABLENDFUNC_MIN (3<<16) | ||
281 | #define ABLENDFUNC_MAX (4<<16) | ||
282 | #define SRC_DST_ABLEND_MASK 0xfff | ||
283 | #define ENABLE_SRC_ABLEND_FACTOR (1<<11) | ||
284 | #define SRC_ABLEND_FACT(x) ((x)<<6) | ||
285 | #define ENABLE_DST_ABLEND_FACTOR (1<<5) | ||
286 | #define DST_ABLEND_FACT(x) (x) | ||
287 | |||
288 | #define BLENDFACTOR_ZERO 0x01 | ||
289 | #define BLENDFACTOR_ONE 0x02 | ||
290 | #define BLENDFACTOR_SRC_COLR 0x03 | ||
291 | #define BLENDFACTOR_INV_SRC_COLR 0x04 | ||
292 | #define BLENDFACTOR_SRC_ALPHA 0x05 | ||
293 | #define BLENDFACTOR_INV_SRC_ALPHA 0x06 | ||
294 | #define BLENDFACTOR_DST_ALPHA 0x07 | ||
295 | #define BLENDFACTOR_INV_DST_ALPHA 0x08 | ||
296 | #define BLENDFACTOR_DST_COLR 0x09 | ||
297 | #define BLENDFACTOR_INV_DST_COLR 0x0a | ||
298 | #define BLENDFACTOR_SRC_ALPHA_SATURATE 0x0b | ||
299 | #define BLENDFACTOR_CONST_COLOR 0x0c | ||
300 | #define BLENDFACTOR_INV_CONST_COLOR 0x0d | ||
301 | #define BLENDFACTOR_CONST_ALPHA 0x0e | ||
302 | #define BLENDFACTOR_INV_CONST_ALPHA 0x0f | ||
303 | #define BLENDFACTOR_MASK 0x0f | ||
304 | |||
305 | /* _3DSTATE_MAP_BLEND_ARG, p152 */ | ||
306 | #define _3DSTATE_MAP_BLEND_ARG_CMD(stage) (CMD_3D|(0x0e<<24)|((stage)<<20)) | ||
307 | |||
308 | #define TEXPIPE_COLOR 0 | ||
309 | #define TEXPIPE_ALPHA (1<<18) | ||
310 | #define TEXPIPE_KILL (2<<18) | ||
311 | #define TEXBLEND_ARG0 0 | ||
312 | #define TEXBLEND_ARG1 (1<<15) | ||
313 | #define TEXBLEND_ARG2 (2<<15) | ||
314 | #define TEXBLEND_ARG3 (3<<15) | ||
315 | #define TEXBLENDARG_MODIFY_PARMS (1<<6) | ||
316 | #define TEXBLENDARG_REPLICATE_ALPHA (1<<5) | ||
317 | #define TEXBLENDARG_INV_ARG (1<<4) | ||
318 | #define TEXBLENDARG_ONE 0 | ||
319 | #define TEXBLENDARG_FACTOR 0x01 | ||
320 | #define TEXBLENDARG_ACCUM 0x02 | ||
321 | #define TEXBLENDARG_DIFFUSE 0x03 | ||
322 | #define TEXBLENDARG_SPEC 0x04 | ||
323 | #define TEXBLENDARG_CURRENT 0x05 | ||
324 | #define TEXBLENDARG_TEXEL0 0x06 | ||
325 | #define TEXBLENDARG_TEXEL1 0x07 | ||
326 | #define TEXBLENDARG_TEXEL2 0x08 | ||
327 | #define TEXBLENDARG_TEXEL3 0x09 | ||
328 | #define TEXBLENDARG_FACTOR_N 0x0e | ||
329 | |||
330 | /* _3DSTATE_MAP_BLEND_OP, p155 */ | ||
331 | #define _3DSTATE_MAP_BLEND_OP_CMD(stage) (CMD_3D|(0x0d<<24)|((stage)<<20)) | ||
332 | #if 0 | ||
333 | # define TEXPIPE_COLOR 0 | ||
334 | # define TEXPIPE_ALPHA (1<<18) | ||
335 | # define TEXPIPE_KILL (2<<18) | ||
336 | #endif | ||
337 | #define ENABLE_TEXOUTPUT_WRT_SEL (1<<17) | ||
338 | #define TEXOP_OUTPUT_CURRENT 0 | ||
339 | #define TEXOP_OUTPUT_ACCUM (1<<15) | ||
340 | #define ENABLE_TEX_CNTRL_STAGE ((1<<12)|(1<<11)) | ||
341 | #define DISABLE_TEX_CNTRL_STAGE (1<<12) | ||
342 | #define TEXOP_SCALE_SHIFT 9 | ||
343 | #define TEXOP_SCALE_1X (0 << TEXOP_SCALE_SHIFT) | ||
344 | #define TEXOP_SCALE_2X (1 << TEXOP_SCALE_SHIFT) | ||
345 | #define TEXOP_SCALE_4X (2 << TEXOP_SCALE_SHIFT) | ||
346 | #define TEXOP_MODIFY_PARMS (1<<8) | ||
347 | #define TEXOP_LAST_STAGE (1<<7) | ||
348 | #define TEXBLENDOP_KILLPIXEL 0x02 | ||
349 | #define TEXBLENDOP_ARG1 0x01 | ||
350 | #define TEXBLENDOP_ARG2 0x02 | ||
351 | #define TEXBLENDOP_MODULATE 0x03 | ||
352 | #define TEXBLENDOP_ADD 0x06 | ||
353 | #define TEXBLENDOP_ADDSIGNED 0x07 | ||
354 | #define TEXBLENDOP_BLEND 0x08 | ||
355 | #define TEXBLENDOP_BLEND_AND_ADD 0x09 | ||
356 | #define TEXBLENDOP_SUBTRACT 0x0a | ||
357 | #define TEXBLENDOP_DOT3 0x0b | ||
358 | #define TEXBLENDOP_DOT4 0x0c | ||
359 | #define TEXBLENDOP_MODULATE_AND_ADD 0x0d | ||
360 | #define TEXBLENDOP_MODULATE_2X_AND_ADD 0x0e | ||
361 | #define TEXBLENDOP_MODULATE_4X_AND_ADD 0x0f | ||
362 | |||
363 | /* _3DSTATE_MAP_BUMP_TABLE, p160 TODO */ | ||
364 | /* _3DSTATE_MAP_COLOR_CHROMA_KEY, p161 TODO */ | ||
365 | |||
366 | #define _3DSTATE_MAP_COORD_TRANSFORM ((3<<29)|(0x1d<<24)|(0x8c<<16)) | ||
367 | #define DISABLE_TEX_TRANSFORM (1<<28) | ||
368 | #define TEXTURE_SET(x) (x<<29) | ||
369 | |||
370 | #define _3DSTATE_VERTEX_TRANSFORM ((3<<29)|(0x1d<<24)|(0x8b<<16)) | ||
371 | #define DISABLE_VIEWPORT_TRANSFORM (1<<31) | ||
372 | #define DISABLE_PERSPECTIVE_DIVIDE (1<<29) | ||
373 | |||
374 | /* _3DSTATE_MAP_COORD_SET_BINDINGS, p162 */ | ||
375 | #define _3DSTATE_MAP_COORD_SETBIND_CMD (CMD_3D|(0x1d<<24)|(0x02<<16)) | ||
376 | #define TEXBIND_MASK3 ((1<<15)|(1<<14)|(1<<13)|(1<<12)) | ||
377 | #define TEXBIND_MASK2 ((1<<11)|(1<<10)|(1<<9)|(1<<8)) | ||
378 | #define TEXBIND_MASK1 ((1<<7)|(1<<6)|(1<<5)|(1<<4)) | ||
379 | #define TEXBIND_MASK0 ((1<<3)|(1<<2)|(1<<1)|1) | ||
380 | |||
381 | #define TEXBIND_SET3(x) ((x)<<12) | ||
382 | #define TEXBIND_SET2(x) ((x)<<8) | ||
383 | #define TEXBIND_SET1(x) ((x)<<4) | ||
384 | #define TEXBIND_SET0(x) (x) | ||
385 | |||
386 | #define TEXCOORDSRC_KEEP 0 | ||
387 | #define TEXCOORDSRC_DEFAULT 0x01 | ||
388 | #define TEXCOORDSRC_VTXSET_0 0x08 | ||
389 | #define TEXCOORDSRC_VTXSET_1 0x09 | ||
390 | #define TEXCOORDSRC_VTXSET_2 0x0a | ||
391 | #define TEXCOORDSRC_VTXSET_3 0x0b | ||
392 | #define TEXCOORDSRC_VTXSET_4 0x0c | ||
393 | #define TEXCOORDSRC_VTXSET_5 0x0d | ||
394 | #define TEXCOORDSRC_VTXSET_6 0x0e | ||
395 | #define TEXCOORDSRC_VTXSET_7 0x0f | ||
396 | |||
397 | #define MAP_UNIT(unit) ((unit)<<16) | ||
398 | #define MAP_UNIT_MASK (0x7<<16) | ||
399 | |||
400 | /* _3DSTATE_MAP_COORD_SETS, p164 */ | ||
401 | #define _3DSTATE_MAP_COORD_SET_CMD (CMD_3D|(0x1c<<24)|(0x01<<19)) | ||
402 | #define TEXCOORD_SET(n) ((n)<<16) | ||
403 | #define ENABLE_TEXCOORD_PARAMS (1<<15) | ||
404 | #define TEXCOORDS_ARE_NORMAL (1<<14) | ||
405 | #define TEXCOORDS_ARE_IN_TEXELUNITS 0 | ||
406 | #define TEXCOORDTYPE_CARTESIAN 0 | ||
407 | #define TEXCOORDTYPE_HOMOGENEOUS (1<<11) | ||
408 | #define TEXCOORDTYPE_VECTOR (2<<11) | ||
409 | #define TEXCOORDTYPE_MASK (0x7<<11) | ||
410 | #define ENABLE_ADDR_V_CNTL (1<<7) | ||
411 | #define ENABLE_ADDR_U_CNTL (1<<3) | ||
412 | #define TEXCOORD_ADDR_V_MODE(x) ((x)<<4) | ||
413 | #define TEXCOORD_ADDR_U_MODE(x) (x) | ||
414 | #define TEXCOORDMODE_WRAP 0 | ||
415 | #define TEXCOORDMODE_MIRROR 1 | ||
416 | #define TEXCOORDMODE_CLAMP 2 | ||
417 | #define TEXCOORDMODE_WRAP_SHORTEST 3 | ||
418 | #define TEXCOORDMODE_CLAMP_BORDER 4 | ||
419 | #define TEXCOORD_ADDR_V_MASK 0x70 | ||
420 | #define TEXCOORD_ADDR_U_MASK 0x7 | ||
421 | |||
422 | /* _3DSTATE_MAP_CUBE, p168 TODO */ | ||
423 | #define _3DSTATE_MAP_CUBE (CMD_3D|(0x1c<<24)|(0x0a<<19)) | ||
424 | #define CUBE_NEGX_ENABLE (1<<5) | ||
425 | #define CUBE_POSX_ENABLE (1<<4) | ||
426 | #define CUBE_NEGY_ENABLE (1<<3) | ||
427 | #define CUBE_POSY_ENABLE (1<<2) | ||
428 | #define CUBE_NEGZ_ENABLE (1<<1) | ||
429 | #define CUBE_POSZ_ENABLE (1<<0) | ||
430 | |||
431 | #define _3DSTATE_MAP_INFO_CMD (CMD_3D|(0x1d<<24)|(0x0<<16)|3) | ||
432 | #define TEXMAP_INDEX(x) ((x)<<28) | ||
433 | #define MAP_SURFACE_8BIT (1<<24) | ||
434 | #define MAP_SURFACE_16BIT (2<<24) | ||
435 | #define MAP_SURFACE_32BIT (3<<24) | ||
436 | #define MAP_FORMAT_2D (0) | ||
437 | #define MAP_FORMAT_3D_CUBE (1<<11) | ||
438 | |||
439 | /* _3DSTATE_MODES_1, p190 */ | ||
440 | #define _3DSTATE_MODES_1_CMD (CMD_3D|(0x08<<24)) | ||
441 | #define BLENDFUNC_MASK 0x3f0000 | ||
442 | #define ENABLE_COLR_BLND_FUNC (1<<21) | ||
443 | #define BLENDFUNC_ADD 0 | ||
444 | #define BLENDFUNC_SUB (1<<16) | ||
445 | #define BLENDFUNC_RVRSE_SUB (2<<16) | ||
446 | #define BLENDFUNC_MIN (3<<16) | ||
447 | #define BLENDFUNC_MAX (4<<16) | ||
448 | #define SRC_DST_BLND_MASK 0xfff | ||
449 | #define ENABLE_SRC_BLND_FACTOR (1<<11) | ||
450 | #define ENABLE_DST_BLND_FACTOR (1<<5) | ||
451 | #define SRC_BLND_FACT(x) ((x)<<6) | ||
452 | #define DST_BLND_FACT(x) (x) | ||
453 | |||
454 | /* _3DSTATE_MODES_2, p192 */ | ||
455 | #define _3DSTATE_MODES_2_CMD (CMD_3D|(0x0f<<24)) | ||
456 | #define ENABLE_GLOBAL_DEPTH_BIAS (1<<22) | ||
457 | #define GLOBAL_DEPTH_BIAS(x) ((x)<<14) | ||
458 | #define ENABLE_ALPHA_TEST_FUNC (1<<13) | ||
459 | #define ENABLE_ALPHA_REF_VALUE (1<<8) | ||
460 | #define ALPHA_TEST_FUNC(x) ((x)<<9) | ||
461 | #define ALPHA_REF_VALUE(x) (x) | ||
462 | |||
463 | #define ALPHA_TEST_REF_MASK 0x3fff | ||
464 | |||
465 | /* _3DSTATE_MODES_3, p193 */ | ||
466 | #define _3DSTATE_MODES_3_CMD (CMD_3D|(0x02<<24)) | ||
467 | #define DEPTH_TEST_FUNC_MASK 0x1f0000 | ||
468 | #define ENABLE_DEPTH_TEST_FUNC (1<<20) | ||
469 | /* Uses COMPAREFUNC */ | ||
470 | #define DEPTH_TEST_FUNC(x) ((x)<<16) | ||
471 | #define ENABLE_ALPHA_SHADE_MODE (1<<11) | ||
472 | #define ENABLE_FOG_SHADE_MODE (1<<9) | ||
473 | #define ENABLE_SPEC_SHADE_MODE (1<<7) | ||
474 | #define ENABLE_COLOR_SHADE_MODE (1<<5) | ||
475 | #define ALPHA_SHADE_MODE(x) ((x)<<10) | ||
476 | #define FOG_SHADE_MODE(x) ((x)<<8) | ||
477 | #define SPEC_SHADE_MODE(x) ((x)<<6) | ||
478 | #define COLOR_SHADE_MODE(x) ((x)<<4) | ||
479 | #define CULLMODE_MASK 0xf | ||
480 | #define ENABLE_CULL_MODE (1<<3) | ||
481 | #define CULLMODE_BOTH 0 | ||
482 | #define CULLMODE_NONE 1 | ||
483 | #define CULLMODE_CW 2 | ||
484 | #define CULLMODE_CCW 3 | ||
485 | |||
486 | #define SHADE_MODE_LINEAR 0 | ||
487 | #define SHADE_MODE_FLAT 0x1 | ||
488 | |||
489 | /* _3DSTATE_MODES_4, p195 */ | ||
490 | #define _3DSTATE_MODES_4_CMD (CMD_3D|(0x16<<24)) | ||
491 | #define ENABLE_LOGIC_OP_FUNC (1<<23) | ||
492 | #define LOGIC_OP_FUNC(x) ((x)<<18) | ||
493 | #define LOGICOP_MASK ((1<<18)|(1<<19)|(1<<20)|(1<<21)) | ||
494 | #define LOGICOP_CLEAR 0 | ||
495 | #define LOGICOP_NOR 0x1 | ||
496 | #define LOGICOP_AND_INV 0x2 | ||
497 | #define LOGICOP_COPY_INV 0x3 | ||
498 | #define LOGICOP_AND_RVRSE 0x4 | ||
499 | #define LOGICOP_INV 0x5 | ||
500 | #define LOGICOP_XOR 0x6 | ||
501 | #define LOGICOP_NAND 0x7 | ||
502 | #define LOGICOP_AND 0x8 | ||
503 | #define LOGICOP_EQUIV 0x9 | ||
504 | #define LOGICOP_NOOP 0xa | ||
505 | #define LOGICOP_OR_INV 0xb | ||
506 | #define LOGICOP_COPY 0xc | ||
507 | #define LOGICOP_OR_RVRSE 0xd | ||
508 | #define LOGICOP_OR 0xe | ||
509 | #define LOGICOP_SET 0xf | ||
510 | #define MODE4_ENABLE_STENCIL_TEST_MASK ((1<<17)|(0xff00)) | ||
511 | #define ENABLE_STENCIL_TEST_MASK (1<<17) | ||
512 | #define STENCIL_TEST_MASK(x) ((x)<<8) | ||
513 | #define MODE4_ENABLE_STENCIL_WRITE_MASK ((1<<16)|(0x00ff)) | ||
514 | #define ENABLE_STENCIL_WRITE_MASK (1<<16) | ||
515 | #define STENCIL_WRITE_MASK(x) ((x)&0xff) | ||
516 | |||
517 | /* _3DSTATE_MODES_5, p196 */ | ||
518 | #define _3DSTATE_MODES_5_CMD (CMD_3D|(0x0c<<24)) | ||
519 | #define ENABLE_SPRITE_POINT_TEX (1<<23) | ||
520 | #define SPRITE_POINT_TEX_ON (1<<22) | ||
521 | #define SPRITE_POINT_TEX_OFF 0 | ||
522 | #define FLUSH_RENDER_CACHE (1<<18) | ||
523 | #define FLUSH_TEXTURE_CACHE (1<<16) | ||
524 | #define FIXED_LINE_WIDTH_MASK 0xfc00 | ||
525 | #define ENABLE_FIXED_LINE_WIDTH (1<<15) | ||
526 | #define FIXED_LINE_WIDTH(x) ((x)<<10) | ||
527 | #define FIXED_POINT_WIDTH_MASK 0x3ff | ||
528 | #define ENABLE_FIXED_POINT_WIDTH (1<<9) | ||
529 | #define FIXED_POINT_WIDTH(x) (x) | ||
530 | |||
531 | /* _3DSTATE_RASTERIZATION_RULES, p198 */ | ||
532 | #define _3DSTATE_RASTER_RULES_CMD (CMD_3D|(0x07<<24)) | ||
533 | #define ENABLE_POINT_RASTER_RULE (1<<15) | ||
534 | #define OGL_POINT_RASTER_RULE (1<<13) | ||
535 | #define ENABLE_LINE_STRIP_PROVOKE_VRTX (1<<8) | ||
536 | #define ENABLE_TRI_FAN_PROVOKE_VRTX (1<<5) | ||
537 | #define ENABLE_TRI_STRIP_PROVOKE_VRTX (1<<2) | ||
538 | #define LINE_STRIP_PROVOKE_VRTX(x) ((x)<<6) | ||
539 | #define TRI_FAN_PROVOKE_VRTX(x) ((x)<<3) | ||
540 | #define TRI_STRIP_PROVOKE_VRTX(x) (x) | ||
541 | |||
542 | /* _3DSTATE_SCISSOR_ENABLE, p200 */ | ||
543 | #define _3DSTATE_SCISSOR_ENABLE_CMD (CMD_3D|(0x1c<<24)|(0x10<<19)) | ||
544 | #define ENABLE_SCISSOR_RECT ((1<<1) | 1) | ||
545 | #define DISABLE_SCISSOR_RECT (1<<1) | ||
546 | |||
547 | /* _3DSTATE_SCISSOR_RECTANGLE_0, p201 */ | ||
548 | #define _3DSTATE_SCISSOR_RECT_0_CMD (CMD_3D|(0x1d<<24)|(0x81<<16)|1) | ||
549 | /* Dword 1 */ | ||
550 | #define SCISSOR_RECT_0_YMIN(x) ((x)<<16) | ||
551 | #define SCISSOR_RECT_0_XMIN(x) (x) | ||
552 | /* Dword 2 */ | ||
553 | #define SCISSOR_RECT_0_YMAX(x) ((x)<<16) | ||
554 | #define SCISSOR_RECT_0_XMAX(x) (x) | ||
555 | |||
556 | /* _3DSTATE_STENCIL_TEST, p202 */ | ||
557 | #define _3DSTATE_STENCIL_TEST_CMD (CMD_3D|(0x09<<24)) | ||
558 | #define ENABLE_STENCIL_PARMS (1<<23) | ||
559 | #define STENCIL_OPS_MASK (0xffc000) | ||
560 | #define STENCIL_FAIL_OP(x) ((x)<<20) | ||
561 | #define STENCIL_PASS_DEPTH_FAIL_OP(x) ((x)<<17) | ||
562 | #define STENCIL_PASS_DEPTH_PASS_OP(x) ((x)<<14) | ||
563 | |||
564 | #define ENABLE_STENCIL_TEST_FUNC_MASK ((1<<13)|(1<<12)|(1<<11)|(1<<10)|(1<<9)) | ||
565 | #define ENABLE_STENCIL_TEST_FUNC (1<<13) | ||
566 | /* Uses COMPAREFUNC */ | ||
567 | #define STENCIL_TEST_FUNC(x) ((x)<<9) | ||
568 | #define STENCIL_REF_VALUE_MASK ((1<<8)|0xff) | ||
569 | #define ENABLE_STENCIL_REF_VALUE (1<<8) | ||
570 | #define STENCIL_REF_VALUE(x) (x) | ||
571 | |||
572 | /* _3DSTATE_VERTEX_FORMAT, p204 */ | ||
573 | #define _3DSTATE_VFT0_CMD (CMD_3D|(0x05<<24)) | ||
574 | #define VFT0_POINT_WIDTH (1<<12) | ||
575 | #define VFT0_TEX_COUNT_MASK (7<<8) | ||
576 | #define VFT0_TEX_COUNT_SHIFT 8 | ||
577 | #define VFT0_TEX_COUNT(x) ((x)<<8) | ||
578 | #define VFT0_SPEC (1<<7) | ||
579 | #define VFT0_DIFFUSE (1<<6) | ||
580 | #define VFT0_DEPTH_OFFSET (1<<5) | ||
581 | #define VFT0_XYZ (1<<1) | ||
582 | #define VFT0_XYZW (2<<1) | ||
583 | #define VFT0_XY (3<<1) | ||
584 | #define VFT0_XYW (4<<1) | ||
585 | #define VFT0_XYZW_MASK (7<<1) | ||
586 | |||
587 | /* _3DSTATE_VERTEX_FORMAT_2, p206 */ | ||
588 | #define _3DSTATE_VERTEX_FORMAT_2_CMD (CMD_3D|(0x0a<<24)) | ||
589 | #define VFT1_TEX7_FMT(x) ((x)<<14) | ||
590 | #define VFT1_TEX6_FMT(x) ((x)<<12) | ||
591 | #define VFT1_TEX5_FMT(x) ((x)<<10) | ||
592 | #define VFT1_TEX4_FMT(x) ((x)<<8) | ||
593 | #define VFT1_TEX3_FMT(x) ((x)<<6) | ||
594 | #define VFT1_TEX2_FMT(x) ((x)<<4) | ||
595 | #define VFT1_TEX1_FMT(x) ((x)<<2) | ||
596 | #define VFT1_TEX0_FMT(x) (x) | ||
597 | #define VFT1_TEX0_MASK 3 | ||
598 | #define VFT1_TEX1_SHIFT 2 | ||
599 | #define TEXCOORDFMT_2D 0 | ||
600 | #define TEXCOORDFMT_3D 1 | ||
601 | #define TEXCOORDFMT_4D 2 | ||
602 | #define TEXCOORDFMT_1D 3 | ||
603 | |||
604 | /*New stuff picked up along the way */ | ||
605 | |||
606 | #define MLC_LOD_BIAS_MASK ((1<<7)-1) | ||
607 | |||
608 | /* _3DSTATE_VERTEX_TRANSFORM, p207 */ | ||
609 | #define _3DSTATE_VERTEX_TRANS_CMD (CMD_3D|(0x1d<<24)|(0x8b<<16)|0) | ||
610 | #define _3DSTATE_VERTEX_TRANS_MTX_CMD (CMD_3D|(0x1d<<24)|(0x8b<<16)|6) | ||
611 | /* Dword 1 */ | ||
612 | #define ENABLE_VIEWPORT_TRANSFORM ((1<<31)|(1<<30)) | ||
613 | #define DISABLE_VIEWPORT_TRANSFORM (1<<31) | ||
614 | #define ENABLE_PERSP_DIVIDE ((1<<29)|(1<<28)) | ||
615 | #define DISABLE_PERSP_DIVIDE (1<<29) | ||
616 | #define VRTX_TRANS_LOAD_MATRICES 0x7421 | ||
617 | #define VRTX_TRANS_NO_LOAD_MATRICES 0x0000 | ||
618 | /* Dword 2 -> 7 are matrix elements */ | ||
619 | |||
620 | /* _3DSTATE_W_STATE, p209 */ | ||
621 | #define _3DSTATE_W_STATE_CMD (CMD_3D|(0x1d<<24)|(0x8d<<16)|1) | ||
622 | /* Dword 1 */ | ||
623 | #define MAGIC_W_STATE_DWORD1 0x00000008 | ||
624 | /* Dword 2 */ | ||
625 | #define WFAR_VALUE(x) (x) | ||
626 | |||
627 | /* Stipple command, carried over from the i810, apparently: | ||
628 | */ | ||
629 | #define _3DSTATE_STIPPLE (CMD_3D|(0x1d<<24)|(0x83<<16)) | ||
630 | #define ST1_ENABLE (1<<16) | ||
631 | #define ST1_MASK (0xffff) | ||
632 | |||
633 | #define _3DSTATE_LOAD_STATE_IMMEDIATE_1 (CMD_3D|(0x1d<<24)|(0x04<<16)) | ||
634 | #define I1_LOAD_S(n) (1<<((n)+4)) | ||
635 | #define S3_POINT_WIDTH_SHIFT 23 | ||
636 | #define S3_LINE_WIDTH_SHIFT 19 | ||
637 | #define S3_ALPHA_SHADE_MODE_SHIFT 18 | ||
638 | #define S3_FOG_SHADE_MODE_SHIFT 17 | ||
639 | #define S3_SPEC_SHADE_MODE_SHIFT 16 | ||
640 | #define S3_COLOR_SHADE_MODE_SHIFT 15 | ||
641 | #define S3_CULL_MODE_SHIFT 13 | ||
642 | #define S3_CULLMODE_BOTH (0) | ||
643 | #define S3_CULLMODE_NONE (1<<13) | ||
644 | #define S3_CULLMODE_CW (2<<13) | ||
645 | #define S3_CULLMODE_CCW (3<<13) | ||
646 | #define S3_POINT_WIDTH_PRESENT (1<<12) | ||
647 | #define S3_SPEC_FOG_PRESENT (1<<11) | ||
648 | #define S3_DIFFUSE_PRESENT (1<<10) | ||
649 | #define S3_DEPTH_OFFSET_PRESENT (1<<9) | ||
650 | #define S3_POSITION_SHIFT 6 | ||
651 | #define S3_VERTEXHAS_XYZ (1<<6) | ||
652 | #define S3_VERTEXHAS_XYZW (2<<6) | ||
653 | #define S3_VERTEXHAS_XY (3<<6) | ||
654 | #define S3_VERTEXHAS_XYW (4<<6) | ||
655 | #define S3_ENABLE_SPEC_ADD (1<<5) | ||
656 | #define S3_ENABLE_FOG (1<<4) | ||
657 | #define S3_ENABLE_LOCAL_DEPTH_BIAS (1<<3) | ||
658 | #define S3_ENABLE_SPRITE_POINT (1<<1) | ||
659 | #define S3_ENABLE_ANTIALIASING 1 | ||
660 | #define S8_ENABLE_ALPHA_TEST (1<<31) | ||
661 | #define S8_ALPHA_TEST_FUNC_SHIFT 28 | ||
662 | #define S8_ALPHA_REFVALUE_SHIFT 20 | ||
663 | #define S8_ENABLE_DEPTH_TEST (1<<19) | ||
664 | #define S8_DEPTH_TEST_FUNC_SHIFT 16 | ||
665 | #define S8_ENABLE_COLOR_BLEND (1<<15) | ||
666 | #define S8_COLOR_BLEND_FUNC_SHIFT 12 | ||
667 | #define S8_BLENDFUNC_ADD (0) | ||
668 | #define S8_BLENDFUNC_SUB (1<<12) | ||
669 | #define S8_BLENDFUNC_RVRSE_SUB (2<<12) | ||
670 | #define S8_BLENDFUNC_MIN (3<<12) | ||
671 | #define S8_BLENDFUNC_MAX (4<<12) | ||
672 | #define S8_SRC_BLEND_FACTOR_SHIFT 8 | ||
673 | #define S8_DST_BLEND_FACTOR_SHIFT 4 | ||
674 | #define S8_ENABLE_DEPTH_BUFFER_WRITE (1<<3) | ||
675 | #define S8_ENABLE_COLOR_BUFFER_WRITE (1<<2) | ||
676 | |||
677 | #define _3DSTATE_LOAD_STATE_IMMEDIATE_2 (CMD_3D|(0x1d<<24)|(0x03<<16)) | ||
678 | #define LOAD_TEXTURE_MAP(x) (1<<((x)+11)) | ||
679 | #define LOAD_TEXTURE_BLEND_STAGE(x) (1<<((x)+7)) | ||
680 | #define LOAD_GLOBAL_COLOR_FACTOR (1<<6) | ||
681 | |||
682 | #define TM0S0_ADDRESS_MASK 0xfffffffc | ||
683 | #define TM0S0_USE_FENCE (1<<1) | ||
684 | |||
685 | #define TM0S1_HEIGHT_SHIFT 21 | ||
686 | #define TM0S1_WIDTH_SHIFT 10 | ||
687 | #define TM0S1_PALETTE_SELECT (1<<9) | ||
688 | #define TM0S1_MAPSURF_FORMAT_MASK (0x7 << 6) | ||
689 | #define TM0S1_MAPSURF_FORMAT_SHIFT 6 | ||
690 | #define MAPSURF_8BIT_INDEXED (0<<6) | ||
691 | #define MAPSURF_8BIT (1<<6) | ||
692 | #define MAPSURF_16BIT (2<<6) | ||
693 | #define MAPSURF_32BIT (3<<6) | ||
694 | #define MAPSURF_411 (4<<6) | ||
695 | #define MAPSURF_422 (5<<6) | ||
696 | #define MAPSURF_COMPRESSED (6<<6) | ||
697 | #define MAPSURF_4BIT_INDEXED (7<<6) | ||
698 | #define TM0S1_MT_FORMAT_MASK (0x7 << 3) | ||
699 | #define TM0S1_MT_FORMAT_SHIFT 3 | ||
700 | #define MT_4BIT_IDX_ARGB8888 (7<<3) /* SURFACE_4BIT_INDEXED */ | ||
701 | #define MT_8BIT_IDX_RGB565 (0<<3) /* SURFACE_8BIT_INDEXED */ | ||
702 | #define MT_8BIT_IDX_ARGB1555 (1<<3) | ||
703 | #define MT_8BIT_IDX_ARGB4444 (2<<3) | ||
704 | #define MT_8BIT_IDX_AY88 (3<<3) | ||
705 | #define MT_8BIT_IDX_ABGR8888 (4<<3) | ||
706 | #define MT_8BIT_IDX_BUMP_88DVDU (5<<3) | ||
707 | #define MT_8BIT_IDX_BUMP_655LDVDU (6<<3) | ||
708 | #define MT_8BIT_IDX_ARGB8888 (7<<3) | ||
709 | #define MT_8BIT_I8 (0<<3) /* SURFACE_8BIT */ | ||
710 | #define MT_8BIT_L8 (1<<3) | ||
711 | #define MT_8BIT_A8 (4<<3) | ||
712 | #define MT_16BIT_RGB565 (0<<3) /* SURFACE_16BIT */ | ||
713 | #define MT_16BIT_ARGB1555 (1<<3) | ||
714 | #define MT_16BIT_ARGB4444 (2<<3) | ||
715 | #define MT_16BIT_AY88 (3<<3) | ||
716 | #define MT_16BIT_DIB_ARGB1555_8888 (4<<3) | ||
717 | #define MT_16BIT_BUMP_88DVDU (5<<3) | ||
718 | #define MT_16BIT_BUMP_655LDVDU (6<<3) | ||
719 | #define MT_16BIT_DIB_RGB565_8888 (7<<3) | ||
720 | #define MT_32BIT_ARGB8888 (0<<3) /* SURFACE_32BIT */ | ||
721 | #define MT_32BIT_ABGR8888 (1<<3) | ||
722 | #define MT_32BIT_XRGB8888 (2<<3) | ||
723 | #define MT_32BIT_XBGR8888 (3<<3) | ||
724 | #define MT_32BIT_BUMP_XLDVDU_8888 (6<<3) | ||
725 | #define MT_32BIT_DIB_8888 (7<<3) | ||
726 | #define MT_411_YUV411 (0<<3) /* SURFACE_411 */ | ||
727 | #define MT_422_YCRCB_SWAPY (0<<3) /* SURFACE_422 */ | ||
728 | #define MT_422_YCRCB_NORMAL (1<<3) | ||
729 | #define MT_422_YCRCB_SWAPUV (2<<3) | ||
730 | #define MT_422_YCRCB_SWAPUVY (3<<3) | ||
731 | #define MT_COMPRESS_DXT1 (0<<3) /* SURFACE_COMPRESSED */ | ||
732 | #define MT_COMPRESS_DXT2_3 (1<<3) | ||
733 | #define MT_COMPRESS_DXT4_5 (2<<3) | ||
734 | #define MT_COMPRESS_FXT1 (3<<3) | ||
735 | #define TM0S1_COLORSPACE_CONVERSION (1 << 2) | ||
736 | #define TM0S1_TILED_SURFACE (1 << 1) | ||
737 | #define TM0S1_TILE_WALK (1 << 0) | ||
738 | |||
739 | #define TM0S2_PITCH_SHIFT 21 | ||
740 | #define TM0S2_CUBE_FACE_ENA_SHIFT 15 | ||
741 | #define TM0S2_CUBE_FACE_ENA_MASK (1<<15) | ||
742 | #define TM0S2_MAP_FORMAT (1<<14) | ||
743 | #define TM0S2_MAP_2D (0<<14) | ||
744 | #define TM0S2_MAP_3D_CUBE (1<<14) | ||
745 | #define TM0S2_VERTICAL_LINE_STRIDE (1<<13) | ||
746 | #define TM0S2_VERITCAL_LINE_STRIDE_OFF (1<<12) | ||
747 | #define TM0S2_OUTPUT_CHAN_SHIFT 10 | ||
748 | #define TM0S2_OUTPUT_CHAN_MASK (3<<10) | ||
749 | |||
750 | #define TM0S3_MIP_FILTER_MASK (0x3<<30) | ||
751 | #define TM0S3_MIP_FILTER_SHIFT 30 | ||
752 | #define MIPFILTER_NONE 0 | ||
753 | #define MIPFILTER_NEAREST 1 | ||
754 | #define MIPFILTER_LINEAR 3 | ||
755 | #define TM0S3_MAG_FILTER_MASK (0x3<<28) | ||
756 | #define TM0S3_MAG_FILTER_SHIFT 28 | ||
757 | #define TM0S3_MIN_FILTER_MASK (0x3<<26) | ||
758 | #define TM0S3_MIN_FILTER_SHIFT 26 | ||
759 | #define FILTER_NEAREST 0 | ||
760 | #define FILTER_LINEAR 1 | ||
761 | #define FILTER_ANISOTROPIC 2 | ||
762 | |||
763 | #define TM0S3_LOD_BIAS_SHIFT 17 | ||
764 | #define TM0S3_LOD_BIAS_MASK (0x1ff<<17) | ||
765 | #define TM0S3_MAX_MIP_SHIFT 9 | ||
766 | #define TM0S3_MAX_MIP_MASK (0xff<<9) | ||
767 | #define TM0S3_MIN_MIP_SHIFT 3 | ||
768 | #define TM0S3_MIN_MIP_MASK (0x3f<<3) | ||
769 | #define TM0S3_KILL_PIXEL (1<<2) | ||
770 | #define TM0S3_KEYED_FILTER (1<<1) | ||
771 | #define TM0S3_CHROMA_KEY (1<<0) | ||
772 | |||
773 | /* _3DSTATE_MAP_TEXEL_STREAM, p188 */ | ||
774 | #define _3DSTATE_MAP_TEX_STREAM_CMD (CMD_3D|(0x1c<<24)|(0x05<<19)) | ||
775 | #define DISABLE_TEX_STREAM_BUMP (1<<12) | ||
776 | #define ENABLE_TEX_STREAM_BUMP ((1<<12)|(1<<11)) | ||
777 | #define TEX_MODIFY_UNIT_0 0 | ||
778 | #define TEX_MODIFY_UNIT_1 (1<<8) | ||
779 | #define ENABLE_TEX_STREAM_COORD_SET (1<<7) | ||
780 | #define TEX_STREAM_COORD_SET(x) ((x)<<4) | ||
781 | #define ENABLE_TEX_STREAM_MAP_IDX (1<<3) | ||
782 | #define TEX_STREAM_MAP_IDX(x) (x) | ||
783 | |||
784 | #define FLUSH_MAP_CACHE (1<<0) | ||
785 | |||
786 | #define _3DSTATE_MAP_FILTER_CMD (CMD_3D|(0x1c<<24)|(0x02<<19)) | ||
787 | #define FILTER_TEXMAP_INDEX(x) ((x) << 16) | ||
788 | #define MAG_MODE_FILTER_ENABLE (1 << 5) | ||
789 | #define MIN_MODE_FILTER_ENABLE (1 << 2) | ||
790 | #define MAG_MAPFILTER_NEAREST (0 << 3) | ||
791 | #define MAG_MAPFILTER_LINEAR (1 << 3) | ||
792 | #define MAG_MAPFILTER_ANISOTROPIC (2 << 3) | ||
793 | #define MIN_MAPFILTER_NEAREST (0) | ||
794 | #define MIN_MAPFILTER_LINEAR (1) | ||
795 | #define MIN_MAPFILTER_ANISOTROPIC (2) | ||
796 | #define ENABLE_KEYS (1<<15) | ||
797 | #define DISABLE_COLOR_KEY 0 | ||
798 | #define DISABLE_CHROMA_KEY 0 | ||
799 | #define DISABLE_KILL_PIXEL 0 | ||
800 | #define ENABLE_MIP_MODE_FILTER (1 << 9) | ||
801 | #define MIPFILTER_NONE 0 | ||
802 | #define MIPFILTER_NEAREST 1 | ||
803 | #define MIPFILTER_LINEAR 3 | ||
804 | |||
805 | #endif | ||
diff --git a/src/xvmc/i915_program.h b/xvmc/i915_program.h index da315437..da315437 100644 --- a/src/xvmc/i915_program.h +++ b/xvmc/i915_program.h | |||
diff --git a/xvmc/i915_reg.h b/xvmc/i915_reg.h new file mode 100644 index 00000000..746a4131 --- /dev/null +++ b/xvmc/i915_reg.h | |||
@@ -0,0 +1,844 @@ | |||
1 | /************************************************************************** | ||
2 | * | ||
3 | * Copyright 2003 Tungsten Graphics, Inc., Cedar Park, Texas. | ||
4 | * All Rights Reserved. | ||
5 | * | ||
6 | * Permission is hereby granted, free of charge, to any person obtaining a | ||
7 | * copy of this software and associated documentation files (the | ||
8 | * "Software"), to deal in the Software without restriction, including | ||
9 | * without limitation the rights to use, copy, modify, merge, publish, | ||
10 | * distribute, sub license, and/or sell copies of the Software, and to | ||
11 | * permit persons to whom the Software is furnished to do so, subject to | ||
12 | * the following conditions: | ||
13 | * | ||
14 | * The above copyright notice and this permission notice (including the | ||
15 | * next paragraph) shall be included in all copies or substantial portions | ||
16 | * of the Software. | ||
17 | * | ||
18 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS | ||
19 | * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | ||
20 | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. | ||
21 | * IN NO EVENT SHALL TUNGSTEN GRAPHICS AND/OR ITS SUPPLIERS BE LIABLE FOR | ||
22 | * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, | ||
23 | * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE | ||
24 | * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
25 | * | ||
26 | **************************************************************************/ | ||
27 | |||
28 | #ifndef _I915_REG_H_ | ||
29 | #define _I915_REG_H_ | ||
30 | |||
31 | #define I915_SET_FIELD( var, mask, value ) (var &= ~(mask), var |= value) | ||
32 | |||
33 | #define CMD_3D (0x3<<29) | ||
34 | |||
35 | #define PRIM3D (CMD_3D | (0x1f<<24)) | ||
36 | #define PRIM3D_INDIRECT_SEQUENTIAL ((1<<23) | (0<<17)) | ||
37 | #define PRIM3D_TRILIST (PRIM3D | (0x0<<18)) | ||
38 | #define PRIM3D_TRISTRIP (PRIM3D | (0x1<<18)) | ||
39 | #define PRIM3D_TRISTRIP_RVRSE (PRIM3D | (0x2<<18)) | ||
40 | #define PRIM3D_TRIFAN (PRIM3D | (0x3<<18)) | ||
41 | #define PRIM3D_POLY (PRIM3D | (0x4<<18)) | ||
42 | #define PRIM3D_LINELIST (PRIM3D | (0x5<<18)) | ||
43 | #define PRIM3D_LINESTRIP (PRIM3D | (0x6<<18)) | ||
44 | #define PRIM3D_RECTLIST (PRIM3D | (0x7<<18)) | ||
45 | #define PRIM3D_POINTLIST (PRIM3D | (0x8<<18)) | ||
46 | #define PRIM3D_DIB (PRIM3D | (0x9<<18)) | ||
47 | #define PRIM3D_CLEAR_RECT (PRIM3D | (0xa<<18)) | ||
48 | #define PRIM3D_ZONE_INIT (PRIM3D | (0xd<<18)) | ||
49 | #define PRIM3D_MASK (0x1f<<18) | ||
50 | |||
51 | /* p137 */ | ||
52 | #define _3DSTATE_AA_CMD (CMD_3D | (0x06<<24)) | ||
53 | #define AA_LINE_ECAAR_WIDTH_ENABLE (1<<16) | ||
54 | #define AA_LINE_ECAAR_WIDTH_0_5 0 | ||
55 | #define AA_LINE_ECAAR_WIDTH_1_0 (1<<14) | ||
56 | #define AA_LINE_ECAAR_WIDTH_2_0 (2<<14) | ||
57 | #define AA_LINE_ECAAR_WIDTH_4_0 (3<<14) | ||
58 | #define AA_LINE_REGION_WIDTH_ENABLE (1<<8) | ||
59 | #define AA_LINE_REGION_WIDTH_0_5 0 | ||
60 | #define AA_LINE_REGION_WIDTH_1_0 (1<<6) | ||
61 | #define AA_LINE_REGION_WIDTH_2_0 (2<<6) | ||
62 | #define AA_LINE_REGION_WIDTH_4_0 (3<<6) | ||
63 | |||
64 | /* 3DSTATE_BACKFACE_STENCIL_OPS, p138*/ | ||
65 | #define _3DSTATE_BACKFACE_STENCIL_OPS (CMD_3D | (0x8<<24)) | ||
66 | #define BFO_ENABLE_STENCIL_REF (1<<23) | ||
67 | #define BFO_STENCIL_REF_SHIFT 15 | ||
68 | #define BFO_STENCIL_REF_MASK (0xff<<15) | ||
69 | #define BFO_ENABLE_STENCIL_FUNCS (1<<14) | ||
70 | #define BFO_STENCIL_TEST_SHIFT 11 | ||
71 | #define BFO_STENCIL_TEST_MASK (0x7<<11) | ||
72 | #define BFO_STENCIL_FAIL_SHIFT 8 | ||
73 | #define BFO_STENCIL_FAIL_MASK (0x7<<8) | ||
74 | #define BFO_STENCIL_PASS_Z_FAIL_SHIFT 5 | ||
75 | #define BFO_STENCIL_PASS_Z_FAIL_MASK (0x7<<5) | ||
76 | #define BFO_STENCIL_PASS_Z_PASS_SHIFT 2 | ||
77 | #define BFO_STENCIL_PASS_Z_PASS_MASK (0x7<<2) | ||
78 | #define BFO_ENABLE_STENCIL_TWO_SIDE (1<<1) | ||
79 | #define BFO_STENCIL_TWO_SIDE (1<<0) | ||
80 | |||
81 | /* 3DSTATE_BACKFACE_STENCIL_MASKS, p140 */ | ||
82 | #define _3DSTATE_BACKFACE_STENCIL_MASKS (CMD_3D | (0x9<<24)) | ||
83 | #define BFM_ENABLE_STENCIL_TEST_MASK (1<<17) | ||
84 | #define BFM_ENABLE_STENCIL_WRITE_MASK (1<<16) | ||
85 | #define BFM_STENCIL_TEST_MASK_SHIFT 8 | ||
86 | #define BFM_STENCIL_TEST_MASK_MASK (0xff<<8) | ||
87 | #define BFM_STENCIL_WRITE_MASK_SHIFT 0 | ||
88 | #define BFM_STENCIL_WRITE_MASK_MASK (0xff<<0) | ||
89 | |||
90 | /* 3DSTATE_BIN_CONTROL p141 */ | ||
91 | |||
92 | /* p143 */ | ||
93 | #define _3DSTATE_BUF_INFO_CMD (CMD_3D | (0x1d<<24) | (0x8e<<16) | 1) | ||
94 | /* Dword 1 */ | ||
95 | #define BUF_3D_ID_COLOR_BACK (0x3<<24) | ||
96 | #define BUF_3D_ID_DEPTH (0x7<<24) | ||
97 | #define BUF_3D_USE_FENCE (1<<23) | ||
98 | #define BUF_3D_TILED_SURFACE (1<<22) | ||
99 | #define BUF_3D_TILE_WALK_X 0 | ||
100 | #define BUF_3D_TILE_WALK_Y (1<<21) | ||
101 | #define BUF_3D_PITCH(x) (((x)/4)<<2) | ||
102 | /* Dword 2 */ | ||
103 | #define BUF_3D_ADDR(x) ((x) & ~0x3) | ||
104 | |||
105 | /* 3DSTATE_CHROMA_KEY */ | ||
106 | |||
107 | /* 3DSTATE_CLEAR_PARAMETERS, p150 */ | ||
108 | #define _3DSTATE_CLEAR_PARAMETERS (CMD_3D | (0x1d<<24) | (0x9c<<16) | 5) | ||
109 | /* Dword 1 */ | ||
110 | #define CLEARPARAM_CLEAR_RECT (1 << 16) | ||
111 | #define CLEARPARAM_ZONE_INIT (0 << 16) | ||
112 | #define CLEARPARAM_WRITE_COLOR (1 << 2) | ||
113 | #define CLEARPARAM_WRITE_DEPTH (1 << 1) | ||
114 | #define CLEARPARAM_WRITE_STENCIL (1 << 0) | ||
115 | |||
116 | /* 3DSTATE_CONSTANT_BLEND_COLOR, p153 */ | ||
117 | #define _3DSTATE_CONST_BLEND_COLOR_CMD (CMD_3D | (0x1d<<24) | (0x88<<16)) | ||
118 | |||
119 | /* 3DSTATE_COORD_SET_BINDINGS, p154 */ | ||
120 | #define _3DSTATE_COORD_SET_BINDINGS (CMD_3D | (0x16<<24)) | ||
121 | #define CSB_TCB(iunit, eunit) ((eunit)<<(iunit*3)) | ||
122 | |||
123 | /* p156 */ | ||
124 | #define _3DSTATE_DFLT_DIFFUSE_CMD (CMD_3D | (0x1d<<24) | (0x99<<16)) | ||
125 | |||
126 | /* p157 */ | ||
127 | #define _3DSTATE_DFLT_SPEC_CMD (CMD_3D | (0x1d<<24) | (0x9a<<16)) | ||
128 | |||
129 | /* p158 */ | ||
130 | #define _3DSTATE_DFLT_Z_CMD (CMD_3D | (0x1d<<24) | (0x98<<16)) | ||
131 | |||
132 | /* 3DSTATE_DEPTH_OFFSET_SCALE, p159 */ | ||
133 | #define _3DSTATE_DEPTH_OFFSET_SCALE (CMD_3D | (0x1d<<24) | (0x97<<16)) | ||
134 | /* scale in dword 1 */ | ||
135 | |||
136 | /* The depth subrectangle is not supported, but must be disabled. */ | ||
137 | /* 3DSTATE_DEPTH_SUBRECT_DISABLE, p160 */ | ||
138 | #define _3DSTATE_DEPTH_SUBRECT_DISABLE (CMD_3D | (0x1c<<24) | (0x11<<19) | (1 << 1) | (0 << 0)) | ||
139 | |||
140 | /* p161 */ | ||
141 | #define _3DSTATE_DST_BUF_VARS_CMD (CMD_3D | (0x1d<<24) | (0x85<<16)) | ||
142 | /* Dword 1 */ | ||
143 | #define TEX_DEFAULT_COLOR_OGL (0<<30) | ||
144 | #define TEX_DEFAULT_COLOR_D3D (1<<30) | ||
145 | #define ZR_EARLY_DEPTH (1<<29) | ||
146 | #define LOD_PRECLAMP_OGL (1<<28) | ||
147 | #define LOD_PRECLAMP_D3D (0<<28) | ||
148 | #define DITHER_FULL_ALWAYS (0<<26) | ||
149 | #define DITHER_FULL_ON_FB_BLEND (1<<26) | ||
150 | #define DITHER_CLAMPED_ALWAYS (2<<26) | ||
151 | #define LINEAR_GAMMA_BLEND_32BPP (1<<25) | ||
152 | #define DEBUG_DISABLE_ENH_DITHER (1<<24) | ||
153 | #define DSTORG_HORT_BIAS(x) ((x)<<20) | ||
154 | #define DSTORG_VERT_BIAS(x) ((x)<<16) | ||
155 | #define COLOR_4_2_2_CHNL_WRT_ALL 0 | ||
156 | #define COLOR_4_2_2_CHNL_WRT_Y (1<<12) | ||
157 | #define COLOR_4_2_2_CHNL_WRT_CR (2<<12) | ||
158 | #define COLOR_4_2_2_CHNL_WRT_CB (3<<12) | ||
159 | #define COLOR_4_2_2_CHNL_WRT_CRCB (4<<12) | ||
160 | #define COLR_BUF_8BIT 0 | ||
161 | #define COLR_BUF_RGB555 (1<<8) | ||
162 | #define COLR_BUF_RGB565 (2<<8) | ||
163 | #define COLR_BUF_ARGB8888 (3<<8) | ||
164 | #define COLR_BUF_ARGB4444 (8<<8) | ||
165 | #define COLR_BUF_ARGB1555 (9<<8) | ||
166 | #define COLR_BUF_ARGB2AAA (0xa<<8) | ||
167 | #define DEPTH_FRMT_16_FIXED 0 | ||
168 | #define DEPTH_FRMT_16_FLOAT (1<<2) | ||
169 | #define DEPTH_FRMT_24_FIXED_8_OTHER (2<<2) | ||
170 | #define VERT_LINE_STRIDE_1 (1<<1) | ||
171 | #define VERT_LINE_STRIDE_0 (0<<1) | ||
172 | #define VERT_LINE_STRIDE_OFS_1 1 | ||
173 | #define VERT_LINE_STRIDE_OFS_0 0 | ||
174 | |||
175 | /* p166 */ | ||
176 | #define _3DSTATE_DRAW_RECT_CMD (CMD_3D|(0x1d<<24)|(0x80<<16)|3) | ||
177 | /* Dword 1 */ | ||
178 | #define DRAW_RECT_DIS_DEPTH_OFS (1<<30) | ||
179 | #define DRAW_DITHER_OFS_X(x) ((x)<<26) | ||
180 | #define DRAW_DITHER_OFS_Y(x) ((x)<<24) | ||
181 | /* Dword 2 */ | ||
182 | #define DRAW_YMIN(x) ((x)<<16) | ||
183 | #define DRAW_XMIN(x) (x) | ||
184 | /* Dword 3 */ | ||
185 | #define DRAW_YMAX(x) ((x)<<16) | ||
186 | #define DRAW_XMAX(x) (x) | ||
187 | /* Dword 4 */ | ||
188 | #define DRAW_YORG(x) ((x)<<16) | ||
189 | #define DRAW_XORG(x) (x) | ||
190 | |||
191 | /* 3DSTATE_FILTER_COEFFICIENTS_4X4, p170 */ | ||
192 | |||
193 | /* 3DSTATE_FILTER_COEFFICIENTS_6X5, p172 */ | ||
194 | |||
195 | /* _3DSTATE_FOG_COLOR, p173 */ | ||
196 | #define _3DSTATE_FOG_COLOR_CMD (CMD_3D|(0x15<<24)) | ||
197 | #define FOG_COLOR_RED(x) ((x)<<16) | ||
198 | #define FOG_COLOR_GREEN(x) ((x)<<8) | ||
199 | #define FOG_COLOR_BLUE(x) (x) | ||
200 | |||
201 | /* _3DSTATE_FOG_MODE, p174 */ | ||
202 | #define _3DSTATE_FOG_MODE_CMD (CMD_3D|(0x1d<<24)|(0x89<<16)|2) | ||
203 | /* Dword 1 */ | ||
204 | #define FMC1_FOGFUNC_MODIFY_ENABLE (1<<31) | ||
205 | #define FMC1_FOGFUNC_VERTEX (0<<28) | ||
206 | #define FMC1_FOGFUNC_PIXEL_EXP (1<<28) | ||
207 | #define FMC1_FOGFUNC_PIXEL_EXP2 (2<<28) | ||
208 | #define FMC1_FOGFUNC_PIXEL_LINEAR (3<<28) | ||
209 | #define FMC1_FOGFUNC_MASK (3<<28) | ||
210 | #define FMC1_FOGINDEX_MODIFY_ENABLE (1<<27) | ||
211 | #define FMC1_FOGINDEX_Z (0<<25) | ||
212 | #define FMC1_FOGINDEX_W (1<<25) | ||
213 | #define FMC1_C1_C2_MODIFY_ENABLE (1<<24) | ||
214 | #define FMC1_DENSITY_MODIFY_ENABLE (1<<23) | ||
215 | #define FMC1_C1_ONE (1<<13) | ||
216 | #define FMC1_C1_MASK (0xffff<<4) | ||
217 | /* Dword 2 */ | ||
218 | #define FMC2_C2_ONE (1<<16) | ||
219 | /* Dword 3 */ | ||
220 | #define FMC3_D_ONE (1<<16) | ||
221 | |||
222 | /* _3DSTATE_INDEPENDENT_ALPHA_BLEND, p177 */ | ||
223 | #define _3DSTATE_INDEPENDENT_ALPHA_BLEND_CMD (CMD_3D|(0x0b<<24)) | ||
224 | #define IAB_MODIFY_ENABLE (1<<23) | ||
225 | #define IAB_ENABLE (1<<22) | ||
226 | #define IAB_MODIFY_FUNC (1<<21) | ||
227 | #define IAB_FUNC_SHIFT 16 | ||
228 | #define IAB_MODIFY_SRC_FACTOR (1<<11) | ||
229 | #define IAB_SRC_FACTOR_SHIFT 6 | ||
230 | #define IAB_SRC_FACTOR_MASK (BLENDFACT_MASK<<6) | ||
231 | #define IAB_MODIFY_DST_FACTOR (1<<5) | ||
232 | #define IAB_DST_FACTOR_SHIFT 0 | ||
233 | #define IAB_DST_FACTOR_MASK (BLENDFACT_MASK<<0) | ||
234 | |||
235 | #define BLENDFACT_ZERO 0x01 | ||
236 | #define BLENDFACT_ONE 0x02 | ||
237 | #define BLENDFACT_SRC_COLR 0x03 | ||
238 | #define BLENDFACT_INV_SRC_COLR 0x04 | ||
239 | #define BLENDFACT_SRC_ALPHA 0x05 | ||
240 | #define BLENDFACT_INV_SRC_ALPHA 0x06 | ||
241 | #define BLENDFACT_DST_ALPHA 0x07 | ||
242 | #define BLENDFACT_INV_DST_ALPHA 0x08 | ||
243 | #define BLENDFACT_DST_COLR 0x09 | ||
244 | #define BLENDFACT_INV_DST_COLR 0x0a | ||
245 | #define BLENDFACT_SRC_ALPHA_SATURATE 0x0b | ||
246 | #define BLENDFACT_CONST_COLOR 0x0c | ||
247 | #define BLENDFACT_INV_CONST_COLOR 0x0d | ||
248 | #define BLENDFACT_CONST_ALPHA 0x0e | ||
249 | #define BLENDFACT_INV_CONST_ALPHA 0x0f | ||
250 | #define BLENDFACT_MASK 0x0f | ||
251 | |||
252 | #define BLENDFUNC_ADD 0x0 | ||
253 | #define BLENDFUNC_SUBTRACT 0x1 | ||
254 | #define BLENDFUNC_REVERSE_SUBTRACT 0x2 | ||
255 | #define BLENDFUNC_MIN 0x3 | ||
256 | #define BLENDFUNC_MAX 0x4 | ||
257 | #define BLENDFUNC_MASK 0x7 | ||
258 | |||
259 | /* 3DSTATE_LOAD_INDIRECT, p180 */ | ||
260 | |||
261 | #define _3DSTATE_LOAD_INDIRECT (CMD_3D|(0x1d<<24)|(0x7<<16)) | ||
262 | #define LI0_STATE_STATIC_INDIRECT (0x01<<8) | ||
263 | #define LI0_STATE_DYNAMIC_INDIRECT (0x02<<8) | ||
264 | #define LI0_STATE_SAMPLER (0x04<<8) | ||
265 | #define LI0_STATE_MAP (0x08<<8) | ||
266 | #define LI0_STATE_PROGRAM (0x10<<8) | ||
267 | #define LI0_STATE_CONSTANTS (0x20<<8) | ||
268 | |||
269 | #define SIS0_BUFFER_ADDRESS(x) ((x)&~0x3) | ||
270 | #define SIS0_FORCE_LOAD (1<<1) | ||
271 | #define SIS0_BUFFER_VALID (1<<0) | ||
272 | #define SIS1_BUFFER_LENGTH(x) ((x)&0xff) | ||
273 | |||
274 | #define DIS0_BUFFER_ADDRESS(x) ((x)&~0x3) | ||
275 | #define DIS0_BUFFER_RESET (1<<1) | ||
276 | #define DIS0_BUFFER_VALID (1<<0) | ||
277 | |||
278 | #define SSB0_BUFFER_ADDRESS(x) ((x)&~0x3) | ||
279 | #define SSB0_FORCE_LOAD (1<<1) | ||
280 | #define SSB0_BUFFER_VALID (1<<0) | ||
281 | #define SSB1_BUFFER_LENGTH(x) ((x)&0xff) | ||
282 | |||
283 | #define MSB0_BUFFER_ADDRESS(x) ((x)&~0x3) | ||
284 | #define MSB0_FORCE_LOAD (1<<1) | ||
285 | #define MSB0_BUFFER_VALID (1<<0) | ||
286 | #define MSB1_BUFFER_LENGTH(x) ((x)&0xff) | ||
287 | |||
288 | #define PSP0_BUFFER_ADDRESS(x) ((x)&~0x3) | ||
289 | #define PSP0_FORCE_LOAD (1<<1) | ||
290 | #define PSP0_BUFFER_VALID (1<<0) | ||
291 | #define PSP1_BUFFER_LENGTH(x) ((x)&0xff) | ||
292 | |||
293 | #define PSC0_BUFFER_ADDRESS(x) ((x)&~0x3) | ||
294 | #define PSC0_FORCE_LOAD (1<<1) | ||
295 | #define PSC0_BUFFER_VALID (1<<0) | ||
296 | #define PSC1_BUFFER_LENGTH(x) ((x)&0xff) | ||
297 | |||
298 | /* _3DSTATE_RASTERIZATION_RULES */ | ||
299 | #define _3DSTATE_RASTER_RULES_CMD (CMD_3D|(0x07<<24)) | ||
300 | #define ENABLE_POINT_RASTER_RULE (1<<15) | ||
301 | #define OGL_POINT_RASTER_RULE (1<<13) | ||
302 | #define ENABLE_TEXKILL_3D_4D (1<<10) | ||
303 | #define TEXKILL_3D (0<<9) | ||
304 | #define TEXKILL_4D (1<<9) | ||
305 | #define ENABLE_LINE_STRIP_PROVOKE_VRTX (1<<8) | ||
306 | #define ENABLE_TRI_FAN_PROVOKE_VRTX (1<<5) | ||
307 | #define LINE_STRIP_PROVOKE_VRTX(x) ((x)<<6) | ||
308 | #define TRI_FAN_PROVOKE_VRTX(x) ((x)<<3) | ||
309 | |||
310 | /* _3DSTATE_SCISSOR_ENABLE, p256 */ | ||
311 | #define _3DSTATE_SCISSOR_ENABLE_CMD (CMD_3D|(0x1c<<24)|(0x10<<19)) | ||
312 | #define ENABLE_SCISSOR_RECT ((1<<1) | 1) | ||
313 | #define DISABLE_SCISSOR_RECT (1<<1) | ||
314 | |||
315 | /* _3DSTATE_SCISSOR_RECTANGLE_0, p257 */ | ||
316 | #define _3DSTATE_SCISSOR_RECT_0_CMD (CMD_3D|(0x1d<<24)|(0x81<<16)|1) | ||
317 | /* Dword 1 */ | ||
318 | #define SCISSOR_RECT_0_YMIN(x) ((x)<<16) | ||
319 | #define SCISSOR_RECT_0_XMIN(x) (x) | ||
320 | /* Dword 2 */ | ||
321 | #define SCISSOR_RECT_0_YMAX(x) ((x)<<16) | ||
322 | #define SCISSOR_RECT_0_XMAX(x) (x) | ||
323 | |||
324 | /* p189 */ | ||
325 | #define _3DSTATE_LOAD_STATE_IMMEDIATE_1 ((0x3<<29)|(0x1d<<24)|(0x04<<16)) | ||
326 | #define I1_LOAD_S(n) (1<<(4+n)) | ||
327 | |||
328 | #define S0_VB_OFFSET_MASK 0xffffffc | ||
329 | #define S0_AUTO_CACHE_INV_DISABLE (1<<0) | ||
330 | |||
331 | #define S1_VERTEX_WIDTH_SHIFT 24 | ||
332 | #define S1_VERTEX_WIDTH_MASK (0x3f<<24) | ||
333 | #define S1_VERTEX_PITCH_SHIFT 16 | ||
334 | #define S1_VERTEX_PITCH_MASK (0x3f<<16) | ||
335 | |||
336 | #define TEXCOORDFMT_2D 0x0 | ||
337 | #define TEXCOORDFMT_3D 0x1 | ||
338 | #define TEXCOORDFMT_4D 0x2 | ||
339 | #define TEXCOORDFMT_1D 0x3 | ||
340 | #define TEXCOORDFMT_2D_16 0x4 | ||
341 | #define TEXCOORDFMT_4D_16 0x5 | ||
342 | #define TEXCOORDFMT_NOT_PRESENT 0xf | ||
343 | #define S2_TEXCOORD_FMT0_MASK 0xf | ||
344 | #define S2_TEXCOORD_FMT1_SHIFT 4 | ||
345 | #define S2_TEXCOORD_FMT(unit, type) ((type)<<(unit*4)) | ||
346 | #define S2_TEXCOORD_NONE (~0) | ||
347 | |||
348 | #define TEXCOORD_WRAP_SHORTEST_TCX 8 | ||
349 | #define TEXCOORD_WRAP_SHORTEST_TCY 4 | ||
350 | #define TEXCOORD_WRAP_SHORTEST_TCZ 2 | ||
351 | #define TEXCOORD_PERSPECTIVE_DISABLE 1 | ||
352 | |||
353 | #define S3_WRAP_SHORTEST_TCX(unit) (TEXCOORD_WRAP_SHORTEST_TCX << ((unit) * 4)) | ||
354 | #define S3_WRAP_SHORTEST_TCY(unit) (TEXCOORD_WRAP_SHORTEST_TCY << ((unit) * 4)) | ||
355 | #define S3_WRAP_SHORTEST_TCZ(unit) (TEXCOORD_WRAP_SHORTEST_TCZ << ((unit) * 4)) | ||
356 | #define S3_PERSPECTIVE_DISABLE(unit) (TEXCOORD_PERSPECTIVE_DISABLE << ((unit) * 4)) | ||
357 | |||
358 | /* S3 not interesting */ | ||
359 | |||
360 | #define S4_POINT_WIDTH_SHIFT 23 | ||
361 | #define S4_POINT_WIDTH_MASK (0x1ff<<23) | ||
362 | #define S4_LINE_WIDTH_SHIFT 19 | ||
363 | #define S4_LINE_WIDTH_ONE (0x2<<19) | ||
364 | #define S4_LINE_WIDTH_MASK (0xf<<19) | ||
365 | #define S4_FLATSHADE_ALPHA (1<<18) | ||
366 | #define S4_FLATSHADE_FOG (1<<17) | ||
367 | #define S4_FLATSHADE_SPECULAR (1<<16) | ||
368 | #define S4_FLATSHADE_COLOR (1<<15) | ||
369 | #define S4_CULLMODE_BOTH (0<<13) | ||
370 | #define S4_CULLMODE_NONE (1<<13) | ||
371 | #define S4_CULLMODE_CW (2<<13) | ||
372 | #define S4_CULLMODE_CCW (3<<13) | ||
373 | #define S4_CULLMODE_MASK (3<<13) | ||
374 | #define S4_VFMT_POINT_WIDTH (1<<12) | ||
375 | #define S4_VFMT_SPEC_FOG (1<<11) | ||
376 | #define S4_VFMT_COLOR (1<<10) | ||
377 | #define S4_VFMT_DEPTH_OFFSET (1<<9) | ||
378 | #define S4_VFMT_XYZ (1<<6) | ||
379 | #define S4_VFMT_XYZW (2<<6) | ||
380 | #define S4_VFMT_XY (3<<6) | ||
381 | #define S4_VFMT_XYW (4<<6) | ||
382 | #define S4_VFMT_XYZW_MASK (7<<6) | ||
383 | #define S4_FORCE_DEFAULT_DIFFUSE (1<<5) | ||
384 | #define S4_FORCE_DEFAULT_SPECULAR (1<<4) | ||
385 | #define S4_LOCAL_DEPTH_OFFSET_ENABLE (1<<3) | ||
386 | #define S4_VFMT_FOG_PARAM (1<<2) | ||
387 | #define S4_SPRITE_POINT_ENABLE (1<<1) | ||
388 | #define S4_LINE_ANTIALIAS_ENABLE (1<<0) | ||
389 | |||
390 | #define S4_VFMT_MASK (S4_VFMT_POINT_WIDTH | \ | ||
391 | S4_VFMT_SPEC_FOG | \ | ||
392 | S4_VFMT_COLOR | \ | ||
393 | S4_VFMT_DEPTH_OFFSET | \ | ||
394 | S4_VFMT_XYZW_MASK | \ | ||
395 | S4_VFMT_FOG_PARAM) | ||
396 | |||
397 | #define S5_WRITEDISABLE_ALPHA (1<<31) | ||
398 | #define S5_WRITEDISABLE_RED (1<<30) | ||
399 | #define S5_WRITEDISABLE_GREEN (1<<29) | ||
400 | #define S5_WRITEDISABLE_BLUE (1<<28) | ||
401 | #define S5_WRITEDISABLE_MASK (0xf<<28) | ||
402 | #define S5_FORCE_DEFAULT_POINT_SIZE (1<<27) | ||
403 | #define S5_LAST_PIXEL_ENABLE (1<<26) | ||
404 | #define S5_GLOBAL_DEPTH_OFFSET_ENABLE (1<<25) | ||
405 | #define S5_FOG_ENABLE (1<<24) | ||
406 | #define S5_STENCIL_REF_SHIFT 16 | ||
407 | #define S5_STENCIL_REF_MASK (0xff<<16) | ||
408 | #define S5_STENCIL_TEST_FUNC_SHIFT 13 | ||
409 | #define S5_STENCIL_TEST_FUNC_MASK (0x7<<13) | ||
410 | #define S5_STENCIL_FAIL_SHIFT 10 | ||
411 | #define S5_STENCIL_FAIL_MASK (0x7<<10) | ||
412 | #define S5_STENCIL_PASS_Z_FAIL_SHIFT 7 | ||
413 | #define S5_STENCIL_PASS_Z_FAIL_MASK (0x7<<7) | ||
414 | #define S5_STENCIL_PASS_Z_PASS_SHIFT 4 | ||
415 | #define S5_STENCIL_PASS_Z_PASS_MASK (0x7<<4) | ||
416 | #define S5_STENCIL_WRITE_ENABLE (1<<3) | ||
417 | #define S5_STENCIL_TEST_ENABLE (1<<2) | ||
418 | #define S5_COLOR_DITHER_ENABLE (1<<1) | ||
419 | #define S5_LOGICOP_ENABLE (1<<0) | ||
420 | |||
421 | #define S6_ALPHA_TEST_ENABLE (1<<31) | ||
422 | #define S6_ALPHA_TEST_FUNC_SHIFT 28 | ||
423 | #define S6_ALPHA_TEST_FUNC_MASK (0x7<<28) | ||
424 | #define S6_ALPHA_REF_SHIFT 20 | ||
425 | #define S6_ALPHA_REF_MASK (0xff<<20) | ||
426 | #define S6_DEPTH_TEST_ENABLE (1<<19) | ||
427 | #define S6_DEPTH_TEST_FUNC_SHIFT 16 | ||
428 | #define S6_DEPTH_TEST_FUNC_MASK (0x7<<16) | ||
429 | #define S6_CBUF_BLEND_ENABLE (1<<15) | ||
430 | #define S6_CBUF_BLEND_FUNC_SHIFT 12 | ||
431 | #define S6_CBUF_BLEND_FUNC_MASK (0x7<<12) | ||
432 | #define S6_CBUF_SRC_BLEND_FACT_SHIFT 8 | ||
433 | #define S6_CBUF_SRC_BLEND_FACT_MASK (0xf<<8) | ||
434 | #define S6_CBUF_DST_BLEND_FACT_SHIFT 4 | ||
435 | #define S6_CBUF_DST_BLEND_FACT_MASK (0xf<<4) | ||
436 | #define S6_DEPTH_WRITE_ENABLE (1<<3) | ||
437 | #define S6_COLOR_WRITE_ENABLE (1<<2) | ||
438 | #define S6_TRISTRIP_PV_SHIFT 0 | ||
439 | #define S6_TRISTRIP_PV_MASK (0x3<<0) | ||
440 | |||
441 | #define S7_DEPTH_OFFSET_CONST_MASK ~0 | ||
442 | |||
443 | /* 3DSTATE_MAP_DEINTERLACER_PARAMETERS */ | ||
444 | /* 3DSTATE_MAP_PALETTE_LOAD_32, p206 */ | ||
445 | |||
446 | /* _3DSTATE_MODES_4, p218 */ | ||
447 | #define _3DSTATE_MODES_4_CMD (CMD_3D|(0x0d<<24)) | ||
448 | #define ENABLE_LOGIC_OP_FUNC (1<<23) | ||
449 | #define LOGIC_OP_FUNC(x) ((x)<<18) | ||
450 | #define LOGICOP_MASK (0xf<<18) | ||
451 | #define LOGICOP_COPY 0xc | ||
452 | #define MODE4_ENABLE_STENCIL_TEST_MASK ((1<<17)|(0xff00)) | ||
453 | #define ENABLE_STENCIL_TEST_MASK (1<<17) | ||
454 | #define STENCIL_TEST_MASK(x) ((x)<<8) | ||
455 | #define MODE4_ENABLE_STENCIL_WRITE_MASK ((1<<16)|(0x00ff)) | ||
456 | #define ENABLE_STENCIL_WRITE_MASK (1<<16) | ||
457 | #define STENCIL_WRITE_MASK(x) ((x)&0xff) | ||
458 | |||
459 | /* _3DSTATE_MODES_5, p220 */ | ||
460 | #define _3DSTATE_MODES_5_CMD (CMD_3D|(0x0c<<24)) | ||
461 | #define PIPELINE_FLUSH_RENDER_CACHE (1<<18) | ||
462 | #define PIPELINE_FLUSH_TEXTURE_CACHE (1<<16) | ||
463 | |||
464 | /* p221 */ | ||
465 | #define _3DSTATE_PIXEL_SHADER_CONSTANTS (CMD_3D|(0x1d<<24)|(0x6<<16)) | ||
466 | #define PS1_REG(n) (1<<(n)) | ||
467 | #define PS2_CONST_X(n) (n) | ||
468 | #define PS3_CONST_Y(n) (n) | ||
469 | #define PS4_CONST_Z(n) (n) | ||
470 | #define PS5_CONST_W(n) (n) | ||
471 | |||
472 | /* p222 */ | ||
473 | |||
474 | #define I915_MAX_TEX_INDIRECT 4 | ||
475 | #define I915_MAX_TEX_INSN 32 | ||
476 | #define I915_MAX_ALU_INSN 64 | ||
477 | #define I915_MAX_DECL_INSN 27 | ||
478 | #define I915_MAX_TEMPORARY 16 | ||
479 | |||
480 | /* Each instruction is 3 dwords long, though most don't require all | ||
481 | * this space. Maximum of 123 instructions. Smaller maxes per insn | ||
482 | * type. | ||
483 | */ | ||
484 | #define _3DSTATE_PIXEL_SHADER_PROGRAM (CMD_3D|(0x1d<<24)|(0x5<<16)) | ||
485 | |||
486 | #define REG_TYPE_R 0 /* temporary regs, no need to | ||
487 | * dcl, must be written before | ||
488 | * read -- Preserved between | ||
489 | * phases. | ||
490 | */ | ||
491 | #define REG_TYPE_T 1 /* Interpolated values, must be | ||
492 | * dcl'ed before use. | ||
493 | * | ||
494 | * 0..7: texture coord, | ||
495 | * 8: diffuse spec, | ||
496 | * 9: specular color, | ||
497 | * 10: fog parameter in w. | ||
498 | */ | ||
499 | #define REG_TYPE_CONST 2 /* Restriction: only one const | ||
500 | * can be referenced per | ||
501 | * instruction, though it may be | ||
502 | * selected for multiple inputs. | ||
503 | * Constants not initialized | ||
504 | * default to zero. | ||
505 | */ | ||
506 | #define REG_TYPE_S 3 /* sampler */ | ||
507 | #define REG_TYPE_OC 4 /* output color (rgba) */ | ||
508 | #define REG_TYPE_OD 5 /* output depth (w), xyz are | ||
509 | * temporaries. If not written, | ||
510 | * interpolated depth is used? | ||
511 | */ | ||
512 | #define REG_TYPE_U 6 /* unpreserved temporaries */ | ||
513 | #define REG_TYPE_MASK 0x7 | ||
514 | #define REG_NR_MASK 0xf | ||
515 | |||
516 | /* REG_TYPE_T: | ||
517 | */ | ||
518 | #define T_TEX0 0 | ||
519 | #define T_TEX1 1 | ||
520 | #define T_TEX2 2 | ||
521 | #define T_TEX3 3 | ||
522 | #define T_TEX4 4 | ||
523 | #define T_TEX5 5 | ||
524 | #define T_TEX6 6 | ||
525 | #define T_TEX7 7 | ||
526 | #define T_DIFFUSE 8 | ||
527 | #define T_SPECULAR 9 | ||
528 | #define T_FOG_W 10 /* interpolated fog is in W coord */ | ||
529 | |||
530 | /* Arithmetic instructions */ | ||
531 | |||
532 | /* .replicate_swizzle == selection and replication of a particular | ||
533 | * scalar channel, ie., .xxxx, .yyyy, .zzzz or .wwww | ||
534 | */ | ||
535 | #define A0_NOP (0x0<<24) /* no operation */ | ||
536 | #define A0_ADD (0x1<<24) /* dst = src0 + src1 */ | ||
537 | #define A0_MOV (0x2<<24) /* dst = src0 */ | ||
538 | #define A0_MUL (0x3<<24) /* dst = src0 * src1 */ | ||
539 | #define A0_MAD (0x4<<24) /* dst = src0 * src1 + src2 */ | ||
540 | #define A0_DP2ADD (0x5<<24) /* dst.xyzw = src0.xy dot src1.xy + src2.replicate_swizzle */ | ||
541 | #define A0_DP3 (0x6<<24) /* dst.xyzw = src0.xyz dot src1.xyz */ | ||
542 | #define A0_DP4 (0x7<<24) /* dst.xyzw = src0.xyzw dot src1.xyzw */ | ||
543 | #define A0_FRC (0x8<<24) /* dst = src0 - floor(src0) */ | ||
544 | #define A0_RCP (0x9<<24) /* dst.xyzw = 1/(src0.replicate_swizzle) */ | ||
545 | #define A0_RSQ (0xa<<24) /* dst.xyzw = 1/(sqrt(abs(src0.replicate_swizzle))) */ | ||
546 | #define A0_EXP (0xb<<24) /* dst.xyzw = exp2(src0.replicate_swizzle) */ | ||
547 | #define A0_LOG (0xc<<24) /* dst.xyzw = log2(abs(src0.replicate_swizzle)) */ | ||
548 | #define A0_CMP (0xd<<24) /* dst = (src0 >= 0.0) ? src1 : src2 */ | ||
549 | #define A0_MIN (0xe<<24) /* dst = (src0 < src1) ? src0 : src1 */ | ||
550 | #define A0_MAX (0xf<<24) /* dst = (src0 >= src1) ? src0 : src1 */ | ||
551 | #define A0_FLR (0x10<<24) /* dst = floor(src0) */ | ||
552 | #define A0_MOD (0x11<<24) /* dst = src0 fmod 1.0 */ | ||
553 | #define A0_TRC (0x12<<24) /* dst = int(src0) */ | ||
554 | #define A0_SGE (0x13<<24) /* dst = src0 >= src1 ? 1.0 : 0.0 */ | ||
555 | #define A0_SLT (0x14<<24) /* dst = src0 < src1 ? 1.0 : 0.0 */ | ||
556 | #define A0_DEST_SATURATE (1<<22) | ||
557 | #define A0_DEST_TYPE_SHIFT 19 | ||
558 | /* Allow: R, OC, OD, U */ | ||
559 | #define A0_DEST_NR_SHIFT 14 | ||
560 | /* Allow R: 0..15, OC,OD: 0..0, U: 0..2 */ | ||
561 | #define A0_DEST_CHANNEL_X (1<<10) | ||
562 | #define A0_DEST_CHANNEL_Y (2<<10) | ||
563 | #define A0_DEST_CHANNEL_Z (4<<10) | ||
564 | #define A0_DEST_CHANNEL_W (8<<10) | ||
565 | #define A0_DEST_CHANNEL_ALL (0xf<<10) | ||
566 | #define A0_DEST_CHANNEL_SHIFT 10 | ||
567 | #define A0_SRC0_TYPE_SHIFT 7 | ||
568 | #define A0_SRC0_NR_SHIFT 2 | ||
569 | |||
570 | #define A0_DEST_CHANNEL_XY (A0_DEST_CHANNEL_X|A0_DEST_CHANNEL_Y) | ||
571 | #define A0_DEST_CHANNEL_XYZ (A0_DEST_CHANNEL_XY|A0_DEST_CHANNEL_Z) | ||
572 | |||
573 | #define SRC_X 0 | ||
574 | #define SRC_Y 1 | ||
575 | #define SRC_Z 2 | ||
576 | #define SRC_W 3 | ||
577 | #define SRC_ZERO 4 | ||
578 | #define SRC_ONE 5 | ||
579 | |||
580 | #define A1_SRC0_CHANNEL_X_NEGATE (1<<31) | ||
581 | #define A1_SRC0_CHANNEL_X_SHIFT 28 | ||
582 | #define A1_SRC0_CHANNEL_Y_NEGATE (1<<27) | ||
583 | #define A1_SRC0_CHANNEL_Y_SHIFT 24 | ||
584 | #define A1_SRC0_CHANNEL_Z_NEGATE (1<<23) | ||
585 | #define A1_SRC0_CHANNEL_Z_SHIFT 20 | ||
586 | #define A1_SRC0_CHANNEL_W_NEGATE (1<<19) | ||
587 | #define A1_SRC0_CHANNEL_W_SHIFT 16 | ||
588 | #define A1_SRC1_TYPE_SHIFT 13 | ||
589 | #define A1_SRC1_NR_SHIFT 8 | ||
590 | #define A1_SRC1_CHANNEL_X_NEGATE (1<<7) | ||
591 | #define A1_SRC1_CHANNEL_X_SHIFT 4 | ||
592 | #define A1_SRC1_CHANNEL_Y_NEGATE (1<<3) | ||
593 | #define A1_SRC1_CHANNEL_Y_SHIFT 0 | ||
594 | |||
595 | #define A2_SRC1_CHANNEL_Z_NEGATE (1<<31) | ||
596 | #define A2_SRC1_CHANNEL_Z_SHIFT 28 | ||
597 | #define A2_SRC1_CHANNEL_W_NEGATE (1<<27) | ||
598 | #define A2_SRC1_CHANNEL_W_SHIFT 24 | ||
599 | #define A2_SRC2_TYPE_SHIFT 21 | ||
600 | #define A2_SRC2_NR_SHIFT 16 | ||
601 | #define A2_SRC2_CHANNEL_X_NEGATE (1<<15) | ||
602 | #define A2_SRC2_CHANNEL_X_SHIFT 12 | ||
603 | #define A2_SRC2_CHANNEL_Y_NEGATE (1<<11) | ||
604 | #define A2_SRC2_CHANNEL_Y_SHIFT 8 | ||
605 | #define A2_SRC2_CHANNEL_Z_NEGATE (1<<7) | ||
606 | #define A2_SRC2_CHANNEL_Z_SHIFT 4 | ||
607 | #define A2_SRC2_CHANNEL_W_NEGATE (1<<3) | ||
608 | #define A2_SRC2_CHANNEL_W_SHIFT 0 | ||
609 | |||
610 | /* Texture instructions */ | ||
611 | #define T0_TEXLD (0x15<<24) /* Sample texture using predeclared | ||
612 | * sampler and address, and output | ||
613 | * filtered texel data to destination | ||
614 | * register */ | ||
615 | #define T0_TEXLDP (0x16<<24) /* Same as texld but performs a | ||
616 | * perspective divide of the texture | ||
617 | * coordinate .xyz values by .w before | ||
618 | * sampling. */ | ||
619 | #define T0_TEXLDB (0x17<<24) /* Same as texld but biases the | ||
620 | * computed LOD by w. Only S4.6 two's | ||
621 | * comp is used. This implies that a | ||
622 | * float to fixed conversion is | ||
623 | * done. */ | ||
624 | #define T0_TEXKILL (0x18<<24) /* Does not perform a sampling | ||
625 | * operation. Simply kills the pixel | ||
626 | * if any channel of the address | ||
627 | * register is < 0.0. */ | ||
628 | #define T0_DEST_TYPE_SHIFT 19 | ||
629 | /* Allow: R, OC, OD, U */ | ||
630 | /* Note: U (unpreserved) regs do not retain their values between | ||
631 | * phases (cannot be used for feedback) | ||
632 | * | ||
633 | * Note: oC and OD registers can only be used as the destination of a | ||
634 | * texture instruction once per phase (this is an implementation | ||
635 | * restriction). | ||
636 | */ | ||
637 | #define T0_DEST_NR_SHIFT 14 | ||
638 | /* Allow R: 0..15, OC,OD: 0..0, U: 0..2 */ | ||
639 | #define T0_SAMPLER_NR_SHIFT 0 /* This field ignored for TEXKILL */ | ||
640 | #define T0_SAMPLER_NR_MASK (0xf<<0) | ||
641 | |||
642 | #define T1_ADDRESS_REG_TYPE_SHIFT 24 /* Reg to use as texture coord */ | ||
643 | /* Allow R, T, OC, OD -- R, OC, OD are 'dependent' reads, new program phase */ | ||
644 | #define T1_ADDRESS_REG_NR_SHIFT 17 | ||
645 | #define T2_MBZ 0 | ||
646 | |||
647 | /* Declaration instructions */ | ||
648 | #define D0_DCL (0x19<<24) /* Declare a t (interpolated attrib) | ||
649 | * register or an s (sampler) | ||
650 | * register. */ | ||
651 | #define D0_SAMPLE_TYPE_SHIFT 22 | ||
652 | #define D0_SAMPLE_TYPE_2D (0x0<<22) | ||
653 | #define D0_SAMPLE_TYPE_CUBE (0x1<<22) | ||
654 | #define D0_SAMPLE_TYPE_VOLUME (0x2<<22) | ||
655 | #define D0_SAMPLE_TYPE_MASK (0x3<<22) | ||
656 | |||
657 | #define D0_TYPE_SHIFT 19 | ||
658 | /* Allow: T, S */ | ||
659 | #define D0_NR_SHIFT 14 | ||
660 | /* Allow T: 0..10, S: 0..15 */ | ||
661 | #define D0_CHANNEL_X (1<<10) | ||
662 | #define D0_CHANNEL_Y (2<<10) | ||
663 | #define D0_CHANNEL_Z (4<<10) | ||
664 | #define D0_CHANNEL_W (8<<10) | ||
665 | #define D0_CHANNEL_ALL (0xf<<10) | ||
666 | #define D0_CHANNEL_NONE (0<<10) | ||
667 | |||
668 | #define D0_CHANNEL_XY (D0_CHANNEL_X|D0_CHANNEL_Y) | ||
669 | #define D0_CHANNEL_XYZ (D0_CHANNEL_XY|D0_CHANNEL_Z) | ||
670 | |||
671 | /* I915 Errata: Do not allow (xz), (xw), (xzw) combinations for diffuse | ||
672 | * or specular declarations. | ||
673 | * | ||
674 | * For T dcls, only allow: (x), (xy), (xyz), (w), (xyzw) | ||
675 | * | ||
676 | * Must be zero for S (sampler) dcls | ||
677 | */ | ||
678 | #define D1_MBZ 0 | ||
679 | #define D2_MBZ 0 | ||
680 | |||
681 | /* p207. | ||
682 | * The DWORD count is 3 times the number of bits set in MS1_MAPMASK_MASK | ||
683 | */ | ||
684 | #define _3DSTATE_MAP_STATE (CMD_3D|(0x1d<<24)|(0x0<<16)) | ||
685 | |||
686 | #define MS1_MAPMASK_SHIFT 0 | ||
687 | #define MS1_MAPMASK_MASK (0x8fff<<0) | ||
688 | |||
689 | #define MS2_UNTRUSTED_SURFACE (1<<31) | ||
690 | #define MS2_ADDRESS_MASK 0xfffffffc | ||
691 | #define MS2_VERTICAL_LINE_STRIDE (1<<1) | ||
692 | #define MS2_VERTICAL_OFFSET (1<<1) | ||
693 | |||
694 | #define MS3_HEIGHT_SHIFT 21 | ||
695 | #define MS3_WIDTH_SHIFT 10 | ||
696 | #define MS3_PALETTE_SELECT (1<<9) | ||
697 | #define MS3_MAPSURF_FORMAT_SHIFT 7 | ||
698 | #define MS3_MAPSURF_FORMAT_MASK (0x7<<7) | ||
699 | #define MAPSURF_8BIT (1<<7) | ||
700 | #define MAPSURF_16BIT (2<<7) | ||
701 | #define MAPSURF_32BIT (3<<7) | ||
702 | #define MAPSURF_422 (5<<7) | ||
703 | #define MAPSURF_COMPRESSED (6<<7) | ||
704 | #define MAPSURF_4BIT_INDEXED (7<<7) | ||
705 | #define MS3_MT_FORMAT_MASK (0x7 << 3) | ||
706 | #define MS3_MT_FORMAT_SHIFT 3 | ||
707 | #define MT_4BIT_IDX_ARGB8888 (7<<3) /* SURFACE_4BIT_INDEXED */ | ||
708 | #define MT_8BIT_I8 (0<<3) /* SURFACE_8BIT */ | ||
709 | #define MT_8BIT_L8 (1<<3) | ||
710 | #define MT_8BIT_A8 (4<<3) | ||
711 | #define MT_8BIT_MONO8 (5<<3) | ||
712 | #define MT_16BIT_RGB565 (0<<3) /* SURFACE_16BIT */ | ||
713 | #define MT_16BIT_ARGB1555 (1<<3) | ||
714 | #define MT_16BIT_ARGB4444 (2<<3) | ||
715 | #define MT_16BIT_AY88 (3<<3) | ||
716 | #define MT_16BIT_88DVDU (5<<3) | ||
717 | #define MT_16BIT_BUMP_655LDVDU (6<<3) | ||
718 | #define MT_16BIT_I16 (7<<3) | ||
719 | #define MT_16BIT_L16 (8<<3) | ||
720 | #define MT_16BIT_A16 (9<<3) | ||
721 | #define MT_32BIT_ARGB8888 (0<<3) /* SURFACE_32BIT */ | ||
722 | #define MT_32BIT_ABGR8888 (1<<3) | ||
723 | #define MT_32BIT_XRGB8888 (2<<3) | ||
724 | #define MT_32BIT_XBGR8888 (3<<3) | ||
725 | #define MT_32BIT_QWVU8888 (4<<3) | ||
726 | #define MT_32BIT_AXVU8888 (5<<3) | ||
727 | #define MT_32BIT_LXVU8888 (6<<3) | ||
728 | #define MT_32BIT_XLVU8888 (7<<3) | ||
729 | #define MT_32BIT_ARGB2101010 (8<<3) | ||
730 | #define MT_32BIT_ABGR2101010 (9<<3) | ||
731 | #define MT_32BIT_AWVU2101010 (0xA<<3) | ||
732 | #define MT_32BIT_GR1616 (0xB<<3) | ||
733 | #define MT_32BIT_VU1616 (0xC<<3) | ||
734 | #define MT_32BIT_xI824 (0xD<<3) | ||
735 | #define MT_32BIT_xA824 (0xE<<3) | ||
736 | #define MT_32BIT_xL824 (0xF<<3) | ||
737 | #define MT_422_YCRCB_SWAPY (0<<3) /* SURFACE_422 */ | ||
738 | #define MT_422_YCRCB_NORMAL (1<<3) | ||
739 | #define MT_422_YCRCB_SWAPUV (2<<3) | ||
740 | #define MT_422_YCRCB_SWAPUVY (3<<3) | ||
741 | #define MT_COMPRESS_DXT1 (0<<3) /* SURFACE_COMPRESSED */ | ||
742 | #define MT_COMPRESS_DXT2_3 (1<<3) | ||
743 | #define MT_COMPRESS_DXT4_5 (2<<3) | ||
744 | #define MT_COMPRESS_FXT1 (3<<3) | ||
745 | #define MT_COMPRESS_DXT1_RGB (4<<3) | ||
746 | #define MS3_USE_FENCE_REGS (1<<2) | ||
747 | #define MS3_TILED_SURFACE (1<<1) | ||
748 | #define MS3_TILE_WALK (1<<0) | ||
749 | |||
750 | /* The pitch is the pitch measured in DWORDS, minus 1 */ | ||
751 | #define MS4_PITCH_SHIFT 21 | ||
752 | #define MS4_CUBE_FACE_ENA_NEGX (1<<20) | ||
753 | #define MS4_CUBE_FACE_ENA_POSX (1<<19) | ||
754 | #define MS4_CUBE_FACE_ENA_NEGY (1<<18) | ||
755 | #define MS4_CUBE_FACE_ENA_POSY (1<<17) | ||
756 | #define MS4_CUBE_FACE_ENA_NEGZ (1<<16) | ||
757 | #define MS4_CUBE_FACE_ENA_POSZ (1<<15) | ||
758 | #define MS4_CUBE_FACE_ENA_MASK (0x3f<<15) | ||
759 | #define MS4_MAX_LOD_SHIFT 9 | ||
760 | #define MS4_MAX_LOD_MASK (0x3f<<9) | ||
761 | #define MS4_MIP_LAYOUT_LEGACY (0<<8) | ||
762 | #define MS4_MIP_LAYOUT_BELOW_LPT (0<<8) | ||
763 | #define MS4_MIP_LAYOUT_RIGHT_LPT (1<<8) | ||
764 | #define MS4_VOLUME_DEPTH_SHIFT 0 | ||
765 | #define MS4_VOLUME_DEPTH_MASK (0xff<<0) | ||
766 | |||
767 | /* p244. | ||
768 | * The DWORD count is 3 times the number of bits set in SS1_MAPMASK_MASK. | ||
769 | */ | ||
770 | #define _3DSTATE_SAMPLER_STATE (CMD_3D|(0x1d<<24)|(0x1<<16)) | ||
771 | |||
772 | #define SS1_MAPMASK_SHIFT 0 | ||
773 | #define SS1_MAPMASK_MASK (0x8fff<<0) | ||
774 | |||
775 | #define SS2_REVERSE_GAMMA_ENABLE (1<<31) | ||
776 | #define SS2_PACKED_TO_PLANAR_ENABLE (1<<30) | ||
777 | #define SS2_COLORSPACE_CONVERSION (1<<29) | ||
778 | #define SS2_CHROMAKEY_SHIFT 27 | ||
779 | #define SS2_BASE_MIP_LEVEL_SHIFT 22 | ||
780 | #define SS2_BASE_MIP_LEVEL_MASK (0x1f<<22) | ||
781 | #define SS2_MIP_FILTER_SHIFT 20 | ||
782 | #define SS2_MIP_FILTER_MASK (0x3<<20) | ||
783 | #define MIPFILTER_NONE 0 | ||
784 | #define MIPFILTER_NEAREST 1 | ||
785 | #define MIPFILTER_LINEAR 3 | ||
786 | #define SS2_MAG_FILTER_SHIFT 17 | ||
787 | #define SS2_MAG_FILTER_MASK (0x7<<17) | ||
788 | #define FILTER_NEAREST 0 | ||
789 | #define FILTER_LINEAR 1 | ||
790 | #define FILTER_ANISOTROPIC 2 | ||
791 | #define FILTER_4X4_1 3 | ||
792 | #define FILTER_4X4_2 4 | ||
793 | #define FILTER_4X4_FLAT 5 | ||
794 | #define FILTER_6X5_MONO 6 /* XXX - check */ | ||
795 | #define SS2_MIN_FILTER_SHIFT 14 | ||
796 | #define SS2_MIN_FILTER_MASK (0x7<<14) | ||
797 | #define SS2_LOD_BIAS_SHIFT 5 | ||
798 | #define SS2_LOD_BIAS_ONE (0x10<<5) | ||
799 | #define SS2_LOD_BIAS_MASK (0x1ff<<5) | ||
800 | /* Shadow requires: | ||
801 | * MT_X8{I,L,A}24 or MT_{I,L,A}16 texture format | ||
802 | * FILTER_4X4_x MIN and MAG filters | ||
803 | */ | ||
804 | #define SS2_SHADOW_ENABLE (1<<4) | ||
805 | #define SS2_MAX_ANISO_MASK (1<<3) | ||
806 | #define SS2_MAX_ANISO_2 (0<<3) | ||
807 | #define SS2_MAX_ANISO_4 (1<<3) | ||
808 | #define SS2_SHADOW_FUNC_SHIFT 0 | ||
809 | #define SS2_SHADOW_FUNC_MASK (0x7<<0) | ||
810 | /* SS2_SHADOW_FUNC values: see COMPAREFUNC_* */ | ||
811 | |||
812 | #define SS3_MIN_LOD_SHIFT 24 | ||
813 | #define SS3_MIN_LOD_ONE (0x10<<24) | ||
814 | #define SS3_MIN_LOD_MASK (0xff<<24) | ||
815 | #define SS3_KILL_PIXEL_ENABLE (1<<17) | ||
816 | #define SS3_TCX_ADDR_MODE_SHIFT 12 | ||
817 | #define SS3_TCX_ADDR_MODE_MASK (0x7<<12) | ||
818 | #define TEXCOORDMODE_WRAP 0 | ||
819 | #define TEXCOORDMODE_MIRROR 1 | ||
820 | #define TEXCOORDMODE_CLAMP_EDGE 2 | ||
821 | #define TEXCOORDMODE_CUBE 3 | ||
822 | #define TEXCOORDMODE_CLAMP_BORDER 4 | ||
823 | #define TEXCOORDMODE_MIRROR_ONCE 5 | ||
824 | #define SS3_TCY_ADDR_MODE_SHIFT 9 | ||
825 | #define SS3_TCY_ADDR_MODE_MASK (0x7<<9) | ||
826 | #define SS3_TCZ_ADDR_MODE_SHIFT 6 | ||
827 | #define SS3_TCZ_ADDR_MODE_MASK (0x7<<6) | ||
828 | #define SS3_NORMALIZED_COORDS (1<<5) | ||
829 | #define SS3_TEXTUREMAP_INDEX_SHIFT 1 | ||
830 | #define SS3_TEXTUREMAP_INDEX_MASK (0xf<<1) | ||
831 | #define SS3_DEINTERLACER_ENABLE (1<<0) | ||
832 | |||
833 | #define SS4_BORDER_COLOR_MASK (~0) | ||
834 | |||
835 | /* 3DSTATE_SPAN_STIPPLE, p258 | ||
836 | */ | ||
837 | #define _3DSTATE_STIPPLE ((0x3<<29)|(0x1d<<24)|(0x83<<16)) | ||
838 | #define ST1_ENABLE (1<<16) | ||
839 | #define ST1_MASK (0xffff) | ||
840 | |||
841 | #define FLUSH_MAP_CACHE (1<<0) | ||
842 | #define FLUSH_RENDER_CACHE (1<<1) | ||
843 | |||
844 | #endif | ||
diff --git a/src/xvmc/i915_structs.h b/xvmc/i915_structs.h index 2aa9d239..2aa9d239 100644 --- a/src/xvmc/i915_structs.h +++ b/xvmc/i915_structs.h | |||
diff --git a/src/xvmc/i915_xvmc.c b/xvmc/i915_xvmc.c index fbd4555e..fbd4555e 100644 --- a/src/xvmc/i915_xvmc.c +++ b/xvmc/i915_xvmc.c | |||
diff --git a/src/xvmc/i915_xvmc.h b/xvmc/i915_xvmc.h index 852e3eab..a0bb9a62 100644 --- a/src/xvmc/i915_xvmc.h +++ b/xvmc/i915_xvmc.h | |||
@@ -28,8 +28,7 @@ | |||
28 | #ifndef _I915XVMC_H | 28 | #ifndef _I915XVMC_H |
29 | #define _I915XVMC_H | 29 | #define _I915XVMC_H |
30 | 30 | ||
31 | #include "intel_xvmc.h" | 31 | #include "intel_xvmc_private.h" |
32 | #include "intel_hwmc.h" | ||
33 | 32 | ||
34 | #define I915_SUBPIC_PALETTE_SIZE 16 | 33 | #define I915_SUBPIC_PALETTE_SIZE 16 |
35 | #define MAX_SUBCONTEXT_LEN 1024 | 34 | #define MAX_SUBCONTEXT_LEN 1024 |
diff --git a/xvmc/i965_reg.h b/xvmc/i965_reg.h new file mode 100644 index 00000000..4bb5e4d2 --- /dev/null +++ b/xvmc/i965_reg.h | |||
@@ -0,0 +1,476 @@ | |||
1 | /* | ||
2 | * New regs for broadwater -- we need to split this file up sensibly somehow. | ||
3 | */ | ||
4 | #define BRW_3D(Pipeline,Opcode,Subopcode) ((3 << 29) | \ | ||
5 | ((Pipeline) << 27) | \ | ||
6 | ((Opcode) << 24) | \ | ||
7 | ((Subopcode) << 16)) | ||
8 | |||
9 | #define BRW_URB_FENCE BRW_3D(0, 0, 0) | ||
10 | #define BRW_CS_URB_STATE BRW_3D(0, 0, 1) | ||
11 | #define BRW_CONSTANT_BUFFER BRW_3D(0, 0, 2) | ||
12 | #define BRW_STATE_PREFETCH BRW_3D(0, 0, 3) | ||
13 | |||
14 | #define BRW_STATE_BASE_ADDRESS BRW_3D(0, 1, 1) | ||
15 | #define BRW_STATE_SIP BRW_3D(0, 1, 2) | ||
16 | #define BRW_PIPELINE_SELECT BRW_3D(0, 1, 4) | ||
17 | |||
18 | #define NEW_PIPELINE_SELECT BRW_3D(1, 1, 4) | ||
19 | |||
20 | #define BRW_MEDIA_STATE_POINTERS BRW_3D(2, 0, 0) | ||
21 | #define BRW_MEDIA_OBJECT BRW_3D(2, 1, 0) | ||
22 | |||
23 | #define BRW_3DSTATE_PIPELINED_POINTERS BRW_3D(3, 0, 0) | ||
24 | #define BRW_3DSTATE_BINDING_TABLE_POINTERS BRW_3D(3, 0, 1) | ||
25 | # define GEN6_3DSTATE_BINDING_TABLE_MODIFY_PS (1 << 12)/* for GEN6 */ | ||
26 | # define GEN6_3DSTATE_BINDING_TABLE_MODIFY_GS (1 << 9) /* for GEN6 */ | ||
27 | # define GEN6_3DSTATE_BINDING_TABLE_MODIFY_VS (1 << 8) /* for GEN6 */ | ||
28 | |||
29 | #define BRW_3DSTATE_VERTEX_BUFFERS BRW_3D(3, 0, 8) | ||
30 | #define BRW_3DSTATE_VERTEX_ELEMENTS BRW_3D(3, 0, 9) | ||
31 | #define BRW_3DSTATE_INDEX_BUFFER BRW_3D(3, 0, 0xa) | ||
32 | #define BRW_3DSTATE_VF_STATISTICS BRW_3D(3, 0, 0xb) | ||
33 | |||
34 | #define BRW_3DSTATE_DRAWING_RECTANGLE BRW_3D(3, 1, 0) | ||
35 | #define BRW_3DSTATE_CONSTANT_COLOR BRW_3D(3, 1, 1) | ||
36 | #define BRW_3DSTATE_SAMPLER_PALETTE_LOAD BRW_3D(3, 1, 2) | ||
37 | #define BRW_3DSTATE_CHROMA_KEY BRW_3D(3, 1, 4) | ||
38 | #define BRW_3DSTATE_DEPTH_BUFFER BRW_3D(3, 1, 5) | ||
39 | # define BRW_3DSTATE_DEPTH_BUFFER_TYPE_SHIFT 29 | ||
40 | # define BRW_3DSTATE_DEPTH_BUFFER_FORMAT_SHIFT 18 | ||
41 | |||
42 | #define BRW_3DSTATE_POLY_STIPPLE_OFFSET BRW_3D(3, 1, 6) | ||
43 | #define BRW_3DSTATE_POLY_STIPPLE_PATTERN BRW_3D(3, 1, 7) | ||
44 | #define BRW_3DSTATE_LINE_STIPPLE BRW_3D(3, 1, 8) | ||
45 | #define BRW_3DSTATE_GLOBAL_DEPTH_OFFSET_CLAMP BRW_3D(3, 1, 9) | ||
46 | /* These two are BLC and CTG only, not BW or CL */ | ||
47 | #define BRW_3DSTATE_AA_LINE_PARAMS BRW_3D(3, 1, 0xa) | ||
48 | #define BRW_3DSTATE_GS_SVB_INDEX BRW_3D(3, 1, 0xb) | ||
49 | |||
50 | #define BRW_PIPE_CONTROL BRW_3D(3, 2, 0) | ||
51 | |||
52 | #define BRW_3DPRIMITIVE BRW_3D(3, 3, 0) | ||
53 | |||
54 | #define BRW_3DSTATE_CLEAR_PARAMS BRW_3D(3, 1, 0x10) | ||
55 | /* DW1 */ | ||
56 | # define BRW_3DSTATE_DEPTH_CLEAR_VALID (1 << 15) | ||
57 | |||
58 | /* for GEN6+ */ | ||
59 | #define GEN6_3DSTATE_SAMPLER_STATE_POINTERS BRW_3D(3, 0, 0x02) | ||
60 | # define GEN6_3DSTATE_SAMPLER_STATE_MODIFY_PS (1 << 12) | ||
61 | # define GEN6_3DSTATE_SAMPLER_STATE_MODIFY_GS (1 << 9) | ||
62 | # define GEN6_3DSTATE_SAMPLER_STATE_MODIFY_VS (1 << 8) | ||
63 | |||
64 | #define GEN6_3DSTATE_URB BRW_3D(3, 0, 0x05) | ||
65 | /* DW1 */ | ||
66 | # define GEN6_3DSTATE_URB_VS_SIZE_SHIFT 16 | ||
67 | # define GEN6_3DSTATE_URB_VS_ENTRIES_SHIFT 0 | ||
68 | /* DW2 */ | ||
69 | # define GEN6_3DSTATE_URB_GS_ENTRIES_SHIFT 8 | ||
70 | # define GEN6_3DSTATE_URB_GS_SIZE_SHIFT 0 | ||
71 | |||
72 | #define GEN6_3DSTATE_VIEWPORT_STATE_POINTERS BRW_3D(3, 0, 0x0d) | ||
73 | # define GEN6_3DSTATE_VIEWPORT_STATE_MODIFY_CC (1 << 12) | ||
74 | # define GEN6_3DSTATE_VIEWPORT_STATE_MODIFY_SF (1 << 11) | ||
75 | # define GEN6_3DSTATE_VIEWPORT_STATE_MODIFY_CLIP (1 << 10) | ||
76 | |||
77 | #define GEN6_3DSTATE_CC_STATE_POINTERS BRW_3D(3, 0, 0x0e) | ||
78 | |||
79 | #define GEN6_3DSTATE_VS BRW_3D(3, 0, 0x10) | ||
80 | |||
81 | #define GEN6_3DSTATE_GS BRW_3D(3, 0, 0x11) | ||
82 | /* DW4 */ | ||
83 | # define GEN6_3DSTATE_GS_DISPATCH_START_GRF_SHIFT 0 | ||
84 | |||
85 | #define GEN6_3DSTATE_CLIP BRW_3D(3, 0, 0x12) | ||
86 | |||
87 | #define GEN6_3DSTATE_SF BRW_3D(3, 0, 0x13) | ||
88 | /* DW1 */ | ||
89 | # define GEN6_3DSTATE_SF_NUM_OUTPUTS_SHIFT 22 | ||
90 | # define GEN6_3DSTATE_SF_URB_ENTRY_READ_LENGTH_SHIFT 11 | ||
91 | # define GEN6_3DSTATE_SF_URB_ENTRY_READ_OFFSET_SHIFT 4 | ||
92 | /* DW2 */ | ||
93 | /* DW3 */ | ||
94 | # define GEN6_3DSTATE_SF_CULL_BOTH (0 << 29) | ||
95 | # define GEN6_3DSTATE_SF_CULL_NONE (1 << 29) | ||
96 | # define GEN6_3DSTATE_SF_CULL_FRONT (2 << 29) | ||
97 | # define GEN6_3DSTATE_SF_CULL_BACK (3 << 29) | ||
98 | /* DW4 */ | ||
99 | # define GEN6_3DSTATE_SF_TRI_PROVOKE_SHIFT 29 | ||
100 | # define GEN6_3DSTATE_SF_LINE_PROVOKE_SHIFT 27 | ||
101 | # define GEN6_3DSTATE_SF_TRIFAN_PROVOKE_SHIFT 25 | ||
102 | |||
103 | |||
104 | #define GEN6_3DSTATE_WM BRW_3D(3, 0, 0x14) | ||
105 | /* DW2 */ | ||
106 | # define GEN6_3DSTATE_WM_SAMPLER_COUNT_SHITF 27 | ||
107 | # define GEN6_3DSTATE_WM_BINDING_TABLE_ENTRY_COUNT_SHIFT 18 | ||
108 | /* DW4 */ | ||
109 | # define GEN6_3DSTATE_WM_DISPATCH_START_GRF_0_SHIFT 16 | ||
110 | /* DW5 */ | ||
111 | # define GEN6_3DSTATE_WM_MAX_THREADS_SHIFT 25 | ||
112 | # define GEN6_3DSTATE_WM_DISPATCH_ENABLE (1 << 19) | ||
113 | # define GEN6_3DSTATE_WM_16_DISPATCH_ENABLE (1 << 1) | ||
114 | # define GEN6_3DSTATE_WM_8_DISPATCH_ENABLE (1 << 0) | ||
115 | /* DW6 */ | ||
116 | # define GEN6_3DSTATE_WM_NUM_SF_OUTPUTS_SHIFT 20 | ||
117 | # define GEN6_3DSTATE_WM_NONPERSPECTIVE_SAMPLE_BARYCENTRIC (1 << 15) | ||
118 | # define GEN6_3DSTATE_WM_NONPERSPECTIVE_CENTROID_BARYCENTRIC (1 << 14) | ||
119 | # define GEN6_3DSTATE_WM_NONPERSPECTIVE_PIXEL_BARYCENTRIC (1 << 13) | ||
120 | # define GEN6_3DSTATE_WM_PERSPECTIVE_SAMPLE_BARYCENTRIC (1 << 12) | ||
121 | # define GEN6_3DSTATE_WM_PERSPECTIVE_CENTROID_BARYCENTRIC (1 << 11) | ||
122 | # define GEN6_3DSTATE_WM_PERSPECTIVE_PIXEL_BARYCENTRIC (1 << 10) | ||
123 | |||
124 | |||
125 | #define GEN6_3DSTATE_CONSTANT_VS BRW_3D(3, 0, 0x15) | ||
126 | #define GEN6_3DSTATE_CONSTANT_GS BRW_3D(3, 0, 0x16) | ||
127 | #define GEN6_3DSTATE_CONSTANT_PS BRW_3D(3, 0, 0x17) | ||
128 | |||
129 | #define GEN6_3DSTATE_SAMPLE_MASK BRW_3D(3, 0, 0x18) | ||
130 | |||
131 | #define GEN6_3DSTATE_MULTISAMPLE BRW_3D(3, 1, 0x0d) | ||
132 | /* DW1 */ | ||
133 | # define GEN6_3DSTATE_MULTISAMPLE_PIXEL_LOCATION_CENTER (0 << 4) | ||
134 | # define GEN6_3DSTATE_MULTISAMPLE_PIXEL_LOCATION_UPPER_LEFT (1 << 4) | ||
135 | # define GEN6_3DSTATE_MULTISAMPLE_NUMSAMPLES_1 (0 << 1) | ||
136 | # define GEN6_3DSTATE_MULTISAMPLE_NUMSAMPLES_4 (2 << 1) | ||
137 | # define GEN6_3DSTATE_MULTISAMPLE_NUMSAMPLES_8 (3 << 1) | ||
138 | |||
139 | /* on GEN7+ */ | ||
140 | /* _3DSTATE_VERTEX_BUFFERS on GEN7*/ | ||
141 | /* DW1 */ | ||
142 | #define GEN7_VB0_ADDRESS_MODIFYENABLE (1 << 14) | ||
143 | |||
144 | /* _3DPRIMITIVE on GEN7 */ | ||
145 | /* DW1 */ | ||
146 | # define GEN7_3DPRIM_VERTEXBUFFER_ACCESS_SEQUENTIAL (0 << 8) | ||
147 | # define GEN7_3DPRIM_VERTEXBUFFER_ACCESS_RANDOM (1 << 8) | ||
148 | |||
149 | /* 3DSTATE_WM on GEN7 */ | ||
150 | /* DW1 */ | ||
151 | # define GEN7_WM_STATISTICS_ENABLE (1 << 31) | ||
152 | # define GEN7_WM_DEPTH_CLEAR (1 << 30) | ||
153 | # define GEN7_WM_DISPATCH_ENABLE (1 << 29) | ||
154 | # define GEN6_WM_DEPTH_RESOLVE (1 << 28) | ||
155 | # define GEN7_WM_HIERARCHICAL_DEPTH_RESOLVE (1 << 27) | ||
156 | # define GEN7_WM_KILL_ENABLE (1 << 25) | ||
157 | # define GEN7_WM_PSCDEPTH_OFF (0 << 23) | ||
158 | # define GEN7_WM_PSCDEPTH_ON (1 << 23) | ||
159 | # define GEN7_WM_PSCDEPTH_ON_GE (2 << 23) | ||
160 | # define GEN7_WM_PSCDEPTH_ON_LE (3 << 23) | ||
161 | # define GEN7_WM_USES_SOURCE_DEPTH (1 << 20) | ||
162 | # define GEN7_WM_USES_SOURCE_W (1 << 19) | ||
163 | # define GEN7_WM_POSITION_ZW_PIXEL (0 << 17) | ||
164 | # define GEN7_WM_POSITION_ZW_CENTROID (2 << 17) | ||
165 | # define GEN7_WM_POSITION_ZW_SAMPLE (3 << 17) | ||
166 | # define GEN7_WM_NONPERSPECTIVE_SAMPLE_BARYCENTRIC (1 << 16) | ||
167 | # define GEN7_WM_NONPERSPECTIVE_CENTROID_BARYCENTRIC (1 << 15) | ||
168 | # define GEN7_WM_NONPERSPECTIVE_PIXEL_BARYCENTRIC (1 << 14) | ||
169 | # define GEN7_WM_PERSPECTIVE_SAMPLE_BARYCENTRIC (1 << 13) | ||
170 | # define GEN7_WM_PERSPECTIVE_CENTROID_BARYCENTRIC (1 << 12) | ||
171 | # define GEN7_WM_PERSPECTIVE_PIXEL_BARYCENTRIC (1 << 11) | ||
172 | # define GEN7_WM_USES_INPUT_COVERAGE_MASK (1 << 10) | ||
173 | # define GEN7_WM_LINE_END_CAP_AA_WIDTH_0_5 (0 << 8) | ||
174 | # define GEN7_WM_LINE_END_CAP_AA_WIDTH_1_0 (1 << 8) | ||
175 | # define GEN7_WM_LINE_END_CAP_AA_WIDTH_2_0 (2 << 8) | ||
176 | # define GEN7_WM_LINE_END_CAP_AA_WIDTH_4_0 (3 << 8) | ||
177 | # define GEN7_WM_LINE_AA_WIDTH_0_5 (0 << 6) | ||
178 | # define GEN7_WM_LINE_AA_WIDTH_1_0 (1 << 6) | ||
179 | # define GEN7_WM_LINE_AA_WIDTH_2_0 (2 << 6) | ||
180 | # define GEN7_WM_LINE_AA_WIDTH_4_0 (3 << 6) | ||
181 | # define GEN7_WM_POLYGON_STIPPLE_ENABLE (1 << 4) | ||
182 | # define GEN7_WM_LINE_STIPPLE_ENABLE (1 << 3) | ||
183 | # define GEN7_WM_POINT_RASTRULE_UPPER_RIGHT (1 << 2) | ||
184 | # define GEN7_WM_MSRAST_OFF_PIXEL (0 << 0) | ||
185 | # define GEN7_WM_MSRAST_OFF_PATTERN (1 << 0) | ||
186 | # define GEN7_WM_MSRAST_ON_PIXEL (2 << 0) | ||
187 | # define GEN7_WM_MSRAST_ON_PATTERN (3 << 0) | ||
188 | /* DW2 */ | ||
189 | # define GEN7_WM_MSDISPMODE_PERPIXEL (1 << 31) | ||
190 | |||
191 | #define GEN7_3DSTATE_CLEAR_PARAMS BRW_3D(3, 0, 0x04) | ||
192 | #define GEN7_3DSTATE_DEPTH_BUFFER BRW_3D(3, 0, 0x05) | ||
193 | |||
194 | #define GEN7_3DSTATE_CONSTANT_HS BRW_3D(3, 0, 0x19) | ||
195 | #define GEN7_3DSTATE_CONSTANT_DS BRW_3D(3, 0, 0x1a) | ||
196 | |||
197 | #define GEN7_3DSTATE_HS BRW_3D(3, 0, 0x1b) | ||
198 | #define GEN7_3DSTATE_TE BRW_3D(3, 0, 0x1c) | ||
199 | #define GEN7_3DSTATE_DS BRW_3D(3, 0, 0x1d) | ||
200 | #define GEN7_3DSTATE_STREAMOUT BRW_3D(3, 0, 0x1e) | ||
201 | #define GEN7_3DSTATE_SBE BRW_3D(3, 0, 0x1f) | ||
202 | |||
203 | /* DW1 */ | ||
204 | # define GEN7_SBE_SWIZZLE_CONTROL_MODE (1 << 28) | ||
205 | # define GEN7_SBE_NUM_OUTPUTS_SHIFT 22 | ||
206 | # define GEN7_SBE_SWIZZLE_ENABLE (1 << 21) | ||
207 | # define GEN7_SBE_POINT_SPRITE_LOWERLEFT (1 << 20) | ||
208 | # define GEN7_SBE_URB_ENTRY_READ_LENGTH_SHIFT 11 | ||
209 | # define GEN7_SBE_URB_ENTRY_READ_OFFSET_SHIFT 4 | ||
210 | |||
211 | #define GEN7_3DSTATE_PS BRW_3D(3, 0, 0x20) | ||
212 | /* DW1: kernel pointer */ | ||
213 | /* DW2 */ | ||
214 | # define GEN7_PS_SPF_MODE (1 << 31) | ||
215 | # define GEN7_PS_VECTOR_MASK_ENABLE (1 << 30) | ||
216 | # define GEN7_PS_SAMPLER_COUNT_SHIFT 27 | ||
217 | # define GEN7_PS_BINDING_TABLE_ENTRY_COUNT_SHIFT 18 | ||
218 | # define GEN7_PS_FLOATING_POINT_MODE_IEEE_754 (0 << 16) | ||
219 | # define GEN7_PS_FLOATING_POINT_MODE_ALT (1 << 16) | ||
220 | /* DW3: scratch space */ | ||
221 | /* DW4 */ | ||
222 | # define GEN7_PS_MAX_THREADS_SHIFT_IVB 24 | ||
223 | # define GEN7_PS_MAX_THREADS_SHIFT_HSW 23 | ||
224 | # define GEN7_PS_SAMPLE_MASK_SHIFT_HSW 12 | ||
225 | # define GEN7_PS_PUSH_CONSTANT_ENABLE (1 << 11) | ||
226 | # define GEN7_PS_ATTRIBUTE_ENABLE (1 << 10) | ||
227 | # define GEN7_PS_OMASK_TO_RENDER_TARGET (1 << 9) | ||
228 | # define GEN7_PS_DUAL_SOURCE_BLEND_ENABLE (1 << 7) | ||
229 | # define GEN7_PS_POSOFFSET_NONE (0 << 3) | ||
230 | # define GEN7_PS_POSOFFSET_CENTROID (2 << 3) | ||
231 | # define GEN7_PS_POSOFFSET_SAMPLE (3 << 3) | ||
232 | # define GEN7_PS_32_DISPATCH_ENABLE (1 << 2) | ||
233 | # define GEN7_PS_16_DISPATCH_ENABLE (1 << 1) | ||
234 | # define GEN7_PS_8_DISPATCH_ENABLE (1 << 0) | ||
235 | /* DW5 */ | ||
236 | # define GEN7_PS_DISPATCH_START_GRF_SHIFT_0 16 | ||
237 | # define GEN7_PS_DISPATCH_START_GRF_SHIFT_1 8 | ||
238 | # define GEN7_PS_DISPATCH_START_GRF_SHIFT_2 0 | ||
239 | /* DW6: kernel 1 pointer */ | ||
240 | /* DW7: kernel 2 pointer */ | ||
241 | |||
242 | #define GEN7_3DSTATE_VIEWPORT_STATE_POINTERS_SF_CL BRW_3D(3, 0, 0x21) | ||
243 | #define GEN7_3DSTATE_VIEWPORT_STATE_POINTERS_CC BRW_3D(3, 0, 0x23) | ||
244 | |||
245 | #define GEN7_3DSTATE_BLEND_STATE_POINTERS BRW_3D(3, 0, 0x24) | ||
246 | #define GEN7_3DSTATE_DEPTH_STENCIL_STATE_POINTERS BRW_3D(3, 0, 0x25) | ||
247 | |||
248 | #define GEN7_3DSTATE_BINDING_TABLE_POINTERS_VS BRW_3D(3, 0, 0x26) | ||
249 | #define GEN7_3DSTATE_BINDING_TABLE_POINTERS_HS BRW_3D(3, 0, 0x27) | ||
250 | #define GEN7_3DSTATE_BINDING_TABLE_POINTERS_DS BRW_3D(3, 0, 0x28) | ||
251 | #define GEN7_3DSTATE_BINDING_TABLE_POINTERS_GS BRW_3D(3, 0, 0x29) | ||
252 | #define GEN7_3DSTATE_BINDING_TABLE_POINTERS_PS BRW_3D(3, 0, 0x2a) | ||
253 | |||
254 | #define GEN7_3DSTATE_SAMPLER_STATE_POINTERS_VS BRW_3D(3, 0, 0x2b) | ||
255 | #define GEN7_3DSTATE_SAMPLER_STATE_POINTERS_GS BRW_3D(3, 0, 0x2e) | ||
256 | #define GEN7_3DSTATE_SAMPLER_STATE_POINTERS_PS BRW_3D(3, 0, 0x2f) | ||
257 | |||
258 | #define GEN7_3DSTATE_URB_VS BRW_3D(3, 0, 0x30) | ||
259 | #define GEN7_3DSTATE_URB_HS BRW_3D(3, 0, 0x31) | ||
260 | #define GEN7_3DSTATE_URB_DS BRW_3D(3, 0, 0x32) | ||
261 | #define GEN7_3DSTATE_URB_GS BRW_3D(3, 0, 0x33) | ||
262 | /* DW1 */ | ||
263 | # define GEN7_URB_ENTRY_NUMBER_SHIFT 0 | ||
264 | # define GEN7_URB_ENTRY_SIZE_SHIFT 16 | ||
265 | # define GEN7_URB_STARTING_ADDRESS_SHIFT 25 | ||
266 | |||
267 | #define GEN7_3DSTATE_PUSH_CONSTANT_ALLOC_VS BRW_3D(3, 1, 0x12) | ||
268 | #define GEN7_3DSTATE_PUSH_CONSTANT_ALLOC_PS BRW_3D(3, 1, 0x16) | ||
269 | /* DW1 */ | ||
270 | # define GEN7_PUSH_CONSTANT_BUFFER_OFFSET_SHIFT 16 | ||
271 | |||
272 | |||
273 | #define PIPELINE_SELECT_3D 0 | ||
274 | #define PIPELINE_SELECT_MEDIA 1 | ||
275 | |||
276 | #define UF0_CS_REALLOC (1 << 13) | ||
277 | #define UF0_VFE_REALLOC (1 << 12) | ||
278 | #define UF0_SF_REALLOC (1 << 11) | ||
279 | #define UF0_CLIP_REALLOC (1 << 10) | ||
280 | #define UF0_GS_REALLOC (1 << 9) | ||
281 | #define UF0_VS_REALLOC (1 << 8) | ||
282 | #define UF1_CLIP_FENCE_SHIFT 20 | ||
283 | #define UF1_GS_FENCE_SHIFT 10 | ||
284 | #define UF1_VS_FENCE_SHIFT 0 | ||
285 | #define UF2_CS_FENCE_SHIFT 20 | ||
286 | #define UF2_VFE_FENCE_SHIFT 10 | ||
287 | #define UF2_SF_FENCE_SHIFT 0 | ||
288 | |||
289 | /* for BRW_STATE_BASE_ADDRESS */ | ||
290 | #define BASE_ADDRESS_MODIFY (1 << 0) | ||
291 | |||
292 | /* for BRW_3DSTATE_PIPELINED_POINTERS */ | ||
293 | #define BRW_GS_DISABLE 0 | ||
294 | #define BRW_GS_ENABLE 1 | ||
295 | #define BRW_CLIP_DISABLE 0 | ||
296 | #define BRW_CLIP_ENABLE 1 | ||
297 | |||
298 | /* for BRW_PIPE_CONTROL */ | ||
299 | #define BRW_PIPE_CONTROL_CS_STALL (1 << 20) | ||
300 | #define BRW_PIPE_CONTROL_NOWRITE (0 << 14) | ||
301 | #define BRW_PIPE_CONTROL_WRITE_QWORD (1 << 14) | ||
302 | #define BRW_PIPE_CONTROL_WRITE_DEPTH (2 << 14) | ||
303 | #define BRW_PIPE_CONTROL_WRITE_TIME (3 << 14) | ||
304 | #define BRW_PIPE_CONTROL_DEPTH_STALL (1 << 13) | ||
305 | #define BRW_PIPE_CONTROL_WC_FLUSH (1 << 12) | ||
306 | #define BRW_PIPE_CONTROL_IS_FLUSH (1 << 11) | ||
307 | #define BRW_PIPE_CONTROL_TC_FLUSH (1 << 10) | ||
308 | #define BRW_PIPE_CONTROL_NOTIFY_ENABLE (1 << 8) | ||
309 | #define BRW_PIPE_CONTROL_GLOBAL_GTT (1 << 2) | ||
310 | #define BRW_PIPE_CONTROL_LOCAL_PGTT (0 << 2) | ||
311 | #define BRW_PIPE_CONTROL_STALL_AT_SCOREBOARD (1 << 1) | ||
312 | #define BRW_PIPE_CONTROL_DEPTH_CACHE_FLUSH (1 << 0) | ||
313 | |||
314 | /* VERTEX_BUFFER_STATE Structure */ | ||
315 | #define VB0_BUFFER_INDEX_SHIFT 27 | ||
316 | #define GEN6_VB0_BUFFER_INDEX_SHIFT 26 | ||
317 | #define VB0_VERTEXDATA (0 << 26) | ||
318 | #define VB0_INSTANCEDATA (1 << 26) | ||
319 | #define GEN6_VB0_VERTEXDATA (0 << 20) | ||
320 | #define GEN6_VB0_INSTANCEDATA (1 << 20) | ||
321 | #define VB0_BUFFER_PITCH_SHIFT 0 | ||
322 | |||
323 | /* VERTEX_ELEMENT_STATE Structure */ | ||
324 | #define VE0_VERTEX_BUFFER_INDEX_SHIFT 27 | ||
325 | #define GEN6_VE0_VERTEX_BUFFER_INDEX_SHIFT 26 /* for GEN6 */ | ||
326 | #define VE0_VALID (1 << 26) | ||
327 | #define GEN6_VE0_VALID (1 << 25) /* for GEN6 */ | ||
328 | #define VE0_FORMAT_SHIFT 16 | ||
329 | #define VE0_OFFSET_SHIFT 0 | ||
330 | #define VE1_VFCOMPONENT_0_SHIFT 28 | ||
331 | #define VE1_VFCOMPONENT_1_SHIFT 24 | ||
332 | #define VE1_VFCOMPONENT_2_SHIFT 20 | ||
333 | #define VE1_VFCOMPONENT_3_SHIFT 16 | ||
334 | #define VE1_DESTINATION_ELEMENT_OFFSET_SHIFT 0 | ||
335 | |||
336 | /* 3DPRIMITIVE bits */ | ||
337 | #define BRW_3DPRIMITIVE_VERTEX_SEQUENTIAL (0 << 15) | ||
338 | #define BRW_3DPRIMITIVE_VERTEX_RANDOM (1 << 15) | ||
339 | /* Primitive types are in brw_defines.h */ | ||
340 | #define BRW_3DPRIMITIVE_TOPOLOGY_SHIFT 10 | ||
341 | |||
342 | #define BRW_SVG_CTL 0x7400 | ||
343 | |||
344 | #define BRW_SVG_CTL_GS_BA (0 << 8) | ||
345 | #define BRW_SVG_CTL_SS_BA (1 << 8) | ||
346 | #define BRW_SVG_CTL_IO_BA (2 << 8) | ||
347 | #define BRW_SVG_CTL_GS_AUB (3 << 8) | ||
348 | #define BRW_SVG_CTL_IO_AUB (4 << 8) | ||
349 | #define BRW_SVG_CTL_SIP (5 << 8) | ||
350 | |||
351 | #define BRW_SVG_RDATA 0x7404 | ||
352 | #define BRW_SVG_WORK_CTL 0x7408 | ||
353 | |||
354 | #define BRW_VF_CTL 0x7500 | ||
355 | |||
356 | #define BRW_VF_CTL_SNAPSHOT_COMPLETE (1 << 31) | ||
357 | #define BRW_VF_CTL_SNAPSHOT_MUX_SELECT_THREADID (0 << 8) | ||
358 | #define BRW_VF_CTL_SNAPSHOT_MUX_SELECT_VF_DEBUG (1 << 8) | ||
359 | #define BRW_VF_CTL_SNAPSHOT_TYPE_VERTEX_SEQUENCE (0 << 4) | ||
360 | #define BRW_VF_CTL_SNAPSHOT_TYPE_VERTEX_INDEX (1 << 4) | ||
361 | #define BRW_VF_CTL_SKIP_INITIAL_PRIMITIVES (1 << 3) | ||
362 | #define BRW_VF_CTL_MAX_PRIMITIVES_LIMIT_ENABLE (1 << 2) | ||
363 | #define BRW_VF_CTL_VERTEX_RANGE_LIMIT_ENABLE (1 << 1) | ||
364 | #define BRW_VF_CTL_SNAPSHOT_ENABLE (1 << 0) | ||
365 | |||
366 | #define BRW_VF_STRG_VAL 0x7504 | ||
367 | #define BRW_VF_STR_VL_OVR 0x7508 | ||
368 | #define BRW_VF_VC_OVR 0x750c | ||
369 | #define BRW_VF_STR_PSKIP 0x7510 | ||
370 | #define BRW_VF_MAX_PRIM 0x7514 | ||
371 | #define BRW_VF_RDATA 0x7518 | ||
372 | |||
373 | #define BRW_VS_CTL 0x7600 | ||
374 | #define BRW_VS_CTL_SNAPSHOT_COMPLETE (1 << 31) | ||
375 | #define BRW_VS_CTL_SNAPSHOT_MUX_VERTEX_0 (0 << 8) | ||
376 | #define BRW_VS_CTL_SNAPSHOT_MUX_VERTEX_1 (1 << 8) | ||
377 | #define BRW_VS_CTL_SNAPSHOT_MUX_VALID_COUNT (2 << 8) | ||
378 | #define BRW_VS_CTL_SNAPSHOT_MUX_VS_KERNEL_POINTER (3 << 8) | ||
379 | #define BRW_VS_CTL_SNAPSHOT_ALL_THREADS (1 << 2) | ||
380 | #define BRW_VS_CTL_THREAD_SNAPSHOT_ENABLE (1 << 1) | ||
381 | #define BRW_VS_CTL_SNAPSHOT_ENABLE (1 << 0) | ||
382 | |||
383 | #define BRW_VS_STRG_VAL 0x7604 | ||
384 | #define BRW_VS_RDATA 0x7608 | ||
385 | |||
386 | #define BRW_SF_CTL 0x7b00 | ||
387 | #define BRW_SF_CTL_SNAPSHOT_COMPLETE (1 << 31) | ||
388 | #define BRW_SF_CTL_SNAPSHOT_MUX_VERTEX_0_FF_ID (0 << 8) | ||
389 | #define BRW_SF_CTL_SNAPSHOT_MUX_VERTEX_0_REL_COUNT (1 << 8) | ||
390 | #define BRW_SF_CTL_SNAPSHOT_MUX_VERTEX_1_FF_ID (2 << 8) | ||
391 | #define BRW_SF_CTL_SNAPSHOT_MUX_VERTEX_1_REL_COUNT (3 << 8) | ||
392 | #define BRW_SF_CTL_SNAPSHOT_MUX_VERTEX_2_FF_ID (4 << 8) | ||
393 | #define BRW_SF_CTL_SNAPSHOT_MUX_VERTEX_2_REL_COUNT (5 << 8) | ||
394 | #define BRW_SF_CTL_SNAPSHOT_MUX_VERTEX_COUNT (6 << 8) | ||
395 | #define BRW_SF_CTL_SNAPSHOT_MUX_SF_KERNEL_POINTER (7 << 8) | ||
396 | #define BRW_SF_CTL_MIN_MAX_PRIMITIVE_RANGE_ENABLE (1 << 4) | ||
397 | #define BRW_SF_CTL_DEBUG_CLIP_RECTANGLE_ENABLE (1 << 3) | ||
398 | #define BRW_SF_CTL_SNAPSHOT_ALL_THREADS (1 << 2) | ||
399 | #define BRW_SF_CTL_THREAD_SNAPSHOT_ENABLE (1 << 1) | ||
400 | #define BRW_SF_CTL_SNAPSHOT_ENABLE (1 << 0) | ||
401 | |||
402 | #define BRW_SF_STRG_VAL 0x7b04 | ||
403 | #define BRW_SF_RDATA 0x7b18 | ||
404 | |||
405 | #define BRW_WIZ_CTL 0x7c00 | ||
406 | #define BRW_WIZ_CTL_SNAPSHOT_COMPLETE (1 << 31) | ||
407 | #define BRW_WIZ_CTL_SUBSPAN_INSTANCE_SHIFT 16 | ||
408 | #define BRW_WIZ_CTL_SNAPSHOT_MUX_WIZ_KERNEL_POINTER (0 << 8) | ||
409 | #define BRW_WIZ_CTL_SNAPSHOT_MUX_SUBSPAN_INSTANCE (1 << 8) | ||
410 | #define BRW_WIZ_CTL_SNAPSHOT_MUX_PRIMITIVE_SEQUENCE (2 << 8) | ||
411 | #define BRW_WIZ_CTL_SINGLE_SUBSPAN_DISPATCH (1 << 6) | ||
412 | #define BRW_WIZ_CTL_IGNORE_COLOR_SCOREBOARD_STALLS (1 << 5) | ||
413 | #define BRW_WIZ_CTL_ENABLE_SUBSPAN_INSTANCE_COMPARE (1 << 4) | ||
414 | #define BRW_WIZ_CTL_USE_UPSTREAM_SNAPSHOT_FLAG (1 << 3) | ||
415 | #define BRW_WIZ_CTL_SNAPSHOT_ALL_THREADS (1 << 2) | ||
416 | #define BRW_WIZ_CTL_THREAD_SNAPSHOT_ENABLE (1 << 1) | ||
417 | #define BRW_WIZ_CTL_SNAPSHOT_ENABLE (1 << 0) | ||
418 | |||
419 | #define BRW_WIZ_STRG_VAL 0x7c04 | ||
420 | #define BRW_WIZ_RDATA 0x7c18 | ||
421 | |||
422 | #define BRW_TS_CTL 0x7e00 | ||
423 | #define BRW_TS_CTL_SNAPSHOT_COMPLETE (1 << 31) | ||
424 | #define BRW_TS_CTL_SNAPSHOT_MESSAGE_ERROR (0 << 8) | ||
425 | #define BRW_TS_CTL_SNAPSHOT_INTERFACE_DESCRIPTOR (3 << 8) | ||
426 | #define BRW_TS_CTL_SNAPSHOT_ALL_CHILD_THREADS (1 << 2) | ||
427 | #define BRW_TS_CTL_SNAPSHOT_ALL_ROOT_THREADS (1 << 1) | ||
428 | #define BRW_TS_CTL_SNAPSHOT_ENABLE (1 << 0) | ||
429 | |||
430 | #define BRW_TS_STRG_VAL 0x7e04 | ||
431 | #define BRW_TS_RDATA 0x7e08 | ||
432 | |||
433 | #define BRW_TD_CTL 0x8000 | ||
434 | #define BRW_TD_CTL_MUX_SHIFT 8 | ||
435 | #define BRW_TD_CTL_EXTERNAL_HALT_R0_DEBUG_MATCH (1 << 7) | ||
436 | #define BRW_TD_CTL_FORCE_EXTERNAL_HALT (1 << 6) | ||
437 | #define BRW_TD_CTL_EXCEPTION_MASK_OVERRIDE (1 << 5) | ||
438 | #define BRW_TD_CTL_FORCE_THREAD_BREAKPOINT_ENABLE (1 << 4) | ||
439 | #define BRW_TD_CTL_BREAKPOINT_ENABLE (1 << 2) | ||
440 | #define BRW_TD_CTL2 0x8004 | ||
441 | #define BRW_TD_CTL2_ILLEGAL_OPCODE_EXCEPTION_OVERRIDE (1 << 28) | ||
442 | #define BRW_TD_CTL2_MASKSTACK_EXCEPTION_OVERRIDE (1 << 26) | ||
443 | #define BRW_TD_CTL2_SOFTWARE_EXCEPTION_OVERRIDE (1 << 25) | ||
444 | #define BRW_TD_CTL2_ACTIVE_THREAD_LIMIT_SHIFT 16 | ||
445 | #define BRW_TD_CTL2_ACTIVE_THREAD_LIMIT_ENABLE (1 << 8) | ||
446 | #define BRW_TD_CTL2_THREAD_SPAWNER_EXECUTION_MASK_ENABLE (1 << 7) | ||
447 | #define BRW_TD_CTL2_WIZ_EXECUTION_MASK_ENABLE (1 << 6) | ||
448 | #define BRW_TD_CTL2_SF_EXECUTION_MASK_ENABLE (1 << 5) | ||
449 | #define BRW_TD_CTL2_CLIPPER_EXECUTION_MASK_ENABLE (1 << 4) | ||
450 | #define BRW_TD_CTL2_GS_EXECUTION_MASK_ENABLE (1 << 3) | ||
451 | #define BRW_TD_CTL2_VS_EXECUTION_MASK_ENABLE (1 << 0) | ||
452 | #define BRW_TD_VF_VS_EMSK 0x8008 | ||
453 | #define BRW_TD_GS_EMSK 0x800c | ||
454 | #define BRW_TD_CLIP_EMSK 0x8010 | ||
455 | #define BRW_TD_SF_EMSK 0x8014 | ||
456 | #define BRW_TD_WIZ_EMSK 0x8018 | ||
457 | #define BRW_TD_0_6_EHTRG_VAL 0x801c | ||
458 | #define BRW_TD_0_7_EHTRG_VAL 0x8020 | ||
459 | #define BRW_TD_0_6_EHTRG_MSK 0x8024 | ||
460 | #define BRW_TD_0_7_EHTRG_MSK 0x8028 | ||
461 | #define BRW_TD_RDATA 0x802c | ||
462 | #define BRW_TD_TS_EMSK 0x8030 | ||
463 | |||
464 | #define BRW_EU_CTL 0x8800 | ||
465 | #define BRW_EU_CTL_SELECT_SHIFT 16 | ||
466 | #define BRW_EU_CTL_DATA_MUX_SHIFT 8 | ||
467 | #define BRW_EU_ATT_0 0x8810 | ||
468 | #define BRW_EU_ATT_1 0x8814 | ||
469 | #define BRW_EU_ATT_DATA_0 0x8820 | ||
470 | #define BRW_EU_ATT_DATA_1 0x8824 | ||
471 | #define BRW_EU_ATT_CLR_0 0x8830 | ||
472 | #define BRW_EU_ATT_CLR_1 0x8834 | ||
473 | #define BRW_EU_RDATA 0x8840 | ||
474 | |||
475 | /* End regs for broadwater */ | ||
476 | |||
diff --git a/src/xvmc/i965_xvmc.c b/xvmc/i965_xvmc.c index 261cf35e..1850480c 100644 --- a/src/xvmc/i965_xvmc.c +++ b/xvmc/i965_xvmc.c | |||
@@ -24,13 +24,11 @@ | |||
24 | * Zou Nan hai <nanhai.zou@intel.com> | 24 | * Zou Nan hai <nanhai.zou@intel.com> |
25 | * | 25 | * |
26 | */ | 26 | */ |
27 | #include "intel_xvmc.h" | 27 | #include "intel_xvmc_private.h" |
28 | #include "i830_reg.h" | 28 | #include "i830_reg.h" |
29 | #include "i965_reg.h" | 29 | #include "i965_reg.h" |
30 | #include "brw_defines.h" | 30 | #include "brw_defines.h" |
31 | #include "brw_structs.h" | 31 | #include "brw_structs.h" |
32 | #include "intel_batchbuffer.h" | ||
33 | #include "intel_hwmc.h" | ||
34 | #define BATCH_STRUCT(x) intelBatchbufferData(&x, sizeof(x), 0) | 32 | #define BATCH_STRUCT(x) intelBatchbufferData(&x, sizeof(x), 0) |
35 | #define URB_SIZE 256 /* XXX */ | 33 | #define URB_SIZE 256 /* XXX */ |
36 | 34 | ||
diff --git a/src/xvmc/intel_batchbuffer.c b/xvmc/intel_batchbuffer.c index 2b5526c5..3fa16bb4 100644 --- a/src/xvmc/intel_batchbuffer.c +++ b/xvmc/intel_batchbuffer.c | |||
@@ -43,7 +43,7 @@ | |||
43 | #include <X11/extensions/XvMC.h> | 43 | #include <X11/extensions/XvMC.h> |
44 | #include <X11/extensions/XvMClib.h> | 44 | #include <X11/extensions/XvMClib.h> |
45 | 45 | ||
46 | #include "intel_xvmc.h" | 46 | #include "intel_xvmc_private.h" |
47 | #include "intel_batchbuffer.h" | 47 | #include "intel_batchbuffer.h" |
48 | #include "brw_defines.h" | 48 | #include "brw_defines.h" |
49 | #include "brw_structs.h" | 49 | #include "brw_structs.h" |
diff --git a/src/xvmc/intel_batchbuffer.h b/xvmc/intel_batchbuffer.h index 7fae6f7d..7fae6f7d 100644 --- a/src/xvmc/intel_batchbuffer.h +++ b/xvmc/intel_batchbuffer.h | |||
diff --git a/src/xvmc/intel_xvmc.c b/xvmc/intel_xvmc.c index 883dadae..1d7b6e20 100644 --- a/src/xvmc/intel_xvmc.c +++ b/xvmc/intel_xvmc.c | |||
@@ -24,7 +24,7 @@ | |||
24 | * Zhenyu Wang <zhenyu.z.wang@intel.com> | 24 | * Zhenyu Wang <zhenyu.z.wang@intel.com> |
25 | * | 25 | * |
26 | */ | 26 | */ |
27 | #include "intel_xvmc.h" | 27 | #include "intel_xvmc_private.h" |
28 | #include <xcb/xcb.h> | 28 | #include <xcb/xcb.h> |
29 | #include <xcb/xcb_aux.h> | 29 | #include <xcb/xcb_aux.h> |
30 | #include <xcb/dri2.h> | 30 | #include <xcb/dri2.h> |
diff --git a/src/intel_hwmc.h b/xvmc/intel_xvmc.h index 8682fe0e..8682fe0e 100644 --- a/src/intel_hwmc.h +++ b/xvmc/intel_xvmc.h | |||
diff --git a/src/xvmc/intel_xvmc_dump.c b/xvmc/intel_xvmc_dump.c index d22d311a..8103754f 100644 --- a/src/xvmc/intel_xvmc_dump.c +++ b/xvmc/intel_xvmc_dump.c | |||
@@ -24,7 +24,7 @@ | |||
24 | * Zhenyu Wang <zhenyu.z.wang@intel.com> | 24 | * Zhenyu Wang <zhenyu.z.wang@intel.com> |
25 | * | 25 | * |
26 | */ | 26 | */ |
27 | #include "intel_xvmc.h" | 27 | #include "intel_xvmc_private.h" |
28 | 28 | ||
29 | #define DUMPFILE "./intel_xvmc_dump" | 29 | #define DUMPFILE "./intel_xvmc_dump" |
30 | 30 | ||
diff --git a/src/xvmc/intel_xvmc.h b/xvmc/intel_xvmc_private.h index 7fdfd062..e2ea2dca 100644 --- a/src/xvmc/intel_xvmc.h +++ b/xvmc/intel_xvmc_private.h | |||
@@ -41,7 +41,6 @@ | |||
41 | #include <stdint.h> | 41 | #include <stdint.h> |
42 | 42 | ||
43 | #include <xf86drm.h> | 43 | #include <xf86drm.h> |
44 | #include "intel_hwmc.h" | ||
45 | #include <X11/X.h> | 44 | #include <X11/X.h> |
46 | #include <X11/Xlibint.h> | 45 | #include <X11/Xlibint.h> |
47 | #include <X11/Xutil.h> | 46 | #include <X11/Xutil.h> |
@@ -52,9 +51,11 @@ | |||
52 | #include <X11/extensions/XvMClib.h> | 51 | #include <X11/extensions/XvMClib.h> |
53 | #include <X11/extensions/vldXvMC.h> | 52 | #include <X11/extensions/vldXvMC.h> |
54 | #include <drm_sarea.h> | 53 | #include <drm_sarea.h> |
54 | |||
55 | #include "i915_drm.h" | 55 | #include "i915_drm.h" |
56 | #include "intel_bufmgr.h" | 56 | #include "intel_bufmgr.h" |
57 | 57 | ||
58 | #include "intel_xvmc.h" | ||
58 | #include "intel_batchbuffer.h" | 59 | #include "intel_batchbuffer.h" |
59 | 60 | ||
60 | #define GTT_PAGE_SIZE 4*1024 | 61 | #define GTT_PAGE_SIZE 4*1024 |
diff --git a/src/xvmc/shader/Makefile.am b/xvmc/shader/Makefile.am index 2a58cfde..2a58cfde 100644 --- a/src/xvmc/shader/Makefile.am +++ b/xvmc/shader/Makefile.am | |||
diff --git a/src/xvmc/shader/mc/Makefile.am b/xvmc/shader/mc/Makefile.am index 8d657691..8d657691 100644 --- a/src/xvmc/shader/mc/Makefile.am +++ b/xvmc/shader/mc/Makefile.am | |||
diff --git a/src/xvmc/shader/mc/addidct.g4i b/xvmc/shader/mc/addidct.g4i index bd3d5fe5..bd3d5fe5 100644 --- a/src/xvmc/shader/mc/addidct.g4i +++ b/xvmc/shader/mc/addidct.g4i | |||
diff --git a/src/xvmc/shader/mc/addidct_igd.g4i b/xvmc/shader/mc/addidct_igd.g4i index 56fa2af3..56fa2af3 100644 --- a/src/xvmc/shader/mc/addidct_igd.g4i +++ b/xvmc/shader/mc/addidct_igd.g4i | |||
diff --git a/src/xvmc/shader/mc/block_clear.g4i b/xvmc/shader/mc/block_clear.g4i index ce12f3b5..ce12f3b5 100644 --- a/src/xvmc/shader/mc/block_clear.g4i +++ b/xvmc/shader/mc/block_clear.g4i | |||
diff --git a/src/xvmc/shader/mc/dual_prime.g4a b/xvmc/shader/mc/dual_prime.g4a index 7066a75b..7066a75b 100644 --- a/src/xvmc/shader/mc/dual_prime.g4a +++ b/xvmc/shader/mc/dual_prime.g4a | |||
diff --git a/src/xvmc/shader/mc/dual_prime.g4b b/xvmc/shader/mc/dual_prime.g4b index 4a1eb4be..4a1eb4be 100644 --- a/src/xvmc/shader/mc/dual_prime.g4b +++ b/xvmc/shader/mc/dual_prime.g4b | |||
diff --git a/src/xvmc/shader/mc/dual_prime.g4b.gen5 b/xvmc/shader/mc/dual_prime.g4b.gen5 index af9a7adf..af9a7adf 100644 --- a/src/xvmc/shader/mc/dual_prime.g4b.gen5 +++ b/xvmc/shader/mc/dual_prime.g4b.gen5 | |||
diff --git a/src/xvmc/shader/mc/dual_prime_igd.g4a b/xvmc/shader/mc/dual_prime_igd.g4a index e741244b..e741244b 100644 --- a/src/xvmc/shader/mc/dual_prime_igd.g4a +++ b/xvmc/shader/mc/dual_prime_igd.g4a | |||
diff --git a/src/xvmc/shader/mc/dual_prime_igd.g4b b/xvmc/shader/mc/dual_prime_igd.g4b index 6a558fdb..6a558fdb 100644 --- a/src/xvmc/shader/mc/dual_prime_igd.g4b +++ b/xvmc/shader/mc/dual_prime_igd.g4b | |||
diff --git a/src/xvmc/shader/mc/dual_prime_igd.g4b.gen5 b/xvmc/shader/mc/dual_prime_igd.g4b.gen5 index 10daa149..10daa149 100644 --- a/src/xvmc/shader/mc/dual_prime_igd.g4b.gen5 +++ b/xvmc/shader/mc/dual_prime_igd.g4b.gen5 | |||
diff --git a/src/xvmc/shader/mc/field_backward.g4a b/xvmc/shader/mc/field_backward.g4a index 8c721c62..8c721c62 100644 --- a/src/xvmc/shader/mc/field_backward.g4a +++ b/xvmc/shader/mc/field_backward.g4a | |||
diff --git a/src/xvmc/shader/mc/field_backward.g4b b/xvmc/shader/mc/field_backward.g4b index cce7d454..cce7d454 100644 --- a/src/xvmc/shader/mc/field_backward.g4b +++ b/xvmc/shader/mc/field_backward.g4b | |||
diff --git a/src/xvmc/shader/mc/field_backward.g4b.gen5 b/xvmc/shader/mc/field_backward.g4b.gen5 index 3fc1d7a9..3fc1d7a9 100644 --- a/src/xvmc/shader/mc/field_backward.g4b.gen5 +++ b/xvmc/shader/mc/field_backward.g4b.gen5 | |||
diff --git a/src/xvmc/shader/mc/field_backward_igd.g4a b/xvmc/shader/mc/field_backward_igd.g4a index 9938ab5d..9938ab5d 100644 --- a/src/xvmc/shader/mc/field_backward_igd.g4a +++ b/xvmc/shader/mc/field_backward_igd.g4a | |||
diff --git a/src/xvmc/shader/mc/field_backward_igd.g4b b/xvmc/shader/mc/field_backward_igd.g4b index 6236e786..6236e786 100644 --- a/src/xvmc/shader/mc/field_backward_igd.g4b +++ b/xvmc/shader/mc/field_backward_igd.g4b | |||
diff --git a/src/xvmc/shader/mc/field_backward_igd.g4b.gen5 b/xvmc/shader/mc/field_backward_igd.g4b.gen5 index 6236e786..6236e786 100644 --- a/src/xvmc/shader/mc/field_backward_igd.g4b.gen5 +++ b/xvmc/shader/mc/field_backward_igd.g4b.gen5 | |||
diff --git a/src/xvmc/shader/mc/field_f_b.g4a b/xvmc/shader/mc/field_f_b.g4a index 7066a75b..7066a75b 100644 --- a/src/xvmc/shader/mc/field_f_b.g4a +++ b/xvmc/shader/mc/field_f_b.g4a | |||
diff --git a/src/xvmc/shader/mc/field_f_b.g4b b/xvmc/shader/mc/field_f_b.g4b index 4a1eb4be..4a1eb4be 100644 --- a/src/xvmc/shader/mc/field_f_b.g4b +++ b/xvmc/shader/mc/field_f_b.g4b | |||
diff --git a/src/xvmc/shader/mc/field_f_b.g4b.gen5 b/xvmc/shader/mc/field_f_b.g4b.gen5 index af9a7adf..af9a7adf 100644 --- a/src/xvmc/shader/mc/field_f_b.g4b.gen5 +++ b/xvmc/shader/mc/field_f_b.g4b.gen5 | |||
diff --git a/src/xvmc/shader/mc/field_f_b_igd.g4a b/xvmc/shader/mc/field_f_b_igd.g4a index c072cd60..c072cd60 100644 --- a/src/xvmc/shader/mc/field_f_b_igd.g4a +++ b/xvmc/shader/mc/field_f_b_igd.g4a | |||
diff --git a/src/xvmc/shader/mc/field_f_b_igd.g4b b/xvmc/shader/mc/field_f_b_igd.g4b index c0bd0bed..c0bd0bed 100644 --- a/src/xvmc/shader/mc/field_f_b_igd.g4b +++ b/xvmc/shader/mc/field_f_b_igd.g4b | |||
diff --git a/src/xvmc/shader/mc/field_f_b_igd.g4b.gen5 b/xvmc/shader/mc/field_f_b_igd.g4b.gen5 index c0bd0bed..c0bd0bed 100644 --- a/src/xvmc/shader/mc/field_f_b_igd.g4b.gen5 +++ b/xvmc/shader/mc/field_f_b_igd.g4b.gen5 | |||
diff --git a/src/xvmc/shader/mc/field_forward.g4a b/xvmc/shader/mc/field_forward.g4a index f5595ee1..f5595ee1 100644 --- a/src/xvmc/shader/mc/field_forward.g4a +++ b/xvmc/shader/mc/field_forward.g4a | |||
diff --git a/src/xvmc/shader/mc/field_forward.g4b b/xvmc/shader/mc/field_forward.g4b index 3514c868..3514c868 100644 --- a/src/xvmc/shader/mc/field_forward.g4b +++ b/xvmc/shader/mc/field_forward.g4b | |||
diff --git a/src/xvmc/shader/mc/field_forward.g4b.gen5 b/xvmc/shader/mc/field_forward.g4b.gen5 index e7dd773a..e7dd773a 100644 --- a/src/xvmc/shader/mc/field_forward.g4b.gen5 +++ b/xvmc/shader/mc/field_forward.g4b.gen5 | |||
diff --git a/src/xvmc/shader/mc/field_forward_igd.g4a b/xvmc/shader/mc/field_forward_igd.g4a index 61719ed2..61719ed2 100644 --- a/src/xvmc/shader/mc/field_forward_igd.g4a +++ b/xvmc/shader/mc/field_forward_igd.g4a | |||
diff --git a/src/xvmc/shader/mc/field_forward_igd.g4b b/xvmc/shader/mc/field_forward_igd.g4b index 12036bf7..12036bf7 100644 --- a/src/xvmc/shader/mc/field_forward_igd.g4b +++ b/xvmc/shader/mc/field_forward_igd.g4b | |||
diff --git a/src/xvmc/shader/mc/field_forward_igd.g4b.gen5 b/xvmc/shader/mc/field_forward_igd.g4b.gen5 index 12036bf7..12036bf7 100644 --- a/src/xvmc/shader/mc/field_forward_igd.g4b.gen5 +++ b/xvmc/shader/mc/field_forward_igd.g4b.gen5 | |||
diff --git a/src/xvmc/shader/mc/frame_backward.g4a b/xvmc/shader/mc/frame_backward.g4a index f669dac5..f669dac5 100644 --- a/src/xvmc/shader/mc/frame_backward.g4a +++ b/xvmc/shader/mc/frame_backward.g4a | |||
diff --git a/src/xvmc/shader/mc/frame_backward.g4b b/xvmc/shader/mc/frame_backward.g4b index 980ad62f..980ad62f 100644 --- a/src/xvmc/shader/mc/frame_backward.g4b +++ b/xvmc/shader/mc/frame_backward.g4b | |||
diff --git a/src/xvmc/shader/mc/frame_backward.g4b.gen5 b/xvmc/shader/mc/frame_backward.g4b.gen5 index b9e28401..b9e28401 100644 --- a/src/xvmc/shader/mc/frame_backward.g4b.gen5 +++ b/xvmc/shader/mc/frame_backward.g4b.gen5 | |||
diff --git a/src/xvmc/shader/mc/frame_backward_igd.g4a b/xvmc/shader/mc/frame_backward_igd.g4a index 774c1190..774c1190 100644 --- a/src/xvmc/shader/mc/frame_backward_igd.g4a +++ b/xvmc/shader/mc/frame_backward_igd.g4a | |||
diff --git a/src/xvmc/shader/mc/frame_backward_igd.g4b b/xvmc/shader/mc/frame_backward_igd.g4b index 1b533e5f..1b533e5f 100644 --- a/src/xvmc/shader/mc/frame_backward_igd.g4b +++ b/xvmc/shader/mc/frame_backward_igd.g4b | |||
diff --git a/src/xvmc/shader/mc/frame_backward_igd.g4b.gen5 b/xvmc/shader/mc/frame_backward_igd.g4b.gen5 index 1b533e5f..1b533e5f 100644 --- a/src/xvmc/shader/mc/frame_backward_igd.g4b.gen5 +++ b/xvmc/shader/mc/frame_backward_igd.g4b.gen5 | |||
diff --git a/src/xvmc/shader/mc/frame_f_b.g4a b/xvmc/shader/mc/frame_f_b.g4a index 98729dd2..98729dd2 100644 --- a/src/xvmc/shader/mc/frame_f_b.g4a +++ b/xvmc/shader/mc/frame_f_b.g4a | |||
diff --git a/src/xvmc/shader/mc/frame_f_b.g4b b/xvmc/shader/mc/frame_f_b.g4b index 760cae14..760cae14 100644 --- a/src/xvmc/shader/mc/frame_f_b.g4b +++ b/xvmc/shader/mc/frame_f_b.g4b | |||
diff --git a/src/xvmc/shader/mc/frame_f_b.g4b.gen5 b/xvmc/shader/mc/frame_f_b.g4b.gen5 index 14497ab1..14497ab1 100644 --- a/src/xvmc/shader/mc/frame_f_b.g4b.gen5 +++ b/xvmc/shader/mc/frame_f_b.g4b.gen5 | |||
diff --git a/src/xvmc/shader/mc/frame_f_b_igd.g4a b/xvmc/shader/mc/frame_f_b_igd.g4a index 35231f14..35231f14 100644 --- a/src/xvmc/shader/mc/frame_f_b_igd.g4a +++ b/xvmc/shader/mc/frame_f_b_igd.g4a | |||
diff --git a/src/xvmc/shader/mc/frame_f_b_igd.g4b b/xvmc/shader/mc/frame_f_b_igd.g4b index 6505aec4..6505aec4 100644 --- a/src/xvmc/shader/mc/frame_f_b_igd.g4b +++ b/xvmc/shader/mc/frame_f_b_igd.g4b | |||
diff --git a/src/xvmc/shader/mc/frame_f_b_igd.g4b.gen5 b/xvmc/shader/mc/frame_f_b_igd.g4b.gen5 index 6505aec4..6505aec4 100644 --- a/src/xvmc/shader/mc/frame_f_b_igd.g4b.gen5 +++ b/xvmc/shader/mc/frame_f_b_igd.g4b.gen5 | |||
diff --git a/src/xvmc/shader/mc/frame_forward.g4a b/xvmc/shader/mc/frame_forward.g4a index 925d568e..925d568e 100644 --- a/src/xvmc/shader/mc/frame_forward.g4a +++ b/xvmc/shader/mc/frame_forward.g4a | |||
diff --git a/src/xvmc/shader/mc/frame_forward.g4b b/xvmc/shader/mc/frame_forward.g4b index efbd20c7..efbd20c7 100644 --- a/src/xvmc/shader/mc/frame_forward.g4b +++ b/xvmc/shader/mc/frame_forward.g4b | |||
diff --git a/src/xvmc/shader/mc/frame_forward.g4b.gen5 b/xvmc/shader/mc/frame_forward.g4b.gen5 index 9f90e7e0..9f90e7e0 100644 --- a/src/xvmc/shader/mc/frame_forward.g4b.gen5 +++ b/xvmc/shader/mc/frame_forward.g4b.gen5 | |||
diff --git a/src/xvmc/shader/mc/frame_forward_igd.g4a b/xvmc/shader/mc/frame_forward_igd.g4a index 11928eaf..11928eaf 100644 --- a/src/xvmc/shader/mc/frame_forward_igd.g4a +++ b/xvmc/shader/mc/frame_forward_igd.g4a | |||
diff --git a/src/xvmc/shader/mc/frame_forward_igd.g4b b/xvmc/shader/mc/frame_forward_igd.g4b index ea7ecf8b..ea7ecf8b 100644 --- a/src/xvmc/shader/mc/frame_forward_igd.g4b +++ b/xvmc/shader/mc/frame_forward_igd.g4b | |||
diff --git a/src/xvmc/shader/mc/frame_forward_igd.g4b.gen5 b/xvmc/shader/mc/frame_forward_igd.g4b.gen5 index ea7ecf8b..ea7ecf8b 100644 --- a/src/xvmc/shader/mc/frame_forward_igd.g4b.gen5 +++ b/xvmc/shader/mc/frame_forward_igd.g4b.gen5 | |||
diff --git a/src/xvmc/shader/mc/ipicture.g4a b/xvmc/shader/mc/ipicture.g4a index afd5bc3d..afd5bc3d 100644 --- a/src/xvmc/shader/mc/ipicture.g4a +++ b/xvmc/shader/mc/ipicture.g4a | |||
diff --git a/src/xvmc/shader/mc/ipicture.g4b b/xvmc/shader/mc/ipicture.g4b index 10be527f..10be527f 100644 --- a/src/xvmc/shader/mc/ipicture.g4b +++ b/xvmc/shader/mc/ipicture.g4b | |||
diff --git a/src/xvmc/shader/mc/ipicture.g4b.gen5 b/xvmc/shader/mc/ipicture.g4b.gen5 index 216883f1..216883f1 100644 --- a/src/xvmc/shader/mc/ipicture.g4b.gen5 +++ b/xvmc/shader/mc/ipicture.g4b.gen5 | |||
diff --git a/src/xvmc/shader/mc/ipicture_igd.g4a b/xvmc/shader/mc/ipicture_igd.g4a index 20c3d8ea..20c3d8ea 100644 --- a/src/xvmc/shader/mc/ipicture_igd.g4a +++ b/xvmc/shader/mc/ipicture_igd.g4a | |||
diff --git a/src/xvmc/shader/mc/ipicture_igd.g4b b/xvmc/shader/mc/ipicture_igd.g4b index c0947f74..c0947f74 100644 --- a/src/xvmc/shader/mc/ipicture_igd.g4b +++ b/xvmc/shader/mc/ipicture_igd.g4b | |||
diff --git a/src/xvmc/shader/mc/ipicture_igd.g4b.gen5 b/xvmc/shader/mc/ipicture_igd.g4b.gen5 index 79b8cad2..79b8cad2 100644 --- a/src/xvmc/shader/mc/ipicture_igd.g4b.gen5 +++ b/xvmc/shader/mc/ipicture_igd.g4b.gen5 | |||
diff --git a/src/xvmc/shader/mc/lib_igd.g4a b/xvmc/shader/mc/lib_igd.g4a index 649619f0..649619f0 100644 --- a/src/xvmc/shader/mc/lib_igd.g4a +++ b/xvmc/shader/mc/lib_igd.g4a | |||
diff --git a/src/xvmc/shader/mc/lib_igd.g4b b/xvmc/shader/mc/lib_igd.g4b index 0e8fe01c..0e8fe01c 100644 --- a/src/xvmc/shader/mc/lib_igd.g4b +++ b/xvmc/shader/mc/lib_igd.g4b | |||
diff --git a/src/xvmc/shader/mc/lib_igd.g4b.gen5 b/xvmc/shader/mc/lib_igd.g4b.gen5 index 442fa6ae..442fa6ae 100644 --- a/src/xvmc/shader/mc/lib_igd.g4b.gen5 +++ b/xvmc/shader/mc/lib_igd.g4b.gen5 | |||
diff --git a/src/xvmc/shader/mc/motion_field_uv.g4i b/xvmc/shader/mc/motion_field_uv.g4i index 46401974..46401974 100644 --- a/src/xvmc/shader/mc/motion_field_uv.g4i +++ b/xvmc/shader/mc/motion_field_uv.g4i | |||
diff --git a/src/xvmc/shader/mc/motion_field_uv_igd.g4i b/xvmc/shader/mc/motion_field_uv_igd.g4i index 9681e2e8..9681e2e8 100644 --- a/src/xvmc/shader/mc/motion_field_uv_igd.g4i +++ b/xvmc/shader/mc/motion_field_uv_igd.g4i | |||
diff --git a/src/xvmc/shader/mc/motion_field_y.g4i b/xvmc/shader/mc/motion_field_y.g4i index 06fa6cb6..06fa6cb6 100644 --- a/src/xvmc/shader/mc/motion_field_y.g4i +++ b/xvmc/shader/mc/motion_field_y.g4i | |||
diff --git a/src/xvmc/shader/mc/motion_field_y_igd.g4i b/xvmc/shader/mc/motion_field_y_igd.g4i index 619857a0..619857a0 100644 --- a/src/xvmc/shader/mc/motion_field_y_igd.g4i +++ b/xvmc/shader/mc/motion_field_y_igd.g4i | |||
diff --git a/src/xvmc/shader/mc/motion_frame_uv.g4i b/xvmc/shader/mc/motion_frame_uv.g4i index c027c903..c027c903 100644 --- a/src/xvmc/shader/mc/motion_frame_uv.g4i +++ b/xvmc/shader/mc/motion_frame_uv.g4i | |||
diff --git a/src/xvmc/shader/mc/motion_frame_uv_igd.g4i b/xvmc/shader/mc/motion_frame_uv_igd.g4i index 7fc8931a..7fc8931a 100644 --- a/src/xvmc/shader/mc/motion_frame_uv_igd.g4i +++ b/xvmc/shader/mc/motion_frame_uv_igd.g4i | |||
diff --git a/src/xvmc/shader/mc/motion_frame_y.g4i b/xvmc/shader/mc/motion_frame_y.g4i index f0b212f2..f0b212f2 100644 --- a/src/xvmc/shader/mc/motion_frame_y.g4i +++ b/xvmc/shader/mc/motion_frame_y.g4i | |||
diff --git a/src/xvmc/shader/mc/motion_frame_y_igd.g4i b/xvmc/shader/mc/motion_frame_y_igd.g4i index d888b543..d888b543 100644 --- a/src/xvmc/shader/mc/motion_frame_y_igd.g4i +++ b/xvmc/shader/mc/motion_frame_y_igd.g4i | |||
diff --git a/src/xvmc/shader/mc/null.g4a b/xvmc/shader/mc/null.g4a index 65698426..65698426 100644 --- a/src/xvmc/shader/mc/null.g4a +++ b/xvmc/shader/mc/null.g4a | |||
diff --git a/src/xvmc/shader/mc/null.g4b b/xvmc/shader/mc/null.g4b index 960fda9a..960fda9a 100644 --- a/src/xvmc/shader/mc/null.g4b +++ b/xvmc/shader/mc/null.g4b | |||
diff --git a/src/xvmc/shader/mc/null.g4b.gen5 b/xvmc/shader/mc/null.g4b.gen5 index fa9755c6..fa9755c6 100644 --- a/src/xvmc/shader/mc/null.g4b.gen5 +++ b/xvmc/shader/mc/null.g4b.gen5 | |||
diff --git a/src/xvmc/shader/mc/read_field_x0y0_uv.g4i b/xvmc/shader/mc/read_field_x0y0_uv.g4i index 673b8cd3..673b8cd3 100644 --- a/src/xvmc/shader/mc/read_field_x0y0_uv.g4i +++ b/xvmc/shader/mc/read_field_x0y0_uv.g4i | |||
diff --git a/src/xvmc/shader/mc/read_field_x0y0_uv_igd.g4i b/xvmc/shader/mc/read_field_x0y0_uv_igd.g4i index 23fe1a5d..23fe1a5d 100644 --- a/src/xvmc/shader/mc/read_field_x0y0_uv_igd.g4i +++ b/xvmc/shader/mc/read_field_x0y0_uv_igd.g4i | |||
diff --git a/src/xvmc/shader/mc/read_field_x0y0_y.g4i b/xvmc/shader/mc/read_field_x0y0_y.g4i index 8f4e339c..8f4e339c 100644 --- a/src/xvmc/shader/mc/read_field_x0y0_y.g4i +++ b/xvmc/shader/mc/read_field_x0y0_y.g4i | |||
diff --git a/src/xvmc/shader/mc/read_field_x0y0_y_igd.g4i b/xvmc/shader/mc/read_field_x0y0_y_igd.g4i index 8dcb96d4..8dcb96d4 100644 --- a/src/xvmc/shader/mc/read_field_x0y0_y_igd.g4i +++ b/xvmc/shader/mc/read_field_x0y0_y_igd.g4i | |||
diff --git a/src/xvmc/shader/mc/read_field_x0y1_uv.g4i b/xvmc/shader/mc/read_field_x0y1_uv.g4i index 1be4fd29..1be4fd29 100644 --- a/src/xvmc/shader/mc/read_field_x0y1_uv.g4i +++ b/xvmc/shader/mc/read_field_x0y1_uv.g4i | |||
diff --git a/src/xvmc/shader/mc/read_field_x0y1_uv_igd.g4i b/xvmc/shader/mc/read_field_x0y1_uv_igd.g4i index 489f50a5..489f50a5 100644 --- a/src/xvmc/shader/mc/read_field_x0y1_uv_igd.g4i +++ b/xvmc/shader/mc/read_field_x0y1_uv_igd.g4i | |||
diff --git a/src/xvmc/shader/mc/read_field_x0y1_y.g4i b/xvmc/shader/mc/read_field_x0y1_y.g4i index a15a2218..a15a2218 100644 --- a/src/xvmc/shader/mc/read_field_x0y1_y.g4i +++ b/xvmc/shader/mc/read_field_x0y1_y.g4i | |||
diff --git a/src/xvmc/shader/mc/read_field_x0y1_y_igd.g4i b/xvmc/shader/mc/read_field_x0y1_y_igd.g4i index 58d3f266..58d3f266 100644 --- a/src/xvmc/shader/mc/read_field_x0y1_y_igd.g4i +++ b/xvmc/shader/mc/read_field_x0y1_y_igd.g4i | |||
diff --git a/src/xvmc/shader/mc/read_field_x1y0_uv.g4i b/xvmc/shader/mc/read_field_x1y0_uv.g4i index e89a2dc2..e89a2dc2 100644 --- a/src/xvmc/shader/mc/read_field_x1y0_uv.g4i +++ b/xvmc/shader/mc/read_field_x1y0_uv.g4i | |||
diff --git a/src/xvmc/shader/mc/read_field_x1y0_uv_igd.g4i b/xvmc/shader/mc/read_field_x1y0_uv_igd.g4i index 0cec2e01..0cec2e01 100644 --- a/src/xvmc/shader/mc/read_field_x1y0_uv_igd.g4i +++ b/xvmc/shader/mc/read_field_x1y0_uv_igd.g4i | |||
diff --git a/src/xvmc/shader/mc/read_field_x1y0_y.g4i b/xvmc/shader/mc/read_field_x1y0_y.g4i index a517aaa8..a517aaa8 100644 --- a/src/xvmc/shader/mc/read_field_x1y0_y.g4i +++ b/xvmc/shader/mc/read_field_x1y0_y.g4i | |||
diff --git a/src/xvmc/shader/mc/read_field_x1y0_y_igd.g4i b/xvmc/shader/mc/read_field_x1y0_y_igd.g4i index f76a2679..f76a2679 100644 --- a/src/xvmc/shader/mc/read_field_x1y0_y_igd.g4i +++ b/xvmc/shader/mc/read_field_x1y0_y_igd.g4i | |||
diff --git a/src/xvmc/shader/mc/read_field_x1y1_uv.g4i b/xvmc/shader/mc/read_field_x1y1_uv.g4i index 162de9a2..162de9a2 100644 --- a/src/xvmc/shader/mc/read_field_x1y1_uv.g4i +++ b/xvmc/shader/mc/read_field_x1y1_uv.g4i | |||
diff --git a/src/xvmc/shader/mc/read_field_x1y1_uv_igd.g4i b/xvmc/shader/mc/read_field_x1y1_uv_igd.g4i index e2612255..e2612255 100644 --- a/src/xvmc/shader/mc/read_field_x1y1_uv_igd.g4i +++ b/xvmc/shader/mc/read_field_x1y1_uv_igd.g4i | |||
diff --git a/src/xvmc/shader/mc/read_field_x1y1_y.g4i b/xvmc/shader/mc/read_field_x1y1_y.g4i index 7c017012..7c017012 100644 --- a/src/xvmc/shader/mc/read_field_x1y1_y.g4i +++ b/xvmc/shader/mc/read_field_x1y1_y.g4i | |||
diff --git a/src/xvmc/shader/mc/read_field_x1y1_y_igd.g4i b/xvmc/shader/mc/read_field_x1y1_y_igd.g4i index db635fe5..db635fe5 100644 --- a/src/xvmc/shader/mc/read_field_x1y1_y_igd.g4i +++ b/xvmc/shader/mc/read_field_x1y1_y_igd.g4i | |||
diff --git a/src/xvmc/shader/mc/read_frame_x0y0_uv.g4i b/xvmc/shader/mc/read_frame_x0y0_uv.g4i index 43f77a8f..43f77a8f 100644 --- a/src/xvmc/shader/mc/read_frame_x0y0_uv.g4i +++ b/xvmc/shader/mc/read_frame_x0y0_uv.g4i | |||
diff --git a/src/xvmc/shader/mc/read_frame_x0y0_uv_igd.g4i b/xvmc/shader/mc/read_frame_x0y0_uv_igd.g4i index edff59b6..edff59b6 100644 --- a/src/xvmc/shader/mc/read_frame_x0y0_uv_igd.g4i +++ b/xvmc/shader/mc/read_frame_x0y0_uv_igd.g4i | |||
diff --git a/src/xvmc/shader/mc/read_frame_x0y0_y.g4i b/xvmc/shader/mc/read_frame_x0y0_y.g4i index 20f577d6..20f577d6 100644 --- a/src/xvmc/shader/mc/read_frame_x0y0_y.g4i +++ b/xvmc/shader/mc/read_frame_x0y0_y.g4i | |||
diff --git a/src/xvmc/shader/mc/read_frame_x0y0_y_igd.g4i b/xvmc/shader/mc/read_frame_x0y0_y_igd.g4i index ba3dc729..ba3dc729 100644 --- a/src/xvmc/shader/mc/read_frame_x0y0_y_igd.g4i +++ b/xvmc/shader/mc/read_frame_x0y0_y_igd.g4i | |||
diff --git a/src/xvmc/shader/mc/read_frame_x0y1_uv.g4i b/xvmc/shader/mc/read_frame_x0y1_uv.g4i index 58bebbc0..58bebbc0 100644 --- a/src/xvmc/shader/mc/read_frame_x0y1_uv.g4i +++ b/xvmc/shader/mc/read_frame_x0y1_uv.g4i | |||
diff --git a/src/xvmc/shader/mc/read_frame_x0y1_uv_igd.g4i b/xvmc/shader/mc/read_frame_x0y1_uv_igd.g4i index 7240b3f2..7240b3f2 100644 --- a/src/xvmc/shader/mc/read_frame_x0y1_uv_igd.g4i +++ b/xvmc/shader/mc/read_frame_x0y1_uv_igd.g4i | |||
diff --git a/src/xvmc/shader/mc/read_frame_x0y1_y.g4i b/xvmc/shader/mc/read_frame_x0y1_y.g4i index bbc0d787..bbc0d787 100644 --- a/src/xvmc/shader/mc/read_frame_x0y1_y.g4i +++ b/xvmc/shader/mc/read_frame_x0y1_y.g4i | |||
diff --git a/src/xvmc/shader/mc/read_frame_x0y1_y_igd.g4i b/xvmc/shader/mc/read_frame_x0y1_y_igd.g4i index 65cc88b4..65cc88b4 100644 --- a/src/xvmc/shader/mc/read_frame_x0y1_y_igd.g4i +++ b/xvmc/shader/mc/read_frame_x0y1_y_igd.g4i | |||
diff --git a/src/xvmc/shader/mc/read_frame_x1y0_uv.g4i b/xvmc/shader/mc/read_frame_x1y0_uv.g4i index bed4abe5..bed4abe5 100644 --- a/src/xvmc/shader/mc/read_frame_x1y0_uv.g4i +++ b/xvmc/shader/mc/read_frame_x1y0_uv.g4i | |||
diff --git a/src/xvmc/shader/mc/read_frame_x1y0_uv_igd.g4i b/xvmc/shader/mc/read_frame_x1y0_uv_igd.g4i index c63e8ecd..c63e8ecd 100644 --- a/src/xvmc/shader/mc/read_frame_x1y0_uv_igd.g4i +++ b/xvmc/shader/mc/read_frame_x1y0_uv_igd.g4i | |||
diff --git a/src/xvmc/shader/mc/read_frame_x1y0_y.g4i b/xvmc/shader/mc/read_frame_x1y0_y.g4i index 3af3e085..3af3e085 100644 --- a/src/xvmc/shader/mc/read_frame_x1y0_y.g4i +++ b/xvmc/shader/mc/read_frame_x1y0_y.g4i | |||
diff --git a/src/xvmc/shader/mc/read_frame_x1y0_y_igd.g4i b/xvmc/shader/mc/read_frame_x1y0_y_igd.g4i index 64bd8e81..64bd8e81 100644 --- a/src/xvmc/shader/mc/read_frame_x1y0_y_igd.g4i +++ b/xvmc/shader/mc/read_frame_x1y0_y_igd.g4i | |||
diff --git a/src/xvmc/shader/mc/read_frame_x1y1_uv.g4i b/xvmc/shader/mc/read_frame_x1y1_uv.g4i index d124d298..d124d298 100644 --- a/src/xvmc/shader/mc/read_frame_x1y1_uv.g4i +++ b/xvmc/shader/mc/read_frame_x1y1_uv.g4i | |||
diff --git a/src/xvmc/shader/mc/read_frame_x1y1_uv_igd.g4i b/xvmc/shader/mc/read_frame_x1y1_uv_igd.g4i index 96aada87..96aada87 100644 --- a/src/xvmc/shader/mc/read_frame_x1y1_uv_igd.g4i +++ b/xvmc/shader/mc/read_frame_x1y1_uv_igd.g4i | |||
diff --git a/src/xvmc/shader/mc/read_frame_x1y1_y.g4i b/xvmc/shader/mc/read_frame_x1y1_y.g4i index fa55d865..fa55d865 100644 --- a/src/xvmc/shader/mc/read_frame_x1y1_y.g4i +++ b/xvmc/shader/mc/read_frame_x1y1_y.g4i | |||
diff --git a/src/xvmc/shader/mc/read_frame_x1y1_y_igd.g4i b/xvmc/shader/mc/read_frame_x1y1_y_igd.g4i index ce8f46a3..ce8f46a3 100644 --- a/src/xvmc/shader/mc/read_frame_x1y1_y_igd.g4i +++ b/xvmc/shader/mc/read_frame_x1y1_y_igd.g4i | |||
diff --git a/src/xvmc/shader/vld/Makefile.am b/xvmc/shader/vld/Makefile.am index 8f1047e0..8f1047e0 100644 --- a/src/xvmc/shader/vld/Makefile.am +++ b/xvmc/shader/vld/Makefile.am | |||
diff --git a/src/xvmc/shader/vld/addidct.g4i b/xvmc/shader/vld/addidct.g4i index b57548d1..b57548d1 100644 --- a/src/xvmc/shader/vld/addidct.g4i +++ b/xvmc/shader/vld/addidct.g4i | |||
diff --git a/src/xvmc/shader/vld/do_iq_intra.g4i b/xvmc/shader/vld/do_iq_intra.g4i index 29bd0208..29bd0208 100644 --- a/src/xvmc/shader/vld/do_iq_intra.g4i +++ b/xvmc/shader/vld/do_iq_intra.g4i | |||
diff --git a/src/xvmc/shader/vld/do_iq_non_intra.g4i b/xvmc/shader/vld/do_iq_non_intra.g4i index da85e845..da85e845 100644 --- a/src/xvmc/shader/vld/do_iq_non_intra.g4i +++ b/xvmc/shader/vld/do_iq_non_intra.g4i | |||
diff --git a/src/xvmc/shader/vld/field_backward.g4a b/xvmc/shader/vld/field_backward.g4a index 9db50eda..9db50eda 100644 --- a/src/xvmc/shader/vld/field_backward.g4a +++ b/xvmc/shader/vld/field_backward.g4a | |||
diff --git a/src/xvmc/shader/vld/field_backward.g4b b/xvmc/shader/vld/field_backward.g4b index 5d468295..5d468295 100644 --- a/src/xvmc/shader/vld/field_backward.g4b +++ b/xvmc/shader/vld/field_backward.g4b | |||
diff --git a/src/xvmc/shader/vld/field_backward.g4b.gen5 b/xvmc/shader/vld/field_backward.g4b.gen5 index 18595b26..18595b26 100644 --- a/src/xvmc/shader/vld/field_backward.g4b.gen5 +++ b/xvmc/shader/vld/field_backward.g4b.gen5 | |||
diff --git a/src/xvmc/shader/vld/field_f_b.g4a b/xvmc/shader/vld/field_f_b.g4a index fdc1e838..fdc1e838 100644 --- a/src/xvmc/shader/vld/field_f_b.g4a +++ b/xvmc/shader/vld/field_f_b.g4a | |||
diff --git a/src/xvmc/shader/vld/field_f_b.g4b b/xvmc/shader/vld/field_f_b.g4b index 9bd272e4..9bd272e4 100644 --- a/src/xvmc/shader/vld/field_f_b.g4b +++ b/xvmc/shader/vld/field_f_b.g4b | |||
diff --git a/src/xvmc/shader/vld/field_f_b.g4b.gen5 b/xvmc/shader/vld/field_f_b.g4b.gen5 index b99ad57f..b99ad57f 100644 --- a/src/xvmc/shader/vld/field_f_b.g4b.gen5 +++ b/xvmc/shader/vld/field_f_b.g4b.gen5 | |||
diff --git a/src/xvmc/shader/vld/field_forward.g4a b/xvmc/shader/vld/field_forward.g4a index 4c79c5f4..4c79c5f4 100644 --- a/src/xvmc/shader/vld/field_forward.g4a +++ b/xvmc/shader/vld/field_forward.g4a | |||
diff --git a/src/xvmc/shader/vld/field_forward.g4b b/xvmc/shader/vld/field_forward.g4b index 6c02221f..6c02221f 100644 --- a/src/xvmc/shader/vld/field_forward.g4b +++ b/xvmc/shader/vld/field_forward.g4b | |||
diff --git a/src/xvmc/shader/vld/field_forward.g4b.gen5 b/xvmc/shader/vld/field_forward.g4b.gen5 index 4c2434ab..4c2434ab 100644 --- a/src/xvmc/shader/vld/field_forward.g4b.gen5 +++ b/xvmc/shader/vld/field_forward.g4b.gen5 | |||
diff --git a/src/xvmc/shader/vld/frame_backward.g4a b/xvmc/shader/vld/frame_backward.g4a index 28fe910e..28fe910e 100644 --- a/src/xvmc/shader/vld/frame_backward.g4a +++ b/xvmc/shader/vld/frame_backward.g4a | |||
diff --git a/src/xvmc/shader/vld/frame_backward.g4b b/xvmc/shader/vld/frame_backward.g4b index 475200b6..475200b6 100644 --- a/src/xvmc/shader/vld/frame_backward.g4b +++ b/xvmc/shader/vld/frame_backward.g4b | |||
diff --git a/src/xvmc/shader/vld/frame_backward.g4b.gen5 b/xvmc/shader/vld/frame_backward.g4b.gen5 index 5f5c174a..5f5c174a 100644 --- a/src/xvmc/shader/vld/frame_backward.g4b.gen5 +++ b/xvmc/shader/vld/frame_backward.g4b.gen5 | |||
diff --git a/src/xvmc/shader/vld/frame_f_b.g4a b/xvmc/shader/vld/frame_f_b.g4a index cf7ef57c..cf7ef57c 100644 --- a/src/xvmc/shader/vld/frame_f_b.g4a +++ b/xvmc/shader/vld/frame_f_b.g4a | |||
diff --git a/src/xvmc/shader/vld/frame_f_b.g4b b/xvmc/shader/vld/frame_f_b.g4b index 0ca1f384..0ca1f384 100644 --- a/src/xvmc/shader/vld/frame_f_b.g4b +++ b/xvmc/shader/vld/frame_f_b.g4b | |||
diff --git a/src/xvmc/shader/vld/frame_f_b.g4b.gen5 b/xvmc/shader/vld/frame_f_b.g4b.gen5 index 1078caa5..1078caa5 100644 --- a/src/xvmc/shader/vld/frame_f_b.g4b.gen5 +++ b/xvmc/shader/vld/frame_f_b.g4b.gen5 | |||
diff --git a/src/xvmc/shader/vld/frame_forward.g4a b/xvmc/shader/vld/frame_forward.g4a index 22f48041..22f48041 100644 --- a/src/xvmc/shader/vld/frame_forward.g4a +++ b/xvmc/shader/vld/frame_forward.g4a | |||
diff --git a/src/xvmc/shader/vld/frame_forward.g4b b/xvmc/shader/vld/frame_forward.g4b index 4bf6c935..4bf6c935 100644 --- a/src/xvmc/shader/vld/frame_forward.g4b +++ b/xvmc/shader/vld/frame_forward.g4b | |||
diff --git a/src/xvmc/shader/vld/frame_forward.g4b.gen5 b/xvmc/shader/vld/frame_forward.g4b.gen5 index 9d894888..9d894888 100644 --- a/src/xvmc/shader/vld/frame_forward.g4b.gen5 +++ b/xvmc/shader/vld/frame_forward.g4b.gen5 | |||
diff --git a/src/xvmc/shader/vld/idct.g4i b/xvmc/shader/vld/idct.g4i index c1747d18..c1747d18 100644 --- a/src/xvmc/shader/vld/idct.g4i +++ b/xvmc/shader/vld/idct.g4i | |||
diff --git a/src/xvmc/shader/vld/ipicture.g4a b/xvmc/shader/vld/ipicture.g4a index 688cf940..688cf940 100644 --- a/src/xvmc/shader/vld/ipicture.g4a +++ b/xvmc/shader/vld/ipicture.g4a | |||
diff --git a/src/xvmc/shader/vld/ipicture.g4b b/xvmc/shader/vld/ipicture.g4b index 4c1c8c44..4c1c8c44 100644 --- a/src/xvmc/shader/vld/ipicture.g4b +++ b/xvmc/shader/vld/ipicture.g4b | |||
diff --git a/src/xvmc/shader/vld/ipicture.g4b.gen5 b/xvmc/shader/vld/ipicture.g4b.gen5 index 957f6fc3..957f6fc3 100644 --- a/src/xvmc/shader/vld/ipicture.g4b.gen5 +++ b/xvmc/shader/vld/ipicture.g4b.gen5 | |||
diff --git a/src/xvmc/shader/vld/iq_intra.g4i b/xvmc/shader/vld/iq_intra.g4i index b0143613..b0143613 100644 --- a/src/xvmc/shader/vld/iq_intra.g4i +++ b/xvmc/shader/vld/iq_intra.g4i | |||
diff --git a/src/xvmc/shader/vld/iq_non_intra.g4i b/xvmc/shader/vld/iq_non_intra.g4i index 03c09aa0..03c09aa0 100644 --- a/src/xvmc/shader/vld/iq_non_intra.g4i +++ b/xvmc/shader/vld/iq_non_intra.g4i | |||
diff --git a/src/xvmc/shader/vld/lib.g4a b/xvmc/shader/vld/lib.g4a index 567caafe..567caafe 100644 --- a/src/xvmc/shader/vld/lib.g4a +++ b/xvmc/shader/vld/lib.g4a | |||
diff --git a/src/xvmc/shader/vld/lib.g4b b/xvmc/shader/vld/lib.g4b index 262bff90..262bff90 100644 --- a/src/xvmc/shader/vld/lib.g4b +++ b/xvmc/shader/vld/lib.g4b | |||
diff --git a/src/xvmc/shader/vld/lib.g4b.gen5 b/xvmc/shader/vld/lib.g4b.gen5 index 2371beb0..2371beb0 100644 --- a/src/xvmc/shader/vld/lib.g4b.gen5 +++ b/xvmc/shader/vld/lib.g4b.gen5 | |||
diff --git a/src/xvmc/shader/vld/motion_field_uv.g4i b/xvmc/shader/vld/motion_field_uv.g4i index 4598c85a..4598c85a 100644 --- a/src/xvmc/shader/vld/motion_field_uv.g4i +++ b/xvmc/shader/vld/motion_field_uv.g4i | |||
diff --git a/src/xvmc/shader/vld/motion_field_y.g4i b/xvmc/shader/vld/motion_field_y.g4i index 47d2ec40..47d2ec40 100644 --- a/src/xvmc/shader/vld/motion_field_y.g4i +++ b/xvmc/shader/vld/motion_field_y.g4i | |||
diff --git a/src/xvmc/shader/vld/motion_frame_uv.g4i b/xvmc/shader/vld/motion_frame_uv.g4i index 00a5f2bf..00a5f2bf 100644 --- a/src/xvmc/shader/vld/motion_frame_uv.g4i +++ b/xvmc/shader/vld/motion_frame_uv.g4i | |||
diff --git a/src/xvmc/shader/vld/motion_frame_y.g4i b/xvmc/shader/vld/motion_frame_y.g4i index 88c80851..88c80851 100644 --- a/src/xvmc/shader/vld/motion_frame_y.g4i +++ b/xvmc/shader/vld/motion_frame_y.g4i | |||
diff --git a/src/xvmc/shader/vld/read_field_x0y0_uv.g4i b/xvmc/shader/vld/read_field_x0y0_uv.g4i index 36e589a1..36e589a1 100644 --- a/src/xvmc/shader/vld/read_field_x0y0_uv.g4i +++ b/xvmc/shader/vld/read_field_x0y0_uv.g4i | |||
diff --git a/src/xvmc/shader/vld/read_field_x0y0_y.g4i b/xvmc/shader/vld/read_field_x0y0_y.g4i index e5495981..e5495981 100644 --- a/src/xvmc/shader/vld/read_field_x0y0_y.g4i +++ b/xvmc/shader/vld/read_field_x0y0_y.g4i | |||
diff --git a/src/xvmc/shader/vld/read_field_x0y1_uv.g4i b/xvmc/shader/vld/read_field_x0y1_uv.g4i index ac8030b8..ac8030b8 100644 --- a/src/xvmc/shader/vld/read_field_x0y1_uv.g4i +++ b/xvmc/shader/vld/read_field_x0y1_uv.g4i | |||
diff --git a/src/xvmc/shader/vld/read_field_x0y1_y.g4i b/xvmc/shader/vld/read_field_x0y1_y.g4i index 7a7909fe..7a7909fe 100644 --- a/src/xvmc/shader/vld/read_field_x0y1_y.g4i +++ b/xvmc/shader/vld/read_field_x0y1_y.g4i | |||
diff --git a/src/xvmc/shader/vld/read_field_x1y0_uv.g4i b/xvmc/shader/vld/read_field_x1y0_uv.g4i index 4c364382..4c364382 100644 --- a/src/xvmc/shader/vld/read_field_x1y0_uv.g4i +++ b/xvmc/shader/vld/read_field_x1y0_uv.g4i | |||
diff --git a/src/xvmc/shader/vld/read_field_x1y0_y.g4i b/xvmc/shader/vld/read_field_x1y0_y.g4i index c8ff505d..c8ff505d 100644 --- a/src/xvmc/shader/vld/read_field_x1y0_y.g4i +++ b/xvmc/shader/vld/read_field_x1y0_y.g4i | |||
diff --git a/src/xvmc/shader/vld/read_field_x1y1_uv.g4i b/xvmc/shader/vld/read_field_x1y1_uv.g4i index 816dd724..816dd724 100644 --- a/src/xvmc/shader/vld/read_field_x1y1_uv.g4i +++ b/xvmc/shader/vld/read_field_x1y1_uv.g4i | |||
diff --git a/src/xvmc/shader/vld/read_field_x1y1_y.g4i b/xvmc/shader/vld/read_field_x1y1_y.g4i index dcc9ebf0..dcc9ebf0 100644 --- a/src/xvmc/shader/vld/read_field_x1y1_y.g4i +++ b/xvmc/shader/vld/read_field_x1y1_y.g4i | |||
diff --git a/src/xvmc/shader/vld/read_frame_x0y0_uv.g4i b/xvmc/shader/vld/read_frame_x0y0_uv.g4i index 63f898f1..63f898f1 100644 --- a/src/xvmc/shader/vld/read_frame_x0y0_uv.g4i +++ b/xvmc/shader/vld/read_frame_x0y0_uv.g4i | |||
diff --git a/src/xvmc/shader/vld/read_frame_x0y0_y.g4i b/xvmc/shader/vld/read_frame_x0y0_y.g4i index 3ab5ccd5..3ab5ccd5 100644 --- a/src/xvmc/shader/vld/read_frame_x0y0_y.g4i +++ b/xvmc/shader/vld/read_frame_x0y0_y.g4i | |||
diff --git a/src/xvmc/shader/vld/read_frame_x0y1_uv.g4i b/xvmc/shader/vld/read_frame_x0y1_uv.g4i index 6351ec50..6351ec50 100644 --- a/src/xvmc/shader/vld/read_frame_x0y1_uv.g4i +++ b/xvmc/shader/vld/read_frame_x0y1_uv.g4i | |||
diff --git a/src/xvmc/shader/vld/read_frame_x0y1_y.g4i b/xvmc/shader/vld/read_frame_x0y1_y.g4i index db3dcc55..db3dcc55 100644 --- a/src/xvmc/shader/vld/read_frame_x0y1_y.g4i +++ b/xvmc/shader/vld/read_frame_x0y1_y.g4i | |||
diff --git a/src/xvmc/shader/vld/read_frame_x1y0_uv.g4i b/xvmc/shader/vld/read_frame_x1y0_uv.g4i index 05736f0e..05736f0e 100644 --- a/src/xvmc/shader/vld/read_frame_x1y0_uv.g4i +++ b/xvmc/shader/vld/read_frame_x1y0_uv.g4i | |||
diff --git a/src/xvmc/shader/vld/read_frame_x1y0_y.g4i b/xvmc/shader/vld/read_frame_x1y0_y.g4i index c236d117..c236d117 100644 --- a/src/xvmc/shader/vld/read_frame_x1y0_y.g4i +++ b/xvmc/shader/vld/read_frame_x1y0_y.g4i | |||
diff --git a/src/xvmc/shader/vld/read_frame_x1y1_uv.g4i b/xvmc/shader/vld/read_frame_x1y1_uv.g4i index 2f741fa0..2f741fa0 100644 --- a/src/xvmc/shader/vld/read_frame_x1y1_uv.g4i +++ b/xvmc/shader/vld/read_frame_x1y1_uv.g4i | |||
diff --git a/src/xvmc/shader/vld/read_frame_x1y1_y.g4i b/xvmc/shader/vld/read_frame_x1y1_y.g4i index 990927dc..990927dc 100644 --- a/src/xvmc/shader/vld/read_frame_x1y1_y.g4i +++ b/xvmc/shader/vld/read_frame_x1y1_y.g4i | |||
diff --git a/src/xvmc/xvmc_vld.c b/xvmc/xvmc_vld.c index 3f5fa5e1..e5762941 100644 --- a/src/xvmc/xvmc_vld.c +++ b/xvmc/xvmc_vld.c | |||
@@ -23,8 +23,7 @@ | |||
23 | * Author: | 23 | * Author: |
24 | * Zou Nan hai <nanhai.zou@intel.com> | 24 | * Zou Nan hai <nanhai.zou@intel.com> |
25 | */ | 25 | */ |
26 | #include "intel_xvmc.h" | 26 | #include "intel_xvmc_private.h" |
27 | #include "intel_hwmc.h" | ||
28 | #include "i830_reg.h" | 27 | #include "i830_reg.h" |
29 | #include "i965_reg.h" | 28 | #include "i965_reg.h" |
30 | #include "brw_defines.h" | 29 | #include "brw_defines.h" |