profile/ivi/mesa.git
17 years agoAdd a new interface between softpipe and the window system / buffer manager.
Keith Whitwell [Sun, 5 Aug 2007 16:23:38 +0000 (17:23 +0100)]
Add a new interface between softpipe and the window system / buffer manager.

This interface is defined by softpipe and any window system (eg i915pipe)
wishing to use softpipe is required to implement the interface.
Currently the interface is all about buffer management.

Generalizing, each pipe driver will advertise an interface in a similar
spirit to this, and again any window system driver wishing to use that
rendering pipeline will have to implement the interface it defines.  It
clearly isn't a one-way street however, as softpipe could just do its own
buffer management with malloc.  The interaction with a buffer manager is
desired to allow us to exercise the hardware swapbuffers functionality of
the i915pipe driver, and also to get a feel for the way hardware drivers
which really need a buffer manager will work.

17 years agoremove intel_pixel.c
Brian [Fri, 3 Aug 2007 19:31:56 +0000 (13:31 -0600)]
remove intel_pixel.c

17 years agoadded st_cb_fbo.c
Brian [Fri, 3 Aug 2007 19:30:55 +0000 (13:30 -0600)]
added st_cb_fbo.c

17 years agomore work on st_choose_pipe_format()
Brian [Fri, 3 Aug 2007 19:29:02 +0000 (13:29 -0600)]
more work on st_choose_pipe_format()

17 years agoframebuffer object functions
Brian [Fri, 3 Aug 2007 19:28:35 +0000 (13:28 -0600)]
framebuffer object functions

17 years agoRemove dead files
Keith Whitwell [Fri, 3 Aug 2007 17:58:41 +0000 (18:58 +0100)]
Remove dead files

17 years agoRip out more dead drawing-related code.
Keith Whitwell [Fri, 3 Aug 2007 17:56:12 +0000 (18:56 +0100)]
Rip out more dead drawing-related code.

17 years agoRemove "static region" support.
Keith Whitwell [Fri, 3 Aug 2007 12:22:30 +0000 (13:22 +0100)]
Remove "static region" support.

The frontbuffer/driBufMgr interactions are handled as a special case
in the intel_screen code.

17 years agoSimplify frontbuffer / sarea / rotation management.
Keith Whitwell [Fri, 3 Aug 2007 12:14:27 +0000 (13:14 +0100)]
Simplify frontbuffer / sarea / rotation management.

Remove lots of old cruft.

17 years agoWorkaround wierd oops on gutsy when building mesa.
Keith Whitwell [Fri, 3 Aug 2007 11:28:03 +0000 (12:28 +0100)]
Workaround wierd oops on gutsy when building mesa.

17 years agoadded pipe->supported_formats()
Brian [Fri, 3 Aug 2007 02:40:33 +0000 (20:40 -0600)]
added pipe->supported_formats()

17 years agohook in teximage bits
Brian [Fri, 3 Aug 2007 02:40:19 +0000 (20:40 -0600)]
hook in teximage bits

17 years agomore formats
Brian [Fri, 3 Aug 2007 02:39:45 +0000 (20:39 -0600)]
more formats

17 years agotrim #includes
Brian [Fri, 3 Aug 2007 02:36:36 +0000 (20:36 -0600)]
trim #includes

17 years agobeginings of teximage functions
Brian [Fri, 3 Aug 2007 02:36:06 +0000 (20:36 -0600)]
beginings of teximage functions

17 years agopipe->clear() now takes a surface, rather than color/depth/stencil flags.
Brian [Thu, 2 Aug 2007 22:08:18 +0000 (16:08 -0600)]
pipe->clear() now takes a surface, rather than color/depth/stencil flags.

pipe->clear() only used to clear whole buffers (no scissor) w/out masking.
Draw a colored quadrilateral in all other cases.

17 years agocall st_init_cb_drawpixels
Brian [Thu, 2 Aug 2007 20:21:16 +0000 (14:21 -0600)]
call st_init_cb_drawpixels

