mesa.git
14 years agor300: Remove GLcontext requirement from radeonLocalTransform
Nicolai Hähnle [Thu, 16 Jul 2009 20:39:16 +0000 (22:39 +0200)]
r300: Remove GLcontext requirement from radeonLocalTransform

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
14 years agor300: Remove unused enums
Nicolai Hähnle [Thu, 16 Jul 2009 20:36:54 +0000 (22:36 +0200)]
r300: Remove unused enums

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
14 years agor300: Remove GLcontext requirement from radeon_nqssadce
Nicolai Hähnle [Thu, 16 Jul 2009 20:32:46 +0000 (22:32 +0200)]
r300: Remove GLcontext requirement from radeon_nqssadce

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
14 years agor300: Remove GLcontext requirement from radeon_program_pair
Nicolai Hähnle [Thu, 16 Jul 2009 20:23:48 +0000 (22:23 +0200)]
r300: Remove GLcontext requirement from radeon_program_pair

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
14 years agor300/program_pair: Introduce driver-specific texture instruction structure
Nicolai Hähnle [Thu, 16 Jul 2009 17:57:43 +0000 (19:57 +0200)]
r300/program_pair: Introduce driver-specific texture instruction structure

This is to prepare more experimentation and possible internal changes in the
compiler.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
14 years agor300/program_pair: Dynamically allocate instructions temporarily
Nicolai Hähnle [Wed, 15 Jul 2009 20:25:28 +0000 (22:25 +0200)]
r300/program_pair: Dynamically allocate instructions temporarily

In preparation of using TGSI, where we cannot easily predict the number
of instructions.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
14 years agor300: Detangle fragment program compiler from driver-specific structure
Nicolai Hähnle [Wed, 15 Jul 2009 15:36:42 +0000 (17:36 +0200)]
r300: Detangle fragment program compiler from driver-specific structure

This is in preparation of sharing the fragment program compiler with Gallium:
Compiler code is moved into its own directory and modified so that it no
longer depends on driver structures.

Signed-off-by: Nicolai Hähnle <nhaehnle@gmail.com>
14 years agoradeon: Add r6xx/r7xx chip family to get_chip_family_name
Pauli Nieminen [Mon, 27 Jul 2009 14:13:48 +0000 (17:13 +0300)]
radeon: Add r6xx/r7xx chip family to get_chip_family_name

This fixes problem that glxinfo was reporting r600+ cards as unknown.

Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
14 years agonouveau: swizzle a single row or column, doing it one pixel at a time
Patrice Mandin [Mon, 27 Jul 2009 08:57:53 +0000 (10:57 +0200)]
nouveau: swizzle a single row or column, doing it one pixel at a time

14 years agor600: fix textures
Alex Deucher [Mon, 27 Jul 2009 07:52:37 +0000 (03:52 -0400)]
r600: fix textures

We weren't allocating enough gprs for the fragment shader
in some cases.  There are likely other issues that still need
to be sorted out for textures, but at least they now work.

14 years agor600: don't draw when num indices is 0
Alex Deucher [Mon, 27 Jul 2009 06:25:24 +0000 (02:25 -0400)]
r600: don't draw when num indices is 0

fixes engine demo

14 years agor600: set VGT NUM_INSTANCES as part of the draw command
Alex Deucher [Mon, 27 Jul 2009 06:07:59 +0000 (02:07 -0400)]
r600: set VGT NUM_INSTANCES as part of the draw command

set VGT NUM_INSTANCES as part of the draw command rather
than as state as recommended by the pm4 guide.  Also,
use the NUM_INSTANCES packet.

14 years agor600: Use R600_SCRATCH_REG_OFFSET rather than RADEON_SCRATCH_REG_OFFSET
Alex Deucher [Mon, 27 Jul 2009 05:57:25 +0000 (01:57 -0400)]
r600: Use R600_SCRATCH_REG_OFFSET rather than RADEON_SCRATCH_REG_OFFSET

noticed by vehemens on IRC.

