summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/r300
AgeCommit message (Collapse)Author
2010-07-25r300g: implement D24X8 texture sampling for r3xx-r4xxMarek Olšák
Because the hw can't sample it, I reinterpret the format as G16R16 and sample the G component. This gives 16 bits of precision, which should be enough for depth texturing (surprisingly, the sampled values are exactly the same as in D16 textures). This also enables EXT_packed_depth_stencil on those old chipsets, finally.
2010-07-25r300g: make sure a texture is large enough for the CBZB clearMarek Olšák
The number of macrotiles in the Y direction must be even, otherwise memory corruption may happen (e.g. broken fonts). Basically, if we get a buffer in resource_from_handle, we can determine from the buffer size whether it's safe to use the CBZB clear or not.
2010-07-25r300g: do not use TXPITCH_EN if the width is POT and the height is NPOTMarek Olšák
2010-07-25r300g: do not use TXPITCH_EN for power-of-two textures from the DDXMarek Olšák
We were using TXPITCH_EN for textures from the DDX since ever, for nothing.
2010-07-25r300g: cleanup texture creation codeMarek Olšák
This decouples initializing a texture layout/miptree description from an actual texture creation, it also partially unifies texture_create and texture_from_handle. r300_texture inherits r300_texture_desc, which inherits u_resource. The CBZB clear criteria are moved to r300_texture_desc::cbzb_allowed[level]. And other minor cleanups.
2010-07-25r300g: reject resources from handles which are not large enoughMarek Olšák
The driver gets a buffer and its size in resource_from_handle. It computes the required minimum buffer size from given texture properties, and compares the two sizes. This is to early detect DDX bugs.
2010-07-25r300g: cleanup texture debug loggingMarek Olšák
2010-07-25r300g: do not align texture height to 2^n for 1D and 2D non-mipmapped texturesMarek Olšák
I don't remember why the alignment was there, but it seems to be no longer needed. I guess it was a dirty fix for some other bug.
2010-07-21r300g: implement depth clampMarek Olšák
Depth clamping seems to be implicit if clipping is disabled. It's not perfect, but it's good enough for wine and passes the corresponding piglit tests.
2010-07-21r300g: cleanup clip state emissionMarek Olšák
2010-07-19r300g: fix possible crash in destroy_contextMarek Olšák
The problem is destroy_context is almost NEVER called. The only test for destroy_context I know is compiz. Reported by Vinson Lee. FDO bug #29150.
2010-07-19r300g: fix typoMarek Olšák
2010-07-19r300g: use memory pools for buffer_create and get_transferMarek Olšák
The improvement in Tremulous: 68.9 fps -> 71.1 fps.
2010-07-18r300g: u_upload optimisationDave Airlie
fix vb/ib uploads
2010-07-17r300g: final fix for r3xx constant buffer emissionMarek Olšák
2010-07-17r300g: fix typo in r3xx constant buffer emissionMarek Olšák
Ooops.
2010-07-17r300g: fix constant buffer emission on r3xxMarek Olšák
FDO bug #29128.
2010-07-16r300g: Remove unnecessary header.Vinson Lee
2010-07-16r300g: inline winsys_buffer_destroyMarek Olšák
2010-07-16r300g: do not make copies of constant buffers, emit them directlyMarek Olšák
2010-07-16r300g: rebuild winsys and command submission to support multiple contextsMarek Olšák
2010-07-13r300g: do not advertise half_float_vertex on rv3x0Marek Olšák
rv3x0 can't do it.
2010-07-13r300g: extend and clean up debug loggingMarek Olšák
2010-07-13r300g/swtcl: do not emit texcoords if they are also stuffed in GAMarek Olšák
2010-07-13r300g: rework the draw_rectangle hookMarek Olšák
It is a lot simplier, cleaner, and more stable now.
2010-07-12r300g: Remove unnecessary header.Vinson Lee
2010-07-12r300g: implement fast color clearMarek Olšák
An initial implementation made by Dave Airlie. For it to be used, a color-only clear must be invoked and exactly one point-sampled render target must be set. The render target must be macrotiled (for us to overcome alignment issues) and bpp must be either 16 or 32. I can't see a difference in performance. :( Conflicts: src/gallium/drivers/r300/r300_blit.c
2010-07-12r300g: clear and copy a resource with a rectangular point spriteMarek Olšák
With an ordinary quad, the pixels on the main diagonal are computed and stored twice, which is somewhat inefficient and might not work well with specialized clear codepaths.
2010-07-12r300g: do not use immediate mode if there is a VBO in VRAMMarek Olšák
And other minor fixups.
2010-07-12r300g: ugly fix of a hardlock in the cubestorm xscreensaverMarek Olšák
FDO bug #28563.
2010-07-09r300g: allow the GTT domain for samplersMarek Olšák
This fixes sluggishness in vdrift.
2010-07-09r300g/swtcl: fix out-of-bounds writeMarek Olšák
This is a typo fix, the generated code should be the same.
2010-07-09r300g: fix texturing with negative lod biasMarek Olšák
This should fix FDO bugs #28437 and #28625.
2010-07-08r300g: store/return the stride for winsys_handle in winsysMarek Olšák
2010-07-08r300g: fix transfering compressed texturesMarek Olšák
2010-07-08r300g: add a function for marking framebuffer atoms as dirtyMarek Olšák
2010-07-08r300g: minor fixupsMarek Olšák
2010-07-06r300/compiler: Implement KILP opcode.Tom Stellard
Signed-off-by: Marek Olšák <maraeo@gmail.com>
2010-07-03r300g: fix warningsMarek Olšák
2010-07-03r300/compiler: Use hardware flow control instructions for loops on r500.Tom Stellard
2010-07-03r300g: Fix typo in r300_reg.hTom Stellard
2010-06-30r300g: add workaround for multiple contextsMarek Olšák
2010-06-30r300g: move one flush from winsys to the contextMarek Olšák
This flush happens when changing the tiling flags, and it should really be done in the context. I hope this fixes FDO bug #28630.
2010-06-28mesa: initial support for ARB_geometry_shader4Zack Rusin
laying down the foundation for everything and implementing most of the stuff. linking, gl_VerticesIn and multidimensional inputs are left.
2010-06-29util: reference surfaces and sampler views in blitter when saving themMarek Olšák
Ooops. This should possibly fix some bugs...
2010-06-28Merge branch 'gallium-drm-driver-drescriptor'Jakob Bornecrantz
Conflicts: src/gallium/state_trackers/egl/x11/native_dri2.c src/gallium/state_trackers/egl/x11/native_x11.c src/gallium/state_trackers/egl/x11/native_x11.h src/gallium/state_trackers/xorg/xorg_driver.c src/gallium/winsys/radeon/drm/radeon_drm.c
2010-06-27r300g: fix a compile error on non-debug buildsMarek Olšák
2010-06-27r300g: separate the hyperz state and pipelined FB regs out of the FB stateMarek Olšák
2010-06-27r300g: release referenced objects in destroy_contextMarek Olšák
2010-06-27r300g: reference surfaces in set_framebuffer_stateMarek Olšák