17 years agoadded st_cb_drawpixels.c
Brian [Thu, 2 Aug 2007 20:21:02 +0000 (14:21 -0600)]
added st_cb_drawpixels.c

17 years agoinitial work for textured-quad glDrawPixels
Brian [Thu, 2 Aug 2007 20:20:40 +0000 (14:20 -0600)]
initial work for textured-quad glDrawPixels

17 years agoremove st_draw.h include
Brian [Thu, 2 Aug 2007 20:20:13 +0000 (14:20 -0600)]
remove st_draw.h include

17 years agosetup more state for clear_with_quad()
Brian [Thu, 2 Aug 2007 19:48:02 +0000 (13:48 -0600)]
setup more state for clear_with_quad()

17 years agoMerge branch 'softpipe_0_1_branch' of git+ssh://brianp@git.freedesktop.org/git/mesa...
Brian [Thu, 2 Aug 2007 19:46:47 +0000 (13:46 -0600)]
Merge branch 'softpipe_0_1_branch' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa into softpipe_0_1_branch

17 years agoget rid of accum param
Brian [Thu, 2 Aug 2007 19:38:38 +0000 (13:38 -0600)]
get rid of accum param

17 years agoRemove all references to swrast.
Keith Whitwell [Thu, 2 Aug 2007 19:35:50 +0000 (20:35 +0100)]
Remove all references to swrast.

The one place the functionality continues to be needed is as last-ditch
implementations of TexCopyImage, etc.  TBD what to do about that, but
that will be an issue for state_tracker, not for here.

17 years agoFix make recursion.
Keith Whitwell [Thu, 2 Aug 2007 19:33:58 +0000 (20:33 +0100)]
Fix make recursion.

Unfortunately means you can't just type make in softpipe any more.

17 years agoadded clear-scissor.c
Brian [Thu, 2 Aug 2007 18:14:16 +0000 (12:14 -0600)]
added clear-scissor.c

17 years agotest glClear w/ scissor
Brian [Thu, 2 Aug 2007 18:14:05 +0000 (12:14 -0600)]
test glClear w/ scissor

17 years agoImplement new draw_vertices() path for simple vertex array drawing, use it for glClear.
Brian [Thu, 2 Aug 2007 18:12:48 +0000 (12:12 -0600)]
Implement new draw_vertices() path for simple vertex array drawing, use it for glClear.

17 years agoRemove references to accum buffers in softpipe.
Keith Whitwell [Thu, 2 Aug 2007 17:25:10 +0000 (18:25 +0100)]
Remove references to accum buffers in softpipe.

Also some minor clear fixes.

17 years agoRemove intel_state.c, intel_rotate.[ch]
Keith Whitwell [Thu, 2 Aug 2007 13:56:44 +0000 (14:56 +0100)]
Remove intel_state.c, intel_rotate.[ch]

17 years agoNew header file.
Brian [Thu, 2 Aug 2007 16:30:32 +0000 (10:30 -0600)]
New header file.

17 years agoinclude st_cb_clear.h
Brian [Thu, 2 Aug 2007 16:29:50 +0000 (10:29 -0600)]
include st_cb_clear.h

17 years agosketch out clearing with quads
Brian [Thu, 2 Aug 2007 16:29:42 +0000 (10:29 -0600)]
sketch out clearing with quads

17 years agoadd PIPE_MASK_RGBA
Brian [Thu, 2 Aug 2007 16:29:04 +0000 (10:29 -0600)]
add PIPE_MASK_RGBA

17 years agocomment follow-up
Brian [Thu, 2 Aug 2007 16:01:14 +0000 (10:01 -0600)]
comment follow-up

17 years agoMerge branch 'softpipe_0_1_branch' of git+ssh://brianp@git.freedesktop.org/git/mesa...
Brian [Thu, 2 Aug 2007 15:17:56 +0000 (09:17 -0600)]
Merge branch 'softpipe_0_1_branch' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa into softpipe_0_1_branch