14 years agor600: switch vtx resource setup to use SETfield macros
Alex Deucher [Fri, 24 Jul 2009 16:39:51 +0000 (12:39 -0400)]
r600: switch vtx resource setup to use SETfield macros

For consistency

14 years agor600: switch tex code to use SETfield macros
Alex Deucher [Fri, 24 Jul 2009 14:58:47 +0000 (10:58 -0400)]
r600: switch tex code to use SETfield macros

for consistency with the rest of the code.

14 years agor300g: Fix two trivial texture size issues.
Corbin Simpson [Mon, 27 Jul 2009 05:48:20 +0000 (22:48 -0700)]
r300g: Fix two trivial texture size issues.

Next thing to fix: progs/tests/mipgen.

14 years agoradeon-gallium: If BO allocation fails, return NULL.
Corbin Simpson [Mon, 27 Jul 2009 05:35:26 +0000 (22:35 -0700)]
radeon-gallium: If BO allocation fails, return NULL.

14 years agor300g: Add some debugging, correct little bits of math in texture setup.
Corbin Simpson [Fri, 24 Jul 2009 21:37:07 +0000 (14:37 -0700)]
r300g: Add some debugging, correct little bits of math in texture setup.

Simple stuff still works, but not sure about some of the more complex things.

14 years agonouveau: only swizzle square textures for copy
Patrice Mandin [Sun, 26 Jul 2009 20:30:35 +0000 (22:30 +0200)]
nouveau: only swizzle square textures for copy

14 years agonouveau: Take into account destination position for copy_swizzle, need to split copy...
Patrice Mandin [Sun, 26 Jul 2009 14:18:06 +0000 (16:18 +0200)]
nouveau: Take into account destination position for copy_swizzle, need to split copy a bit more

14 years agonouveau: Recursively swizzle an NPOT sized copy
Patrice Mandin [Sun, 26 Jul 2009 10:30:12 +0000 (12:30 +0200)]
nouveau: Recursively swizzle an NPOT sized copy

14 years agonouveau: use nv04_surface_copy_swizzle only for POT sizes
Patrice Mandin [Fri, 24 Jul 2009 21:37:46 +0000 (23:37 +0200)]
nouveau: use nv04_surface_copy_swizzle only for POT sizes

14 years agoradeon-gallium: remove old getparam ioctl
Joakim Sindholt [Fri, 24 Jul 2009 12:54:00 +0000 (14:54 +0200)]
radeon-gallium: remove old getparam ioctl

14 years agor600: fix segfault in morph3d
Alex Deucher [Thu, 23 Jul 2009 22:23:18 +0000 (18:23 -0400)]
r600: fix segfault in morph3d

These attributes still need work, but it shouldn't hurt to
enable them.

14 years agodraw: correct address for machine struct in llvm path
Keith Whitwell [Thu, 23 Jul 2009 17:48:04 +0000 (18:48 +0100)]
draw: correct address for machine struct in llvm path

This changed after a recent commit.

14 years agogallivm: updates for TGSI changes
Keith Whitwell [Thu, 23 Jul 2009 16:56:41 +0000 (17:56 +0100)]
gallivm: updates for TGSI changes

make linux-llvm succeeds, but doesn't seem to be working, at least with
llvm 2.5

14 years agor300g, radeon-gallium: Fix API, cleanup.
Corbin Simpson [Thu, 23 Jul 2009 14:14:07 +0000 (07:14 -0700)]
r300g, radeon-gallium: Fix API, cleanup.

Something called "validate" should return FALSE on failure, not TRUE.

14 years agoradeon-gallium: Build fixes wrt changed libdrm_radeon space check API
Nicolai Hähnle [Thu, 23 Jul 2009 14:05:21 +0000 (07:05 -0700)]
radeon-gallium: Build fixes wrt changed libdrm_radeon space check API

Had to be hacked up a bit to apply to master. Sorry 'bout that. :3

14 years agor300g: PIPE_CAP_BLEND_EQUATION_SEPARATE.
Corbin Simpson [Thu, 23 Jul 2009 08:04:26 +0000 (01:04 -0700)]
r300g: PIPE_CAP_BLEND_EQUATION_SEPARATE.

