Corbin Simpson [Tue, 27 Jan 2009 12:04:57 +0000 (04:04 -0800)]
r300: Add blend color state emit.
Slow and steady wins the race. Or something like that.
Corbin Simpson [Tue, 27 Jan 2009 12:03:38 +0000 (04:03 -0800)]
r300: Count BEGIN_CS, END_CS, warn if count is off.
Corbin Simpson [Tue, 27 Jan 2009 11:40:46 +0000 (03:40 -0800)]
r300: Set up blend state emit, clean up blend registers.
Also add at least one missing register to r300_reg.
Corbin Simpson [Mon, 26 Jan 2009 18:26:41 +0000 (10:26 -0800)]
r300: Add r300_flush.
Haha, I always do this.
Corbin Simpson [Mon, 26 Jan 2009 10:18:56 +0000 (02:18 -0800)]
r300: Deobfuscate a few registers, fix inaccurate variable names.
It's not "pipes", it's floating-point vertex processors. Completely different.
Corbin Simpson [Mon, 26 Jan 2009 05:35:26 +0000 (21:35 -0800)]
r300: Working trivial/clear for RV410.
This might work for other people too.
Corbin Simpson [Mon, 26 Jan 2009 00:29:02 +0000 (16:29 -0800)]
BROKEN
This commit is only to protect against data loss, so please skip it when
bisecting. Thanks.
Corbin Simpson [Sat, 24 Jan 2009 14:21:00 +0000 (06:21 -0800)]
Rebased to gallium-0.2, Jan 24 2009.
Corbin Simpson [Sat, 24 Jan 2009 13:44:01 +0000 (05:44 -0800)]
r300: Hook up clear, set it to fallback.
Corbin Simpson [Sat, 24 Jan 2009 12:11:03 +0000 (04:11 -0800)]
r300: Make format names legible.
Corbin Simpson [Sat, 24 Jan 2009 12:08:33 +0000 (04:08 -0800)]
r300: Add more capabilities.
Corbin Simpson [Sat, 24 Jan 2009 12:03:27 +0000 (04:03 -0800)]
r300: Newlines, dammit!
Corbin Simpson [Sat, 24 Jan 2009 12:03:11 +0000 (04:03 -0800)]
r300: More state setters.
Corbin Simpson [Sat, 24 Jan 2009 11:34:17 +0000 (03:34 -0800)]
r300: Add some useful debugging information; remove a couple compile warnings.
Deck chairs on the Titanic.
Corbin Simpson [Sat, 24 Jan 2009 10:12:55 +0000 (02:12 -0800)]
r300: Remove radeon_reg.
Wonder why this was ever committed...
Corbin Simpson [Sat, 24 Jan 2009 10:03:35 +0000 (02:03 -0800)]
r300: Put r300_blit to bed.
Not going to be using the blitter. Period.
Corbin Simpson [Sat, 24 Jan 2009 09:49:57 +0000 (01:49 -0800)]
r300: Plan for the next state setters.
Corbin Simpson [Sat, 24 Jan 2009 09:32:14 +0000 (01:32 -0800)]
r300: Moar state handlers.
Ah, my code's so bad. It's amazing.
Corbin Simpson [Sat, 24 Jan 2009 01:01:04 +0000 (17:01 -0800)]
r300: Finish basic state setup.
I have successfully fooled glxinfo into believing that I am a competent
writer of code. Next step is to trick trivial/clear.
Corbin Simpson [Sat, 24 Jan 2009 00:34:00 +0000 (16:34 -0800)]
amd: Fix uninitialized pipe_screen.
Corbin Simpson [Sat, 24 Jan 2009 00:00:33 +0000 (16:00 -0800)]
amd: Fix missing break statement.
Corbin Simpson [Fri, 23 Jan 2009 23:08:27 +0000 (15:08 -0800)]
r300: Add fragment shader stubs.
Not looking forward to filling these out at all.
Corbin Simpson [Fri, 23 Jan 2009 11:09:15 +0000 (03:09 -0800)]
r300: Add more pipe_texture stuff.
This is enough to sate glxinfo, for now.
Corbin Simpson [Fri, 23 Jan 2009 10:46:52 +0000 (02:46 -0800)]
r300: Add initial pipe_texture handling.
Still primitive and needing to be fleshed out, but it's a start.
Corbin Simpson [Fri, 23 Jan 2009 05:47:05 +0000 (21:47 -0800)]
r300: Add texture sampler state.
Easy compared to the actual texture handling code.
Corbin Simpson [Fri, 23 Jan 2009 00:51:34 +0000 (16:51 -0800)]
r300: Add texture stubs.
Corbin Simpson [Thu, 22 Jan 2009 21:34:21 +0000 (13:34 -0800)]
amd/r300: Wire up GETPARAM ioctls.
Whoo, stuff is starting to look cleaner and cleaner.
Corbin Simpson [Thu, 22 Jan 2009 11:45:14 +0000 (03:45 -0800)]
r300: Add sampler state skeleton.
Heh, serendipitous sibilance. Anyway, need to flesh this out.
Corbin Simpson [Thu, 22 Jan 2009 07:48:47 +0000 (23:48 -0800)]
r300: Add num_vert_pipes (and remove busted num_pipes.)
Corbin Simpson [Thu, 22 Jan 2009 07:12:40 +0000 (23:12 -0800)]
r300: Unbreak build, finish clear state.
Completely untested, of course.
Corbin Simpson [Wed, 21 Jan 2009 10:21:09 +0000 (02:21 -0800)]
[BROKEN] r300: Add initial clear/fill code.
Copied from mesa and still broken. Gimme a few to clean it up.
Corbin Simpson [Tue, 20 Jan 2009 23:42:11 +0000 (15:42 -0800)]
r300: Fix constness, compile warnings, indentation in r300_state.
Corbin Simpson [Tue, 20 Jan 2009 23:38:43 +0000 (15:38 -0800)]
r300: Set floating-point params.
Note: I took those numbers from classic Mesa. I know that points are routinely
used to clear buffers, but line width is probably wrong.
Corbin Simpson [Tue, 20 Jan 2009 23:27:46 +0000 (15:27 -0800)]
r300: Fix indenting.
Corbin Simpson [Tue, 20 Jan 2009 23:26:41 +0000 (15:26 -0800)]
r300: Fix missing free().
Corbin Simpson [Tue, 20 Jan 2009 09:49:34 +0000 (01:49 -0800)]
r300: Add path for pci_id in winsys.
Needs to be hooked up to the getparam from the kernel.
Corbin Simpson [Tue, 20 Jan 2009 09:11:08 +0000 (01:11 -0800)]
r300: Use chip caps for something.
Step two: Integration. Yay?
Time to stop messing around with this and actually go do things.
Corbin Simpson [Tue, 20 Jan 2009 08:31:43 +0000 (00:31 -0800)]
r300: Add chipset sorting and capabilities.
Part one: Capabilities from classic Mesa.
Damn, if only we didn't have so many fucking Radeons!
Corbin Simpson [Tue, 20 Jan 2009 05:03:24 +0000 (21:03 -0800)]
r300: Various flags, small state tracking things.
Getting these out of the way so more stuff can be put in.
Corbin Simpson [Sat, 17 Jan 2009 11:20:48 +0000 (03:20 -0800)]
r300: Add a basic dirty state emit.
I feel strangely unproductive. Must be the cold.
Corbin Simpson [Sat, 17 Jan 2009 10:27:33 +0000 (02:27 -0800)]
r300: Remove r300_state.h
Corbin Simpson [Sat, 17 Jan 2009 10:25:52 +0000 (02:25 -0800)]
r300: Add blend color.
Corbin Simpson [Sat, 17 Jan 2009 09:41:52 +0000 (01:41 -0800)]
r300: Add more state.
pipe_rasterizer_state is big, and I'm still processing it.
Todo:
- LOL EVERYTHING
- Moar cough syrup.
- Even moar cough syrup.
Corbin Simpson [Wed, 14 Jan 2009 20:51:47 +0000 (12:51 -0800)]
r300: Fix errant inlines.
This should unbreak dynamic loading.
Corbin Simpson [Wed, 14 Jan 2009 13:00:22 +0000 (05:00 -0800)]
r300: Hook up state functions.
Haha, should not have attempted the scissors.
Corbin Simpson [Wed, 14 Jan 2009 12:37:36 +0000 (04:37 -0800)]
r300: Add DSA state.
That's it for now. Just the "easy" stuff.
Todo:
- Rasterizer state, which is a lot more than just the RS.
- Miscellaneous state which doesn't currently belong to any state object.
- Shader assemblers?
- Fix dynamic loading bugs.
Corbin Simpson [Wed, 14 Jan 2009 08:49:48 +0000 (00:49 -0800)]
r300: Add scissor state, fix build.
Corbin Simpson [Wed, 14 Jan 2009 03:11:19 +0000 (19:11 -0800)]
r300: Add blend state.
Also switched to r300_reg instead of radeon_reg. Yay?
Corbin Simpson [Tue, 13 Jan 2009 23:21:29 +0000 (15:21 -0800)]
r300, amd: Add the ability to flush the CS.
This is probably important, yeah?
Corbin Simpson [Mon, 12 Jan 2009 09:40:50 +0000 (01:40 -0800)]
r300, amd: Make everything build. (Not necessarily work, mind you.)
Lots of structural work, especially in getting the two parts to talk nicely.
Todo:
- Get damn blitter working.
- Add CS flush.
- Reverse order of above two items.
Corbin Simpson [Sat, 10 Jan 2009 06:39:36 +0000 (22:39 -0800)]
And unbreak traditional build.
s/drm-radeon/drm_radeon/
Corbin Simpson [Sat, 10 Jan 2009 05:50:56 +0000 (21:50 -0800)]
A bit of r300 cleanup.
Corbin Simpson [Sat, 10 Jan 2009 05:28:23 +0000 (21:28 -0800)]
Make r300 and amd build in scons.
Corbin Simpson [Sat, 10 Jan 2009 02:57:02 +0000 (18:57 -0800)]
r300: Hook up to winsys, add missing header.
In theory it works, which of course means that it doesn't.
Corbin Simpson [Fri, 9 Jan 2009 22:54:08 +0000 (14:54 -0800)]
gallium-r300: Add primitive CS.
Enough to get us up and running, I suppose.
This needs to be pushed down into winsys!
Corbin Simpson [Fri, 9 Jan 2009 21:08:19 +0000 (13:08 -0800)]
gallium-r300: Max LOD bias is 16.0.
Corbin Simpson [Fri, 9 Jan 2009 14:05:36 +0000 (06:05 -0800)]
gallium-r300: Set right ROP for solid fills.
Thanks to MrCooper for pointing me in the right direction.
Corbin Simpson [Fri, 9 Jan 2009 13:11:19 +0000 (05:11 -0800)]
gallium-r300: Fit it all together now.
In theory, it could work, but there's still some very big gaps.
Anything marked with XXX should be taken care of first, probably.
Corbin Simpson [Fri, 9 Jan 2009 12:48:30 +0000 (04:48 -0800)]
gallium-r300: Add r300_surface.
Todo:
- Hook up surface functions.
- Take it for a spin and watch it crash 'n' burn.
Corbin Simpson [Fri, 9 Jan 2009 12:34:56 +0000 (04:34 -0800)]
gallium-r300: Add r300_blit.
Count the XXXs and weep?
Corbin Simpson [Fri, 9 Jan 2009 10:32:53 +0000 (02:32 -0800)]
gallium-r300: Add copyrights, place (broken) CS.
Todo:
- Fill blits.
- Less suck.
- Ask glisse about how to get winsys+pipe talking right,
so stuff like the CS can be set up right.
Corbin Simpson [Fri, 9 Jan 2009 00:33:29 +0000 (16:33 -0800)]
gallium-r300: Add r300_clear.
Todo:
- Less suckage.
- Re-read bo-cs stuff, figure out how the hell to emit state.
- Blits.
Corbin Simpson [Thu, 8 Jan 2009 23:47:23 +0000 (15:47 -0800)]
gallium-r300: Make it build.
Still todo:
- Sort out winsys.
- Less suckage.
Corbin Simpson [Thu, 8 Jan 2009 22:52:47 +0000 (14:52 -0800)]
gallium-r300: Look less like i915.
Todo:
- Figure out how much code goes in winsys.
- Make it build.
- Make it suck less.
Corbin Simpson [Thu, 8 Jan 2009 22:41:29 +0000 (14:41 -0800)]
gallium-r300: Add some headers.
Oh yeah, we're cookin' now!
Corbin Simpson [Tue, 6 Jan 2009 07:55:00 +0000 (23:55 -0800)]
gallium-r300: Initial commit.
Or should it be r300-gallium? Meh, whatever.
Jerome Glisse [Thu, 18 Dec 2008 17:29:51 +0000 (18:29 +0100)]
amd: initial winsys
Jerome Glisse [Thu, 18 Dec 2008 12:36:07 +0000 (13:36 +0100)]
gallium autoconf/automake
Stephane Marchesin [Mon, 2 Feb 2009 01:13:07 +0000 (02:13 +0100)]
Merge branch 'gallium-0.2' of git+ssh://marcheu@git.freedesktop.org/git/mesa/mesa into gallium-0.2
Stephane Marchesin [Mon, 2 Feb 2009 01:12:46 +0000 (02:12 +0100)]
nv04: some old changes I had lying around.
Zack Rusin [Sun, 1 Feb 2009 23:48:16 +0000 (18:48 -0500)]
Merge branch 'gallium-winsys-private' into gallium-0.2
José Fonseca [Sun, 1 Feb 2009 12:00:07 +0000 (12:00 +0000)]
progs: Get more samples building on windows.
José Fonseca [Sun, 1 Feb 2009 10:31:25 +0000 (10:31 +0000)]
util: List new file in sconscript.
José Fonseca [Sun, 1 Feb 2009 10:27:54 +0000 (10:27 +0000)]
pipebuffer: Drop (most of) pipe winsys stuff.
Pekka Paalanen [Sat, 31 Jan 2009 21:32:32 +0000 (23:32 +0200)]
nv20: send buffer handles on hw state emit
Color and Z buffer offsets were emitted here, now also the buffer
handles are emitted so they target the correct memory.
Signed-off-by: Pekka Paalanen <pq@iki.fi>
Pekka Paalanen [Sat, 31 Jan 2009 21:28:38 +0000 (23:28 +0200)]
nv20: disable depth writes in hw init
Probably not necessary, but just in case. Depth registers point to the
color buffer, when there is no depth buffer.
Signed-off-by: Pekka Paalanen <pq@iki.fi>
Pekka Paalanen [Sat, 31 Jan 2009 12:39:08 +0000 (14:39 +0200)]
nv20: Z-mapping parameters
Based on my renouveau dump, adjust initial hw state related to Z-mapping,
and add one unknown depth reg into depth/stencil/alpha emission.
Now trivial/tri-z on nv20 looks identical to swrast rendered one.
Signed-off-by: Pekka Paalanen <pq@iki.fi>
Pekka Paalanen [Sat, 31 Jan 2009 12:36:20 +0000 (14:36 +0200)]
nv20: draw_elements needs to flush
nv20_draw_elements() uses the draw module, and draw_flush() needs to be
called to actually emit the vertices immediately.
Signed-off-by: Pekka Paalanen <pq@iki.fi>
Pekka Paalanen [Sat, 31 Jan 2009 12:34:15 +0000 (14:34 +0200)]
nv20: set surface status in clear()
Other nvXX drivers seem to do this, so I do it too.
Signed-off-by: Pekka Paalanen <pq@iki.fi>
Zack Rusin [Sat, 31 Jan 2009 20:14:38 +0000 (15:14 -0500)]
gallium: initialize simple screen in drivers
Zack Rusin [Fri, 30 Jan 2009 22:59:10 +0000 (17:59 -0500)]
gallium: add a convience wrapper for simple screens
forwards screen calls to the winsys
José Fonseca [Fri, 30 Jan 2009 22:04:35 +0000 (22:04 +0000)]
stw: Remove pipe_winsys references.
José Fonseca [Fri, 30 Jan 2009 22:04:15 +0000 (22:04 +0000)]
gallium: Don't ask winsys name -- let pipe screen do that if it wants.
Allows to leave screen->winsys NULL.
José Fonseca [Fri, 30 Jan 2009 21:51:59 +0000 (21:51 +0000)]
stw: Don't use the winsys.
Zack Rusin [Fri, 30 Jan 2009 20:56:00 +0000 (15:56 -0500)]
gallium: make p_winsys internal
move it to pipe/internal/p_winsys_screen.h and start converting
the state trackers to the screen usage
José Fonseca [Fri, 30 Jan 2009 17:01:23 +0000 (17:01 +0000)]
Merge branch 'gallium-0.2' into gallium-winsys-private
José Fonseca [Fri, 30 Jan 2009 14:59:32 +0000 (14:59 +0000)]
util: Define ffs for MinGW.
José Fonseca [Fri, 30 Jan 2009 14:32:11 +0000 (14:32 +0000)]
gdi: Update for winsys interface changes.
José Fonseca [Fri, 30 Jan 2009 14:07:12 +0000 (14:07 +0000)]
Merge branch 'gallium-0.2' into gallium-winsys-private
José Fonseca [Fri, 30 Jan 2009 14:06:25 +0000 (14:06 +0000)]
pipebuffer: Consider 0 as no alignment needed.
Zack Rusin [Fri, 30 Jan 2009 02:43:15 +0000 (21:43 -0500)]
gallium: give the screen priority when it comes to buffer allocations
allows the driver to overwrite buffer allocation, first step on the way
to making winsys interface internal to the drivers. state trackers and
the code above it will go through the screen
Jakob Bornecrantz [Fri, 30 Jan 2009 01:24:47 +0000 (02:24 +0100)]
gallium: Don't build egl state_tracker
Jakob Bornecrantz [Fri, 30 Jan 2009 00:57:07 +0000 (01:57 +0100)]
egl: Don't fill shown screen
Jakob Bornecrantz [Fri, 30 Jan 2009 00:55:09 +0000 (01:55 +0100)]
intel: Remove debug print
Jakob Bornecrantz [Fri, 30 Jan 2009 00:53:50 +0000 (01:53 +0100)]
i915: Fix surface operations
José Fonseca [Mon, 24 Nov 2008 14:17:49 +0000 (23:17 +0900)]
pipebuffer: Ondemand buffer manager.
A variation of malloc buffers which get transferred to real graphics memory
when there is an attempt to validate them.
José Fonseca [Mon, 24 Nov 2008 04:59:06 +0000 (13:59 +0900)]
pipebuffer: Implement proper buffer validation.
Jakob Bornecrantz [Thu, 29 Jan 2009 01:33:22 +0000 (02:33 +0100)]
egl: Blit to the bound frontbuffer with pipe
Jakob Bornecrantz [Thu, 29 Jan 2009 01:32:58 +0000 (02:32 +0100)]
intel: Set render domain on read and write
Jakob Bornecrantz [Thu, 29 Jan 2009 00:34:58 +0000 (01:34 +0100)]
intel: Try forcing flushes