Commit graph

27149 commits

Author SHA1 Message Date
Keith Whitwell
203adb8ea6 i965g: remove old dumping code 2009-11-05 15:15:04 +00:00
Keith Whitwell
61a8ab3359 i965g: call dissassembler for appropriate data uploads 2009-11-05 15:10:22 +00:00
Keith Whitwell
c796aed5dd i965g: add lots of error checks and early returns
Any allocation that may fail should be checked, and propogate the
error upwards.  At the highest level we will flush batch and retry.

This is an alternate strategy to what the original DRI driver did of
attempting to flush batch from the lowest levels (eg inside
BEGIN_BATCH).  The trouble with that strategy was that flushes could
occur at unexpected times, and additionally there was a need for a
wierd notification mechanism to propogate the 'lost context' state
back up to higher levels.

Propogating the errors directly gives us a lot of flexibility how to
deal with these states, at the expense of a lot more checking in the
code.

Will add some sanity checks later to make sure that out-of-memory
conditions are properly escalated and not lost halfway up the stack.
2009-11-05 14:01:37 +00:00
José Fonseca
31b8b1dd36 i965g: Don't dump pads or dwords aliases. 2009-11-05 12:45:23 +00:00
Keith Whitwell
09454f68e5 i965g: hook up dumpers in dumping winsys 2009-11-05 12:35:22 +00:00
José Fonseca
9069c791d0 i965g: Dumper for i965 structures. 2009-11-05 12:22:01 +00:00
Keith Whitwell
6ac38232ee i965g: add data type tags to aid dumping/decoding 2009-11-05 10:59:02 +00:00
Keith Whitwell
b2bf5f98d9 i965g: use pipe_error return value for brw_batchbuffer_require_space
trivial/tri runs without crashing (on debug winsys) but still produces
obviously incorrect command buffers.
2009-11-05 08:01:48 +00:00
Keith Whitwell
2475e5db67 i965g: fix compiler warning 2009-11-05 08:00:33 +00:00
Jakob Bornecrantz
47cbbb7253 i965g: Builds with scons
But there are some missing symbols, "nm -u i965_dri.so"
[SNIP]
                 U brw_surface_bo
                 U brw_surface_pitch
                 U brw_texture_blanket_winsys_buffer
                 U brw_texture_get_winsys_buffer
                 U brw_update_dirty_counts
