Brian Paul [Tue, 18 Aug 2009 15:31:22 +0000 (09:31 -0600)]
gallium: improved comments, minor whitespace changes
Chia-I Wu [Fri, 14 Aug 2009 10:26:26 +0000 (18:26 +0800)]
egl: Remove eglhash.c and eglhash.h.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Fri, 14 Aug 2009 10:02:38 +0000 (18:02 +0800)]
egl: Add back handle checking.
Handle checking was done using hash tables. Now that they are gone, we
have to loop over the lists.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Fri, 14 Aug 2009 10:05:19 +0000 (18:05 +0800)]
egl: Make lookup functions static inline.
progs/egl/demo3.c is also changed since it uses an internal function.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Fri, 14 Aug 2009 09:47:00 +0000 (17:47 +0800)]
egl: Remove hash table for displays.
The hash table was used to map a display to a handle. It is simpler to
cast directly.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Fri, 14 Aug 2009 09:29:23 +0000 (17:29 +0800)]
egl: Remove hash table for surfaces.
The hash table was used to map a surface to a handle. It is simpler to
cast directly.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Thu, 13 Aug 2009 05:39:51 +0000 (13:39 +0800)]
egl: _eglCloseDriver should be no-op.
Move drv->API.Terminate call to eglTerminate. Remove
_eglReleaseDisplayResource as drivers are doing it.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Thu, 13 Aug 2009 05:38:24 +0000 (13:38 +0800)]
egl: Some per-driver data should be per-display.
Move some fields of _EGLDriver to _EGLDisplay. It also becomes
unnecessary to pass _EGLDisplay to drivers when _eglMain is called.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Thu, 13 Aug 2009 05:01:48 +0000 (13:01 +0800)]
egl: Change the way drivers are loaded.
Driver is chosen and preloaded when eglGetDisplay is called. Later when
eglInitialize is called, the same driver is matched to initialize the
display. Also, add new, but unused, hooks to EGLDriver to allow a
driver to probe a display or unload itself.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Chia-I Wu [Tue, 11 Aug 2009 09:09:39 +0000 (17:09 +0800)]
egl: Overhaul driver API.
The motivation is so that drivers do not need to look up and check for
bad display, context, and etc. It also becomes unnecessary for drivers
to call the link functions.
This commit makes eglapi.[ch] do the lookup and check. As a result, the
driver API is overhauled, and almost all sources and drivers need
update. The updates are mainly find and replace with human brains.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Dave Airlie [Tue, 18 Aug 2009 10:38:49 +0000 (20:38 +1000)]
r600: fix build
Dave Airlie [Tue, 18 Aug 2009 10:30:15 +0000 (20:30 +1000)]
r300: remove warning introduced with OQ
Dave Airlie [Tue, 18 Aug 2009 10:29:02 +0000 (20:29 +1000)]
radeon/r200: fix build after OQ commits
Dave Airlie [Sun, 16 Aug 2009 08:42:24 +0000 (18:42 +1000)]
r300: OQ rework
Move to common code base so radeon/r200 can add support for this.
Make OQ start a state emitted like all normal state, and make no-tcl
flushing work in proper places.
Really need a generic post emit space reservation mechanism like max_state
so we can reserve some space for the emit
this code passes demos/arbocclude, piglit occlusion query and
glean occlusion query with TCL and NO-TCL on my rv530.
Dave Airlie [Sun, 16 Aug 2009 08:41:23 +0000 (18:41 +1000)]
r300: fix missing BEGIN/END batches
Dave Airlie [Tue, 18 Aug 2009 03:55:12 +0000 (13:55 +1000)]
r300: fix big endian build
Brian Paul [Mon, 17 Aug 2009 23:11:54 +0000 (17:11 -0600)]
gallium: memset() tgsi_exec_machine to all zeros in tgsi_exec_machine_create()
This fixes invalid values for CondStackTop, LoopStackTop, etc.
Brian Paul [Mon, 17 Aug 2009 18:57:37 +0000 (12:57 -0600)]
demos/glsl: remove glutInitWindowPosition() calls
Alex Deucher [Mon, 17 Aug 2009 22:16:38 +0000 (18:16 -0400)]
r600: fix counting error after the last commit
Alex Deucher [Mon, 17 Aug 2009 21:47:27 +0000 (17:47 -0400)]
r600: make sure the number of indices is valid
make sure the number of indices is valid for the
requested prim type. glxgears sends invalid
quad strips with only 2 indices for example.
Alex Deucher [Mon, 17 Aug 2009 19:42:19 +0000 (15:42 -0400)]
radeon: remove RADEON_DEBUG_BO stuff
This stuff was a vestige of the r600 bring up and
now mostly serves to periodically break the build.
Maarten Maathuis [Mon, 17 Aug 2009 12:45:50 +0000 (14:45 +0200)]
nv50: remove a few cases of directly casting struct pipe_context
Maarten Maathuis [Sun, 16 Aug 2009 02:06:44 +0000 (04:06 +0200)]
nv50: borrow some flushing code from the ddx
- This fixes neverball corruption.
- I'm unsure about what we're actually flushing here.
Maarten Maathuis [Sun, 16 Aug 2009 01:20:09 +0000 (03:20 +0200)]
gallium: Make PIPE_TRANSFER_{READ,WRITE,READ_WRITE} bitmask friendly.
Maarten Maathuis [Sat, 15 Aug 2009 23:29:06 +0000 (01:29 +0200)]
nv50: whitespace fixes and deobfuscation
Brian Paul [Mon, 17 Aug 2009 14:27:52 +0000 (08:27 -0600)]
cell: fix incorrect pipe_transfer tests
The value is an enum, not a bitmask.
Jerome Glisse [Mon, 17 Aug 2009 10:46:34 +0000 (12:46 +0200)]
r300: split vbo rendering with big drawarray case
Split vbo rendering when the number of elements requested
by drawarrays is bigger than 65536.
Christoph Bumiller [Mon, 17 Aug 2009 10:26:54 +0000 (12:26 +0200)]
nv50: fix stencil state
It's the front stencil methods that have contiguous offsets,
not the back ones.
Unfortunately the names in the header still have FRONT/BACK
reversed, so I'm using hex values until it gets updated.
Dave Airlie [Mon, 17 Aug 2009 09:09:15 +0000 (19:09 +1000)]
radeon: turn off bo debugging
Maciej Cencora [Sun, 16 Aug 2009 00:04:29 +0000 (02:04 +0200)]
r300: disable ZTOP only when occlusion queries are used
Maciej Cencora [Sat, 15 Aug 2009 23:56:29 +0000 (01:56 +0200)]
Merge branch 'oq'
Pauli Nieminen [Sat, 15 Aug 2009 19:30:15 +0000 (13:30 -0600)]
mesa: Add 2 new demos to .gitignore.
Maarten Maathuis [Fri, 14 Aug 2009 20:25:04 +0000 (22:25 +0200)]
nv50: avoid a NULL-ptr dereference when the pipe context changes
- We cannot assume all state objects are present when the pipe context changes.
Christoph Bumiller [Sat, 15 Aug 2009 14:22:27 +0000 (16:22 +0200)]
nv50: align registers used with TEX to 4
The TEX instruction is passed the first index of a contiguous
range of 4 TEMP registers that contain coordinates / LOD and,
after execution, the texel values.
It seems the first index is required to be a multiple of 4 on
some (older ?) cards.
Maciej Cencora [Thu, 11 Jun 2009 14:11:47 +0000 (16:11 +0200)]
r300: enable ARB_occlusion_query
Supported only on HW with TCL block and with proper radeon drm.
Required minimum radeon drm version is 1.30 or KMS.
Maciej Cencora [Sat, 15 Aug 2009 13:10:29 +0000 (15:10 +0200)]
radeon: add flag for drm OQ support
Maciej Cencora [Thu, 11 Jun 2009 14:10:20 +0000 (16:10 +0200)]
r300: temporary occlusion query hack
Maciej Cencora [Thu, 11 Jun 2009 14:00:03 +0000 (16:00 +0200)]
r300: clear not_flushed OQ list after flush
Maciej Cencora [Sat, 15 Aug 2009 12:35:28 +0000 (14:35 +0200)]
r300/oq: add some debugging info
Maciej Cencora [Thu, 11 Jun 2009 14:13:23 +0000 (16:13 +0200)]
r300: add occlusion queries support
TODO:
- use proper interface for checking if bo is idle when it's available
- disable ZTOP only when needed
- make it work under KMS
Dave Airlie [Sat, 15 Aug 2009 11:34:17 +0000 (21:34 +1000)]
radeon space: realign with drm space check code
Dave Airlie [Sat, 15 Aug 2009 11:18:30 +0000 (21:18 +1000)]
r300: fixup space checks since VBO code
Hopefully this gets the ordering correct so the space checks don't fail.
Dave Airlie [Sat, 15 Aug 2009 10:30:45 +0000 (20:30 +1000)]
r300: add just in case warn I don't think this can actually happen
Dave Airlie [Sat, 15 Aug 2009 10:19:09 +0000 (20:19 +1000)]
radeon: enable vertex splitting for IBs
Based on Maciej's code, just fixed up the alignments for INDX_BUFFER
ut2004 runs AS-Convoy
Roland Scheidegger [Sat, 15 Aug 2009 01:44:02 +0000 (03:44 +0200)]
i965: disable bounds checking on arrays with stride 0
if stride is 0 we cannot use count as max index for bounds checking,
since the hardware will simply return 0 as data for indices failing
bounds check. If stride is 0 any index should be valid hence simply
disable bounds checking in this case.
This fixes bugs introduced with
e643bc5fc7afb563028f5a089ca5e38172af41a8.
Ian Romanick [Fri, 14 Aug 2009 23:27:33 +0000 (16:27 -0700)]
i965: Add support for GL_ARB_seamless_cube_map
Ian Romanick [Fri, 14 Aug 2009 23:26:59 +0000 (16:26 -0700)]
demos/cubemap: Add support for GL_ARB_seamless_cube_map
Ian Romanick [Fri, 14 Aug 2009 08:25:05 +0000 (01:25 -0700)]
Regenerate files for GL_ARB_seamless_cube_map
Ian Romanick [Fri, 14 Aug 2009 08:20:56 +0000 (01:20 -0700)]
Infrastructure for GL_ARB_seamless_cube_map
Ian Romanick [Fri, 14 Aug 2009 06:57:03 +0000 (23:57 -0700)]
Regenerate files for GL_APPLE_flush_buffer_range
Maciej Cencora [Fri, 14 Aug 2009 22:52:44 +0000 (00:52 +0200)]
Merge branch 'vbo_clean'
Conflicts:
src/mesa/drivers/dri/r300/r300_draw.c
Maciej Cencora [Fri, 14 Aug 2009 20:32:57 +0000 (22:32 +0200)]
r300: mark VBO buffer objects as persistent
Maciej Cencora [Fri, 14 Aug 2009 20:48:03 +0000 (22:48 +0200)]
r300: unmap buffer objects after usage
Brian Paul [Fri, 14 Aug 2009 18:58:21 +0000 (12:58 -0600)]
mesa: append uniform values to the log file the first time we use a shader
This info is essential to using/debugging a shader outside of its normal
application.
Brian Paul [Fri, 14 Aug 2009 18:57:39 +0000 (12:57 -0600)]
mesa: also pass the GPU program to _mesa_append_uniforms_to_file()
We want the post-link program at this points.
Brian Paul [Fri, 14 Aug 2009 17:31:00 +0000 (11:31 -0600)]
vbo: call _mesa_valid_to_render()
Brian Paul [Fri, 14 Aug 2009 17:27:51 +0000 (11:27 -0600)]
Merge branch 'mesa_7_5_branch'
Brian Paul [Fri, 14 Aug 2009 17:26:20 +0000 (11:26 -0600)]
mesa: new _mesa_append_uniforms_to_file() debug/logging function
Brian Paul [Fri, 14 Aug 2009 16:48:31 +0000 (10:48 -0600)]
mesa: call _mesa_valid_to_render()
Brian Paul [Fri, 14 Aug 2009 16:46:04 +0000 (10:46 -0600)]
vbo: call _mesa_valid_to_render()
Brian Paul [Fri, 14 Aug 2009 16:45:17 +0000 (10:45 -0600)]
mesa: new _mesa_valid_to_render() function
Tests if the current shader/program is valid and that the framebuffer is
complete. To be called by glBegin, glDrawArrays, etc.
Brian Paul [Fri, 14 Aug 2009 16:41:03 +0000 (10:41 -0600)]
mesa: minor error string changes
Brian Paul [Fri, 14 Aug 2009 17:24:20 +0000 (11:24 -0600)]
docs: docs: document new --with-max-width/height config options
Brian Paul [Fri, 14 Aug 2009 17:23:18 +0000 (11:23 -0600)]
Add a FAQ about internal buffer sizes.
(cherry picked from master, commit
9a8781bd24730374e14568f67f7db8a9cc444bb4)
Brian Paul [Fri, 14 Aug 2009 17:23:00 +0000 (11:23 -0600)]
Add configure options for MAX_WIDTH/HEIGHT.
This adds two --with configure options for setting defines for
MAX_WIDTH and MAX_HEIGHT. It's conceivably just as easy to define
these in CFLAGS manually, but this way users don't need to know
about internal Mesa details.
Patch updated by BrianP to set DEFINES, not CFLAGS.
(cherry picked from master, commit
7085dce750f478312a47f474330d63cc900a8448)
Brian Paul [Fri, 14 Aug 2009 17:22:37 +0000 (11:22 -0600)]
Allow external settings of MAX_WIDTH/HEIGHT.
Conditionalize MAX_WIDTH / MAX_HEIGHT defines so that users can
set them via CFLAGS.
(cherry picked from master, commit
66bc17e80e22d8f205cc02171b1c266feab6631f)
Keith Whitwell [Fri, 14 Aug 2009 16:56:33 +0000 (17:56 +0100)]
st/xlib: reduce the proliferation of GLX context types
Now there is just a single, struct __GLXcontextRec, which is the
GLXContext typedef has already been defined as a pointer to. I
believe this is the intended usage, that GLX implementations should
define that struct as they require.
Merge the two previous structs into one and get rid of the
no-longer-necessary type casts and sub-classing.
Keith Whitwell [Fri, 14 Aug 2009 12:41:57 +0000 (13:41 +0100)]
st/dri: remove unused dummyContext value
Brian Paul [Fri, 14 Aug 2009 16:30:10 +0000 (10:30 -0600)]
mesa: move assertions in test_attachment_completeness()
Put the assertions after the error checks.
Christoph Bumiller [Fri, 14 Aug 2009 16:23:55 +0000 (18:23 +0200)]
nv50: fix mipmap offsets and tiling
The hardware expects a texture's tile mode to change with
the mipmap level.
Also, only multiply by block size once to obtain size.
Christoph Bumiller [Fri, 14 Aug 2009 16:16:46 +0000 (18:16 +0200)]
nv50: make sure we don't re-emit outdated scissor state
Since we don't turn off scissors, we need to update the
stateobj when the framebuffer size changes.
Christoph Bumiller [Fri, 14 Aug 2009 16:06:24 +0000 (18:06 +0200)]
nv50: make use of the y-origin switch
Now that we know how to make the hardware have y-coordinate origin
top, we can get rid of all the inversion introduced earlier.
Maciej Cencora [Fri, 14 Aug 2009 15:04:08 +0000 (17:04 +0200)]
r300: remove broken vertex splitting
Revert to previous behaviour of dropping to big render operations.
Maciej Cencora [Fri, 14 Aug 2009 14:59:26 +0000 (16:59 +0200)]
r300: rework index buffer setup
Copy elements directly to DMA bo to get rid of one memcpy, and prepare for using VBOs for index buffer.
Maciej Cencora [Fri, 14 Aug 2009 14:39:01 +0000 (16:39 +0200)]
r300: remove unused software TNL path
This doesn't remove software TCL path - so RS480 and RS690 work as before.
Maciej Cencora [Sat, 11 Jul 2009 18:40:51 +0000 (20:40 +0200)]
r300: use VBOs for vertex attributes
Brian Paul [Fri, 14 Aug 2009 15:00:15 +0000 (09:00 -0600)]
docs: document new --with-max-width/height config options
Tom Fogal [Fri, 14 Aug 2009 01:51:57 +0000 (19:51 -0600)]
Add a FAQ about internal buffer sizes.
Tom Fogal [Fri, 14 Aug 2009 01:40:30 +0000 (19:40 -0600)]
Add configure options for MAX_WIDTH/HEIGHT.
This adds two --with configure options for setting defines for
MAX_WIDTH and MAX_HEIGHT. It's conceivably just as easy to define
these in CFLAGS manually, but this way users don't need to know
about internal Mesa details.
Patch updated by BrianP to set DEFINES, not CFLAGS.
Tom Fogal [Fri, 14 Aug 2009 01:23:54 +0000 (19:23 -0600)]
Allow external settings of MAX_WIDTH/HEIGHT.
Conditionalize MAX_WIDTH / MAX_HEIGHT defines so that users can
set them via CFLAGS.
Tobias Doerffel [Fri, 14 Aug 2009 14:50:43 +0000 (08:50 -0600)]
intel: in intel_context struct use typedef for sarea struct
Using drm_i915_sarea_t instead of struct drm_i915_sarea seems to be
a common standard now, therefore fix it also in intel_context
structure. Additionally this silences a compiler warning:
intel_swapbuffers.c: In function `intelFixupVblank':
intel_swapbuffers.c:48: warning: initialization from incompatible pointer type
Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
Thierry Vignaud [Fri, 14 Aug 2009 14:16:35 +0000 (08:16 -0600)]
mesa: make sure r300/compiler/ sources are included in tarball
Chia-I Wu [Fri, 14 Aug 2009 05:33:48 +0000 (13:33 +0800)]
st/vega: Add more symbols defined by mesa/st.
Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
Maciej Cencora [Wed, 29 Jul 2009 17:29:59 +0000 (19:29 +0200)]
r300: add required symlinks
Reported by adamk on #radeon
Maciej Cencora [Sat, 1 Aug 2009 10:00:35 +0000 (12:00 +0200)]
radeon: handle debug versions of radeon_bo_open
Christoph Bumiller [Fri, 14 Aug 2009 13:26:58 +0000 (15:26 +0200)]
nv50: fix typo in REALLOC's 2nd argument in ctor_immd
Maciej Cencora [Sat, 11 Jul 2009 13:00:52 +0000 (15:00 +0200)]
radeon: add VBO support (not enabled yet)
Maciej Cencora [Sat, 1 Aug 2009 13:11:57 +0000 (15:11 +0200)]
radeon: export emitvec* functions
Maciej Cencora [Sun, 26 Jul 2009 10:57:41 +0000 (12:57 +0200)]
radeon: constify some parameters
Alex Deucher [Fri, 14 Aug 2009 05:33:45 +0000 (01:33 -0400)]
r600: emit SURFACE_BASE_UPDATE on depth base updates on rv6xx
Dave Airlie [Fri, 14 Aug 2009 00:03:51 +0000 (10:03 +1000)]
glsl: re-write Makefile after I called it bad.
Brian Paul [Thu, 13 Aug 2009 22:03:01 +0000 (16:03 -0600)]
progs/glsl: added multitex.shtest config file
Brian Paul [Thu, 13 Aug 2009 22:02:24 +0000 (16:02 -0600)]
progs/glsl: set generic vertex attribute values
Brian Paul [Thu, 13 Aug 2009 21:53:49 +0000 (15:53 -0600)]
progs/glsl: add type field to shtest config files
Plus, texture loading.
Brian Paul [Thu, 13 Aug 2009 21:06:28 +0000 (15:06 -0600)]
mesa: added *.shtest files to demo tarball
Dave Airlie [Thu, 13 Aug 2009 22:35:49 +0000 (08:35 +1000)]
glsl/tests: skinning.o
worst Makefile ever. not sure what is going on here, hopefully
this fixes tinderbox
Alex Deucher [Thu, 13 Aug 2009 21:55:42 +0000 (17:55 -0400)]
r600: move non-surface related cb state to general state
Alex Deucher [Thu, 13 Aug 2009 21:29:24 +0000 (17:29 -0400)]
r600: move non-surface related depth state to general state
RALOVICH, Kristóf [Wed, 12 Aug 2009 10:41:22 +0000 (12:41 +0200)]
glx: indent -br -i3 -npcs --no-tabs
Some manual intervention applied since XEXT_* and other macro magic
fooled indent. Auto generated files were also skipped.
Brian Paul [Thu, 13 Aug 2009 20:38:27 +0000 (14:38 -0600)]
mesa: fix some invalid memory reads
We were passing the address of a float to functions that would deref the
pointer as an array.