Kenneth Graunke
2bd7d6fa71
iris: last VUE map NOS, handle > 16 FS inputs
...
not sure if the UNCOMPILED_FS flagging is still needed, should
reevaluate those hacks at some point
2019-02-21 10:26:08 -08:00
Kenneth Graunke
ee8cb7e0ee
iris: implement ARB_clear_texture
2019-02-21 10:26:08 -08:00
Kenneth Graunke
84b30a2900
iris: call maybe_flush for each blorp operation
...
otherwise with high layer counts we may exceed two batches worth of
commands... (!)
2019-02-21 10:26:08 -08:00
Kenneth Graunke
0e059e4829
iris: assert depth is 1 in resource_copy_region
...
given the dstz parameter I don't think it does multiple slices..
2019-02-21 10:26:08 -08:00
Kenneth Graunke
03933a2d1b
iris: blorp blit multiple slices
...
fixes getteximage-depth
2019-02-21 10:26:08 -08:00
Kenneth Graunke
84832ab7d4
iris: Fix tiled memcpy for cubes...and for array slices
...
tiled_memcpy_map was not offsetting map->ptr based on the slice,
while unmap was. also, we were doing offsetting wrong for cubes.
2019-02-21 10:26:08 -08:00
Kenneth Graunke
bce7398646
iris: disallow RGB32 formats too
2019-02-21 10:26:08 -08:00
Kenneth Graunke
ea19d359cc
iris: Convert RGBX to RGBA for rendering.
...
Fixes a bunch of RGB bugs.
2019-02-21 10:26:08 -08:00
Kenneth Graunke
906becec70
iris: we can do multisample Z resolves
2019-02-21 10:26:08 -08:00
Kenneth Graunke
1f156f004b
iris: deal with Marek's new MSAA caps
...
storage sample count is equal to sample count for us, for now,
so 0 the pipe cap and ignore the new parameter
2019-02-21 10:26:08 -08:00
Kenneth Graunke
532cf23d25
iris: say no to more formats
...
copied from brw_surface_formats.c
2019-02-21 10:26:08 -08:00
Kenneth Graunke
d5146ba670
iris: actually do stencil blits
2019-02-21 10:26:08 -08:00
Kenneth Graunke
ad76389f88
iris: refcounting, who needs it?
...
that's right, we do!
2019-02-21 10:26:08 -08:00
Kenneth Graunke
be60e3247c
iris: drop stencil handling now that u_transfer_helper does it
2019-02-21 10:26:08 -08:00
Kenneth Graunke
b932938d01
iris: use u_transfer_helper for depth stencil packing/unpacking
2019-02-21 10:26:08 -08:00
Kenneth Graunke
853230b5e6
iris: WTF transfers
...
stencil unfortunately is stored in the Weird Tile Format (WTF or Tile-W)
which needs special CPU detiling code.
2019-02-21 10:26:08 -08:00
Kenneth Graunke
d93a20e258
iris: allow S8 as a stencil format
2019-02-21 10:26:08 -08:00
Kenneth Graunke
7972599eab
iris: actually emit stencil packets
2019-02-21 10:26:08 -08:00
Kenneth Graunke
753646dd6b
iris: clear stencil
2019-02-21 10:26:08 -08:00
Kenneth Graunke
9ec2d3640e
iris: depth or stencil fixes
2019-02-21 10:26:08 -08:00
Kenneth Graunke
763f9095ea
iris: fill out more caps
2019-02-21 10:26:08 -08:00
Kenneth Graunke
2d578e71d5
iris: get angry about execbuf failures
...
want this to be easy to detect for now
2019-02-21 10:26:08 -08:00
Kenneth Graunke
a378ee3607
iris: simplify batch len qword alignment
...
Split from a patch by Chris Wilson so I can test it independently
2019-02-21 10:26:08 -08:00
Kenneth Graunke
621cb43f41
iris: rename ring to engine
...
makes more sense these days. split from a patch by Chris Wilson
2019-02-21 10:26:08 -08:00
Kenneth Graunke
1a9651f29a
iris: remember to set bo->userptr
2019-02-21 10:26:08 -08:00
Chris Wilson
796ad6fe97
iris: Wrap userptr for creating bo
2019-02-21 10:26:08 -08:00
Kenneth Graunke
5911fb8801
iris: sync bugfixes from brw_bufmgr
...
I wrote softpin support here first, then debugged and landed it in brw;
some of those fixes need to get brought back.
2019-02-21 10:26:08 -08:00
Kenneth Graunke
dfe1ee4f6f
iris: comment everything
...
1. Write the code
2. Add comments
3. PROFIT (or just avoid cost of explaining or relearning things...)
2019-02-21 10:26:08 -08:00
Kenneth Graunke
387a414f2c
iris: add minor comments
2019-02-21 10:26:08 -08:00
Dave Airlie
9d39e69219
iris: fix some hangs around null framebuffers
...
This fixes some cases in fbo-none* and framebuffer_no_attachments.
I'm not sure this is correct otherwise, the tests don't all pass yet
No idea if this is in any way the correct answer
2019-02-21 10:26:08 -08:00
Chris Wilson
02b82fe80a
iris: Set resource modifier on handle
...
Required for gdm_bo_create_with_modifiers
2019-02-21 10:26:08 -08:00
Kenneth Graunke
682aeff8d0
iris: we don't support textureGatherOffsets, need it lowered
2019-02-21 10:26:08 -08:00
Kenneth Graunke
03dc99475d
iris: cube arrays are cubes too
2019-02-21 10:26:08 -08:00
Kenneth Graunke
80c7096672
iris: fix sample mask
...
0xffffffff does not mean 1, it means enable as many as there actually
are. we don't get set_sample_mask() calls until some masking is
actually applied...i.e. it doesn't get updated based on # of samples
in the FBO changing.
2019-02-21 10:26:08 -08:00
Kenneth Graunke
e990558152
iris: drop pipe_shader_state
...
looking at the freedreno code, this is totally unnecessary! we can just
store the NIR and be happy, and not have any vestiges of TGSI.
plus we can reuse this structure for compute shaders, without needing a
pipe_compute_state base.
2019-02-21 10:26:08 -08:00
Kenneth Graunke
834b97c34b
iris: fix GS output component limit
...
this is total, so should be 1024, not 128
2019-02-21 10:26:08 -08:00
Kenneth Graunke
c9f9a6f61b
iris: Avoid croaking when trying to create FBO surfaces with bad formats
...
create_surface happens before st_validate_attachment, which actually
does the "hey, this is a render target now, is that OK?" check
Fixes asserts in ./bin/arb_texture_view-rendering-formats, allowing the
rest of the tests to run.
2019-02-21 10:26:08 -08:00
Kenneth Graunke
8da91ebb68
iris: enable texture gather
2019-02-21 10:26:08 -08:00
Kenneth Graunke
f3dd70182d
iris: BIG OL' HACK for UBO updates
...
We need to re-push data when UBO changes. This will need to be replaced
with a usage history based flushing system later.
2019-02-21 10:26:08 -08:00
Kenneth Graunke
a7311ef068
iris: update a todo comment
2019-02-21 10:26:07 -08:00
Kenneth Graunke
8e7b0deee2
iris: Don't reserve new binding table section unless things are dirty
2019-02-21 10:26:07 -08:00
Kenneth Graunke
870f2e8434
iris: implement texture/memory barriers
2019-02-21 10:26:07 -08:00
Kenneth Graunke
82ee971497
iris: drop unused bo parameter
2019-02-21 10:26:07 -08:00
Kenneth Graunke
f0159d5ca3
iris: update bindings when changing programs
...
the binding table layout depends on program info.
not known to fix anything yet.
2019-02-21 10:26:07 -08:00
Kenneth Graunke
b0e9c5797b
iris: fix for disabling ssbos
2019-02-21 10:26:07 -08:00
Kenneth Graunke
b7b061c4e2
iris: fix SSBO indexing
...
st/nir offsets SSBO indexes by MaxABOs. This is not what we want,
as it bloats the binding tables. We'll need to adjust it to use
info->num_abos as the offset and buffer base instead. For now,
just use the inefficient format to get us rolling. We can add a
PIPE_CAP later.
2019-02-21 10:26:07 -08:00
Kenneth Graunke
376c7253f8
iris: enable SSBOs
2019-02-21 10:26:07 -08:00
Kenneth Graunke
75709d982b
iris: fix TBO alignment to match 965
2019-02-21 10:26:07 -08:00
Kenneth Graunke
77b9219818
iris: unbind compiled shaders if none are present
...
avoids the case where you have a stale compiled shader bound, but no
uncompiled shader bound, which is not just boats, but an entire marina
2019-02-21 10:26:07 -08:00
Kenneth Graunke
fd5ed7b46b
iris: shorten loop
...
num_ubos doesn't include Tim's magic UBO for regular uniforms, so +1
2019-02-21 10:26:07 -08:00