| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
This patch adds a limit to the maximum surface size which is
based on the maximum size of a single mob. If this value is not
available, the maximum surface size is by default set to 128 MB.
Reviewed-by: Thomas Hellstrom <[email protected]>
Reviewed-by: Brian Paul <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
| |
We need to get the new gpu_address as well when
reallocating the cs buffer.
Bug: https://bugs.freedesktop.org/show_bug.cgi?id=82428
Signed-off-by: Christian König <[email protected]>
Reviewed-by: Marek Olšák <[email protected]>
Tested-by: Kai Wasserbäch <[email protected]>
|
|
|
|
| |
Signed-off-by: Ilia Mirkin <[email protected]>
|
|
|
|
| |
Signed-off-by: Ilia Mirkin <[email protected]>
|
|
|
|
| |
Signed-off-by: Ilia Mirkin <[email protected]>
|
|
|
|
| |
This mostly fixes glxgears rendering.
|
|
|
|
| |
This gets glxgears partially rendering again.
|
|
|
|
|
|
|
| |
This isn't passing all tests (glsl-fs-fragcoord-zw-ortho, for example),
but it does get a bunch more tests passing.
v2: Rebase on helpers change.
|
|
|
|
| |
This makes some space for handling special inputs like fragcoords.
|
|
|
|
|
|
|
| |
This prevents some simulator assertion failures, but it does mean (since
I've dropped the "* 16" padding) that on real hardware you need a kernel
that does overflow memory management (currently, "drm/vc4: Add support for
binner overflow memory allocation." in my kernel tree).
|
|
|
|
| |
These #defines are 0, but it should help make math above make more sense.
|
|
|
|
| |
This should reduce a bunch of spurious failures in sim.
|
| |
|
|
|
|
| |
When you're debugging validation, it's nice to know what the BOs are for.
|
|
|
|
|
|
|
| |
In addition to reducing sim-specific code, it also avoids our local handle
allocation conflicting with the host GEM's handle numbering, which was
causing vc4_gem_hindex() to not distinguish between winsys BOs and the
same-numbered non-winsys bo.
|
|
|
|
| |
Otherwise it'll stick around forever.
|
|
|
|
|
|
| |
... and reject everything else, for now.
v2: Rebase on v2 of the rendering config validation change.
|
|
|
|
|
|
| |
It's not relevant to our command streams any more.
v2: Fix indentation and a typo in the comment.
|
| |
|
|
|
|
|
| |
It turns out they aren't packed when attributes are missing, according to
both docs and simulation.
|
|
|
|
|
|
|
| |
It turns out they aren't packed when attributes are missing, according to
both docs and simulation.
v2: Drop unused variable.
|
|
|
|
| |
v2: Fix a build break after some previous rebase.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
We don't care if things like vertex data get smashed by render target
data, but we do need to make sure that shader code doesn't get rendered
to.
v2: Fix overflowing read of gl_relocs[] that incorrect flagged of some
VBOs as shader code.
|
| |
|
|
|
|
|
| |
It's not a real VC4 hardware packet, but I've put in a comment to explain
it.
|
|
|
|
|
|
| |
The comment conflicted with the support in the code, so I moved the TMU
write validation to where the comment was, and dropped some dead arguments
from the functions while changing their signatures.
|
| |
|
|
|
|
| |
This fixes the remaining failure in depthfunc.
|
|
|
|
|
|
|
|
|
| |
This doesn't load/store the Z contents across submits yet. It also
disables early Z, since it's going to require tracking of Z functions
across multiple state updates to track the early Z direction and whether
it can be used.
v2: Move the key setup to before the search for the key.
|
|
|
|
|
| |
This should prevent a bunch of unnecessary flushes for things like
updating immediate vertex data.
|
|
|
|
| |
Now we actally get multiple draw calls per submit.
|
|
|
|
|
| |
Otherwise, the low address bits will end up being interpreted as attribute
counts.
|
| |
|
|
|
|
|
|
| |
Otherwise, once we're not flushing at the end of every draw, we'll free
things like gallium resources, and free the backing GEM object, before
we've flushed the rendering using it to the kernel.
|
|
|
|
|
|
|
|
|
| |
render_cl_size/bin_cl_size includes relocations, while the hardware buffer
doesn't. If you don't emit a HALT packet, the command parser continues
until the end register's value. We can't allow executing unvalidated
buffer contents (and it's actually harmful in the render lists Mesa is
emitting, since VC4_PACKET_STORE_MS_TILE_BUFFER_AND_EOF doesn't trigger a
halt).
|
|
|
|
|
| |
I was confused looking at my addresses in dumps because I was seeing the
tile branch offsets jumping all over.
|
|
|
|
|
|
| |
This is a step toward queueing more than one draw per frame.
Fixes piglit attribute0 test, since we get a working clear color now.
|
|
|
|
|
| |
We only want to set up render target config and clear colors once per
frame.
|
| |
|
| |
|
|
|
|
|
| |
I decided I didn't like "len" compared to "size", and I keep typing
shader_rec instead of shader_record[s] elsewhere, so make it consistent.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This required building a shader parser that would walk the program to find
where the texturing-related uniforms are in the uniforms stream.
Note that as of this commit, a new kernel is required for rendering on
actual VC4 hardware (currently that commit is named "drm/vc4: Introduce
shader validation and better command stream validation.", but is likely to
be squashed as part of an eventual merge of the kernel driver).
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
This ensures that when I'm using the simulator, I get a closer match to
what behavior on real hardware will be. It lets me rapidly iterate on the
kernel validation code (which otherwise has a several-minute turnaround
time), and helps catch buffer overflow bugs in the userspace driver
faster.
|
| |
|
|
|
|
| |
v2: Rebase on helpers change.
|