Commit graph

20817 commits

Author SHA1 Message Date
Corbin Simpson
22877265f4 [BROKEN] r300: Add initial clear/fill code.
Copied from mesa and still broken. Gimme a few to clean it up.
2009-02-01 23:30:25 -08:00
Corbin Simpson
6885560de5 r300: Fix constness, compile warnings, indentation in r300_state. 2009-02-01 23:30:25 -08:00
Corbin Simpson
8d1f386dcb 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.
2009-02-01 23:30:24 -08:00
Corbin Simpson
54d137e079 r300: Fix indenting. 2009-02-01 23:30:24 -08:00
Corbin Simpson
2b9ecaa6dd r300: Fix missing free(). 2009-02-01 23:30:24 -08:00
Corbin Simpson
502ddfcd57 r300: Add path for pci_id in winsys.
Needs to be hooked up to the getparam from the kernel.
2009-02-01 23:30:24 -08:00
Corbin Simpson
43f20357c8 r300: Use chip caps for something.
Step two: Integration. Yay?

Time to stop messing around with this and actually go do things.
2009-02-01 23:30:24 -08:00
Corbin Simpson
538a8149af r300: Add chipset sorting and capabilities.
Part one: Capabilities from classic Mesa.

Damn, if only we didn't have so many fucking Radeons!
2009-02-01 23:30:24 -08:00
Corbin Simpson
2e09845277 r300: Various flags, small state tracking things.
Getting these out of the way so more stuff can be put in.
2009-02-01 23:30:23 -08:00
Corbin Simpson
7961974fc2 r300: Add a basic dirty state emit.
I feel strangely unproductive. Must be the cold.
2009-02-01 23:30:23 -08:00
Corbin Simpson
4ea17301c6 r300: Remove r300_state.h 2009-02-01 23:30:23 -08:00
Corbin Simpson
f3b53a5cb6 r300: Add blend color. 2009-02-01 23:30:23 -08:00
Corbin Simpson
a08a830fd3 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.
2009-02-01 23:30:23 -08:00
Corbin Simpson
4ce8129494 r300: Fix errant inlines.
This should unbreak dynamic loading.
2009-02-01 23:30:23 -08:00
Corbin Simpson
21a5a133ff r300: Hook up state functions.
Haha, should not have attempted the scissors.
2009-02-01 23:30:23 -08:00
Corbin Simpson
bbb1c6f629 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.
2009-02-01 23:30:22 -08:00
Corbin Simpson
28bb7f3206 r300: Add scissor state, fix build. 2009-02-01 23:30:22 -08:00
Corbin Simpson
74288078ea r300: Add blend state.
Also switched to r300_reg instead of radeon_reg. Yay?
2009-02-01 23:30:22 -08:00
Corbin Simpson
432ab001d0 r300, amd: Add the ability to flush the CS.
This is probably important, yeah?
2009-02-01 23:30:22 -08:00
Corbin Simpson
fbeeb66757 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.
2009-02-01 23:30:22 -08:00
Corbin Simpson
0c59004fe3 And unbreak traditional build.
s/drm-radeon/drm_radeon/
2009-02-01 23:30:22 -08:00
Corbin Simpson
4aaaecbfa6 A bit of r300 cleanup. 2009-02-01 23:30:21 -08:00
Corbin Simpson
e9b08e7373 Make r300 and amd build in scons. 2009-02-01 23:30:21 -08:00
Corbin Simpson
adb74f5c52 r300: Hook up to winsys, add missing header.
In theory it works, which of course means that it doesn't.
2009-02-01 23:30:21 -08:00
Corbin Simpson
78b599fb4c gallium-r300: Add primitive CS.
Enough to get us up and running, I suppose.
This needs to be pushed down into winsys!
2009-02-01 23:30:21 -08:00
Corbin Simpson
ad14271425 gallium-r300: Max LOD bias is 16.0. 2009-02-01 23:30:21 -08:00
Corbin Simpson
32273c01bd gallium-r300: Set right ROP for solid fills.
Thanks to MrCooper for pointing me in the right direction.
2009-02-01 23:30:20 -08:00
Corbin Simpson
afe2de0a23 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.
2009-02-01 23:30:20 -08:00
Corbin Simpson
b1776eb144 gallium-r300: Add r300_surface.
Todo:
- Hook up surface functions.
- Take it for a spin and watch it crash 'n' burn.
2009-02-01 23:30:20 -08:00
Corbin Simpson
d6cdb9db25 gallium-r300: Add r300_blit.
Count the XXXs and weep?
2009-02-01 23:30:20 -08:00
Corbin Simpson
fb11fb897c 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.
2009-02-01 23:30:20 -08:00
Corbin Simpson
6236372300 gallium-r300: Add r300_clear.
Todo:
- Less suckage.
- Re-read bo-cs stuff, figure out how the hell to emit state.
- Blits.
2009-02-01 23:30:20 -08:00
Corbin Simpson
3b37cb49b8 gallium-r300: Make it build.
Still todo:
- Sort out winsys.
- Less suckage.
2009-02-01 23:30:20 -08:00
Corbin Simpson
3e09a07a26 gallium-r300: Look less like i915.
Todo:
- Figure out how much code goes in winsys.
- Make it build.
- Make it suck less.
2009-02-01 23:30:19 -08:00
Corbin Simpson
aa96874c7a gallium-r300: Add some headers.
Oh yeah, we're cookin' now!
2009-02-01 23:30:19 -08:00
Corbin Simpson
da1928d4a6 gallium-r300: Initial commit.
Or should it be r300-gallium? Meh, whatever.
2009-02-01 23:30:19 -08:00
Jerome Glisse
b3cf2af13a amd: initial winsys 2009-02-01 23:30:19 -08:00
Jerome Glisse
14f79d46a5 gallium autoconf/automake 2009-02-01 23:30:19 -08:00
Stephane Marchesin
59edbc70cd Merge branch 'gallium-0.2' of git+ssh://marcheu@git.freedesktop.org/git/mesa/mesa into gallium-0.2 2009-02-02 02:13:07 +01:00
Stephane Marchesin
4035e0f898 nv04: some old changes I had lying around. 2009-02-02 02:12:46 +01:00
Zack Rusin
1c90cdd878 Merge branch 'gallium-winsys-private' into gallium-0.2 2009-02-01 18:48:16 -05:00
José Fonseca
9aa73cfae8 progs: Get more samples building on windows. 2009-02-01 12:00:17 +00:00
José Fonseca
64e525eab9 util: List new file in sconscript. 2009-02-01 10:31:25 +00:00
José Fonseca
4ad190c96f pipebuffer: Drop (most of) pipe winsys stuff. 2009-02-01 10:28:16 +00:00
Pekka Paalanen
7062b7c7cb 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>
2009-01-31 23:41:23 +02:00
Pekka Paalanen
767f72c108 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>
2009-01-31 23:41:23 +02:00
Pekka Paalanen
9116f9408e 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>
2009-01-31 23:41:23 +02:00
Pekka Paalanen
b5e2ab63e8 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>
2009-01-31 23:41:22 +02:00
Pekka Paalanen
5e96feed37 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>
2009-01-31 23:41:22 +02:00
Zack Rusin
969c728095 gallium: initialize simple screen in drivers 2009-01-31 15:14:38 -05:00