[SNIP]
2009-11-05 01:22:10 +00:00
Jakob Bornecrantz
643bb3419d i965g: Fix debug check 2009-11-05 01:22:10 +00:00
Jakob Bornecrantz
ce4f23aab9 i965g: Build with configure 2009-11-05 01:22:10 +00:00
Jakob Bornecrantz
37c6820d0d i965g: Do not create a symlink for i965_dri.so 2009-11-05 01:22:10 +00:00
Jakob Bornecrantz
9bc59a9b6d i915g: Do not create a symlink for i965_dri.so 2009-11-05 01:22:10 +00:00
Keith Whitwell
ffc2446391 i965g: enable line stipple packet emit
With this change, trivial/tri manages to build and emit
a fairly unconvincing command buffer (to the debug winsys),
and then crashes.
2009-11-04 23:44:25 +00:00
Keith Whitwell
c2e51effe6 i965g: fix order of calculation of brw->wm.nr_surfaces 2009-11-04 23:41:30 +00:00
Keith Whitwell
220566d8dc i965g: consolidate some includes 2009-11-04 23:37:52 +00:00
Keith Whitwell
e84e86ecb2 i965g: fix some asserts 2009-11-04 23:33:08 +00:00
Keith Whitwell
7a49bd6d15 i965g: remove redundant screen pointer in brw context struct 2009-11-04 23:30:52 +00:00
Keith Whitwell
e3e084c660 i965g: initialize winsys pointer in surface cache 2009-11-04 23:27:50 +00:00
Keith Whitwell
518171a887 i965g: init pointer to null, avoid segfault 2009-11-04 23:27:30 +00:00
Keith Whitwell
bf4a518cf2 i965g: clean up wm init_registers func 2009-11-04 23:22:48 +00:00
Keith Whitwell
1b611f99b4 i965g: hook up some missing vertex shader code 2009-11-04 23:18:07 +00:00
Keith Whitwell
cc8105d740 i965g: hook up some vertex state funcs 2009-11-04 23:09:23 +00:00
Keith Whitwell
18efe9a687 ws/i965: allow NULL buffer in winsys::bo_unreference
Special case to avoid clutter in the driver
2009-11-04 23:09:05 +00:00
Keith Whitwell
951fdac566 i965g: pull in a copy of intel_decode.c for now
With the stubbed out, non-hardware xlib winsys, trivial/clear runs and
prints a plausible command stream
2009-11-04 21:37:07 +00:00
Keith Whitwell
cde48bc8d1 i965g: hook up flush-frontbuffer 2009-11-04 21:12:48 +00:00
Keith Whitwell
b8bb48f452 i965g: fix up batchbuffer confusion 2009-11-04 21:05:34 +00:00
Keith Whitwell
c5ed7b6e76 i965g: plumb in some surface state 2009-11-04 20:36:48 +00:00
Keith Whitwell
e18f223da7 i965g: hook up pipe_clear functions 2009-11-04 20:26:41 +00:00
Keith Whitwell
19119517ce i965g: add constant buffer setter 2009-11-04 19:41:02 +00:00
Keith Whitwell
4e335a213a i965g: add missing is_*_referenced callbacks 2009-11-04 19:32:44 +00:00
Keith Whitwell
0cf432c7a1 i965g: initialize surface refcount 2009-11-04 19:03:06 +00:00
Keith Whitwell
58e3360c11 i965g: add more missing pipe callbacks 2009-11-04 18:26:34 +00:00
Keith Whitwell
99394a737a i965g: add some missing texture creation code 2009-11-04 16:42:44 +00:00
Keith Whitwell
5f8dde99ed i965g: stubs for brw_pipe_vertex.c 2009-11-04 16:03:52 +00:00
Keith Whitwell
7373bc0e02 i965g: hook up pipe sampler callbacks 2009-11-04 15:59:56 +00:00
Keith Whitwell
9706a83bc9 i965g: hook up more pipe_context functions 2009-11-04 15:25:42 +00:00
Keith Whitwell
a09b3d5097 i965g: add missing buffer functions 2009-11-04 15:10:34 +00:00
Keith Whitwell
82a19f0974 ws/i965: add load-time driver registration
Otherwise xlib state-tracker doesn't know about us.
2009-11-04 14:03:25 +00:00
Keith Whitwell
b549bbb498 ws/i965: add butt-ugly linker hack
Need more linker magic to keep the glX symbols externally visible even
though they started off in a .a file.
2009-11-04 13:59:59 +00:00
Keith Whitwell
b1d2933214 i965g: hook up brw_screen.c 2009-11-04 13:54:44 +00:00
Keith Whitwell
211d7ab22b i965g: add standalone xlib debug winsys
Create a dummy winsys that just debug-prints on calls into the winsys
functions.  Will use this to get to the point where we are generating
sane-looking debug dumps and diassembly.

Also fix various warnings generated with the new compiler flags set in
this config.
2009-11-04 13:03:35 +00:00
Keith Whitwell
a277bb20de i965g: convert read/write domain pairs into single usage value
Easier to understand what's going on in the driver sources, convert
stereotype usage values back to GEM read/write domain flags in the
winsys.
2009-11-04 10:09:39 +00:00
Keith Whitwell
4ea94c04c9 i965g: format RELOCs similarly 2009-11-02 08:50:16 +00:00
Keith Whitwell
23c2ba8280 i965g: rename brw_constant_buffer to brw_curbe_buffer
Now that there are real constant buffers, try to reduce naming confusion.
2009-11-02 08:48:26 +00:00
Keith Whitwell
15a8ac2c9d i965g: driver and winsys compile
A milestone of sorts.  Still a long way from something working --
the old one compiled too, at least some of the time...
2009-11-01 19:30:53 +00:00
Keith Whitwell
efda453d64 i965g: the whole drivers/i965 directory is compiling
That was a lot more work than I expected.  Still the winsys to go,
then the small matter of making it work and re-enabling the
missing functionality.
2009-11-01 17:55:16 +00:00
Keith Whitwell
4a3e002cf9 i965g: more files compiling 2009-11-01 17:18:56 +00:00
Keith Whitwell
6981bbfabe i965g: more files compiling 2009-11-01 15:59:21 +00:00