mesa.git
5 years agoiris: rzalloc iris_compiled_shader so memcmp works even if padding creeps in
Kenneth Graunke [Sat, 16 Jun 2018 17:15:24 +0000 (10:15 -0700)]
iris: rzalloc iris_compiled_shader so memcmp works even if padding creeps in

5 years agoiris: remove 4 bytes of padding in iris_compiled_shader
Kenneth Graunke [Sat, 16 Jun 2018 17:15:12 +0000 (10:15 -0700)]
iris: remove 4 bytes of padding in iris_compiled_shader

5 years agoiris: pc fixes
Kenneth Graunke [Sat, 16 Jun 2018 17:13:14 +0000 (10:13 -0700)]
iris: pc fixes

5 years agoiris: more leak fixes
Kenneth Graunke [Sat, 16 Jun 2018 17:04:32 +0000 (10:04 -0700)]
iris: more leak fixes

5 years agoiris: plug leaks
Kenneth Graunke [Sat, 16 Jun 2018 16:56:59 +0000 (09:56 -0700)]
iris: plug leaks

5 years agoiris: clear dirty
Kenneth Graunke [Fri, 15 Jun 2018 19:44:59 +0000 (12:44 -0700)]
iris: clear dirty

5 years agoiris: some dirty fixes
Kenneth Graunke [Fri, 15 Jun 2018 23:22:58 +0000 (16:22 -0700)]
iris: some dirty fixes

two scissor bits, constants not being flagged, ZeroRTA, clip not being
flagged

5 years agoiris: bindings dirty tracking
Kenneth Graunke [Fri, 15 Jun 2018 19:33:58 +0000 (12:33 -0700)]
iris: bindings dirty tracking

5 years agoiris: flag DIRTY_WM properly
Kenneth Graunke [Fri, 15 Jun 2018 19:20:54 +0000 (12:20 -0700)]
iris: flag DIRTY_WM properly

5 years agoiris: fix the validation list on new batches
Kenneth Graunke [Wed, 13 Jun 2018 10:07:00 +0000 (03:07 -0700)]
iris: fix the validation list on new batches

5 years agoiris: save pointers to streamed state resources
Kenneth Graunke [Fri, 15 Jun 2018 18:55:28 +0000 (11:55 -0700)]
iris: save pointers to streamed state resources

will be used for cross-batch validation list fixing

