Commit graph

11996 commits

Author SHA1 Message Date
Kristian Høgsberg
1e6943cf55 [intel] Only enable GL_EXT_texture_sRGB on i965.
Fixes #14799.
2008-03-07 13:46:05 -05:00
Zou Nan hai
7676980d38 [i965] fix fd.o bug #11471 and #11478
1. Follow EXT_texture_rectangle with YCbCr texture
	2. swap UV component for MESA_FORMAT_YCBCR
2008-03-07 15:11:28 +08:00
Xiang, Haihao
5982d39799 i965: use RGB565 to render a bitmap if Depth is 16 2008-03-07 09:48:11 +08:00
Xiang, Haihao
d76545de57 i965: Fix double free issue to pass glean/maskedClear test 2008-03-06 13:23:27 +08:00
Xiang, Haihao
771ba66629 i965:fix segfault issue when clearing the window which
is created with mode GLUT_SINGLE|GLUT_RGB|GLUT_DEPTH.
This issue is introduced by 20b8bff49c
2008-03-06 09:45:51 +08:00
Eric Anholt
fe91c05b54 [intel] Add a driconf option to cache freed buffer objects for reuse.
This is defaulted off as it has potentially large memory costs for a modest
performance gain.  Ideally we will improve DRM performance to the point where
this optimization is not worth the memory cost in any case, or find some
middle ground in caching only limited numbers of certain buffers.  For now,
this provides a modest 4% improvement in openarena on GM965 and 10% in openarena
on GM945.
2008-03-05 16:29:14 -08:00
Christoph Brill
fc21e9cdd0 r300: replace some hard coded mask by define in stencil area 2008-03-04 21:52:49 +01:00
Christoph Brill
701ccf6f29 r300: Fix some issues with masks in stencil buffer area 2008-03-04 21:37:56 +01:00
Kristian Høgsberg
3d608c7a2d [dri2] Add tail pointer to reemitDrawableInfo callback.
When the DRI doesn't parse the event buffer for a while, the X server
may overwrite data that the driver didn't get a chance to look at.  The
reemitDrawableInfo callback requests that the X server reemit all info
for the specified drawable.  To make use of this, the drive needs to know
the new tail pointer so it know where to start reading from.
2008-03-03 19:16:20 -05:00
Kristian Høgsberg
4f7a75cc8a [dri2] Optimize event parsing to skip obsolete events.
This also fixes the problem where the X server does multiple resizes before
the DRI driver gets the events.  The obsolete buffer attach events then
reference already destroyed buffer objects.
2008-03-03 19:16:20 -05:00
Kristian Høgsberg
36c26d321b [intel] Silence unused variable warning when compiling for i965. 2008-03-03 19:15:52 -05:00
Patrice Mandin
f59d59a95f nouveau: compilation fixes 2008-03-02 12:16:23 +01:00
Roland Scheidegger
642d5ee8c5 state.depth.range alpha value should be 1, not 0 (bug #14733) 2008-03-01 02:56:08 +01:00
Kristian Høgsberg
3c5a1e4c2d Update libGL DRI loader to latest DRI interface changes. 2008-02-29 16:42:29 -05:00
Kristian Høgsberg
51cd168da4 glxgears: oops, remove accidental commit of glFinish() hack. 2008-02-29 15:33:40 -05:00
Kristian Høgsberg
6cb3f5c4d8 Use __DRIextension mechanism providing loader functionality to the driver.
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.
2008-02-29 15:05:39 -05:00
Kristian Høgsberg
16242a8007 Reduce the versioning madness required to create a DRI2 screen.
Right now the DRI2 screen constructor takes 3 different versions:
DRI, DDX and DRM.  This is mostly useless, though:

  DRI: The DRI driver doesn't actually care about the DRI protocol,
  it only talks to the loader, which in turn speaks DRI protocol.  Thus,
  the DRI protocol version is of not interest to the DRI driver, but it
  needs to know what functionality the loader provides.  At this point
  that's reflected in the __DRIinterfaceMethods struct and the
  internal_version integer.

  DDX: The DDX version number is essentially used to track extensions
  to the SAREA.  With DRI2 the SAREA consists of a number of versioned,
  self-describing blocks, so the DDX version is no longer interesting.

  DRM: We have the fd, lets just ask the kernel ourselves.
2008-02-29 15:05:39 -05:00
Kristian Høgsberg
5197a31b8e intel: Set the lock flag early to avoid deadlock.
Another regression from the intel_context.c merge.
2008-02-29 15:05:39 -05:00
Xiang, Haihao
de1e9880f8 i965: use _Current pointer instead of Current pointer.
fix double free issue(bug#14710). It also corrects glsl/bitmap demo behavior.
2008-02-29 11:16:21 +08:00
Eric Anholt
b39f15b88f [965] Fix conditional sequencing to allow the frame_buffer_texobj case.
Previously the frame_buffer_texobj case would have been bound as a normal
texture, at best resulting in no surface data being associated with it.
2008-02-28 16:04:54 -08:00
Eric Anholt
ec5ca6844b [intel] Bug #14575: Unmap buffers when deleting/dataing as required.
Otherwise, we would assertion error when doing the final unreference of the
buffer with an outstanding map (catching the memory leak).
2008-02-28 16:01:15 -08:00
Christoph Brill
981b7da8a7 r300: R5xx and R3xx use different registers for RS_IP and RS_INST
These changes are taken from the xf86-video-ati driver. They update the header
file accordingly and also remove some UNKOWN variables.
2008-02-28 22:37:15 +01:00
Eric Anholt
9c8f27ba13 [965] Bug #9151: make fragment.position return window coords not screen coords. 2008-02-28 13:18:48 -08:00
Eric Anholt
3f0301d7bc [965] Fix serious copy'n'paste failure in brw state dumping. 2008-02-28 13:18:48 -08:00
Brian
ddbfa8c462 added git on Windows section 2008-02-28 08:03:34 -07:00
Brian
cef71f58c9 a few words about how the cell driver works. 2008-02-28 08:03:34 -07:00
Xiang, Haihao
3ffd11f71d mesa: separate shader program object from shader object.
Currently a callback delete_shader_cb is used for deleting shader
and shader program objects. Mesa detaches all attached shaders in
_mesa_free_shader_program_data when deleting shader program objects. However
it is likely that these shaders have been freed in _mesa_free_shader,
which will result in unexpected behaviour. This fix uses a single callback for
shader program objects and deletes shader program objects before shader objects.
2008-02-28 21:32:36 +08:00
Zou Nan hai
0da03c0aa9 [intel] fix compressed image height 2008-02-28 16:49:38 +08:00
José Fonseca
60159c1b09 Convert crlf->lf line endings.
Windows/DOS users should enable core.autocrlf from now on:

  git config --global core.autocrlf true
2008-02-28 16:34:32 +09:00
Jose Fonseca
90a036b337 Disable autocrlf for Visual Studio project files. 2008-02-28 12:34:01 +09:00
Brian
cabcee9ea9 document cell -DSPU_MAIN_PARAM_LONG_LONG flag 2008-02-27 18:02:23 -07:00
Christoph Brill
00bc91ac64 r300: properly handle GL_POINT in glPolygonMode
Until now the polygon mode was completely turned of when you used
GL_POINT. For me it looked buggy to completely disable the polygon
mode for FrontMode and BackMode if any of these was GL_POINT.
2008-02-27 22:06:38 +01:00
Kristian Høgsberg
60c0f09abb intel: Always use intelInitExtensions() for initializing extensions. 2008-02-27 11:24:29 -05:00
Markus Amsler
c34b024cf4 r300: add artificial output to match fragment program input 2008-02-27 02:06:17 +01:00
Markus Amsler
12a4a74e94 mesa: set input read only on success 2008-02-27 02:04:06 +01:00
Kristian Høgsberg
20b8bff49c i965: Setup framebuffer texture in meta_draw_region.
With DRI2 we there is no screen region until a drawable is bound to
the context.  Set up the framebuffer texture in meta_draw_region instead
which should also handle the case where the draw region changes as a
result of resizing a redirected window or resizing the screen.
2008-02-26 18:01:13 -05:00
Eric Anholt
451bd1941e [965] Don't segfault on INTEL_DEBUG=batch when a surface buffer is NULL. 2008-02-26 13:58:01 -08:00
Eric Anholt
09aa4b3690 [965] remove dead brw_parameter_list_state_flags.
This was replaced by Mesa core code.
2008-02-26 13:57:49 -08:00
Christoph Brill
6e3dde8a54 [r300] fix wow-pinkness regression. Fixed by Markus Amsler 2008-02-26 22:10:54 +01:00
Christoph Brill
bfb7cd653a [r300] Document based on chapter 10.4 and 10.5
This commit adds most of the graphics backend registers and of the rasterizer
registers. Again, some minor bugs were found and marked with TODO or even
fixed.
2008-02-26 21:45:58 +01:00
Zou Nan hai
9bd2cb7f90 [i915] fix texture size exceed limit case when running celestia 2008-02-26 17:20:12 +08:00
Thomas Hellstrom
32879e1461 [intel] Handle -EAGAINs correctly in execbuffer.
Dont stop on fence creation errors.
2008-02-26 09:19:27 +01:00
Kristian Høgsberg
f1c82bf9a4 A few more fixes to the dlsym() fix.
Argh, seriously, I did test that, I just forgot to amend the commit
before pushing.
2008-02-25 22:24:09 -05:00
Dave Airlie
0a64ffb308 dri2: dlsym requires some quotes.. 2008-02-26 12:28:45 +10:00
Kristian Høgsberg
129b9ad16f Use dlsym() to avoid referencing __dri2DriverInitScreen.
Sort-of a stop-gap workaround.  There are a couple of nicer ways to
do this that doesn't require dlfcn.h, but they're more invasive.
2008-02-25 20:02:25 -05:00
Kristian Høgsberg
bcecea6ea6 autoconf: Add gcc search patch to MKDEP_OPTIONS to eliminate warnings.
Also, use -include to avoid error message when make initially fails to
include the non-existent depend file.
2008-02-25 19:02:07 -05:00
Kristian Høgsberg
7381ccab44 intel: Add missing include file to silence last couple of warnings. 2008-02-25 19:02:07 -05:00
Kristian Høgsberg
54bd506c0f intel: Initialize color and spec arrays in LOCAL_VARS macro.
Avoids spamming compilation output with tons of warnings about
use of possibly uninitialized variables.
2008-02-25 19:02:06 -05:00
Kristian Høgsberg
61c3c2c363 Change GetCompressedTexImage in dd_function_table to not take const pointers.
They're changed by the intel driver implementation and thus not const.
Fixes compilation warning.
2008-02-25 19:02:06 -05:00
Kristian Høgsberg
6e8d21d72f Remove GetMSC DriverAPI function.
The DriverAPI is internal to the DRI drivers and GetDrawableMSC
obsoletes GetMSC.  Also, since the DRI driver interface has not yet
been released, just drop the getMSC function from the DRI interface
instead using the ABI preserving version mechanism.

Finally, using void pointer privates in the DRI interface is not allowed,
always pass the actual types around (__DRIdrawable in this case) to
enhance type safety and readability of the code.
2008-02-25 19:02:06 -05:00