summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/intel/intel_context.c
AgeCommit message (Collapse)Author
2010-10-13Rename GLvisual and __GLcontextModes to struct gl_configKristian Høgsberg
2010-09-30i965: Update renderer strings for sandybridgeAdam Jackson
Signed-off-by: Adam Jackson <ajax@redhat.com>
2010-09-28i965: only allow SIMD8 kernel on sandybridge nowZhenyu Wang
Until we fixed SIMD16 kernel, force to SIMD8 on sandybridge now.
2010-09-20Fix typos in comments and debug output strings.Timo Wiren
Bug #30208.
2010-09-08dri: Unset current context and dispatch table when unbindingKristian Høgsberg
Otherwise, when we switch to an indirect glx context and then back, it looks like we're still current. https://bugs.freedesktop.org/show_bug.cgi?id=29977#c7 Signed-off-by: Kristian Høgsberg <krh@bitplanet.net>
2010-08-25intel: Take an intel_screen pointer in intel_alloc_region_* functionsKristian Høgsberg
2010-08-23intel: Add support for MAX_SAMPLES=1 EXT_framebuffer_multisample.Eric Anholt
The spec specifically sets the minimum MAX_SAMPLES at 1 to allow exposing the extension on all implementations, so do so.
2010-07-30intel: Add missing header to intel_context.c.Vinson Lee
Fixes "implicit declaration of function _mesa_get_incomplete_framebuffer" warning.
2010-07-28intel: Implement EGL_KHR_surfaceless extensionKristian Høgsberg
2010-07-27intel: Remove unused intel/server filesKristian Høgsberg
2010-06-14intel: Remove long-dead comment about releasing texture heaps.Eric Anholt
BOs are stored in the bufmgr, which is freed as part of the screen structure.
2010-06-08intel: Change dri_bo_* to drm_intel_bo* to consistently use new API.Eric Anholt
The slightly less mechanical change of converting the emit_reloc calls will follow.
2010-06-04i915: Don't use XRGB8888 on 830 and 845.Eric Anholt
The support for XRGB8888 appeared in the 855 and 865, and this format is reserved on 830/845. This should fix a regression from b4a6169412819cc3a027c6a118f0537911145a30 that caused hangs in etracer on 845s. Bug #26557.
2010-05-23i965: Add support for all 8 possible ARB_draw_buffers in Mesa.Eric Anholt
We should be able to do 16, but are limited by Mesa's static buffer allocations.
2010-05-20intel: Throttle after doing copyregion/swapbuffers round tripKristian Høgsberg
Before we would throttle in the flush callback prior to round-tripping to the server to do copyregion or swapbuffer. Now, instead just note that we need to throttle and do it in intel_prepare_render(), which will be called after receiving the response from the server but before we start rendering the next frame. Even if the server also throttles us in swapbuffer, this just makes the throttling a no-op when we hit intel_prepare_render(). With that we can drop the using_dri2_swapbuffers hack and just always throttle.
2010-05-17i965: Add SF program disasm under INTEL_DEBUG=sf.Eric Anholt
2010-05-17intel: Call intel_draw_buffer() again after _mesa_make_current()Kristian Høgsberg
The initial call to intel_draw_buffers() happens when intel->ctx.DrawBuffer is still NULL. Call it again after calling _mesa_make_current(). https://bugs.freedesktop.org/show_bug.cgi?id=28112
2010-05-14i965: Add program dumping for INTEL_DEBUG=gs.Eric Anholt
2010-05-14i965: Support INTEL_DEBUG=clip to dump the clip program.Eric Anholt
2010-05-13intel: Don't update window system renderbuffers on TexImage.Eric Anholt
While sometimes rendering occurs in the form of blits for TexImage, it doesn't interact with the window system renderbuffers, so skip it.
2010-05-11intel: Drop viewport hack when we canKristian Høgsberg
2010-05-10intel: Also flush front buffer in glFinish()Kristian Høgsberg
2010-05-10intel: Drop intelFlush()Kristian Høgsberg
Now that intel_flush() deosn't use the needs_mi_flush argument, we can finally drop one of the two flush functions.
2010-05-10intel: Only flush fake front buffer on API level glFlush()Kristian Høgsberg
Without this patch, any old intel_flush() call will cause a round trip to the server and do a copy from fake to real front. We only actually guarantee that frontbuffer results show up when glFlush() ia called, so move the flushing to intel_glFlush(). We also need to flush fake to front before getting new buffers, but we just handle that manually.
2010-05-10intel: Mark frontbuffer dirty in intel_prepare_render()Kristian Høgsberg
Now that we have intel_prepare_render() in place, we can use it to mark the front buffer dirty if we're rendering to the front buffer once we get there.
2010-05-04i965: When an RB gets a new region, clear the old from the state cache.Eric Anholt
This prevents memory usage explosion in blender due to the state cache hanging on to old fake frontbuffer regions. Sigh at blender still using frontbuffer rendering. Bug #24119.
2010-04-28intel: Only register ES2 extensions for ES2 contextsKristian Høgsberg
2010-04-28dri: Add DRI entrypoints to create a context for a given APIKristian Høgsberg
2010-04-21intel: Clean up chipset name and gen num for IronlakeZhenyu Wang
Rename old IGDNG to Ironlake, and set 'gen' number for Ironlake as 5, so tracking the features with generation num instead of special is_ironlake flag. Reviewed-by: Eric Anholt <eric@anholt.net> Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
2010-03-30intel: Bump intel driver date to later than the date on the 7.8 branchIan Romanick
2010-03-30intel: Remove redundant fields from struct intel_contextKristian Høgsberg
All these pointers are in the __DRIcontext struct, which we point to.
2010-03-22i965: Add INTEL_DEBUG=glsl_force to force brw_wm_glsl.c.Eric Anholt
I keep finding the desire to force this path to debug it instead of cooking up goofy-looking testcases to do so.
2010-03-17intel: Call _mesa_make_current() after getting initial buffersKristian Høgsberg
The default viewport is the window rectangle, which is set up by _mesa_make_current(). To be able to do that we need to get the window dimension (and buffers) first, so we have to call intel_prepare_render() before we can call into _mesa_make_current(). Fixes #26676 and #26678.
2010-03-04intel: Remove non-kernel-exec-fencing support.Eric Anholt
Shaves 60k off the driver from removing the broken spans code. This means we now require 2.6.29, which seems fair given that it's a year old and we've removed support for non-KMS already in the last release of 2D.
2010-03-02intel: passs correct context type to intel_prepare_render() callBrian Paul
2010-02-25i965: Fix up some Sandybridge define checks for the structure rebase.Eric Anholt
2010-02-25intel: Start adding defines and some bits for sandybridge bringup.Eric Anholt
2010-02-23intel: Call intel_prepare_render() in intelMakeCurrent()Kristian Høgsberg
This restores old behaviour, where we end up doing a DRI2GetBuffers() call from intelMakeCurrent(). The idea was that we could do this lazily, just before we start rendering. However, if we don't do the DRI2GetBuffers() round-trip we don't get the drawable size and higher level mesa ends up short-cutting a number of GL calls, such as glClear().
2010-02-22intel: Check that we have a bufmgr or bail out when initializing the context.Chris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2010-02-19intel: Set buffer stamp before getting new buffersKristian Høgsberg
This way, if we get an invalidate as we update the buffers, we don't clobber the drawable stamp and ignore the invalidate. Pointed-out-by: Francisco Jerez
2010-02-19Replace the _mesa_*printf() wrappers with the plain libc versionsKristian Høgsberg
2010-02-17intel: Implement the DRI2 invalidate function properlyKristian Høgsberg
This uses a stamp mechanisms to mark the DRI drawable as invalid. Instead of immediately updating the buffers we just bump the drawable stamp and call out to DRI2GetBuffers "later". "Later" used to be at LOCK_HARDWARE time, and this patch brings back callouts at the points where we used to call LOCK_HARDWARE. A new function, intel_prepare_render(), is called where we used to call LOCK_HARDWARE, and if the buffers are invalid, we call out to DRI2GetBuffers there. This lets us invalidate buffers only when notified instead of on every glViewport() call. If the loader calls the DRI invalidate entrypoint, we disable viewport triggered buffer invalidation. Additionally, we can clean up the old viewport mechanism a bit, since we can just invalidate the buffers and not worry about reentrancy and whatnot.
2010-02-16dri2: Event driven buffer validation.Francisco Jerez
When a buffer invalidation event is received from the X server, the "invalidate" hook of the DRI2 flush extension is executed: A generic implementation (dri2InvalidateDrawable) is provided that just bumps the "pStamp" sequence number in __DRIdrawableRec. For old servers not supporting buffer invalidation events, the invalidate hook will be called before flushing the fake front/back buffer (that's typically once per frame -- not a lot worse than the situation we were in before). No effort has been made on preserving backwards compatibility with version 2 of the flush extension, but I think it's acceptable because AFAIK no released stack is making use of it. Signed-off-by: Kristian Høgsberg <krh@bitplanet.net>
2010-02-12intel: Remove unused variable.Vinson Lee
2010-02-12intel: Avoid dri_bo_flink() in intel_update_renderbuffers()Kristian Høgsberg
Now that we track the global name in struct intel_region, we can just look it up there.
2010-02-11i915: Remove always-true irq_active struct intel_screen fieldKristian Høgsberg
2010-02-11i915: Drop intelScreenPrivate typedef and just call it struct intel_screenKristian Høgsberg
2010-01-30intel: Remove unnecessary headers.Vinson Lee
2010-01-25intel: Don't do client-side frame throttling with DRI2 SwapBuffers.Eric Anholt
The server side does the throttling on our behalf now by putting the client to sleep, so we don't need our previous hacks for limiting the number of outstanding frames. Same effect as 7d4e674b212c9dc6408c13913a399bd4a2b9a1e3.
2010-01-25Revert "intel: Use the new DRI2 flush invalidate entrypoint to signal frame ↵Eric Anholt
done." This reverts commit 7d4e674b212c9dc6408c13913a399bd4a2b9a1e3. It broke throttling in the non-new-DRI2 case.