profile/ivi/mesa.git
14 years agoMerge branch 'sandybridge'
Eric Anholt [Thu, 25 Feb 2010 18:56:09 +0000 (10:56 -0800)]
Merge branch 'sandybridge'

This brings in the initial code I've been working on for bringing up
OpenGL on Sandybridge in the i965 driver.  It doesn't work yet.

14 years agodocs: addition of ARB_fcc to i965.
Eric Anholt [Tue, 23 Feb 2010 19:18:25 +0000 (11:18 -0800)]
docs: addition of ARB_fcc to i965.

14 years agoi965: Add SNB math opcode support.
Eric Anholt [Wed, 24 Feb 2010 17:16:19 +0000 (09:16 -0800)]
i965: Add SNB math opcode support.

This is untested at this point.

14 years agoi965: Emit SNB FF unit state after the unit's push constants.
Eric Anholt [Wed, 24 Feb 2010 01:42:20 +0000 (17:42 -0800)]
i965: Emit SNB FF unit state after the unit's push constants.

There's a BUN for the WM unit that says WM_STATE must immediately
follow PS_CONSTANTS, which this addresses.  Presumably other units are
roughly the same, too.

14 years agoi965: Set up the SNB sampler state pointers.
Eric Anholt [Mon, 1 Feb 2010 17:55:18 +0000 (09:55 -0800)]
i965: Set up the SNB sampler state pointers.

14 years agoi965: Set GS rendering enabled even when the GS stage is disabled.
Eric Anholt [Mon, 1 Feb 2010 17:41:26 +0000 (09:41 -0800)]
i965: Set GS rendering enabled even when the GS stage is disabled.

This is copying the behavior of other drivers.

14 years agoi965: Add a couple SNB state packets I saw in other batchbuffer dumps.
Eric Anholt [Mon, 1 Feb 2010 17:04:12 +0000 (09:04 -0800)]
i965: Add a couple SNB state packets I saw in other batchbuffer dumps.

14 years agoi965: Re-disable the VS.
Eric Anholt [Mon, 25 Jan 2010 22:48:06 +0000 (14:48 -0800)]
i965: Re-disable the VS.

There's stuff that needs to happen in the ISA before we can play with
actually executing anything in the VS.

14 years agoi965: Fix up some Sandybridge define checks for the structure rebase.
Eric Anholt [Mon, 21 Dec 2009 22:28:18 +0000 (14:28 -0800)]
i965: Fix up some Sandybridge define checks for the structure rebase.

14 years agoi965: Move PIPELINE_SELECT to the top of gen6 3d pipeline setup.
Eric Anholt [Mon, 21 Dec 2009 21:08:41 +0000 (13:08 -0800)]
i965: Move PIPELINE_SELECT to the top of gen6 3d pipeline setup.

14 years agoi965: Untested Sandybridge WM packets.
Eric Anholt [Mon, 21 Dec 2009 19:48:32 +0000 (11:48 -0800)]
i965: Untested Sandybridge WM packets.

14 years agoi965: Hook up remaining Sandybridge state packets besides WM.
Eric Anholt [Mon, 21 Dec 2009 19:22:14 +0000 (11:22 -0800)]
i965: Hook up remaining Sandybridge state packets besides WM.

14 years agoi965: Untested Sandybridge SF setup.
Eric Anholt [Fri, 29 Jan 2010 19:03:04 +0000 (11:03 -0800)]
i965: Untested Sandybridge SF setup.

14 years agoi965: Fixup Sandybridge GS packet from doc updates.
Eric Anholt [Fri, 18 Dec 2009 02:41:18 +0000 (18:41 -0800)]
i965: Fixup Sandybridge GS packet from doc updates.

14 years agoi965: Fix up Sandybridge GS reg definitions
Eric Anholt [Thu, 17 Dec 2009 23:52:17 +0000 (15:52 -0800)]
i965: Fix up Sandybridge GS reg definitions

14 years agoi965: fix typo in SNB VS defines comment
Eric Anholt [Thu, 17 Dec 2009 23:51:43 +0000 (15:51 -0800)]
i965: fix typo in SNB VS defines comment

14 years agoi965: fix typo in SNB GS register defines
Eric Anholt [Thu, 17 Dec 2009 22:51:42 +0000 (14:51 -0800)]
i965: fix typo in SNB GS register defines