14 years agogallium: clean up opcode definitions
Keith Whitwell [Wed, 22 Jul 2009 10:31:41 +0000 (11:31 +0100)]
gallium: clean up opcode definitions

Remove commented-out opcodes.  Remove information about API mappings
to opcodes, but add a reference to tgsi-instruction-set.txt where
that information is better presented.

14 years agogallium: remove deprecated TGSI opcodes
Keith Whitwell [Wed, 22 Jul 2009 10:25:26 +0000 (11:25 +0100)]
gallium: remove deprecated TGSI opcodes

Various opcodes which can be implemented trivially with other TGSI opcodes,
such as matrix multiplication and negation.  These were not used by any
state tracker or implemented by any of the drivers.

14 years agor600: Remove CRLF line endings.
José Fonseca [Thu, 23 Jul 2009 13:11:10 +0000 (14:11 +0100)]
r600: Remove CRLF line endings.

14 years agoutil: Add support for Mac OS.
Vinson Lee [Thu, 23 Jul 2009 13:07:31 +0000 (14:07 +0100)]
util: Add support for Mac OS.

14 years agor300g: Actually mark shaders as translated/untranslated.
Corbin Simpson [Thu, 23 Jul 2009 06:58:35 +0000 (23:58 -0700)]
r300g: Actually mark shaders as translated/untranslated.

Also trust that Gallium will not give us TGSI that miscounts shader consts.

This creates a 20x speedup on glxgears, from 8 FPS to 160 FPS.

14 years agocell: update TGSI_OPCODE_ cases
Brian Paul [Thu, 23 Jul 2009 03:04:07 +0000 (21:04 -0600)]
cell: update TGSI_OPCODE_ cases

14 years agogallium: Fix PPC build.
Michel Dänzer [Wed, 22 Jul 2009 22:47:32 +0000 (00:47 +0200)]
gallium: Fix PPC build.

14 years agonouveau: nv30: wrong variable for format
Patrice Mandin [Wed, 22 Jul 2009 20:25:36 +0000 (22:25 +0200)]
nouveau: nv30: wrong variable for format

14 years agor300: fix address register handling in NQSSADCE
Maciej Cencora [Wed, 22 Jul 2009 20:10:22 +0000 (22:10 +0200)]
r300: fix address register handling in NQSSADCE

For address register we always use X component

14 years agonouveau: Take into account sx,sy parameters to read from source surface
Patrice Mandin [Wed, 22 Jul 2009 19:10:20 +0000 (21:10 +0200)]
nouveau: Take into account sx,sy parameters to read from source surface

14 years agogallium: remove multiple aliases for TGSI opcodes
Keith Whitwell [Fri, 12 Jun 2009 10:59:01 +0000 (11:59 +0100)]
gallium: remove multiple aliases for TGSI opcodes

This is a source of ongoing confusion.  TGSI has multiple names for
opcodes where the same semantics originate in multiple shader APIs.

For instance, TGSI includes both Mesa/GLSL and DX/SM30 names for
opcodes with the same semantics, but aliases those names to the same
underlying opcode number.

This makes it very difficult to visually inspect two sets of opcodes
(eg in state tracker & driver) and check if they implement the same
functionality.

This patch arbitarily rips out the versions of the opcodes not currently
favoured by the mesa state tracker and leaves us with a single name
for each distinct operation.

14 years agogallium: simplify tgsi_full_immediate struct
Keith Whitwell [Tue, 21 Jul 2009 23:39:00 +0000 (00:39 +0100)]
gallium: simplify tgsi_full_immediate struct

Remove the need to have a pointer in this struct by just including
the immediate data inline.  Having a pointer in the struct introduces
complications like needing to alloc/free the data pointed to, uncertainty
about who owns the data, etc.  There doesn't seem to be a need for it,
and it is unlikely to make much difference plus or minus to performance.

Added some asserts as we now will trip up on immediates with more
than four elements.  There were actually already quite a few such asserts,
but the >4 case could be used in the future to specify indexable immediate
ranges, such as lookup tables.

