summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/radeon/radeon_context.c
AgeCommit message (Collapse)Author
2009-06-25radeon: fix hw texture limitsRoland Scheidegger
still always enable max, but the right values this time. More work should probably be done for saner limits without mm, and/or dri conf option allow_large_textures (which is ignored) removed. 3D limit on r100 is pretty arbitrary as still handled by swrast anyway. Also fix r300 limits (except 3d I've no idea what the max is anyway so keep using mesa default).
2009-06-25radeon/r200: add some hw texture limitsDave Airlie
2009-06-19radeons: use dp4 for position invariant vertex programsRoland Scheidegger
Fixes #22181. R200 requires this since DP4 is used in hw tnl mode. R300 prefers it (should be faster due to no instruction dependencies), but both methods should be correct (when sw tcl is used though, MUL/MAD might be faster). Probably doesn't make much difference for R100 since vertex progs are executed in software anyway, but let's just keep it the same there too.
2009-05-20radeon: set max texture sizeJerome Glisse
This still need some work to actually report somethings reasonable if no memory manager is available.
2009-04-02radeon/r200/r300: collapse context destruction down to a common path.Dave Airlie
Context destruction was nearly the same over all the drivers, so collapse it down.
2009-03-24radeon/r200/r300: set the texture depth correctly for DRI2Dave Airlie
2009-03-23raedon/r200/r300: mega-FBO commits.Dave Airlie
Re work depth issues. Do a lot more FBO abstactions fixup depth/stencil buffer interactions
2009-03-21radeon/r200: oops make correct fbo init callsDave Airlie
2009-03-21radeon/r200: add fbo initDave Airlie
2009-03-03radeon: refactor framebuffer code like intelDave Airlie
this is a step towards fbos and should fix pageflipping, but I think the first flip seems broken.
2009-02-17radeon/r200: drop legacy texture heap codeDave Airlie
2009-02-17radeon/r200: fixup texturing aging callsDave Airlie
2009-02-13Merge remote branch 'origin/master' into radeon-rewriteDave Airlie
Conflicts: configure.ac src/mesa/drivers/dri/r200/r200_context.c src/mesa/drivers/dri/r300/r300_render.c
2009-02-12radeon: renaming and headers cleanupDave Airlie
2009-02-12radeon/r200/r300: another big merge upheavel.Dave Airlie
This merges lots of the hw state atom emission and firevertices code. it also removes a lot of the extra radeon crap from r300 and merge scissor
2009-02-11radeon: fix span init needs more workDave Airlie
2009-02-11radeon/r200/r300: merge span code into single shared fileDave Airlie
2009-02-06r100: fixup radeon so gears seems to workDave Airlie
2009-02-04radeon: make compile again.Dave Airlie
Not tested but ripped out lots of stuff unneeded anymore time to test later
2009-01-29radeon: remove even more common codeDave Airlie
2009-01-29radeon/r200/r300: bring back old style DMA buffer on top of BOs.Dave Airlie
this gets back a lot of the lots speed in gears on r500 at least I also fixed the legacy bufmgr to deal when the dma space fills up
2009-01-28Make GL_ARB_draw_buffers mandatoryIan Romanick
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2009-01-28Make GL_ARB_vertex_buffer_object mandatoryIan Romanick
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2009-01-28Make GL_ARB_multisample mandatoryIan Romanick
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2009-01-28Make GL_ARB_texture_compression mandatoryIan Romanick
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2009-01-20r200: clear is working at least - not much elseDave Airlie
2009-01-14radeon: move debug symbol add DRI2Dave Airlie
2009-01-14radeon/r200/r300: consolidate swap buffersDave Airlie
2009-01-14radeon/r200/r300: consolidate the buffer copy/flip code into one placeDave Airlie
2009-01-14radeon/r200/r300: attempt to move lock to common codeDave Airlie
2009-01-14radeon/r200/r300: initial attempt to convert to common context codeDave Airlie
2008-09-21Remove CVS keywords.Keith Whitwell
Cherry-picked from gallium-0.1 Conflicts: src/glu/sgi/libnurbs/interface/bezierEval.h src/glu/sgi/libnurbs/interface/bezierPatch.h src/glu/sgi/libnurbs/interface/bezierPatchMesh.h src/glu/sgi/libnurbs/internals/dataTransform.h src/glu/sgi/libnurbs/internals/displaymode.h src/glu/sgi/libnurbs/internals/sorter.h src/glu/sgi/libnurbs/nurbtess/definitions.h src/glu/sgi/libnurbs/nurbtess/directedLine.h src/glu/sgi/libnurbs/nurbtess/gridWrap.h src/glu/sgi/libnurbs/nurbtess/monoChain.h src/glu/sgi/libnurbs/nurbtess/monoPolyPart.h src/glu/sgi/libnurbs/nurbtess/monoTriangulation.h src/glu/sgi/libnurbs/nurbtess/partitionX.h src/glu/sgi/libnurbs/nurbtess/partitionY.h src/glu/sgi/libnurbs/nurbtess/polyDBG.h src/glu/sgi/libnurbs/nurbtess/polyUtil.h src/glu/sgi/libnurbs/nurbtess/primitiveStream.h src/glu/sgi/libnurbs/nurbtess/quicksort.h src/glu/sgi/libnurbs/nurbtess/rectBlock.h src/glu/sgi/libnurbs/nurbtess/sampleComp.h src/glu/sgi/libnurbs/nurbtess/sampleCompBot.h src/glu/sgi/libnurbs/nurbtess/sampleCompRight.h src/glu/sgi/libnurbs/nurbtess/sampleCompTop.h src/glu/sgi/libnurbs/nurbtess/sampleMonoPoly.h src/glu/sgi/libnurbs/nurbtess/sampledLine.h src/glu/sgi/libnurbs/nurbtess/searchTree.h src/glu/sgi/libnurbs/nurbtess/zlassert.h src/glu/sgi/libutil/error.c src/glu/sgi/libutil/glue.c src/glu/sgi/libutil/gluint.h src/glu/sgi/libutil/project.c src/glu/sgi/libutil/registry.c src/glx/x11/glxclient.h src/glx/x11/glxext.c src/mesa/drivers/dri/ffb/ffb_dd.h src/mesa/drivers/dri/ffb/ffb_points.h src/mesa/drivers/dri/gamma/gamma_context.h src/mesa/drivers/dri/gamma/gamma_macros.h src/mesa/drivers/dri/i810/i810context.h src/mesa/drivers/dri/r128/r128_dd.h src/mesa/drivers/dri/tdfx/tdfx_dd.h
2008-02-29Use __DRIextension mechanism providing loader functionality to the driver.Kristian Høgsberg
Instead of passing in a fixed struct, the loader now passes in a list of __DRIextension structs, to advertise the functionality it can provide to the driver. Each extension is individually versioned and can be extended or phased out as the interface develops.
2007-10-30More vblank cleanups.Michel Dänzer
* Fix crash at context creation in most drivers supporting vblank. * Don't pass vblank sequence or flags to functions that get passed the drawable private already. * Attempt to initialize vblank related drawable private fields just once per drawable. May need more work in some drivers.
2007-10-29Refactor and fix core vblank supportJesse Barnes
Consolidate support for synchronizing to and retrieving vblank counters. Also fix the core vblank code to return monotonic MSC counters, which are required by some GLX extensions. Adding support for multiple pipes to a low level driver is fairly easy, the Intel 965 driver provides simple example code (see intel_buffers.c:intelWindowMoved()). The new code bumps the media stream counter extension version to 2 and adds a new getDrawableMSC callback. This callback takes a drawablePrivate pointer, which is used to calculate the MSC value seen by clients based on the actual vblank counter(s) returned from the kernel. The new drawable private fields are as follows: - vblSeq - used for tracking vblank counts for buffer swapping - vblFlags - flags (e.g. current pipe), updated by low level driver - msc_base - MSC counter from the last time the current pipe changed - vblank_base - kernel DRM vblank counter from the last time the pipe changed Using the above variables, the core vblank code (in vblank.c) can calculate a monotonic MSC value. The low level DRI drivers are responsible for updating the current pipe (by setting VBLANK_FLAG_SECONDARY for example in vblFlags) along with msc_base and vblank_base whenever the pipe associated with a given drawable changes (again, see intelWindowMoved for an example of this). Drivers should fill in the GetDrawableMSC DriverAPIRec field to point to driDrawableGetMSC32 and add code for pipe switching as outlined above to fully support the new scheme.
2007-10-10Replace open-coded major, minor, and patch version fields with __DRIversionRec.Kristian Høgsberg
2007-09-11Fix-up #includes to remove some -I options.Brian
eg: #include "shader/program.h" and remove -I$(TOP)/src/mesa/program
2007-05-12bring over recent radeonMakeCurrent fixes for r300 to radeon/r200Roland Scheidegger
2007-03-13enable ARB_vertex_buffer_object for more dri driversRoland Scheidegger
ARB_vertex_buffer_object looks like a useful extension even for old chips. The drivers should not need any code to be able to use this extension since they just use mesa's vbo code anyway. Newly enabled for i810, mach64, mga, r128, radeon, savage, sis and unichrome.
2007-03-12radeon: Adapt cliprect fixes from r300.Alan Swanson
2007-01-16Merge branch 'master' of git+ssh://keithw@git.freedesktop.org/git/mesa/mesa ↵Keith Whitwell
into vbo-0.2 Conflicts: src/mesa/array_cache/sources src/mesa/drivers/dri/i965/brw_context.c src/mesa/drivers/dri/i965/brw_draw.c src/mesa/drivers/dri/i965/brw_fallback.c src/mesa/drivers/dri/i965/brw_vs_emit.c src/mesa/drivers/dri/i965/brw_vs_tnl.c src/mesa/drivers/dri/mach64/mach64_context.c src/mesa/main/extensions.c src/mesa/main/getstring.c src/mesa/tnl/sources src/mesa/tnl/t_save_api.c src/mesa/tnl/t_save_playback.c src/mesa/tnl/t_vtx_api.c src/mesa/tnl/t_vtx_exec.c src/mesa/vbo/vbo_attrib.h src/mesa/vbo/vbo_exec_api.c src/mesa/vbo/vbo_save_api.c src/mesa/vbo/vbo_save_draw.c
2006-11-09Remove unnecessary setting of GetBufferSize to NULL.Ian Romanick
2006-10-31remove vtxfmt code, switch over to vboKeith Whitwell
2006-10-18Enable GLX_SGI_make_current_read for radeon.Ian Romanick
Added code to track the drawable bound to the context for reading. In addition, when a drawable is initially bound (for reading or drawing) or when the size of the drawable changes, update the size of the framebuffer object that back the drawable (for software fallbacks). Deprecate the old GetBufferSize interface. Bump the driver date. These changes were tested with wincopy on both direct rendering and accelerated indirect rendering (AIGLX).
2006-10-15Remove Driver.ResizeBuffers = _mesa_resize_framebuffer lines.Brian Paul
This is already done by the preceeding call to _mesa_init_driver_functions() which plugs in default functions like that.
2006-09-28Make driDrawableInitVBlank() initialize the sequence number.Michel Dänzer
This prevents the first wait for vertical blank from timing out when the X server has been running for a long time.
2006-09-10remove code to deal with non-normalized texture coordinates for tex rect ↵Roland Scheidegger
targets (swtcl tex coord translation stage, tcl tex matrix adaption) and use the chip's native handling of such coords instead (!!!). Seems noone noticed those bits in the se_coord_fmt reg, even though it works fairly similar to r200 (except it's set per-unit and always active, so only enable it for texture rectangles).
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-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