5 years agoiris: put back the always flush - fixes some things :(
Kenneth Graunke [Thu, 14 Jun 2018 22:51:59 +0000 (15:51 -0700)]
iris: put back the always flush - fixes some things :(

5 years agoiris: untested SAMPLER_STATE pin BO fix
Kenneth Graunke [Wed, 13 Jun 2018 10:06:50 +0000 (03:06 -0700)]
iris: untested SAMPLER_STATE pin BO fix

5 years agoiris: delete some pointless STATIC_ASSERTS
Kenneth Graunke [Wed, 13 Jun 2018 09:15:40 +0000 (02:15 -0700)]
iris: delete some pointless STATIC_ASSERTS

these were useful when I was patching relocs

5 years agoiris: untested index buffer upload
Kenneth Graunke [Sun, 10 Jun 2018 02:11:22 +0000 (19:11 -0700)]
iris: untested index buffer upload

5 years agoiris: state cleaning
Kenneth Graunke [Sat, 9 Jun 2018 07:01:09 +0000 (00:01 -0700)]
iris: state cleaning

5 years agoiris: comment about reemitting and flushing
Kenneth Graunke [Thu, 7 Jun 2018 09:28:56 +0000 (02:28 -0700)]
iris: comment about reemitting and flushing

5 years agoiris: allow mapped buffers during execution (faster)
Kenneth Graunke [Fri, 8 Jun 2018 08:28:16 +0000 (01:28 -0700)]
iris: allow mapped buffers during execution (faster)

5 years agoiris: disable __gen_validate_value in release mode
Kenneth Graunke [Thu, 7 Jun 2018 22:33:52 +0000 (15:33 -0700)]
iris: disable __gen_validate_value in release mode

5 years agoiris: drop assert for now
Kenneth Graunke [Thu, 7 Jun 2018 22:14:20 +0000 (15:14 -0700)]
iris: drop assert for now

5 years agoiris: fix release builds
Kenneth Graunke [Thu, 7 Jun 2018 08:54:29 +0000 (01:54 -0700)]
iris: fix release builds

5 years agoiris: better VFI
Kenneth Graunke [Thu, 7 Jun 2018 08:45:47 +0000 (01:45 -0700)]
iris: better VFI

5 years agoiris: IndexFormat = size/2
Chris Wilson [Fri, 8 Jun 2018 21:16:59 +0000 (22:16 +0100)]
iris: IndexFormat = size/2

brw uses:
  IndexFormat = index_size >> 1

anv uses:
  IndexFromat = index_type[index_size]

5 years agoiris: use u_transfer helpers for now
Kenneth Graunke [Thu, 7 Jun 2018 08:25:35 +0000 (01:25 -0700)]
iris: use u_transfer helpers for now

5 years agoiris: fix pull bufs that aren't the first user upload
Kenneth Graunke [Thu, 7 Jun 2018 07:23:23 +0000 (00:23 -0700)]
iris: fix pull bufs that aren't the first user upload

5 years agoiris: fill out pull constant buffers
Kenneth Graunke [Wed, 6 Jun 2018 21:56:10 +0000 (14:56 -0700)]
iris: fill out pull constant buffers

5 years agoiris: make surface states for cbufs
Kenneth Graunke [Wed, 6 Jun 2018 21:37:38 +0000 (14:37 -0700)]
iris: make surface states for cbufs

5 years agoiris: have more than one const_offset
Kenneth Graunke [Wed, 6 Jun 2018 21:14:31 +0000 (14:14 -0700)]
iris: have more than one const_offset

5 years agoiris: completely rewrite binder
Kenneth Graunke [Wed, 6 Jun 2018 18:59:17 +0000 (11:59 -0700)]
iris: completely rewrite binder

now we get a new one per batch, and flush if it fills up

5 years agoiris: better ubo handling
Kenneth Graunke [Wed, 6 Jun 2018 09:16:52 +0000 (02:16 -0700)]
iris: better ubo handling

5 years agoiris: fix import from dri2/3
Chris Wilson [Sat, 2 Jun 2018 11:32:19 +0000 (12:32 +0100)]
iris: fix import from dri2/3

5 years agoiris: fix constant packet length to match i965
Kenneth Graunke [Tue, 29 May 2018 14:32:43 +0000 (07:32 -0700)]
iris: fix constant packet length to match i965

5 years agoiris: maybe slightly less boats uniforms
Kenneth Graunke [Tue, 29 May 2018 04:28:36 +0000 (21:28 -0700)]
iris: maybe slightly less boats uniforms

5 years agoiris: flush always
Kenneth Graunke [Tue, 29 May 2018 03:28:08 +0000 (20:28 -0700)]
iris: flush always

5 years agoiris: transfers
Kenneth Graunke [Tue, 29 May 2018 00:14:43 +0000 (17:14 -0700)]
iris: transfers

5 years agoiris: util_copy_framebuffer_state (ported from Rob's v3d patches)
Kenneth Graunke [Mon, 21 May 2018 07:32:04 +0000 (00:32 -0700)]
iris: util_copy_framebuffer_state (ported from Rob's v3d patches)

5 years agoiris: fix VF INSTANCING length
Kenneth Graunke [Wed, 9 May 2018 07:35:14 +0000 (00:35 -0700)]
iris: fix VF INSTANCING length

5 years agoiris: more depth stuffs...
Kenneth Graunke [Wed, 9 May 2018 06:52:07 +0000 (23:52 -0700)]
iris: more depth stuffs...

still missing stencil

5 years agoiris: fix 3DSTATE_VERTEX_ELEMENTS length
Kenneth Graunke [Thu, 3 May 2018 05:26:03 +0000 (22:26 -0700)]
iris: fix 3DSTATE_VERTEX_ELEMENTS length

5 years agoiris: fix whitespace
Kenneth Graunke [Thu, 3 May 2018 05:14:05 +0000 (22:14 -0700)]
iris: fix whitespace

5 years agoiris: Lower the max number of decoded VBO lines
Kenneth Graunke [Thu, 3 May 2018 05:11:54 +0000 (22:11 -0700)]
iris: Lower the max number of decoded VBO lines

saint foo, vbo lines!

5 years agoiris: fix decoding and undo testing code
Kenneth Graunke [Thu, 3 May 2018 05:01:10 +0000 (22:01 -0700)]
iris: fix decoding and undo testing code

5 years agoiris: fix batch chaining...
Kenneth Graunke [Thu, 3 May 2018 04:52:34 +0000 (21:52 -0700)]
iris: fix batch chaining...

don't chain a batch just for the end

5 years agoiris: caps
Kenneth Graunke [Thu, 3 May 2018 04:52:26 +0000 (21:52 -0700)]
iris: caps

5 years agoiris: chaining not growing
Kenneth Graunke [Thu, 3 May 2018 02:54:23 +0000 (19:54 -0700)]
iris: chaining not growing

5 years agoiris: just turn batch reset_and_clear_caches into reset
Kenneth Graunke [Wed, 2 May 2018 21:28:27 +0000 (14:28 -0700)]
iris: just turn batch reset_and_clear_caches into reset

5 years agoiris: delete growing code and just die for now
Kenneth Graunke [Wed, 2 May 2018 17:44:46 +0000 (10:44 -0700)]
iris: delete growing code and just die for now

we need proper batch chaining.  without relocations, we can't grow,
since we've only allocated so much VMA for the batch, and the mechanism
only works if we can pin it at the old address

5 years agoiris: blorp bug fixes
Kenneth Graunke [Sat, 28 Apr 2018 23:55:54 +0000 (16:55 -0700)]
iris: blorp bug fixes

I wrote this earlier, but it got lost somehow...

5 years agoiris: properly reject formats, fixes RGB32 rendering with texture float
Kenneth Graunke [Fri, 27 Apr 2018 07:07:43 +0000 (00:07 -0700)]
iris: properly reject formats, fixes RGB32 rendering with texture float

5 years agoiris: proper # of uniforms
Kenneth Graunke [Fri, 27 Apr 2018 06:42:16 +0000 (23:42 -0700)]
iris: proper # of uniforms

or at least closer...we were using bytes, we want 256-bit units...

5 years agoiris: proper length for VE packet?
Kenneth Graunke [Fri, 27 Apr 2018 06:42:10 +0000 (23:42 -0700)]
iris: proper length for VE packet?

5 years agoiris: uniforms for VS
Kenneth Graunke [Thu, 26 Apr 2018 20:42:20 +0000 (13:42 -0700)]
iris: uniforms for VS

5 years agoiris: bump GL version to 4.2
Kenneth Graunke [Thu, 26 Apr 2018 06:47:06 +0000 (23:47 -0700)]
iris: bump GL version to 4.2

5 years agoiris: some depth stuff :(
Kenneth Graunke [Wed, 25 Apr 2018 22:25:33 +0000 (15:25 -0700)]
iris: some depth stuff :(

5 years agoiris: assert surf init
Kenneth Graunke [Wed, 25 Apr 2018 06:38:10 +0000 (23:38 -0700)]
iris: assert surf init

5 years agoiris: no more drawing rectangle in blorp
Kenneth Graunke [Tue, 24 Apr 2018 18:26:49 +0000 (11:26 -0700)]
iris: no more drawing rectangle in blorp

there's some bug here as Jason's patches for only emitting 3DS_DR once
got reverted by Mark later on, apparently they regressed MSAA tests.

need to sort that out.

5 years agoiris: blorp URB
Kenneth Graunke [Mon, 23 Apr 2018 20:26:06 +0000 (13:26 -0700)]
iris: blorp URB

5 years agoiris: make blorp pin the binder
Kenneth Graunke [Mon, 23 Apr 2018 18:01:00 +0000 (11:01 -0700)]
iris: make blorp pin the binder

5 years agoiris: linear staging buffers - fast CPU access...
Kenneth Graunke [Mon, 23 Apr 2018 04:44:46 +0000 (21:44 -0700)]
iris: linear staging buffers - fast CPU access...

5 years agoiris: hacky flushing for now
Kenneth Graunke [Mon, 23 Apr 2018 04:44:40 +0000 (21:44 -0700)]
iris: hacky flushing for now

5 years agoiris: drop the 48b printout, we never use anything else
Kenneth Graunke [Mon, 23 Apr 2018 04:31:07 +0000 (21:31 -0700)]
iris: drop the 48b printout, we never use anything else

5 years agoiris: add INTEL_DEBUG=reemit
Kenneth Graunke [Mon, 23 Apr 2018 04:29:43 +0000 (21:29 -0700)]
iris: add INTEL_DEBUG=reemit

5 years agoiris: fix blorp prog data crashes
Kenneth Graunke [Mon, 23 Apr 2018 04:25:51 +0000 (21:25 -0700)]
iris: fix blorp prog data crashes

5 years agoiris: more blorp
Kenneth Graunke [Sun, 22 Apr 2018 06:27:15 +0000 (23:27 -0700)]
iris: more blorp

5 years agoiris: fix sampler view crashes
Kenneth Graunke [Sun, 22 Apr 2018 05:44:04 +0000 (22:44 -0700)]
iris: fix sampler view crashes

5 years agoiris: drop bogus binder free
Kenneth Graunke [Sun, 22 Apr 2018 05:27:37 +0000 (22:27 -0700)]
iris: drop bogus binder free

I was malloc'ing it but then I changed my mind and embedded it directly

5 years agoiris: more blitting code to make readpixels work
Kenneth Graunke [Sun, 22 Apr 2018 05:20:32 +0000 (22:20 -0700)]
iris: more blitting code to make readpixels work

5 years agoiris: bits of blorp code
Kenneth Graunke [Sat, 21 Apr 2018 07:05:57 +0000 (00:05 -0700)]
iris: bits of blorp code

5 years agoiris: move bo_offset_from_sba
Kenneth Graunke [Sat, 21 Apr 2018 08:42:06 +0000 (01:42 -0700)]
iris: move bo_offset_from_sba

for wider use

5 years agoiris: copy over i965's cache tracking
Kenneth Graunke [Sat, 21 Apr 2018 06:28:03 +0000 (23:28 -0700)]
iris: copy over i965's cache tracking

needed to split out vtbl so I can pipe control without ice

5 years agoiris: pull in newer comments
Kenneth Graunke [Sat, 21 Apr 2018 01:45:25 +0000 (18:45 -0700)]
iris: pull in newer comments

5 years agoiris: Defines for base addresses rather than numbers everywhere
Kenneth Graunke [Sat, 21 Apr 2018 01:44:22 +0000 (18:44 -0700)]
iris: Defines for base addresses rather than numbers everywhere

5 years agoiris: Move get_command_space to iris_batch.c
Kenneth Graunke [Sat, 21 Apr 2018 00:42:07 +0000 (17:42 -0700)]
iris: Move get_command_space to iris_batch.c

for reuse in blorp.  it's a better interface anyway.

5 years agoiris: fix texturing!
Kenneth Graunke [Fri, 20 Apr 2018 02:33:22 +0000 (19:33 -0700)]
iris: fix texturing!

5 years agoiris: better SBE
Kenneth Graunke [Fri, 20 Apr 2018 02:04:17 +0000 (19:04 -0700)]
iris: better SBE

5 years agoiris: vma - fix assert
Kenneth Graunke [Thu, 19 Apr 2018 20:09:51 +0000 (13:09 -0700)]
iris: vma - fix assert

5 years agoiris: vma fixes - don't free binder address
Kenneth Graunke [Thu, 19 Apr 2018 20:08:37 +0000 (13:08 -0700)]
iris: vma fixes - don't free binder address

5 years agoiris: bo reuse
Kenneth Graunke [Thu, 19 Apr 2018 20:03:21 +0000 (13:03 -0700)]
iris: bo reuse

5 years agoiris: crazy pipe control code
Kenneth Graunke [Thu, 19 Apr 2018 19:52:51 +0000 (12:52 -0700)]
iris: crazy pipe control code

imported from ~kwg/mesa pcx-2, gen < 8 code dropped

5 years agoiris: fixes
Kenneth Graunke [Thu, 19 Apr 2018 19:07:44 +0000 (12:07 -0700)]
iris: fixes

5 years agoiris: fixes from i965
Kenneth Graunke [Thu, 19 Apr 2018 19:01:09 +0000 (12:01 -0700)]
iris: fixes from i965

5 years agoiris: port bug fix from i965
Kenneth Graunke [Tue, 10 Apr 2018 22:59:57 +0000 (15:59 -0700)]
iris: port bug fix from i965

5 years agoiris: fix index
Kenneth Graunke [Tue, 10 Apr 2018 07:39:27 +0000 (00:39 -0700)]
iris: fix index

5 years agoiris: increase allocator alignment
Kenneth Graunke [Tue, 10 Apr 2018 07:20:32 +0000 (00:20 -0700)]
iris: increase allocator alignment

5 years agoiris: better BT asserts
Kenneth Graunke [Sat, 7 Apr 2018 14:07:19 +0000 (07:07 -0700)]
iris: better BT asserts

Probably nothing is working because texture upload isn't implemented

5 years agoiris: decoder fixes
Kenneth Graunke [Sat, 7 Apr 2018 13:59:22 +0000 (06:59 -0700)]
iris: decoder fixes

5 years agoiris: set sampler views
Kenneth Graunke [Sat, 7 Apr 2018 13:35:51 +0000 (06:35 -0700)]
iris: set sampler views

5 years agoiris: isv freeing fixes
Kenneth Graunke [Sat, 7 Apr 2018 13:16:51 +0000 (06:16 -0700)]
iris: isv freeing fixes

5 years agoiris: TES stash
Kenneth Graunke [Sat, 7 Apr 2018 08:18:12 +0000 (01:18 -0700)]
iris: TES stash

TODO: key setup

5 years agoiris: SBA once at context creation, not per batch
Kenneth Graunke [Sat, 7 Apr 2018 08:01:24 +0000 (01:01 -0700)]
iris: SBA once at context creation, not per batch

hooray!

5 years agoiris: fix a scissor bug
Kenneth Graunke [Sat, 7 Apr 2018 07:58:07 +0000 (00:58 -0700)]
iris: fix a scissor bug

5 years agoiris: assemble SAMPLER_STATE table at bind time
Kenneth Graunke [Sat, 7 Apr 2018 07:49:12 +0000 (00:49 -0700)]
iris: assemble SAMPLER_STATE table at bind time

It's useless to allocate SAMPLER_STATEs in GPU memory on creation like
we do for SURFACE_STATES, because they need to be organized into a
contiguous block of memory.  But we can do that at bind time, rather
than draw time.

5 years agoiris: same treatment for sampler views
Kenneth Graunke [Sat, 7 Apr 2018 07:11:14 +0000 (00:11 -0700)]
iris: same treatment for sampler views

5 years agoiris: allocate SURFACE_STATEs up front and stop streaming them
Kenneth Graunke [Sat, 7 Apr 2018 06:57:45 +0000 (23:57 -0700)]
iris: allocate SURFACE_STATEs up front and stop streaming them

5 years agoiris: delete more trash
Kenneth Graunke [Sat, 7 Apr 2018 06:16:11 +0000 (23:16 -0700)]
iris: delete more trash

5 years agoiris: canonicalize addresses.
Kenneth Graunke [Sat, 7 Apr 2018 06:08:52 +0000 (23:08 -0700)]
iris: canonicalize addresses.

Back to working!  Woo!

5 years agoiris: validation dumping improvements
Kenneth Graunke [Sat, 7 Apr 2018 05:39:01 +0000 (22:39 -0700)]
iris: validation dumping improvements

backported from i965.  don't bother with (pinned) because everything is.

5 years agoiris: update vb BO handling now that we have softpin
Kenneth Graunke [Sat, 7 Apr 2018 03:33:17 +0000 (20:33 -0700)]
iris: update vb BO handling now that we have softpin

5 years agoiris: decoder fixes
Kenneth Graunke [Sat, 7 Apr 2018 00:01:45 +0000 (17:01 -0700)]
iris: decoder fixes

5 years agoiris: binder fixes
Kenneth Graunke [Fri, 6 Apr 2018 23:31:01 +0000 (16:31 -0700)]
iris: binder fixes