14 years agor600: fix dst reg indexing for real
Richard Li [Tue, 21 Jul 2009 21:56:06 +0000 (17:56 -0400)]
r600: fix dst reg indexing for real

This fixes segfaults in apps like teapot and tunnel

14 years agoRevert "r600: fix dst reg indexing"
Alex Deucher [Tue, 21 Jul 2009 21:44:36 +0000 (17:44 -0400)]
Revert "r600: fix dst reg indexing"

This reverts commit cc893d9a98255d3c26df7123ba5cc02e478c9328.

Richard has the proper fix.

14 years agor600: add stencil support
Alex Deucher [Tue, 21 Jul 2009 21:07:17 +0000 (17:07 -0400)]
r600: add stencil support

14 years agor600: use state functions to set default state
Alex Deucher [Tue, 21 Jul 2009 18:06:47 +0000 (14:06 -0400)]
r600: use state functions to set default state

14 years agor600: fill in point functions
Alex Deucher [Tue, 21 Jul 2009 17:46:15 +0000 (13:46 -0400)]
r600: fill in point functions

14 years agor600: set provoking vertex to last vertex for OGL
Alex Deucher [Tue, 21 Jul 2009 17:28:12 +0000 (13:28 -0400)]
r600: set provoking vertex to last vertex for OGL

14 years agor600: fill in r700UpdateViewportOffset
Alex Deucher [Tue, 21 Jul 2009 17:19:46 +0000 (13:19 -0400)]
r600: fill in r700UpdateViewportOffset

14 years agor600: first pass at polyoffset support
Alex Deucher [Tue, 21 Jul 2009 17:10:26 +0000 (13:10 -0400)]
r600: first pass at polyoffset support

not working yet

14 years agoradeon: fix colorbuffer pitch emission regarding tiling in KMS/CS case
Jerome Glisse [Tue, 21 Jul 2009 19:12:40 +0000 (21:12 +0200)]
radeon: fix colorbuffer pitch emission regarding tiling in KMS/CS case

We need to emit a relocation for pitch register so that kernel can
check and properly setup tiling on the color buffer.

14 years agoR600: fix up some build problems
Alex Deucher [Tue, 21 Jul 2009 15:09:05 +0000 (11:09 -0400)]
R600: fix up some build problems

14 years agor600: add alpha test support
Alex Deucher [Tue, 21 Jul 2009 05:58:05 +0000 (01:58 -0400)]
r600: add alpha test support

14 years agoTrack Radeon driver symlinks in Git.
Michel Dänzer [Tue, 21 Jul 2009 08:46:29 +0000 (10:46 +0200)]
Track Radeon driver symlinks in Git.

14 years agoAdd missing X11_INCLUDES to egl/drivers/demo and egl/main.
Peter Hutterer [Mon, 20 Jul 2009 06:11:26 +0000 (16:11 +1000)]
Add missing X11_INCLUDES to egl/drivers/demo and egl/main.

Compiling mesa on a system with no X headers installed in the default
include paths fails due to missing X11 includes. The header includes are
picked up by configure but not applied.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Dave Airlie <airlied@redhat.com>
14 years agoi965: Don't clip everything if FRONT_AND_BACK culling while culling disabled.
Eric Anholt [Tue, 21 Jul 2009 00:58:12 +0000 (17:58 -0700)]
i965: Don't clip everything if FRONT_AND_BACK culling while culling disabled.

Fixes everything-black with meta_clear_tris on quake4-mpdemo and doom3-demo.

Bug #18844, 22077.

14 years agor600: fix typo in blend code
Alex Deucher [Mon, 20 Jul 2009 23:33:05 +0000 (19:33 -0400)]
r600: fix typo in blend code

14 years agor600: fix dst reg indexing
Kevin DeKorte [Mon, 20 Jul 2009 22:56:47 +0000 (18:56 -0400)]
r600: fix dst reg indexing

This fixes segfaults in apps like teapot and tunnel

14 years agor600: add blending support
Alex Deucher [Mon, 20 Jul 2009 22:50:59 +0000 (18:50 -0400)]
r600: add blending support