14 years agoi965: Enable clip stats.
Eric Anholt [Thu, 17 Dec 2009 17:47:53 +0000 (09:47 -0800)]
i965: Enable clip stats.

14 years agoi965: Add Sandybridge viewport setup.
Eric Anholt [Thu, 17 Dec 2009 17:38:50 +0000 (09:38 -0800)]
i965: Add Sandybridge viewport setup.

14 years agoi965: Enable DRAWING_RECTANGLE emit on Sandybridge.
Eric Anholt [Thu, 17 Dec 2009 16:23:37 +0000 (08:23 -0800)]
i965: Enable DRAWING_RECTANGLE emit on Sandybridge.

14 years agoi965: Add Sandybridge scissor state.
Eric Anholt [Thu, 17 Dec 2009 16:20:32 +0000 (08:20 -0800)]
i965: Add Sandybridge scissor state.

14 years agoi965: Fix up the VF stats packet header.
Eric Anholt [Mon, 14 Dec 2009 22:17:00 +0000 (14:17 -0800)]
i965: Fix up the VF stats packet header.

14 years agoi965: Set the state base address on Sandybridge.
Eric Anholt [Mon, 14 Dec 2009 22:11:14 +0000 (14:11 -0800)]
i965: Set the state base address on Sandybridge.

14 years agoi965: Free gen6 state BOs on context destroy.
Eric Anholt [Fri, 4 Dec 2009 02:52:35 +0000 (18:52 -0800)]
i965: Free gen6 state BOs on context destroy.

14 years agoi965: Giant pile of flushing to track down SNB bringup issues.
Eric Anholt [Fri, 29 Jan 2010 18:42:17 +0000 (10:42 -0800)]
i965: Giant pile of flushing to track down SNB bringup issues.

This should go away before we push the code.

14 years agoi965: Fix some defines of gen6 regs from docs comparison.
Eric Anholt [Fri, 4 Dec 2009 02:31:32 +0000 (18:31 -0800)]
i965: Fix some defines of gen6 regs from docs comparison.

14 years agoi965: Add basic decode of new gen6 packet boundaries.
Eric Anholt [Fri, 4 Dec 2009 01:25:42 +0000 (17:25 -0800)]
i965: Add basic decode of new gen6 packet boundaries.

14 years agoi965: Reconnect the index/vertex setup.
Eric Anholt [Fri, 4 Dec 2009 00:53:07 +0000 (16:53 -0800)]
i965: Reconnect the index/vertex setup.

14 years agoi965: Set up the SNB URB.
Eric Anholt [Fri, 4 Dec 2009 01:08:32 +0000 (17:08 -0800)]
i965: Set up the SNB URB.

even with vs disabled, still doesn't work.

14 years agoi965: Try sending prims down the pipeline.
Eric Anholt [Thu, 3 Dec 2009 23:44:29 +0000 (15:44 -0800)]
i965: Try sending prims down the pipeline.

Now things catch on fire.

14 years agoi965: Try uploading SNB VS constants.
Eric Anholt [Thu, 3 Dec 2009 23:20:06 +0000 (15:20 -0800)]
i965: Try uploading SNB VS constants.

14 years agoi965: Try turning on the VS.
Eric Anholt [Thu, 3 Dec 2009 23:06:08 +0000 (15:06 -0800)]
i965: Try turning on the VS.

14 years agoi965: Get vp-tri batchbuffers running (no rendering).
Eric Anholt [Thu, 3 Dec 2009 23:04:37 +0000 (15:04 -0800)]
i965: Get vp-tri batchbuffers running (no rendering).

14 years agoi965: Add untested REJECT_ALL clip state.
Eric Anholt [Fri, 29 Jan 2010 19:12:18 +0000 (11:12 -0800)]
i965: Add untested REJECT_ALL clip state.

14 years agoi965: Add untested passthrough GS setup.
Eric Anholt [Fri, 27 Nov 2009 06:03:43 +0000 (22:03 -0800)]
i965: Add untested passthrough GS setup.

14 years agoi965: Add untested Sandybridge passthrough VS setup.
Eric Anholt [Mon, 16 Nov 2009 22:50:23 +0000 (14:50 -0800)]
i965: Add untested Sandybridge passthrough VS setup.

