summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/i915/intel_context.c
AgeCommit message (Collapse)Author
2008-01-03 fix fd.o bug #13761Zou Nan hai
MRD computation is now changed in mesa core
2007-12-20[intel] Fix and reenable (software) SGIS_generate_mipmapEric Anholt
The core problem was that _mesa_generate_mipmap was not respecting RowStride of the source image. Additionally, the intel private data associated with the images (level and face) was not being initialized for the _mesa_generate_mipmap-generated images.
2007-12-18[915] Free dri_bufmgr after mesa context data.Eric Anholt
Fixes a crash when buffer objects are left around until context destroy.
2007-12-13[intel] Enable INTEL_DEBUG=bufmgr output in TTM mode as well as classic.Eric Anholt
2007-12-12[intel] Move bufmgr back to context instead of screen, fixing glthreads.Eric Anholt
Putting the bufmgr in the screen is not thread-safe since the emit_reloc changes. It also led to a significant performance hit from pthread usage for the attempted thread-safety (up to 12% of a cpu spent on refcounting protection in single-threaded 965). The motivation had been to allow multi-context bufmgr sharing in classic mode, but it wasn't worth the cost.
2007-11-29[i915] Make INTEL_DEBUG=bufmgr actually do things for bufmgr_fake.Eric Anholt
2007-11-16[i915] Add INTEL_DEBUG=sync debug flag to wait for fences after making them.Eric Anholt
2007-11-09[i915] Remove old frontbuffer rotation hack.Eric Anholt
This was replaced in previous releases of xserver/dri/libGL by reporting the damage to the frontbuffer so that the server and driver could handle it appropriately.
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-10Move swap_interval to new extension mechanism.Kristian Høgsberg
2007-09-24Remove leftover code for i915_texprog.c noticed in crossbar review.Eric Anholt
2007-09-24Move i915tex driver into place as just i915.Eric Anholt
2007-09-24Remove the old i915 driver now that i915tex works without TTM.Eric Anholt
2007-09-11intel: disentangle planes & pipesJesse Barnes
This is the Mesa portion of the pipe & plane disambiguation. Mesa needs to use the new assumptions about plane vs. pipe mappings and should use the new SAREA field names to avoid confusion.
2007-06-05Add PCI IDs for the G33, Q33, and Q35 chipsets.Wang Zhenyu
2007-05-31i915: Add support for 945GME chipWang Zhenyu
2007-05-22Replace initInitState() with _mesa_init_driver_state().Brian
2007-04-16remove _tnl_arb_vertex_program_stageBrian
2007-04-10i915: Bring test for vsync to pipe B in line with i915tex.Michel Dänzer
2007-04-05include points.h to fix warningsBrian
2007-04-04i810/i915/i915tex: reinitialize the context point stateXiang, Haihao
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-02remove GetBufferSize = NULL; assignmentBrian Paul
2006-10-30switch several dri drivers overKeith Whitwell
2006-10-17remove obsolete intelBufferSize(), bump driver dateBrian Paul
2006-10-16Updates to intelWindowMoved():Brian Paul
Only need to call _mesa_resize_framebuffer() when we've detected a window size change. Set the drawFb->Initalized flag to GL_TRUE to avoid obsolete Driver.GetBufferSize/ResizeBuffer calls in the Mesa code.
2006-10-15minor clean-up: s/intel->driDrawable/dPriv/Brian Paul
2006-10-15Remove a bunch of "ctx->Driver.function = _swrast_Function" lines sinceBrian Paul
default/fallback functions are already plugged in by the call to _mesa_init_driver_functions().
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-28Synchronize drawable to the pipe where the bigger part can be visible.Michel Dänzer
This requires the DDX driver to set the corresponding fields in the SAREA, so check its minor version.
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-01fix the presumably broken check for the allow_large_textures and vblank_mode ↵Roland Scheidegger
options (same as bug 8042).
2006-08-28remove unused varBrian Paul
2006-08-28fix the check for force_s3tc_enable (bug 8042)Brian Paul
2006-08-18Fix writemasks on texture arb fp instructions.Alan Hourihane
Cleanup invarient state emission.
2006-06-15Call _mesa_resize_framebuffer() within intelWindowMoved(). FixesKeith Whitwell
googleearth glitches.
2006-06-12fire vertices before context destruction.Alan Hourihane
2006-04-01Call driUpdateFramebufferSize when we've found an updated DRI drawable stamp,Eric Anholt
like other drivers. Failure to do so resulted in incorrect buffer sizes for resized windows.
2006-03-31Dave Reveman's patch for GLX_MESA_copy_sub_buffer supportBrian Paul
2006-02-06add vblank support to i915 driverDave Airlie
2006-01-23Add Intel 945GM supportAlan Hourihane
Add rotation support (Tungsten Graphics)
2005-12-30recalculate state on drawable changesKeith Whitwell
2005-09-13Replace ctx->Driver.StencilOp/Func/Mask() functions withBrian Paul
ctx->Driver.Stencil*Separate() functions.
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-07-28Major rip-up of internal function insertion interface. The oldIan Romanick
_glapi_add_entrypoint has been replaced by a new routine called _glapi_add_dispatch. This new routine dynamically assignes dispatch offsets to functions added. This allows IHVs to add support for extension functions that do not have assigned dispatch offsets. It also means that a driver has no idea what offset will be assigned to a function. The vast majority of the changes in this commit account for that. An additional table, driDispatchRemapTable, is added. Functions not in the Linux OpenGL ABI (i.e., anything not in GL 1.2 + ARB_multitexture) has a fixed offset in this new table. The entry in this table specifies the offset in of the function in the real dispatch table. The internal interface was also bumped from version 20050725 to 20050727. This has been tested with various programs in progs/demos on: radeon (Radeon Mobility M6) r128 (Rage 128 Pro) mga (G400)
2005-06-30Replace add_newer_entrypoints (src/mesa/main/context.c) withIan Romanick
device-specific code. A new Python script (src/mesa/glapi/extension_helper.py) generates a list of all entry-points for all known extensions. Each driver the selects only the extensions that it needs and enables the via either driInitExtensions or driInitSingleExtension. This code has been compile-tested on a drivers, but has only been run-tested on mga and i915 (on i830 hardware). These changes were discussed at length on the mesa3d-dev mailing list. http://marc.theaimsgroup.com/?t=111947074700001&r=1&w=2
2005-05-31Add Intel(R) 945G support (Keith Whitwell, Tungsten Graphics)Alan Hourihane
2005-05-09check for null DrawBuffer valuesKeith Whitwell
2005-05-04Major check-in of changes for GL_EXT_framebuffer_object extension.Brian Paul
Main driver impacts: - new code for creating the Mesa GLframebuffer - new span/pixel read/write code Some drivers not yet updated/tested.
2005-01-07Revert some accidental cross-merge changes. Remove i915GetString. MigrateIan Romanick
a couple extensions that appeared in both device-specific card_extensions strings to the shared one.