17 years agoRemove intelClear() hack.
Keith Whitwell [Thu, 2 Aug 2007 13:53:08 +0000 (14:53 +0100)]
Remove intelClear() hack.

Have added intel_batchbuffer_flush calls to the blit functions.  We
still shouldn't be calling back into this remnant intel code from the
softpipe driver, though, so that will go too at some point.

17 years agoRemove remnants of i915 texture-from-pbo code.
Keith Whitwell [Thu, 2 Aug 2007 13:50:08 +0000 (14:50 +0100)]
Remove remnants of i915 texture-from-pbo code.

17 years agoReroute some clear functionality.
Keith Whitwell [Thu, 2 Aug 2007 12:59:31 +0000 (13:59 +0100)]
Reroute some clear functionality.

Still require the intelClear() call to flush batchbuffers.  That will be
removed later...

17 years agoimplement masking in sp_region_fill()
Brian [Wed, 1 Aug 2007 22:15:30 +0000 (16:15 -0600)]
implement masking in sp_region_fill()

17 years agorearrange things in xmesa_clear() a bit
Brian [Wed, 1 Aug 2007 21:39:19 +0000 (15:39 -0600)]
rearrange things in xmesa_clear() a bit

17 years agoget cliprect bounds after softpipe_update_derived()
Brian [Wed, 1 Aug 2007 21:38:59 +0000 (15:38 -0600)]
get cliprect bounds after softpipe_update_derived()

17 years agoRe-implement intelClear() in terms of softpipe_clear(). Pretty simple/small now.
Brian [Wed, 1 Aug 2007 21:11:59 +0000 (15:11 -0600)]
Re-implement intelClear() in terms of softpipe_clear().  Pretty simple/small now.

Note: softpipe_clear() should really be renamed to something like
pipe_clear_with_blits() and put into a driver-indepedent module...

17 years agoMore work on glClear.
Brian [Wed, 1 Aug 2007 20:46:07 +0000 (14:46 -0600)]
More work on glClear.

Add a 'mask' param to region_fill() to help with clearing combined Z/stencil buffers, glColorMask, etc.

17 years agos/Z24_S8/S8_Z24/
Brian [Wed, 1 Aug 2007 19:11:34 +0000 (13:11 -0600)]
s/Z24_S8/S8_Z24/

17 years agos/Z24_S8/S8_Z24/ (stencil is in the high byte)
Brian [Wed, 1 Aug 2007 19:04:58 +0000 (13:04 -0600)]
s/Z24_S8/S8_Z24/ (stencil is in the high byte)

17 years agoCheckpoint: glClear changes - working, bug very rough.
Brian [Wed, 1 Aug 2007 18:58:38 +0000 (12:58 -0600)]
Checkpoint: glClear changes - working, bug very rough.

17 years agoBuild libsoftpipe.a
Keith Whitwell [Wed, 1 Aug 2007 14:56:23 +0000 (15:56 +0100)]
Build libsoftpipe.a

Each pipe driver will build to a .a library, as these will optionally
be included in the various DRI drivers (this will make more sense once
there is at least one hardware driver...).  Not strictly necessary for
softpipe, but want to minimize the differences between it and
actual hw implementations.

17 years agoRemove unused file intel_render.c
Keith Whitwell [Tue, 31 Jul 2007 20:06:31 +0000 (21:06 +0100)]
Remove unused file intel_render.c

17 years agoRemove unused file
Keith Whitwell [Tue, 31 Jul 2007 20:06:02 +0000 (21:06 +0100)]
Remove unused file

17 years agoRemove intel_span.[ch]
Keith Whitwell [Tue, 31 Jul 2007 20:05:24 +0000 (21:05 +0100)]
Remove intel_span.[ch]