14 years agoi965: Start adding support for the Sandybridge CC unit.
Eric Anholt [Fri, 29 Jan 2010 19:18:26 +0000 (11:18 -0800)]
i965: Start adding support for the Sandybridge CC unit.

14 years agoi965: Set up sandybridge binding table pointers but don't enable it yet.
Eric Anholt [Tue, 3 Nov 2009 22:02:24 +0000 (14:02 -0800)]
i965: Set up sandybridge binding table pointers but don't enable it yet.

It hangs the GPU at the clipper stage, presumably because we're lacking
other setup.

14 years agoi965: Update WM surface state setup for sandybridge's new BLEND_STATE.
Eric Anholt [Tue, 3 Nov 2009 21:41:22 +0000 (13:41 -0800)]
i965: Update WM surface state setup for sandybridge's new BLEND_STATE.

14 years agoi965: Set up sandybridge depthbuffer.
Eric Anholt [Tue, 3 Nov 2009 21:19:30 +0000 (13:19 -0800)]
i965: Set up sandybridge depthbuffer.

14 years agointel: Start adding defines and some bits for sandybridge bringup.
Eric Anholt [Tue, 3 Nov 2009 19:28:47 +0000 (11:28 -0800)]
intel: Start adding defines and some bits for sandybridge bringup.

14 years agodri/nouveau: Use the XRGB8888 hardware texture format.
Francisco Jerez [Thu, 25 Feb 2010 00:55:13 +0000 (01:55 +0100)]
dri/nouveau: Use the XRGB8888 hardware texture format.

14 years agodri/nouveau: Use the hardware I8 format for intensity textures.
Francisco Jerez [Tue, 23 Feb 2010 15:39:26 +0000 (16:39 +0100)]
dri/nouveau: Use the hardware I8 format for intensity textures.

14 years agodri/nouveau: Implement EXT_texture_from_pixmap.
Francisco Jerez [Sun, 21 Feb 2010 13:23:40 +0000 (14:23 +0100)]
dri/nouveau: Implement EXT_texture_from_pixmap.

14 years agodri/nouveau: Support rectangle textures.
Francisco Jerez [Thu, 25 Feb 2010 01:15:54 +0000 (02:15 +0100)]
dri/nouveau: Support rectangle textures.

14 years agodri/nouveau: Don't try to map a non-existent teximage.
Francisco Jerez [Tue, 23 Feb 2010 15:31:42 +0000 (16:31 +0100)]
dri/nouveau: Don't try to map a non-existent teximage.

14 years agodri/nouveau: Add some RGB888 span functions.
Francisco Jerez [Tue, 23 Feb 2010 15:30:48 +0000 (16:30 +0100)]
dri/nouveau: Add some RGB888 span functions.

14 years agodri/nouveau: Fake A8 and L8 texture support on nv04.
Francisco Jerez [Tue, 23 Feb 2010 15:57:06 +0000 (16:57 +0100)]
dri/nouveau: Fake A8 and L8 texture support on nv04.

14 years agodri/nouveau: Restructure the nv[12]0 regcombiner code, and fake A8/L8 support.
Francisco Jerez [Tue, 23 Feb 2010 15:15:14 +0000 (16:15 +0100)]
dri/nouveau: Restructure the nv[12]0 regcombiner code, and fake A8/L8 support.

14 years agodri/nouveau: Try to validate textures earlier.
Francisco Jerez [Mon, 22 Feb 2010 01:03:42 +0000 (02:03 +0100)]
dri/nouveau: Try to validate textures earlier.

14 years agodri/nouveau: Swizzle using the CPU when we hit a limitation of SIFM.
Francisco Jerez [Mon, 22 Feb 2010 00:53:23 +0000 (01:53 +0100)]
dri/nouveau: Swizzle using the CPU when we hit a limitation of SIFM.

14 years agodri/nouveau: Clean up the nv04 surface code a bit.
Francisco Jerez [Mon, 22 Feb 2010 00:50:04 +0000 (01:50 +0100)]
dri/nouveau: Clean up the nv04 surface code a bit.

14 years agodri/nouveau: Avoid mask overflow on nv04_surface_fill.
Francisco Jerez [Sun, 21 Feb 2010 13:35:56 +0000 (14:35 +0100)]
dri/nouveau: Avoid mask overflow on nv04_surface_fill.

