Ben Skeggs [Wed, 19 Dec 2007 08:40:38 +0000 (19:40 +1100)]
nouveau: nuke subchan auto-assign.
It's annoying for several reasons, especially in its current form. May
possibly be reincarnated later (DDX depends on it these days), but in
not quite the same way.
Ben Skeggs [Wed, 19 Dec 2007 02:28:22 +0000 (13:28 +1100)]
nouveau: remove sync hack, gallium got sort-of fixed.
Ben Skeggs [Wed, 19 Dec 2007 02:21:41 +0000 (13:21 +1100)]
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
Brian [Tue, 18 Dec 2007 23:01:25 +0000 (16:01 -0700)]
turn off TGSI_DEBUG
Brian [Tue, 18 Dec 2007 23:00:58 +0000 (16:00 -0700)]
fix bug on GL_VERTEX_PROGRAM_TWO_SIDE path
Brian [Tue, 18 Dec 2007 23:00:31 +0000 (16:00 -0700)]
setup the frontface register (fog.y, ATM)
Brian [Tue, 18 Dec 2007 22:59:54 +0000 (15:59 -0700)]
fix some semantic info mix-ups in calculate_vertex_layout()
Keith Whitwell [Tue, 18 Dec 2007 17:25:33 +0000 (17:25 +0000)]
gallium: rationalize vertex_element state packet
Remove dst_offset (not used)
Add nr_components, which could be calculated from format, but would be
too much effort.
Update i965 driver to cope.
Keith Whitwell [Tue, 18 Dec 2007 16:57:17 +0000 (16:57 +0000)]
gallium: give userbuffers some storage in the aub buffer pool
Keith Whitwell [Tue, 18 Dec 2007 16:56:22 +0000 (16:56 +0000)]
vbo: unmap and remap immediate vbo before/after each draw.
Also use BufferData(NULL) to get fresh storage and avoid synchronous
operation where we would have to flush and wait for the fence after each
draw because of the map.
This will chew through a whole load of buffer space on small draws, so
it isn't a proper solution. Need to support a no-fence or append mapping
mode to do this right, or use user buffers.
Zack Rusin [Tue, 18 Dec 2007 14:59:54 +0000 (09:59 -0500)]
i965: don't treat swz differently and upload vertex buffers
Brian [Tue, 18 Dec 2007 03:41:20 +0000 (20:41 -0700)]
obsolete
Ben Skeggs [Tue, 18 Dec 2007 00:27:44 +0000 (11:27 +1100)]
nouveau: match latest gallium changes
Ben Skeggs [Tue, 18 Dec 2007 00:02:46 +0000 (11:02 +1100)]
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
Brian [Mon, 17 Dec 2007 21:05:53 +0000 (14:05 -0700)]
updates for depth/stencil/alpha state
Brian [Mon, 17 Dec 2007 20:59:55 +0000 (13:59 -0700)]
Emit declarations for constants (references to the const buffer)
Zack Rusin [Mon, 17 Dec 2007 19:36:31 +0000 (14:36 -0500)]
i965: index the destination offset with regards to the current index
Zack Rusin [Mon, 17 Dec 2007 19:05:46 +0000 (14:05 -0500)]
i965: return false when the function fails, not succeeds
Zack Rusin [Mon, 17 Dec 2007 18:21:45 +0000 (13:21 -0500)]
Add the new test program for fp's.
Keith Whitwell [Mon, 17 Dec 2007 16:14:29 +0000 (16:14 +0000)]
gallium: incorporate alpha state into depth_stencil state object.
Ben Skeggs [Mon, 17 Dec 2007 10:49:16 +0000 (21:49 +1100)]
nv40: fix valgrind complaints
Ben Skeggs [Mon, 17 Dec 2007 10:45:13 +0000 (21:45 +1100)]
nv40: clean state a bit
Keith Whitwell [Fri, 14 Dec 2007 20:15:22 +0000 (20:15 +0000)]
965: remove dead state atom decls
Keith Whitwell [Fri, 14 Dec 2007 20:14:58 +0000 (20:14 +0000)]
965: fix for non-indexed draw path
Keith Whitwell [Fri, 14 Dec 2007 20:14:30 +0000 (20:14 +0000)]
965: fix/hack check for NULL texunit in state upload
Keith Whitwell [Fri, 14 Dec 2007 20:14:05 +0000 (20:14 +0000)]
965: fix ExtDivide check
Keith Whitwell [Fri, 14 Dec 2007 20:13:44 +0000 (20:13 +0000)]
965: put brw_constant_buffer atom directly in update list
Brian [Sun, 16 Dec 2007 17:00:51 +0000 (10:00 -0700)]
switch on cpp instead of format
Ben Skeggs [Sun, 16 Dec 2007 13:46:30 +0000 (00:46 +1100)]
nouveau: bump pushbuf size a little, so a "full" packet can fit
Ben Skeggs [Sun, 16 Dec 2007 13:11:41 +0000 (00:11 +1100)]
nv40: colormask thinko
Ben Skeggs [Sun, 16 Dec 2007 12:45:30 +0000 (23:45 +1100)]
nv40: don't use vertex buffers for static vertices.
Ben Skeggs [Sun, 16 Dec 2007 10:26:09 +0000 (21:26 +1100)]
nouveau: some cleanups
Ben Skeggs [Sun, 16 Dec 2007 09:44:44 +0000 (20:44 +1100)]
nv40: fix culling
Ben Skeggs [Sun, 16 Dec 2007 09:21:37 +0000 (20:21 +1100)]
nv40: typo
Ben Skeggs [Sun, 16 Dec 2007 08:28:05 +0000 (19:28 +1100)]
nv40: fp support for TGSI_FILE_IMMEDIATE.
arbfslight works, nouveau's first GLSL prog :)
Ben Skeggs [Sun, 16 Dec 2007 07:36:18 +0000 (18:36 +1100)]
nv40: grow fragprog as needed
Ben Skeggs [Sun, 16 Dec 2007 05:01:25 +0000 (16:01 +1100)]
nv40: destroy programs
Ben Skeggs [Sun, 16 Dec 2007 04:49:49 +0000 (15:49 +1100)]
nv40: make vbo state update static
Brian [Sat, 15 Dec 2007 23:51:57 +0000 (16:51 -0700)]
rename some 'mesa' functions
Brian [Sat, 15 Dec 2007 23:44:29 +0000 (16:44 -0700)]
Use tile functions in new p_tile.[ch]
This removes quite a bit of code duplicated in the drivers.
Brian [Sat, 15 Dec 2007 23:42:22 +0000 (16:42 -0700)]
Re-usable tile get/put functions
Brian [Sat, 15 Dec 2007 16:49:20 +0000 (09:49 -0700)]
don't allocate scratch tile in sp_tile_cache_flush_clear() to avoid stack overflow
Ben Skeggs [Sat, 15 Dec 2007 13:31:26 +0000 (00:31 +1100)]
nouveau: move extension stuff into nouveau_screen.c
Ben Skeggs [Fri, 14 Dec 2007 22:48:11 +0000 (09:48 +1100)]
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
Brian [Fri, 14 Dec 2007 19:25:25 +0000 (12:25 -0700)]
Added origin_lower_left field to pipe_rasterizer_state
This controls whether the window origin is considered to be the lower-left
or upper-left corner.
This effects computation of gl_FragCoord and the application of polygon stipple.
Brian [Fri, 14 Dec 2007 18:43:15 +0000 (11:43 -0700)]
update_samplers() didn't respect the sampler->texunit mapping.
This fixes the glsl/texdemo1.c program.
Brian [Fri, 14 Dec 2007 18:42:28 +0000 (11:42 -0700)]
set SamplerUnit[] entry in load_texture() just to be safe
Brian [Fri, 14 Dec 2007 18:17:48 +0000 (11:17 -0700)]
emit tgsi declarations for texture samplers
Brian [Fri, 14 Dec 2007 18:16:49 +0000 (11:16 -0700)]
set program->SamplersUsed bit when using a texture instruction
Brian [Fri, 14 Dec 2007 18:00:46 +0000 (11:00 -0700)]
Don't always declare frag shader INPUT[0] as fragment position.
We were doing this for the sake of softpipe and the tgsi intergrepter since
we always need the fragment position and W-coordinate information in order
to compute fragment interpolants.
But that's not appropriate for hardware drivers.
The tgsi interpreter now get x,y,w information from a separate tgsi_exec_vector
variable setup by softpipe.
The new pipe_shader_state->input_map[] defines how vert shader outputs map
to frag shader inputs. It may go away though, since one can also examine
the semantic label on frag shader input[0] to figure things out.
Brian [Fri, 14 Dec 2007 17:46:29 +0000 (10:46 -0700)]
update comment for TGSI_TOKEN_TYPE_IMMEDIATE case
Ben Skeggs [Fri, 14 Dec 2007 14:50:15 +0000 (01:50 +1100)]
nv40: less dodgy vp const/insn handling
Brian [Fri, 14 Dec 2007 01:26:48 +0000 (18:26 -0700)]
add missing code for PIPE_FORMAT_S8_UNORM renderbuffer
Brian [Fri, 14 Dec 2007 01:26:10 +0000 (18:26 -0700)]
remove unused var
Keith Whitwell [Thu, 13 Dec 2007 21:00:10 +0000 (21:00 +0000)]
965: get brw_wm_surface_state compiling again
Keith Whitwell [Thu, 13 Dec 2007 20:38:56 +0000 (20:38 +0000)]
965: get fragment shader compiler compiling
Don't think that it will run though.
Zack Rusin [Thu, 13 Dec 2007 16:42:30 +0000 (11:42 -0500)]
i965: make the wm_surface compile
Keith Whitwell [Thu, 13 Dec 2007 16:39:49 +0000 (16:39 +0000)]
965: implement magic buffer offset callback
Keith Whitwell [Thu, 13 Dec 2007 16:35:27 +0000 (16:35 +0000)]
965: magic callback to get buffer offset
Brian [Thu, 13 Dec 2007 16:05:15 +0000 (09:05 -0700)]
Add QuadX,Y fields to tgsi_exec_machine to pass quad's position to tgsi interpreter.
The tgsi linear/perspective attribute code now uses these values rather than
input[0]. Need to update SSE path to take quad x,y as function params.
Then, we can remove additional code.
Keith Whitwell [Thu, 13 Dec 2007 15:39:34 +0000 (15:39 +0000)]
965: missing code from last commit
Keith Whitwell [Thu, 13 Dec 2007 14:52:31 +0000 (14:52 +0000)]
965: remove dead code
Keith Whitwell [Thu, 13 Dec 2007 11:12:44 +0000 (11:12 +0000)]
965: remove dead code
Keith Whitwell [Thu, 13 Dec 2007 10:57:02 +0000 (10:57 +0000)]
965: remove dead code
Keith Whitwell [Thu, 13 Dec 2007 10:56:09 +0000 (10:56 +0000)]
965: remove dead code
Keith Whitwell [Thu, 13 Dec 2007 10:55:47 +0000 (10:55 +0000)]
965: remove reference to metaops
Keith Whitwell [Thu, 13 Dec 2007 10:55:16 +0000 (10:55 +0000)]
965: use state atom array directly
Keith Whitwell [Thu, 13 Dec 2007 10:54:31 +0000 (10:54 +0000)]
965: calculate nr enabled vbos on the fly
Zack Rusin [Thu, 13 Dec 2007 15:32:36 +0000 (10:32 -0500)]
Actually allocate the output registers.
In tgsi the output's will (hopefully) consecutive so this
check (besides not being currently implemented) is not
necessary.
Zack Rusin [Thu, 13 Dec 2007 15:31:39 +0000 (10:31 -0500)]
Don't generate spurious vs, move the enable a bit to do that.
Ben Skeggs [Thu, 13 Dec 2007 14:51:43 +0000 (01:51 +1100)]
nv40: Do all fp setup in nv40_fragprog.c
Ben Skeggs [Thu, 13 Dec 2007 14:14:23 +0000 (01:14 +1100)]
nouveau: mass renaming for consistency, no functional changes
Ben Skeggs [Thu, 13 Dec 2007 00:55:35 +0000 (11:55 +1100)]
nouveau: more adaption..
Ben Skeggs [Wed, 12 Dec 2007 23:41:43 +0000 (10:41 +1100)]
Merge branch 'upstream-gallium-0.1' into darktama-gallium-0.1
Brian [Wed, 12 Dec 2007 23:30:49 +0000 (16:30 -0700)]
added r5g5b5_put_tile_rgba()
Brian [Wed, 12 Dec 2007 23:05:38 +0000 (16:05 -0700)]
Remove get/put_tile_rgba() functions.
Temporarily, use the functions from sp_rgba_tile.c
Brian [Wed, 12 Dec 2007 23:04:52 +0000 (16:04 -0700)]
remove #include
Brian [Wed, 12 Dec 2007 23:00:11 +0000 (16:00 -0700)]
Move float/rgba tile get/put functions into new file.
This should be moved into a gallium util lib (location tbd) so it can also
be used by the state tracker.
Then, remove the pipe->get/put_tile_rgba() functions.
Brian [Wed, 12 Dec 2007 22:24:01 +0000 (15:24 -0700)]
PIPE_SCREEN_SURFACE no longer needed
Brian [Wed, 12 Dec 2007 21:55:57 +0000 (14:55 -0700)]
Re-org of st_create_framebuffer() and renderbuffer format selection.
st_create_framebuffer() now takes pipe_formats for the color, depth, stencil
buffers.
This avoids a round-about chain of calls to pipe->is_format_supported() for
window renderbuffers (their format never changes).
Renderbuffer format selection code in st_format.c is simpler now too.
Brian [Wed, 12 Dec 2007 21:45:22 +0000 (14:45 -0700)]
move some code to avoid deref of NULL ptr
Keith Whitwell [Wed, 12 Dec 2007 20:07:35 +0000 (20:07 +0000)]
965: remove complex compiler for simple fragment programs.
Keep the simple compiler for complex fragment programs...
Keith Whitwell [Wed, 12 Dec 2007 19:53:41 +0000 (19:53 +0000)]
965: sketch changes to brw_wm_surface_state.c
Keith Whitwell [Wed, 12 Dec 2007 18:44:03 +0000 (18:44 +0000)]
965: delete dead files
Keith Whitwell [Wed, 12 Dec 2007 17:24:10 +0000 (17:24 +0000)]
965: delete dead files
Keith Whitwell [Wed, 12 Dec 2007 17:22:51 +0000 (17:22 +0000)]
965: delete dead files
Brian [Wed, 12 Dec 2007 20:08:00 +0000 (13:08 -0700)]
remove old assertion
Brian [Wed, 12 Dec 2007 19:59:45 +0000 (12:59 -0700)]
add PIPE_FORMAT_R5G6B5_UNORM to list of supported screen surface types
Brian [Wed, 12 Dec 2007 19:59:19 +0000 (12:59 -0700)]
update format param type
Brian [Wed, 12 Dec 2007 19:58:59 +0000 (12:58 -0700)]
Try PIPE_FORMAT_R5G6B5_UNORM for GL_RGB5 request.
Brian [Wed, 12 Dec 2007 19:58:04 +0000 (12:58 -0700)]
fix some mistakes in the _PIPE_FORMAT_x #defines
Zack Rusin [Wed, 12 Dec 2007 17:26:00 +0000 (12:26 -0500)]
i965: compile vertex shaders and emit hardware instructions
impossible to test because fragment shaders haven't been done yet
and it crahses in the fragment shading code. but given that i'm
infallible (and highly dillusional) i'm sure it's correct.
José Fonseca [Wed, 12 Dec 2007 16:04:58 +0000 (16:04 +0000)]
Add src/mesa to include path.
Ben Skeggs [Wed, 12 Dec 2007 14:04:12 +0000 (01:04 +1100)]
nouveau: take jumps into account properly when debugging pushbuf
Ben Skeggs [Wed, 12 Dec 2007 12:37:52 +0000 (23:37 +1100)]
nv40: Fix bug in vtxprog + a few tweaks
Ben Skeggs [Wed, 12 Dec 2007 12:31:16 +0000 (23:31 +1100)]
nv40: small bug
Zack Rusin [Tue, 11 Dec 2007 22:46:06 +0000 (17:46 -0500)]
i915tex: remove. it's deprecated and causes merge problems
we did some small changes in the beginning of the gallium3d
lifecycle in i915tex which is not in master anymore and just
causes problems when doing merges. getting rid of the headache
by just nuking it here
Ben Skeggs [Wed, 12 Dec 2007 03:19:59 +0000 (14:19 +1100)]
nouveau: adapt
Some things that worked before are now broken, there's an "XXX:" around one
of the culprits in the GL state tracker so hopefully it'll get fixed soon!
Brian [Wed, 12 Dec 2007 02:17:31 +0000 (19:17 -0700)]
remove more -I paths
Brian [Wed, 12 Dec 2007 02:16:46 +0000 (19:16 -0700)]
prefix some #includes