17 years agosp_z_surface.h is dead
Brian [Tue, 31 Jul 2007 23:55:32 +0000 (17:55 -0600)]
sp_z_surface.h is dead

17 years agoObsolete.
Brian [Tue, 31 Jul 2007 23:54:56 +0000 (17:54 -0600)]
Obsolete.

17 years agoRedesign pipe_surface in terms of pipe_region.
Brian [Tue, 31 Jul 2007 23:42:03 +0000 (17:42 -0600)]
Redesign pipe_surface in terms of pipe_region.

struct pipe_buffer goes away.
Added basic region functions to softpipe to allocate/release malloc'd regions.
Surface-related code is fairly coherent now.

17 years agoLift region-related functions up to the pipe interface.
Brian [Tue, 31 Jul 2007 21:44:50 +0000 (15:44 -0600)]
Lift region-related functions up to the pipe interface.

Some of these functions probably should be driver-private.
Note: intel_buffer_object is in p_state.h and should be fixed/removed.
There are just a few i915 dependencies in intel_region.c

17 years agore-fix stencil addressing bug
Brian [Tue, 31 Jul 2007 19:42:23 +0000 (13:42 -0600)]
re-fix stencil addressing bug

17 years agoAdd missing files
Keith Whitwell [Tue, 31 Jul 2007 19:34:17 +0000 (20:34 +0100)]
Add missing files

17 years agoRemove references to intel_tris.h
Keith Whitwell [Tue, 31 Jul 2007 19:28:26 +0000 (20:28 +0100)]
Remove references to intel_tris.h

17 years agoBuild the "pipe" version of the i915tex driver.
Keith Whitwell [Tue, 31 Jul 2007 19:22:49 +0000 (20:22 +0100)]
Build the "pipe" version of the i915tex driver.

This hands all rendering off to the softpipe rasterizer.

17 years agoA version of the i915tex driver with all drawing code removed.
Keith Whitwell [Tue, 31 Jul 2007 19:06:09 +0000 (20:06 +0100)]
A version of the i915tex driver with all drawing code removed.

This is intended to support the softpipe development work.  More code
will be removed and pushed into softpipe until this basicially becomes
the DRI/GLX interface for that driver.

17 years agosimplify clear.x1,y2,x2,y2 setup
Brian [Tue, 31 Jul 2007 19:03:18 +0000 (13:03 -0600)]
simplify clear.x1,y2,x2,y2 setup

17 years agoIn i915/i830_emit_state(), check if state->draw_region is non-null.
Brian [Tue, 31 Jul 2007 18:49:11 +0000 (12:49 -0600)]
In i915/i830_emit_state(), check if state->draw_region is non-null.

This fixes a problem hit by glClear in the samples/stencil.c program.

17 years agofix stencil addressing bug
Brian [Tue, 31 Jul 2007 17:15:30 +0000 (11:15 -0600)]
fix stencil addressing bug

17 years agoremove obsolete xmesa_get_stencil_surface() stub
Brian [Tue, 31 Jul 2007 16:43:36 +0000 (10:43 -0600)]
remove obsolete xmesa_get_stencil_surface() stub

17 years agofix comments and param names for intel_miptree_image_map()
Brian [Tue, 31 Jul 2007 16:43:16 +0000 (10:43 -0600)]
fix comments and param names for intel_miptree_image_map()

17 years agofix value returned by intel_new_renderbuffer_fb()
Brian [Tue, 31 Jul 2007 16:42:39 +0000 (10:42 -0600)]
fix value returned by intel_new_renderbuffer_fb()

17 years agofix assertions
Brian [Tue, 31 Jul 2007 14:22:18 +0000 (08:22 -0600)]
fix assertions

17 years agoMerge branch 'i915tex_privbuffers' into softpipe_0_1_branch
Keith Whitwell [Tue, 31 Jul 2007 13:37:45 +0000 (14:37 +0100)]
Merge branch 'i915tex_privbuffers' into softpipe_0_1_branch