14 years agodri/nouveau: Set _BaseFormat correctly for z24s8 renderbuffers.
Francisco Jerez [Sun, 21 Feb 2010 13:30:31 +0000 (14:30 +0100)]
dri/nouveau: Set _BaseFormat correctly for z24s8 renderbuffers.

14 years agodri/nouveau: Fix stencil mask handling on glClear().
Francisco Jerez [Sun, 21 Feb 2010 13:28:17 +0000 (14:28 +0100)]
dri/nouveau: Fix stencil mask handling on glClear().

14 years agoscons: Always build trace driver
José Fonseca [Thu, 25 Feb 2010 17:02:52 +0000 (17:02 +0000)]
scons: Always build trace driver

There are so many state trackers and winsys that rely on it for debug
building, and trace can really build anywhere and is thin so there's no
point is making it an option.

Based on  Xavier Chantry <chantry.xavier@gmail.com>'s patch:

"I also removed the trace check in xlib SConscript which is now useless, and
that script seems to deal with the cell driver, so I added cell in the check
for supported drivers."

14 years agopython: Fix typo.
Michal Krol [Thu, 25 Feb 2010 13:21:50 +0000 (14:21 +0100)]
python: Fix typo.

14 years agoglapi/gen: just copy in glx/glapi
George Sapountzis [Thu, 25 Feb 2010 15:52:05 +0000 (17:52 +0200)]
glapi/gen: just copy in glx/glapi

14 years agoglapi: EXTRA_DEBUG is never defined, make this explicit
George Sapountzis [Thu, 25 Feb 2010 15:52:05 +0000 (17:52 +0200)]
glapi: EXTRA_DEBUG is never defined, make this explicit

14 years agoglapi: minor ugliness to be able to copy to xorg
George Sapountzis [Thu, 25 Feb 2010 15:52:04 +0000 (17:52 +0200)]
glapi: minor ugliness to be able to copy to xorg

14 years agodocs: remove demos.html page which contained one dead link
Brian Paul [Thu, 25 Feb 2010 15:36:31 +0000 (08:36 -0700)]
docs: remove demos.html page which contained one dead link

14 years agotgsi: Remove dead code.
Michal Krol [Thu, 25 Feb 2010 14:01:10 +0000 (15:01 +0100)]
tgsi: Remove dead code.

14 years agomesa: Move src/mesa/glapi/dispatch.h to mesa.
Chia-I Wu [Wed, 24 Feb 2010 04:01:14 +0000 (12:01 +0800)]
mesa: Move src/mesa/glapi/dispatch.h to mesa.

glapi/dispatch.h is a core Mesa header file.  Move the header file to
main/ to make this clear.  It also becomes clear after this change that
IN_DRI_DRIVER is only used in core Mesa to enable the remap table.

14 years agoglapi: Move src/mesa/main/dispatch.c to glapi and rename.
Chia-I Wu [Wed, 24 Feb 2010 03:20:14 +0000 (11:20 +0800)]
glapi: Move src/mesa/main/dispatch.c to glapi and rename.

main/dispatch.c is a glapi source file.  It is part of GLAPI_SOURCES in
sources.mak and part of glapi_sources in SConscript.  This commit moves
it to glapi/ and renames it to glapi_dispatch.c.

14 years agoglapi: Generated GLX sources should use glapidispatch.h.
Chia-I Wu [Wed, 24 Feb 2010 04:04:58 +0000 (12:04 +0800)]
glapi: Generated GLX sources should use glapidispatch.h.

Fix glX_proto_recv.py and glX_proto_send.py, and regenerate the sources.

14 years agomesa: Remove unused Makefile.{ugl,win}.
Chia-I Wu [Wed, 24 Feb 2010 03:17:16 +0000 (11:17 +0800)]
mesa: Remove unused Makefile.{ugl,win}.

14 years agost/egl: Reduce validation round-trips in DRI2 backend.
Chia-I Wu [Thu, 25 Feb 2010 13:18:20 +0000 (21:18 +0800)]
st/egl: Reduce validation round-trips in DRI2 backend.

This is similar to the changes to reduce the round-trips in ximage
backend.

