summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/intel/intel_context.c
AgeCommit message (Collapse)Author
2008-11-21i915: Don't overwrite i915's Viewport function from generic code.Eric Anholt
Instead, have i965 and i915 both call the generic function from their Viewport.
2008-10-28intel: Don't keep intel->pClipRects, and instead just calculate it when needed.Eric Anholt
This avoids issues with dereferencing stale cliprects around intel_draw_buffer time. Additionally, take advantage of cliprects staying constant for FBOs and DRI2, and emit cliprects in the batchbuffer instead of having to flush batch each time they change.
2008-10-10intel: GLSL 1.20 is broken in Mesa, so disable it in the i965 driverIan Romanick
2008-10-07i965: Add ARB_occlusion_query support.Eric Anholt
2008-10-03intel: Don't advertise unsupported extensions on pre-965 hardwareIan Romanick
Move GL_ARB_texture_non_power_of_two and GL_ATI_separate_stencil from the generic extension list to the 965-specific list. Neither extension is supported on i830-class hardware, and GL_ATI_separate_stencil is not supported on i915-class hardare. GL_ARB_texture_non_power_of_two is supported on i915-class hardare and is already in the i915-specific list.
2008-10-01Unify ARB_depth_texture and SGIX_depth_textureIan Romanick
The ARB extension is a superset of the older SGIX extension. Any hardware that can support the SGIX version can also support the ARB version. In Mesa, any driver that supports one also supports the other. This unification just simplifies some bits of code.
2008-09-29intel: Clean-up the extension string madness!Ian Romanick
- Sort extensions by ARB, then EXT, then vendor by name - Remove redundant (only one of GL_{ARB,EXT,NV}_texture_rectangle) or duplicate extension strings
2008-09-26intel: Fix a number of memory leaks on context destroy.Eric Anholt
2008-09-21mesa: improved driver query interfaceKeith Whitwell
Brought over from gallium-0.2 branch.
2008-09-18mesa: added "main/" prefix to includes, remove some -I paths from ↵Brian Paul
Makefile.template
2008-09-16intel: Destroy bufmgr in screen destroy, not context.Eric Anholt
Caused server crashes on second context creation since 7e0bbdcf033981282978554c2e68ce48b55aa291. Bug #17600.
2008-09-12intel: Add a width field to regions, and use it for making miptrees in TFP.Eric Anholt
Otherwise, we would use the pitch as width of the texture, and compiz would render the pitch padding on the right hand side.
2008-09-12intel: Don't segfault on TFP from a bad drawable.Eric Anholt
2008-09-12i965: Add support for G41 chipset which is another 4 series.Xiang, Haihao
2008-09-10intel: track move of bo_exec from drivers to bufmgr.Eric Anholt
2008-09-10intel: track bufmgr move to libdrm_intel and bufmgr_fake irq emit/wait change.Eric Anholt
2008-09-10intel: Move the bufmgr back to the screen.Eric Anholt
Mesa requires that we be able to share objects between contexts, which means that the objects need to be created by the same bufmgr, and the bufmgr internally requires pthread protection for thread safety. Rely on the bufmgr having appropriate locking.
2008-09-05intel: only enable occlusion query if the drm has defines.Dave Airlie
This interface has to be re-written to not be dumb and to work for multiple apps.
2008-09-03intel: Fix refcounting on depth buffer initialization in DRI2.Eric Anholt
(Reverts a change to work around the problem on 965).
2008-09-03intel: Fix a crash if dri2 is disabled.Xiang, Haihao
2008-08-29DRI2: Drop sarea, implement swap buffers in the X server.Kristian Høgsberg
2008-08-24Revert "Revert "Merge branch 'drm-gem'""Dave Airlie
This reverts commit 7c81124d7c4a4d1da9f48cbf7e82ab1a3a970a7a.
2008-08-24Revert "Merge branch 'drm-gem'"Dave Airlie
This reverts commit 53675e5c05c0598b7ea206d5c27dbcae786a2c03. Conflicts: src/mesa/drivers/dri/i965/brw_wm_surface_state.c
2008-08-20i965: Enable GL_ARB_fragment_program_shadow and fix key->shadowtex_mask. ↵Xiang, Haihao
(bug #16852, #16853)
2008-07-30intel-gem: Use new getparam to detect kernel GEM support.Eric Anholt
2008-07-25Merge branch 'master' into drm-gemIan Romanick
Conflicts: src/mesa/drivers/dri/common/dri_bufmgr.c src/mesa/drivers/dri/i965/brw_wm_surface_state.c
2008-07-18intel-gem: Bump driver dateIan Romanick
Bump the driver date and insert the string "GEM". When running tests, this make it much easier to know that the right driver is being used.
2008-07-16intel: Clean-up ARB_texture_env_crossbarIan Romanick
Enable support for ARB_texture_env_crossbar in the master extension list instead of in every single device-specific list.
2008-07-11drm-gem: Use new GEM ioctls for tiling state, and support new swizzle modes.Eric Anholt
2008-07-08i965: official name for GM45 chipsetXiang, Haihao
2008-07-02intel-gem: Emit an MI_FLUSH at glFlush() so frontbuffer rendering is flushed.Eric Anholt
We have something similar in the X Server that covers X Server rendering, this is the equivalent here for rendering to the front buffer. If we cared about avoiding this at glFlush time, we could only do this when some actual frontbuffer rendering had occurred. Bug #16392.
2008-07-01intel-gem: Move bit 6 x tiling swizzle to a driconf option, and add new mode.Eric Anholt
It turns out that it's not just deviceID dependent, and there's some additional undefined factor that determines the bit 6 swizzling. It's now controllable with swizzle_mode=[012] until we get a response on how to automatically detect.
2008-06-26intel: Replace sprinkled intel_batchbuffer_flush with MI_FLUSH or nothing.Eric Anholt
Most of these were to ensure that caches got synchronized between 2d (or meta) rendering and later use of the target as a source, such as for texture miptree setup. Those are replaced with intel_batchbuffer_emit_mi_flush(), which just drops an MI_FLUSH. Most of the remainder were to ensure that REFERENCES_CLIPRECTS batchbuffers got flushed before the lock was dropped. Those are now replaced by automatically flushing those when dropping the lock.
2008-06-24Merge commit 'origin/master' into drm-gemEric Anholt
2008-06-24intel: Same pixel function init for everyone now.Eric Anholt
2008-06-23i915: Accumulate the VB into a local buffer and subdata it in.Eric Anholt
This lets GEM use pwrite, for an additional 4% or so speedup.
2008-06-18Merge commit 'origin/master' into drm-gemEric Anholt
2008-06-18i965: add support for Intel 4 series chipsetsXiang, Haihao
2008-06-17[intel] Fix no_rast option on non-965.Eric Anholt
The no_rast fallback was getting partially overwritten by later TNL init, resulting in a segfault when things were in a mixed-up state.
2008-06-03[intel] Convert drivers to using libdrm bufmgr code.Eric Anholt
2008-05-23Remove stale comment about glFlush().Eric Anholt
We don't need an MI_FLUSH there, because everything that's been flushed in the batch will eventually hit the hardware.
2008-05-22Add back a mostly-correct glFinish for GEM and fake.Eric Anholt
The right solution would probably be keeping a list of regions which have been rendered to.
2008-05-07GEM: Make dri_emit_reloc take GEM domain flags instead of TTM flags.Eric Anholt
The GEM flags are much more descriptive for what we need. Since this makes bufmgr_fake rather device-specific, move it to the intel common directory. We've wanted to do device-specific stuff to it before.
2008-05-06[intel-GEM] Add tiling support to swrast.Keith Packard
Accessing tiled surfaces without using the fence registers requires that software deal with the address swizzling itself.
2008-05-02[intel] Fix build for GEM. TTM is now disabled, and fencing is gone.Eric Anholt
Fencing was used in two places: ensuring that we didn't get too many frames ahead of ourselves, and glFinish. glFinish will be satisfied by waiting on buffers like we would do for CPU access on them. The "don't get too far ahead" is now the responsibility of the execution manager (kernel).
2008-03-31DRI interface changes and DRI2 direct rendering support.Kristian Høgsberg
Add DRI2 direct rendering support to libGL and add DRI2 client side protocol code. Extend the GLX 1.3 create drawable functions in glx_pbuffer.c to call into the DRI driver when possible. Introduce __DRIconfig, opaque struct that represents a DRI driver configuration. Get's rid of the open coded __GLcontextModes in the DRI driver interface and the context modes create and destroy functions that the loader was requires to provide. glcore.h is no longer part of the DRI driver interface. The DRI config is GL binding agnostic, that is, not specific to GLX, EGL or other bindings. The core API is now also an extension, and the driver exports a list of extensions as the symbol __driDriverExtensions, which the loader must dlsym() for. The list of extension will always include the DRI core extension, which allows creating and manipulating DRI screens, drawables and contexts. The DRI legacy extension, when available, provides alternative entry points for creating the DRI objects that work with the XF86DRI infrastructure. Change DRI2 client code to not use drm drawables or contexts. We never used drm_drawable_t's and the only use for drm_context_t was as a unique identifier when taking the lock. We now just allocate a unique lock ID out of the DRILock sarea block. Once we get rid of the lock entirely, we can drop this hack. Change the interface between dri_util.c and the drivers, so that the drivers now export the DriverAPI struct as driDriverAPI instead of the InitScreen entry point. This lets us avoid dlsym()'ing for the DRI2 init screen function to see if DRI2 is supported by the driver.
2008-03-25intel: fix the issue "VBO: Cannot allocate memory for a BO" onXiang, Haihao
965 after merging intel_context.c from i915 and i965. fix bug# 15152.
2008-03-19 [i915] arb point sprite only support in i965Zou Nan hai
2008-03-09DRI2: Pass the context instead of the screen to __dri2ParseEvents().Kristian Høgsberg
Makes a lot more sense, since the screen is always implicit in the DRI drawable, but it may not be possible to track down a context from just a drawable.
2008-03-07[intel] Only enable GL_EXT_texture_sRGB on i965.Kristian Høgsberg
Fixes #14799.