Conflicts:

src/mesa/drivers/dri/i915tex/intel_buffers.c
src/mesa/drivers/dri/i915tex/intel_context.c
src/mesa/drivers/dri/i915tex/intel_fbo.c
src/mesa/drivers/dri/i915tex/intel_pixel_draw.c

17 years ago32 and z24s8 softpipe buffers
Brian [Tue, 31 Jul 2007 03:39:57 +0000 (21:39 -0600)]
32 and z24s8 softpipe buffers

17 years agoremove some obsolete xmesa remnants
Brian [Mon, 30 Jul 2007 23:20:02 +0000 (17:20 -0600)]
remove some obsolete xmesa remnants

17 years agoMerge branch 'softpipe_0_1_branch' of git+ssh://brianp@git.freedesktop.org/git/mesa...
Brian [Mon, 30 Jul 2007 23:16:38 +0000 (17:16 -0600)]
Merge branch 'softpipe_0_1_branch' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa into softpipe_0_1_branch

17 years agoLots of improvements to the surface-related code.
Brian [Mon, 30 Jul 2007 23:17:44 +0000 (17:17 -0600)]
Lots of improvements to the surface-related code.

Z testing now works with i915 driver.
Add gl_renderbuffer::surface pointer (and reverse pointer).
Remove intel_surface and xmesa_surface types - no longer used.

17 years agocompute scale for Z24 buffers
Brian [Mon, 30 Jul 2007 23:15:50 +0000 (17:15 -0600)]
compute scale for Z24 buffers

17 years agoimplement read_quad_f_swz()
Brian [Mon, 30 Jul 2007 20:00:27 +0000 (14:00 -0600)]
implement read_quad_f_swz()

17 years agoMerge branch 'softpipe_0_1_branch' of git+ssh://brianp@git.freedesktop.org/git/mesa...
Brian [Mon, 30 Jul 2007 19:46:00 +0000 (13:46 -0600)]
Merge branch 'softpipe_0_1_branch' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa into softpipe_0_1_branch

17 years agoimplement surfaces for softpipe rendering
Brian [Mon, 30 Jul 2007 19:11:52 +0000 (13:11 -0600)]
implement surfaces for softpipe rendering

17 years agomap/unmap surfaces before/after rendering
Brian [Mon, 30 Jul 2007 19:11:27 +0000 (13:11 -0600)]
map/unmap surfaces before/after rendering

17 years agoremove old comments
Brian [Mon, 30 Jul 2007 19:11:09 +0000 (13:11 -0600)]
remove old comments

17 years agodisable ProgramStringNotify assertion
Brian [Mon, 30 Jul 2007 19:10:52 +0000 (13:10 -0600)]
disable ProgramStringNotify assertion

17 years agocall st_invalidate_state()
Brian [Mon, 30 Jul 2007 19:10:12 +0000 (13:10 -0600)]
call st_invalidate_state()

17 years agoadded map/unmap() stubs
Brian [Mon, 30 Jul 2007 19:09:53 +0000 (13:09 -0600)]
added map/unmap() stubs