When the server supports DRI_InvalidateBuffers, the event is used to
update the server stamp (this path is not tested).  Otherwise, the
server stamp is updated when flush_frontbuffer or swap_buffers is
called.  This makes sure at least the client APIs get the new buffers
when a new frame is started while skipping all round-trips during the
drawing.

14 years agost/egl: Reduce validation round-trips in ximage backend.
Chia-I Wu [Thu, 25 Feb 2010 13:16:56 +0000 (21:16 +0800)]
st/egl: Reduce validation round-trips in ximage backend.

ximage_surface_validate is called several times per frame.  This commit
adds the client and server stamps to reduce the round-trips to the
server.  The idea is to bump the server stamp when flush_frontbuffer or
swap_buffers is called, and to skip the round-trip when the client stamp
is equal to the server stamp.  This makes sure the client APIs get the
new buffers when a new frame is started while skipping all round-trips
during the drawing.  To make this work, egl_g3d_validate_context is no
longer called after swap_buffers.

14 years agost/egl: Refactor dri2_surface_get_buffers.
Chia-I Wu [Wed, 24 Feb 2010 07:34:16 +0000 (15:34 +0800)]
st/egl: Refactor dri2_surface_get_buffers.

Add dri2_surface_process_drawable_buffers to process the buffers
returned by the server.

14 years agost/egl: Add dri2InvalidateBuffers.
Chia-I Wu [Wed, 17 Feb 2010 15:11:31 +0000 (23:11 +0800)]
st/egl: Add dri2InvalidateBuffers.

src/glx/dri2.c will call dri2InvalidateBuffers when
DRI2_InvalidateBuffers event is received.  This fixes a missing symbol
error, and paves the way for event-based validation.

14 years agoutil: Assert that pointer is not null before dereferencing.
Vinson Lee [Thu, 25 Feb 2010 10:42:41 +0000 (02:42 -0800)]
util: Assert that pointer is not null before dereferencing.

14 years agomesa: Remove dead error condition.
Vinson Lee [Thu, 25 Feb 2010 10:26:18 +0000 (02:26 -0800)]
mesa: Remove dead error condition.

14 years agoglu/sgi: Set freed pointer to NULL.
Vinson Lee [Thu, 25 Feb 2010 10:19:00 +0000 (02:19 -0800)]
glu/sgi: Set freed pointer to NULL.

14 years agor300g: Atomize vertex shader.
Corbin Simpson [Thu, 25 Feb 2010 04:02:59 +0000 (20:02 -0800)]
r300g: Atomize vertex shader.

14 years agor300g: Move CALLOCs to correct place.
Corbin Simpson [Thu, 25 Feb 2010 03:53:47 +0000 (19:53 -0800)]
r300g: Move CALLOCs to correct place.

14 years agor300g: prevent CS overflow when emitting the draw packets
Marek Olšák [Mon, 22 Feb 2010 14:11:29 +0000 (15:11 +0100)]
r300g: prevent CS overflow when emitting the draw packets

Signed-off-by: Corbin Simpson <MostAwesomeDude@gmail.com>
14 years agoxeglgears: Update help text
Kristian Høgsberg [Wed, 24 Feb 2010 20:32:59 +0000 (15:32 -0500)]
xeglgears: Update help text

14 years agollvmpipe: clean up rasterization threads upon context destruction
Brian Paul [Thu, 25 Feb 2010 00:30:43 +0000 (17:30 -0700)]
llvmpipe: clean up rasterization threads upon context destruction

Fixes glean hang, bug 26536.

14 years agovbo: remove dead code
Brian Paul [Wed, 24 Feb 2010 23:13:46 +0000 (16:13 -0700)]
vbo: remove dead code

14 years agor300g: remove invalid .PHONY line
Brian Paul [Wed, 24 Feb 2010 22:49:11 +0000 (15:49 -0700)]
r300g: remove invalid .PHONY line

The $(COMPILER_ARCHIVE) target is not a phony target.
This solves the unconditional re-making of libr300.a

14 years agogallium: remove extra -I paths from Makefile.template
Brian Paul [Wed, 24 Feb 2010 22:09:57 +0000 (15:09 -0700)]
gallium: remove extra -I paths from Makefile.template

14 years agomesa: Fix SCons build.
Vinson Lee [Wed, 24 Feb 2010 22:00:30 +0000 (14:00 -0800)]
mesa: Fix SCons build.

