aboutsummaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri
Commit message (Collapse)AuthorAgeFilesLines
* dri: Move _dri_texformat_* to radeon_texture.cKristian Høgsberg2011-11-023-27/+65
| | | | They are only used by the r200 driver now.
* r200: Don't use driIsTextureResident helperKristian Høgsberg2011-11-021-1/+0
| | | | | With DRI2, textures are always resident and using the DRI texmem helper here is broken anyway, since nothing else uses it.
* dri: Drop unused dri renderbuffer helper functionsKristian Høgsberg2011-11-025-255/+1
|
* dri: Move driUpdateFramebufferSize to dri_util.cKristian Høgsberg2011-11-023-21/+21
| | | | drirenderbuffer.[ch] is going bye-bye.
* dri: Remove unnecessary #defines and #includesKristian Høgsberg2011-11-021-8/+0
|
* dri: Remove unnecessary timestamp pointer indirectionKristian Høgsberg2011-11-023-14/+9
|
* dri: Remove unused fields from __DriverAPIRecKristian Høgsberg2011-11-021-34/+0
|
* dri: Remove dri2.enabled flagKristian Høgsberg2011-11-026-79/+9
| | | | DRI2 is always enabled now.
* dri: Remove DRI1 fields from DRI structsKristian Høgsberg2011-11-023-138/+2
|
* dri: Remove remaining DRI1 vblank codeKristian Høgsberg2011-11-028-523/+0
|
* dri: Remove cliprect information from __DRIdrawableKristian Høgsberg2011-11-028-95/+18
|
* dri: Drop unused driCalculateSwapUsageKristian Høgsberg2011-11-022-67/+0
|
* dri: Remove unused driIntersectAreaKristian Høgsberg2011-11-022-16/+0
|
* dri: Drop __driUtilUpdateDrawableInfo and helper macrosKristian Høgsberg2011-11-022-145/+0
|
* dri: Remove unused driSwapBuffersKristian Høgsberg2011-11-021-64/+1
|
* dri: Drop unused driCreateNewContextKristian Høgsberg2011-11-021-52/+0
|
* dri: Fold driCreateNewDrawable into dri2CreateNewDrawableKristian Høgsberg2011-11-021-55/+30
|
* dri: Remove unsused driCreateNewScreenKristian Høgsberg2011-11-021-93/+0
|
* dri: Remove unused __DRIswapInfoRecKristian Høgsberg2011-11-021-40/+0
|
* dri: Remove driMediaStreamCounterExtensionKristian Høgsberg2011-11-023-43/+0
| | | | Also DRI1-only.
* dri: Remove driSwapControlExtensionKristian Høgsberg2011-11-023-21/+1
| | | | DRI1-only as well.
* dri: Drop driCopySubBufferExtensionKristian Høgsberg2011-11-023-21/+0
| | | | Another DRI1-only extension.
* dri: Drop driReadDrawableExtensionKristian Høgsberg2011-11-024-11/+0
| | | | All DRI2 drivers support setting a separate read drawable.
* dri: Drop driLegacyExtensionKristian Høgsberg2011-11-023-10/+0
| | | | There are no DRI1 drivers left.
* Build fix for -Werror=int-to-pointer-cast -Werror=pointer-to-int-castJeremy Huddleston2011-11-012-4/+4
| | | | Signed-off-by: Jeremy Huddleston <[email protected]>
* intel: fix potential segfault errorYuanhan Liu2011-11-021-2/+4
| | | | | Signed-off-by: Yuanhan Liu <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* nouveau: Add implementation of MapRenderbuffer.Eric Anholt2011-11-011-0/+46
| | | | | | | | Perhaps the easiest implementation, nouveau can directly map buffers even if tiled, and uses separate surfaces for its texture renderbuffers so we don't have to worry about that offset. Reviewed-by: Brian Paul <[email protected]>
* radeon: Add implementation of MapRenderbuffer.Eric Anholt2011-11-012-0/+98
| | | | | | | | | | | Unlike intel, we do a blit to/from GTT memory in order to untile/retile the renderbuffer data, since we don't have fence registers for accessing it. (There is software tiling code in radeon_tile.c, but it's unused and doesn't support macro tiling) Reviewed-by: Brian Paul <[email protected]>
* intel: Use MapRenderbuffer in spans setup.Eric Anholt2011-11-011-23/+10
| | | | Reviewed-by: Brian Paul <[email protected]>
* intel: Add an implementation of MapRenderbuffer.Eric Anholt2011-11-014-1/+130
| | | | | | | | | v2: Add separate stencil S8 W-tile swizzling/deswizzling. Tested for the swizzling case with env INTEL_SEPARATE_STENCIL=1 INTEL_HIZ=1 ./bin/hiz-depth-stencil-test-fbo-d24-s8 v3: Apply Chad's fix for S8 window system buffers. Reviewed-by: Chad Versace <[email protected]>
* intel: Improve the debug info for renderbuffer allocation.Eric Anholt2011-11-011-4/+4
|
* Add MapRenderbuffer implementations for software drivers.Eric Anholt2011-11-012-4/+85
| | | | | | | | | | Mesa core's is generic for things like osmesa. For swrast_dri.so, we have to do Y flipping. The front-buffer path isn't actually tested, though, because both before and after it fails with a BadMatch in XGetImage. Reviewed-by: Brian Paul <[email protected]>
* Revert "intel: Drop the immediate validation of the texture object in TFP."Eric Anholt2011-11-011-0/+5
| | | | | | | | | | | | | | | | | | This reverts commit abaebcee787eeb8a89bf7a82ed4d1532fcde5e39. The assertion I made was that "the zero-copy code in validation" would zero copy. Of course, I deleted that check back in January because the two sites that would trigger it (glTexImage() and this one) both immediately bound their mt to the object, making the other check pointless. Removes two extra blits in glx-tfp. Also fixed the Android home screen, which wasn't rendering because the extra copy broke the relationship between the texture and the eglimage. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=42152 Tested-by: Chad Versace <[email protected]> Tested-by: Eugeni Dodonov <[email protected]>
* dri/nouveau: Enable NV_fog_distance on NV10 and NV20 hardwareNicholas Miell2011-11-014-9/+30
| | | | | | | Add support for NV_fog_distance to the NV10 and NV20 drivers. [ Francisco Jerez: Fix fog coord. signedness for GL_EYE_RADIAL_NV/GL_EYE_PLANE on nv20 ]
* i965: Fix flat integral varyings.Paul Berry2011-10-312-3/+5
| | | | | | | | | | | | | | | | | Previously, the vertex and fragment shader back-ends assumed that all varyings were floats. In GLSL 1.30 this is no longer true--they can also be of integral types provided that they have an interpolation qualifier of "flat". This required two changes in each back-end: assigning the correct type to the register that holds the varying value during shader execution, and assigning the correct type to the register that ties the varying value to the rest of the graphics pipeline (the message register in the case of VS, and the payload register in the case of FS). Fixes piglit tests fs-int-interpolation and fs-uint-interpolation. Acked-by: Kenneth Graunke <[email protected]>
* i965/gen6+: Switch GLSL from ALT to IEEE floating point modePaul Berry2011-10-314-6/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | i965 graphics hardware has two floating point modes: ALT and IEEE. In ALT mode, floating-point operations never generate infinities or NaNs, and MOV instructions translate infinities and NaNs to finite values. In IEEE mode, infinities and NaNs behave as specified in the IEEE 754 spec. Previously, we used ALT mode for all vertex and fragment programs, whether they were GLSL programs or ARB programs. The GLSL spec is sufficiently vague about how infs and nans are to be handled that it was unclear whether this mode was compliant with the GLSL 1.30 spec or not, and it made it very difficult to test the isinf() and isnan() functions. This patch changes i965 GLSL programs to use IEEE floating-point mode, which is clearly compliant with GLSL 1.30's inf/nan requirements. In addition to making the Piglit isinf and isnan tests pass, this paves the way for future support of the ARB_shader_precision extension. Unfortunately we still have to use ALT floating-point mode when executing ARB programs, because those programs require 0^0 == 1, and i965 hardware generates 0^0 == NaN in IEEE mode. Fixes piglit tests "isinf-and-isnan fs_fbo", "isinf-and-isnan vs_fbo", and {fs,vs}-{isinf,isnan}-{vec2,vec3,vec4}.
* radeon/r200: drop remains of r300/r600 support along with old drm 1.x kernelDave Airlie2011-10-3015-553/+102
| | | | | | | | This drops all the old drmSupports* checks since KMS does them all, and it also drop R300_CLASS and R600_CLASS. Signed-off-by: Dave Airlie <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* intel: enable GL_OES_draw_textureChia-I Wu2011-10-301-0/+1
|
* i965: Remove the prepare() hook from state atoms.Eric Anholt2011-10-291-1/+0
| | | | | Reviewed-by: Kenneth Graunke <[email protected]> Acked-by: Paul Berry <[email protected]>
* i965: Remove the memcpy()ed atoms array now that everything is emit()-based.Eric Anholt2011-10-292-12/+9
| | | | | Reviewed-by: Kenneth Graunke <[email protected]> Acked-by: Paul Berry <[email protected]>
* i965: Merge brw_validate_state() and brw_upload_state() together.Eric Anholt2011-10-293-19/+5
| | | | | | | They were called back-to-back at this point. Reviewed-by: Kenneth Graunke <[email protected]> Acked-by: Paul Berry <[email protected]>
* i965: Remove state upload code for calling prepare() now that there are none.Eric Anholt2011-10-291-20/+3
| | | | | Reviewed-by: Kenneth Graunke <[email protected]> Acked-by: Paul Berry <[email protected]>
* i965: Remove some old texturing debug code.Eric Anholt2011-10-293-21/+0
| | | | | | | | | | It caught one possible bug I recall in my time working on the driver, and we haven't been setting it for non-fixed-function since the new FS backend came along. The bug it caught was likely a confusion about sampler mappings, which we have tests for these days. Reviewed-by: Kenneth Graunke <[email protected]> Acked-by: Paul Berry <[email protected]>
* i965: Finally, move the global fallbacks check to emit() time.Eric Anholt2011-10-291-1/+1
| | | | | | | | This was the last prepare() function, and it's the first state atom, so it must be ready to move. Reviewed-by: Kenneth Graunke <[email protected]> Acked-by: Paul Berry <[email protected]>
* i965: Move index buffer upload to emit() time.Eric Anholt2011-10-291-2/+2
| | | | | | | It's consumed by the brw_emit_index_buffer() code at emit() time. Reviewed-by: Kenneth Graunke <[email protected]> Acked-by: Paul Berry <[email protected]>
* i965: Do a hack job of merging VB prepare()/emit() together.Eric Anholt2011-10-291-1/+2
| | | | | | | | | I don't really want to touch this impenetrable code in this series, so just call the one function from the other, since no other atom cares about them. Reviewed-by: Kenneth Graunke <[email protected]> Acked-by: Paul Berry <[email protected]>
* i965: Move the WM input sizes calculation to emit() time.Eric Anholt2011-10-291-1/+1
| | | | | | | It's used for program compile. Reviewed-by: Kenneth Graunke <[email protected]> Acked-by: Paul Berry <[email protected]>
* i965: Move program compile to emit() time.Eric Anholt2011-10-295-9/+13
| | | | | | | Only 4 other prepare() functions are left, which don't rely on this. Reviewed-by: Kenneth Graunke <[email protected]> Acked-by: Paul Berry <[email protected]>
* i965/gen4: Move CURBE offset calculation to emit() time.Eric Anholt2011-10-291-1/+1
| | | | | | | This is consumed by the unit state. Reviewed-by: Kenneth Graunke <[email protected]> Acked-by: Paul Berry <[email protected]>
* i965/gen4: Fold push constant prepare()/emit() together.Eric Anholt2011-10-291-13/+9
| | | | | | | | While other units need to know about our constant buffer offsets, nothing else cared about which particular BO other than the emit() half. Reviewed-by: Kenneth Graunke <[email protected]> Acked-by: Paul Berry <[email protected]>