17 years agofix range reduction for sin/cos in i915tex (#11609)
Roland Scheidegger [Sun, 29 Jul 2007 17:40:50 +0000 (19:40 +0200)]
fix range reduction for sin/cos in i915tex (#11609)

17 years agoFix crashes when the frag prog can't be handled in hardware (#11131)
Roland Scheidegger [Sun, 29 Jul 2007 16:04:28 +0000 (18:04 +0200)]
Fix crashes when the frag prog can't be handled in hardware (#11131)

Must not change to/from swrast after Render.Start or bad things will happen.
(Driver will still somewhat incorrectly report an implementation error,
and apps can't really figure out if a prog is natively supported as validation
is later - could try doing it earlier to give some hint at least, even though
native status may still change later due to fog etc.)

17 years agorenaming, comments, clean-up
Brian [Fri, 27 Jul 2007 17:02:54 +0000 (11:02 -0600)]
renaming, comments, clean-up

17 years agoClip triangles against softpipe->cliprect which includes scissor and surface bounds.
Brian [Fri, 27 Jul 2007 16:50:35 +0000 (10:50 -0600)]
Clip triangles against softpipe->cliprect which includes scissor and surface bounds.

This prevents rendering out of bounds when the viewport is partially outside the surface bounds.

17 years agoremove obsolete comments
Brian [Fri, 27 Jul 2007 16:25:11 +0000 (10:25 -0600)]
remove obsolete comments

17 years agoMaintain cliprect (scissor) info in sp_state_derived.c.
Brian [Fri, 27 Jul 2007 16:21:34 +0000 (10:21 -0600)]
Maintain cliprect (scissor) info in sp_state_derived.c.

The cliprect depends on the scissor rect (if enabled), otherwise the drawing
surface bounds.

17 years agoImplement point/line quad clipping. Not quite as efficient as it probably could...
Brian [Fri, 27 Jul 2007 16:10:49 +0000 (10:10 -0600)]
Implement point/line quad clipping.  Not quite as efficient as it probably could be, but sufficient for now.

17 years agocheck scissor state
Brian [Fri, 27 Jul 2007 15:27:56 +0000 (09:27 -0600)]
check scissor state

17 years agos/SP_TILE_H/SP_QUAD_H/
Brian [Fri, 27 Jul 2007 15:06:15 +0000 (09:06 -0600)]
s/SP_TILE_H/SP_QUAD_H/

17 years agoinit quad.coverage values to 1.0 in case line AA is enabled so that we see something
Brian [Fri, 27 Jul 2007 15:06:02 +0000 (09:06 -0600)]
init quad.coverage values to 1.0 in case line AA is enabled so that we see something

17 years agoAvoid unnecessary input attrib copy by aligning exec_machine attribs.
michal [Fri, 27 Jul 2007 10:50:38 +0000 (12:50 +0200)]
Avoid unnecessary input attrib copy by aligning exec_machine attribs.

17 years agoMerge branch 'master' of git+ssh://michal@git.freedesktop.org/git/mesa/mesa into...
michal [Fri, 27 Jul 2007 08:05:40 +0000 (10:05 +0200)]
Merge branch 'master' of git+ssh://michal@git.freedesktop.org/git/mesa/mesa into softpipe_0_1_branch

17 years agoFix function call bug 11731. Also, fix up IR_CALL/IR_FUNC confusion.
Brian [Thu, 26 Jul 2007 21:32:02 +0000 (15:32 -0600)]
Fix function call bug 11731.  Also, fix up IR_CALL/IR_FUNC confusion.

17 years agogenerate error upon writing to varying var in fragment program (bug 11733)
Brian [Thu, 26 Jul 2007 17:39:11 +0000 (11:39 -0600)]
generate error upon writing to varying var in fragment program (bug 11733)

17 years agoclamp float colors
Brian [Thu, 26 Jul 2007 14:22:47 +0000 (08:22 -0600)]
clamp float colors

17 years agofix color interpolation for CHAN_BITS==32
Brian [Thu, 26 Jul 2007 14:22:28 +0000 (08:22 -0600)]
fix color interpolation for CHAN_BITS==32

17 years agodon't use rgba_line() if CHAN_BITS==32
Brian [Thu, 26 Jul 2007 14:22:09 +0000 (08:22 -0600)]
don't use rgba_line() if CHAN_BITS==32

17 years agoImplement line stippling.
Brian [Wed, 25 Jul 2007 21:48:09 +0000 (15:48 -0600)]
Implement line stippling.

Also added draw_stage::reset_line_stipple().  There may be a better way
of doing that though.

17 years agorename some vars
Brian [Wed, 25 Jul 2007 20:32:28 +0000 (14:32 -0600)]
rename some vars