summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/r200
AgeCommit message (Collapse)Author
2006-07-20Some structure renaming. Prefix vertex/fragment-related structs withBrian Paul
"gl_" to match other structs.
2006-07-03some minor simplifications (same as in r300 driver) since mesa's internally ↵Roland Scheidegger
used swizzle and writemask flags are identical to the bits used on the hardware, use a macro to error out if these assumptions are no longer true.
2006-07-03check if radeon_drm.h from libdrm is new enough, otherwise print an error to ↵Roland Scheidegger
make it easier to figure out why it won't compile...
2006-06-18no need to handle ARL in a special way, it's a generic scalar operation. ↵Tilman Sauerbeck
only tested on r300.
2006-06-10enable arb_vertex_program by default if drm is new enough. Do a fallback ↵Roland Scheidegger
when it's a nv_vp as there could be issues.
2006-06-08Improve slightly wrong CMP_SRCS test to avoid unencessary instructions. ↵Roland Scheidegger
Clean up the r200 vertex program code a bit.
2006-06-02implement arb_vertex_program in hw for r200. Code contains still some hacks, ↵Roland Scheidegger
generic attribs cause a fallback, but otherwise it seems to work quite well. Passes all glean vertProg1 tests with the exception of the degnerated LIT case (which is a hw limitation), as well as runs the r200 render path of doom3/quake4 (1.1 patch needed for quake4). The code is heavily borrowed from the r300 driver as vertex programs encoding is almost identical. arb_vertex_program is not yet announced by default and still needs to be enabled via driconf.
2006-06-02remove code dealing with drmMinor version < 6 since all radeon drivers ↵Roland Scheidegger
request at least drmMinor 6 anyway.
2006-06-01retry on EBUSY instead of EAGAIN in radeonWaitIrq (it appears this was the ↵Roland Scheidegger
intention as drm seems to never return EAGAIN) in all radeon drivers.
2006-05-27fix some whitespace in previous commitRoland Scheidegger
2006-05-27preparation for r200 hw vertex programs. Increase R200_CMD_BUF_SZ to 16k ↵Roland Scheidegger
instead of 8k (the reasons why it was exactly 8k are unclear). Add register defines, sanity code, fix potential issue with wrong statechange order when disabling fragment programs.
2006-05-08updates to dri drivers for recent stencil changesKeith Whitwell
2006-04-20Make most of the _mesa_noop_*() functions static.Brian Paul
Generate GL_INVALID_VALUE, not GL_INVALID_ENUM when glVertexAttrib is called with a bad index. Use _mesa_noop_vtxfmt_init() in DRI drivers to initialize vertex format struct.
2006-04-17Add .note.GNU-stack section to assembler files to avoid the default behaviorKristian Høgsberg
of requesting executable stacks.
2006-04-11More GLSL code:Michal Krol
- use macros to access and modify render inputs bit-field; - un-alias generic vertex attributes for ARB vertex calls; - use MAX_VERTEX_PROGRAM_ATTRIBS (NV code) or MAX_VERTEX_ATTRIBS (ARB code) in place of VERT_ATTRIB_MAX; - define VERT_ATTRIB_GENERIC0..15 for un-aliased vertex attributes for ARB_vertex_shader; - fix generic attribute index range check in arbprogparse.c; - interface GLSL varyings between vertex and fragment shader; - use 64-bit optimised bitset (bitset.h) for render inputs;
2006-04-09Destroy the GL context after driDestroyTextureHeap, because the driver'sEric Anholt
DestroyTexObj has a dependence on the glCtx and may segfault otherwise.
2006-04-06Set DRIVER_DEFINES instead of DEFINES to fix duplicate flags problemBrian Paul
2006-04-04switch to card_type rather than IsPCI, doesn't change any functionality yetDave Airlie
2006-03-31Dave Reveman's patch for GLX_MESA_copy_sub_buffer supportBrian Paul
2006-03-28fix missing *_STATECHANGE in *UpdateViewportOffset for radeon, r200 and r300 ↵Roland Scheidegger
(reported by Jim Duchek). Fix some potential problems with strict-aliasing with r200 and radeon drivers in *UpdateViewportOffset, *PolygonOffset and *UpdateWindow functions (some compiler warnings about strict-aliasing remain in the codegen vertex code, and there may be more problems unnoticed by the compiler).
2006-03-27make allow_large_textures 1 by default for radeon and r200, and consequently ↵Roland Scheidegger
enable all texture units by default on those cards (3 for radeon, 6 for r200). Fix the usually forgotten DRIVER_DATE accordingly.
2006-02-28No need to call *_FIREVERTICES twice.Aapo Tahkola
2006-02-16Reinstate vertex format after a rasterization fallback for both r200 and ↵Roland Scheidegger
radeon driver when a tcl fallback is active, fixes a blender issue with non-tcl hw (bug #5601)
2006-02-03replace the texture level hack used in radeon/r200 to allow larger textures ↵Roland Scheidegger
with different methods to calculate the announced maximum texture sizes. Default is still the same (that is, radeon/r200 default to not announce anything which might not fit, i830/i915 default to 1 texture must fit). Bug #5785.
2006-01-07cube maps on r100 require newer drm than the same feature on r200 ↵Roland Scheidegger
(regression from introducing unfied initialization). Fix wrong (so far unused) family assignment for r100 cards.
2005-11-19update some varsBrian Paul
2005-11-02First step of Radeon DRI unification:Eric Anholt
- Makes all three drivers use the same screen structure and setup code, with a few ifdefs for the separate compilation to deal with symbols not being available to all drivers and the fact that we have no mechanism for dealing with different config options for different chip families in the same driver. These issues should be dealt with later. - Introduces IS_R[123]00_CLASS(radeonScreenPtr) macro for code for taking different paths depending on the general class of chipset. - Adds many new R300-class PCI IDs, though not all those listed in radeon_driver.c.
2005-10-31fix problems found with gcc 2.96 (bug 4934)Brian Paul
2005-10-29Bug #4901: Correct secondary color emission when lighting is turned off, testedEric Anholt
with seccolor on rv200 and r200. Submitted by: sroland
2005-10-22disable yuv textures (GL_MESA_ycbcr_texture) on rv250 (hw bug, #2078). ↵Roland Scheidegger
Change the initialization to fail if an unknown pci id is detected, instead of accepting all values which are not r100-based radeons.
2005-10-19s/memcpy/_mesa_memcpy/, s/FREE/_mesa_free/Brian Paul
2005-10-18Add _mesa_exec_malloc() and _mesa_exec_free() for allocatingKeith Whitwell
executable memory. Based on Thomas Hellstrom's patch. TODO: glapi.c also needs this, but cannot access this code.
2005-10-18on r200, don't emit fog coords when fog isn't actually enabled. Fix bug with ↵Roland Scheidegger
vtxfmt not causing a fallback when fog coords are active.
2005-10-13fix potential bug when emitting elts with lots of componentsRoland Scheidegger
2005-10-11Minor driver cleanup. Remove unnecessery/unneded ↵Roland Scheidegger
radeon/r200AllocDmaRegionVerts function. No longer compile the radeon_compat stuff which was for drm 1.1 compatibility presumably but unused since about forever into the driver.
2005-10-08do not set format of the incoming vertices needed for fog_coord in the ↵Roland Scheidegger
generic state functions. This is done in the vtxfmt/hwtcl/swtcl pathes respectively.
2005-10-05fix problems with some texgen modes by putting the chip into LOCAL_VIEWER ↵Roland Scheidegger
mode for lighting (potentially causes slight misrenderings with the specular components of lights if the light model is not set for local viewer).
2005-10-05reverse accidentally commited part of last commit (makes it compile again...).Roland Scheidegger
2005-10-05enable point sizes larger than 1 (for aliased points only) by using the hw ↵Roland Scheidegger
point sprite primitive.
2005-09-14Instead of calling _mesa_ResizeBuffersMESA() in the Viewport function,Brian Paul
call driUpdateFramebufferSize() when window size/position changes.
2005-09-13Replace ctx->Driver.StencilOp/Func/Mask() functions withBrian Paul
ctx->Driver.Stencil*Separate() functions.
2005-09-12add complete support for ATI_fragment_shader for the r200. Most of the new ↵Roland Scheidegger
code is in the new file r200_fragshader.c. Reverse engeneered by Dave Airlie and me
2005-09-10add the new drm packets needed for ATI_fragment_shader to the sanity code of ↵Roland Scheidegger
the r200 and radeon driver
2005-09-10add reverse-engeneered register bits needed for ATI_fragment_shader (Dave ↵Roland Scheidegger
Airlie, me)
2005-09-09add _tnl_arb_vertex_program_stage to all drivers which already have ↵Roland Scheidegger
_tnl_vertex_program_stage. Fixes crashes when using vertex programs. Tested on r200 only (fix by Keith Whitwell)
2005-09-09add missing fallback string for ARB_vertex_programRoland Scheidegger
2005-09-09Fix wrong fallback bit being set by the tcl fallback caused by ↵Roland Scheidegger
ARB_vertex_program. Disable ARB_vertex_program by default - it is incredibly slow, and just plain doesn't work anyway (arbvptorus fails an assertion, arbvpmesh has bogus output)
2005-09-04Further clean-up and simplification of the span-related functions.Brian Paul
2005-09-04Add new void *addr and __DRIdrawablePrivate parameters toBrian Paul
driNewRenderbuffer().
2005-09-04Fix UpdatePageFlipping() function. Always call driFlipRenderbuffers()Brian Paul
with pfCurrentPage value, in case it's initially 1 instead of 0.