14 years agor600: add user clip plane support
Alex Deucher [Mon, 20 Jul 2009 21:22:59 +0000 (17:22 -0400)]
r600: add user clip plane support

14 years agor600: add logicop support
Alex Deucher [Mon, 20 Jul 2009 19:27:28 +0000 (15:27 -0400)]
r600: add logicop support

14 years agotgsi: get texturing working in vertex shader sse2 path
Keith Whitwell [Mon, 20 Jul 2009 18:45:24 +0000 (19:45 +0100)]
tgsi: get texturing working in vertex shader sse2 path

Missing file from previous commit.

14 years agoMerge branch 'mesa_7_5_branch'
Michel Dänzer [Mon, 20 Jul 2009 18:41:11 +0000 (20:41 +0200)]
Merge branch 'mesa_7_5_branch'

14 years agoradeon: With DRI1, if we have HW stencil, only expose fbconfigs with stencil.
Michel Dänzer [Mon, 20 Jul 2009 18:26:28 +0000 (20:26 +0200)]
radeon: With DRI1, if we have HW stencil, only expose fbconfigs with stencil.

Otherwise simple apps like glxgears pick up a DirectColor visual since the X
server mixes the depth 32 visual in with the other GLX visuals, and this seems
to result in a (mostly) black screen due to a bad ColorMap for a lot of people.

The bad ColorMap may be a bug in the apps, the X server or X driver, and
regardless of that I think the X server should ideally make the depth 32 GLX
visual separate from the rest again, but in the meantime this makes us cope.

(depth_bits is either 16 or 24, never 0)

14 years agotgsi: get texturing working in vertex shader sse2 path
Keith Whitwell [Mon, 20 Jul 2009 18:29:22 +0000 (19:29 +0100)]
tgsi: get texturing working in vertex shader sse2 path

14 years agotgsi: fix regression in indexed const lookups
Keith Whitwell [Mon, 20 Jul 2009 18:28:34 +0000 (19:28 +0100)]
tgsi: fix regression in indexed const lookups

This function was calling get_input_base() and get_output_base() to
get the names of a couple of register to use as temps.  Those
functions no longer return registers, so adjust it to get the
registers elsewhere.

This change doesn't address the issue that it's a fairly poor way to
grab a register name by calling a function with an apparently
unrelated meaning.

14 years agor600: Fix compilation
Kevin DeKorte [Mon, 20 Jul 2009 13:27:17 +0000 (09:27 -0400)]
r600: Fix compilation

14 years agoR6xx/r7xx: Fix line stipple and width issue
Cooper Yuan [Mon, 20 Jul 2009 09:42:47 +0000 (17:42 +0800)]
R6xx/r7xx: Fix line stipple and width issue

14 years agoAdd common_ppc.c to MESA_GALLIUM_SOURCES.
Michel Dänzer [Mon, 20 Jul 2009 00:11:17 +0000 (02:11 +0200)]
Add common_ppc.c to MESA_GALLIUM_SOURCES.

14 years agor300g: Fix SCons build.
Michel Dänzer [Mon, 20 Jul 2009 00:06:37 +0000 (02:06 +0200)]
r300g: Fix SCons build.

14 years agogallium/trace: Fix SCons build.
Michel Dänzer [Mon, 20 Jul 2009 00:05:38 +0000 (02:05 +0200)]
gallium/trace: Fix SCons build.

14 years agor300g: Guard R500 register writes by is_r500 check.
Michel Dänzer [Sun, 19 Jul 2009 23:53:15 +0000 (01:53 +0200)]
r300g: Guard R500 register writes by is_r500 check.

Flagged by the DRM command stream checker. This allows the driver to work on
non-R500 cards.

14 years agogallium: make g3dvl build again
Dave Airlie [Sat, 18 Jul 2009 07:44:44 +0000 (17:44 +1000)]
gallium: make g3dvl build again

14 years agoMerge branch 'mesa_7_5_branch'
Brian Paul [Sat, 18 Jul 2009 04:00:47 +0000 (22:00 -0600)]
Merge branch 'mesa_7_5_branch'