14 years agodri: remove old assertion (see bug 26734)
Brian Paul [Wed, 24 Feb 2010 21:06:52 +0000 (14:06 -0700)]
dri: remove old assertion (see bug 26734)

(cherry picked from commit 293f4d51b473783d5c5ab773a1c438e0a2fe46f2)

14 years agollvmpipe: more lp_rasterizer_task parameter passing
Brian Paul [Wed, 24 Feb 2010 20:53:30 +0000 (13:53 -0700)]
llvmpipe: more lp_rasterizer_task parameter passing

14 years agollvmpipe: pass fewer parameters to rasterization functions
Brian Paul [Wed, 24 Feb 2010 20:30:57 +0000 (13:30 -0700)]
llvmpipe: pass fewer parameters to rasterization functions

14 years agollvmpipe: added some assertions
Brian Paul [Wed, 24 Feb 2010 20:23:10 +0000 (13:23 -0700)]
llvmpipe: added some assertions

14 years agoxeglgears: Remove borrowed GL_OES_EGL_image types
Kristian Høgsberg [Wed, 24 Feb 2010 19:36:56 +0000 (14:36 -0500)]
xeglgears: Remove borrowed GL_OES_EGL_image types

These are now in gl.h.

14 years agoxeglgears: Add test case for texturing from an EGLImage
Kristian Høgsberg [Fri, 12 Feb 2010 00:37:28 +0000 (19:37 -0500)]
xeglgears: Add test case for texturing from an EGLImage

14 years agoegl_dri2: Implement EGL_KHR_image and EGL_KHR_image_pixmap
Kristian Høgsberg [Fri, 12 Feb 2010 00:28:26 +0000 (19:28 -0500)]
egl_dri2: Implement EGL_KHR_image and EGL_KHR_image_pixmap

14 years agointel: Implement GL_OES_EGL_image entrypoints
Kristian Høgsberg [Fri, 12 Feb 2010 00:04:02 +0000 (19:04 -0500)]
intel: Implement GL_OES_EGL_image entrypoints

14 years agointel: Implement DRI image extension
Kristian Høgsberg [Thu, 11 Feb 2010 23:59:40 +0000 (18:59 -0500)]
intel: Implement DRI image extension

14 years agodri_interface.h: Add DRI image and eglImageLookup extensions
Kristian Høgsberg [Thu, 11 Feb 2010 22:45:24 +0000 (17:45 -0500)]
dri_interface.h: Add DRI image and eglImageLookup extensions

These are used for implementing the various EGLImage extensions.

14 years agogallium: remove $(DEFINES) from cc/c++ command lines
Brian Paul [Wed, 24 Feb 2010 19:03:51 +0000 (12:03 -0700)]
gallium: remove $(DEFINES) from cc/c++ command lines

The $(DEFINES) is already in $(CFLAG)S and (CXXFLAGS).
This prevents all the -D args appearing twice in the compilation commands.

14 years agomesa: put declaration before code
Brian Paul [Wed, 24 Feb 2010 18:57:26 +0000 (11:57 -0700)]
mesa: put declaration before code

14 years agogallium: comment/document usage flags
Brian Paul [Wed, 24 Feb 2010 15:59:49 +0000 (08:59 -0700)]
gallium: comment/document usage flags

14 years agocore: Implement GL_OES_EGL_image entry points
Kristian Høgsberg [Thu, 11 Feb 2010 22:42:30 +0000 (17:42 -0500)]
core: Implement GL_OES_EGL_image entry points

14 years agoglapi: GL_OES_EGL_image autogenerated files
Kristian Høgsberg [Thu, 11 Feb 2010 22:37:50 +0000 (17:37 -0500)]
glapi: GL_OES_EGL_image autogenerated files

14 years agoglapi: Add GL_OES_EGL_image
Kristian Høgsberg [Thu, 11 Feb 2010 22:36:59 +0000 (17:36 -0500)]
glapi: Add GL_OES_EGL_image

14 years agost/mesa: updated comments
Brian Paul [Wed, 24 Feb 2010 18:33:54 +0000 (11:33 -0700)]
st/mesa: updated comments

14 years agost/mesa: consolidate redundant format conversion code
Brian Paul [Wed, 24 Feb 2010 18:31:33 +0000 (11:31 -0700)]
st/mesa: consolidate redundant format conversion code