Age | Commit message (Collapse) | Author |
|
|
|
This makes it easier to predict size of next rendering operation so we
can do early flush.
|
|
This fixes some state atom check functions from returing wrong emit size.
There is emit code cleanup so that emit function selection is done in init
time instead of runtime.
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
- emit prediction
- fixes to emit_sizes for data
- clean up of excesive use of radeonEnsureCmdBufferSpace
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
Calling EnsureCmdBufSpace is not required because rendering pipeline has to quarentee free space.
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
This patch makes render emit size prediction count the corect maximum emit size
for state.
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
Patch adds prediction functionthat tries to predict emit size to the smallest
possible values that is quarenteed to be higher than worst case scenario in
rendering pipeline.
State emit size prediction code is in place but fix for emit sizes is included
in next patch.
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
This fixes bug that xdemos/manywin would segfault if it was run with command
./manywin 2. Demo is tring to call glXSwapBuffers while another context was
bind using glXMakeCurrent.
Fix is simple makes drawable and readable persistent untill they change or
context is destroyed.
I found a logic error when same dri context is used for multiple drawables
which caused readable and drawable to fall out of sync in special case. Fix
is simple just updating drawables more often than in original patch.
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
|
|
switches more state handling to common code. We need
should be more fine grained with the state atoms
eventually.
|
|
Slowing migrating to atom based system like
the other radeon drivers.
|
|
We probably want to go finer grained eventually, but
this is a good start.
|
|
fixes corruption issues with apps like teapot and
geartrain.
|
|
These regs don't use the SET_CONTEXT_REG packet,
so they weren't getting set correctly.
|
|
Plus, add a comment about 'type' error checking.
See bug 19087.
|
|
make sure we allocate enough space for relocs
|
|
This fixes problem that dma buffers were leaking in dri1 mode.
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
|
|
|
|
|
|
|
|
This may or may not be required pre-965, but it doesn't seem unlikely, and
I'd rather be safe.
|
|
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
This fixes problems when application is using large vertex arrays for drawing.
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
|
|
|
|
Fixes piglit fp-fog failure with gallium.
|
|
|
|
In radeonRefillCurrentDmaRegion() make sure we
unmap the previous buffer.
|
|
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
This allows us to return the unused portion of the dma buffer
to the allocator instead of wasting nearly 16k a pop.
Cherry picked and ported to new code by Pauli.
|
|
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
We keep dma buffer objects in list untill they have been unused for many
draw operations. Current limit of having 100 flushes is just guess for
good performance/memory trade off.
Moving WARN_ONCE macro to common context because it is used in multiple drivers.
Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
|
|
|
|
|
|
|
|
|
|
Move to common code base so radeon/r200 can add support for this.
Make OQ start a state emitted like all normal state, and make no-tcl
flushing work in proper places.
Really need a generic post emit space reservation mechanism like max_state
so we can reserve some space for the emit
this code passes demos/arbocclude, piglit occlusion query and
glean occlusion query with TCL and NO-TCL on my rv530.
|
|
|
|
|
|
|
|
make sure the number of indices is valid for the
requested prim type. glxgears sends invalid
quad strips with only 2 indices for example.
|
|
This stuff was a vestige of the r600 bring up and
now mostly serves to periodically break the build.
|
|
Split vbo rendering when the number of elements requested
by drawarrays is bigger than 65536.
|
|
|
|
|
|
Supported only on HW with TCL block and with proper radeon drm.
Required minimum radeon drm version is 1.30 or KMS.
|