Conflicts:

Makefile
progs/glsl/multitex.c
src/mesa/main/enums.c
src/mesa/main/state.c
src/mesa/main/texenvprogram.c
src/mesa/main/version.h

14 years agoR6xx/R7xx: add fine grained syncing support
Alex Deucher [Fri, 17 Jul 2009 23:04:19 +0000 (19:04 -0400)]
R6xx/R7xx: add fine grained syncing support

14 years agoR6xx/r7xx: send depth state in it's own function
Alex Deucher [Fri, 17 Jul 2009 21:08:40 +0000 (17:08 -0400)]
R6xx/r7xx: send depth state in it's own function

14 years agost/egl: Fix broken build after EGL thread changes
Andrew Randrianasulu [Fri, 17 Jul 2009 22:55:12 +0000 (00:55 +0200)]
st/egl: Fix broken build after EGL thread changes

14 years agoR200: fix build when RADEON_DEBUG_BO is set
Alex Deucher [Fri, 17 Jul 2009 22:10:48 +0000 (18:10 -0400)]
R200: fix build when RADEON_DEBUG_BO is set

14 years agoradeon: disable BO debug
Dave Airlie [Fri, 17 Jul 2009 22:00:23 +0000 (08:00 +1000)]
radeon: disable BO debug

14 years agoprogs/util: remove extfuncs.h (we use GLEW instead)
Brian Paul [Fri, 17 Jul 2009 20:43:29 +0000 (14:43 -0600)]
progs/util: remove extfuncs.h (we use GLEW instead)

14 years agoegl: commit missing eglcurrent.[ch] files
Brian Paul [Fri, 17 Jul 2009 19:36:06 +0000 (13:36 -0600)]
egl: commit missing eglcurrent.[ch] files

Not sure how these got left out from earlier commit.

14 years agoprogs/glsl: finish conversion to GLEW
Brian Paul [Fri, 17 Jul 2009 19:23:11 +0000 (13:23 -0600)]
progs/glsl: finish conversion to GLEW

This is a follow-on to b799af91d5ffbee1481161fec29eb4c92b161272.
Remove _func function suffix and unneeded #includes.

14 years agoMerge branch 'master' of git+ssh://agd5f@git.freedesktop.org/git/mesa/mesa into r6xx...
Alex Deucher [Fri, 17 Jul 2009 18:46:40 +0000 (14:46 -0400)]
Merge branch 'master' of git+ssh://agd5f@git.freedesktop.org/git/mesa/mesa into r6xx-rewrite

14 years agoR6xx/r7xx: warning fixes
Kevin DeKorte [Fri, 17 Jul 2009 18:43:42 +0000 (14:43 -0400)]
R6xx/r7xx: warning fixes

patch from Kevin DeKorte with some minor fixes from me.

14 years agomesa: set version to 7.5
Brian Paul [Fri, 17 Jul 2009 18:40:48 +0000 (12:40 -0600)]
mesa: set version to 7.5

14 years agomesa: set version to 7.5
Brian Paul [Fri, 17 Jul 2009 18:40:44 +0000 (12:40 -0600)]
mesa: set version to 7.5

14 years agodocs: set date for 7.5 release
Brian Paul [Fri, 17 Jul 2009 18:40:24 +0000 (12:40 -0600)]
docs: set date for 7.5 release

14 years agoxeglthreads: Check current context for EGL per-thread support.
Chia-I Wu [Fri, 17 Jul 2009 04:21:59 +0000 (21:21 -0700)]
xeglthreads: Check current context for EGL per-thread support.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
14 years agoegl: Remove redundant DeletePending flag.
Chia-I Wu [Fri, 17 Jul 2009 17:56:00 +0000 (11:56 -0600)]
egl: Remove redundant DeletePending flag.

A context or surface that is neither linked to a display nor current to
a thread should be destroyed.  Therefore, an unlinked context or surface
implies a pending delete automatically.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
14 years agoegl: Destroy display's resources upon termination.
Chia-I Wu [Fri, 17 Jul 2009 04:21:57 +0000 (21:21 -0700)]
egl: Destroy display's resources upon termination.

eglTerminate should destroy the contexts and surfaces of the display.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
14 years agoegl: Return the same EGL Display for the same native display.
Chia-I Wu [Fri, 17 Jul 2009 04:21:56 +0000 (21:21 -0700)]
egl: Return the same EGL Display for the same native display.

The latest revision of the spec explicitly requires the same handle to
be returned for the same native display.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
14 years agoegl: Use the link functions to manage resources.
Chia-I Wu [Fri, 17 Jul 2009 17:53:03 +0000 (11:53 -0600)]
egl: Use the link functions to manage resources.

This commit uses the newly introduced link functions to manage EGL
contexts and surfaces.  As a result of this, the API for drivers are
changed.  All drivers are updated for the change.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
14 years agoegl: Add funtions to link contexts and surfaces to displays.
Chia-I Wu [Fri, 17 Jul 2009 17:48:27 +0000 (11:48 -0600)]
egl: Add funtions to link contexts and surfaces to displays.

EGL contexts and surfaces are resources of displays.  They should be
managed by displays.  This commit adds a bunch of functions to
egldisplay.c to help establish the links between contexts/surfaces and
displays.  How links are established is considered opaque outside
display.  Functions like _eglGetSurfaceHandle or _eglLookupSurface are
therefore moved to egldisplay.c, with some small modifications.

The idea is also extended to display.  That is, displays need to link to
themselves to be looked up.

This commit only adds the functions.  A commit to use them should
follow.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
14 years agoegl: Extend per-thread info for multiple current contexts.
Chia-I Wu [Fri, 17 Jul 2009 17:42:04 +0000 (11:42 -0600)]
egl: Extend per-thread info for multiple current contexts.

EGL allows multiple current contexts, as long as they are bound to
different client APIs.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
14 years agoegl: Support per-thread info.
Chia-I Wu [Fri, 17 Jul 2009 17:41:02 +0000 (11:41 -0600)]
egl: Support per-thread info.

This commit introduces a "current" system to manage per-thread info.  It
uses TLS, if GLX_USE_TLS is defined, or pthread, if PTHREADS is defined.
If none of them are defined, it uses a dummy implementation that is just
like before.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
14 years agoegl: Add eglcompiler.h for compiler features.
Chia-I Wu [Fri, 17 Jul 2009 04:21:51 +0000 (21:21 -0700)]
egl: Add eglcompiler.h for compiler features.

Only INLINE (from mesa/main/compiler.h) is defined now.  It may be used
to deal with symbol visibility and int/pointer conversion in the future.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Signed-off-by: Brian Paul <brianp@vmware.com>
14 years agoR6xx/r7xx: disable depth/stencil compression for now
Alex Deucher [Fri, 17 Jul 2009 16:21:33 +0000 (12:21 -0400)]
R6xx/r7xx: disable depth/stencil compression for now

14 years agoR6xx/r7xx: add some missing state regs
Alex Deucher [Fri, 17 Jul 2009 16:07:15 +0000 (12:07 -0400)]
R6xx/r7xx: add some missing state regs

14 years agodocs: news entry for 7.5 release
Brian Paul [Fri, 17 Jul 2009 15:40:45 +0000 (09:40 -0600)]
docs: news entry for 7.5 release

14 years agodocs: update links to Gallium wiki page on freedesktop.org
Brian Paul [Fri, 17 Jul 2009 15:40:28 +0000 (09:40 -0600)]
docs: update links to Gallium wiki page on freedesktop.org

14 years agotexenv: Calculate whether we need to do secondary color on our own.
Eric Anholt [Fri, 17 Jul 2009 01:41:03 +0000 (18:41 -0700)]
texenv: Calculate whether we need to do secondary color on our own.

The _TriangleCaps bit is deprecated, not updated when we require, and
is set based on state that hasn't been updated at that point in
_mesa_update_state_locked().

Fixes incorrect clear color in glsl/twoside.c with meta_clear_tris.