1. 29 Apr, 2019 1 commit
  2. 24 Apr, 2019 2 commits
  3. 15 Apr, 2019 1 commit
  4. 12 Apr, 2019 1 commit
  5. 04 Apr, 2019 1 commit
  6. 21 Mar, 2019 1 commit
  7. 20 Mar, 2019 1 commit
    • Kenneth Graunke's avatar
      nvc0: Skip new update barrier bits · 3c3f2504
      Kenneth Graunke authored
      I added new barrier bits in 220c1dce
      and made most drivers skip them.  I thought nvc0 was already skipping
      those but missed the else case here, which does something.  So make it
      explicitly skip like I did everywhere else.
      Thanks to Ilia for catching this.
      Fixes: 220c1dce gallium: Add PIPE_BARRIER_UPDATE_BUFFER and UPDATE_TEXTURE bits.
  8. 17 Mar, 2019 2 commits
    • Karol Herbst's avatar
      nouveau: add support for nir · f014ae3c
      Karol Herbst authored
      not all those nir options are actually required, it just made the work a
      little easier.
      v2: fix asserts
          parse compute shaders
          don't lower bitfield_insert
      v3: fix memory leak
      v4: don't lower fmod32
      v5: set lower_all_io_to_temps to false
          fix memory leak because we take over ownership of the nir shader
          merge: use the lowering helper
      v6: include TGSI debug header for proper assert call
          add nv50 support
      v7: fix Automake build
      v8: free shader only for the set shader type
      v9: check for IR type inside get_compiler_options
          squash "nouveau: add env var to make nir default"
          fix memory leak when creating compute shaders
          use debug_get_bool_option as it is available in non debug builds
          return failure if unsupported IR is encountered
          don't lower fpow in nir
          lower int 64 divmod inside nir to prevent crashes
      Signed-off-by: Karol Herbst's avatarKarol Herbst <kherbst@redhat.com>
      Reviewed-by: Pierre Moreau's avatarPierre Moreau <pierre.morrow@free.fr>
    • Karol Herbst's avatar
      nvc0: print the shader type when dumping headers · bb50cb66
      Karol Herbst authored
      this makes debugging the shader header a little easier
      Acked-by: Pierre Moreau's avatarPierre Moreau <pierre.morrow@free.fr>
      Signed-off-by: Karol Herbst's avatarKarol Herbst <kherbst@redhat.com>
  9. 14 Feb, 2019 1 commit
  10. 11 Feb, 2019 1 commit
  11. 09 Feb, 2019 1 commit
  12. 08 Feb, 2019 1 commit
  13. 07 Feb, 2019 5 commits
    • Rhys Perry's avatar
      nvc0: add compute invocation counter · 5b6f522f
      Rhys Perry authored and Ilia Mirkin's avatar Ilia Mirkin committed
      The strategy is to keep a CPU-side counter of the direct invocations,
      and a GPU-side counter of the indirect invocations, and then add them
      together for queries.
      The specific technique is a macro which multiplies a list of integers
      together and accumulates the product into SCRATCH registers held inside
      of the context. Another macro will read those values out and add them to
      the passed-in cpu-side counter to be stored in a query buffer the same
      way that all the other statistics are stored.
      Original implementation by Rhys Perry, redone by Ilia Mirkin to use the
      SCRATCH temporaries.
      Signed-off-by: Ilia Mirkin's avatarIlia Mirkin <imirkin@alum.mit.edu>
    • Ilia Mirkin's avatar
      nvc0: stick zero values for the compute invocation counts · 6adb9b38
      Ilia Mirkin authored
      Not quite perfect, but at least we don't end up with random values in
      the query buffer.
      Fixes KHR-GL45.pipeline_statistics_query_tests_ARB.functional_default_qo_values
      Signed-off-by: Ilia Mirkin's avatarIlia Mirkin <imirkin@alum.mit.edu>
      Cc: 19.0 <mesa-stable@lists.freedesktop.org>
    • Ilia Mirkin's avatar
      nv50,nvc0: use condition for occlusion queries when already complete · e00799d3
      Ilia Mirkin authored
      For the NO_WAIT variants, we would jump into the ALWAYS case for both
      nested and inverted occlusion queries. However if the query had
      previously completed, the application could reasonably expect that the
      render condition would follow that result.
      To resolve this, we remove the nesting distinction which unnecessarily
      created an imbalance between the regular and inverted cases (since
      there's no "zero" condition mode). We also use the proper comparison if
      we know that the query has completed (which could happen as a result of
      an earlier get_query_result call).
      Fixes KHR-GL45.conditional_render_inverted.functional
      Signed-off-by: Ilia Mirkin's avatarIlia Mirkin <imirkin@alum.mit.edu>
      Cc: 19.0 <mesa-stable@lists.freedesktop.org>
    • Ilia Mirkin's avatar
      nvc0: fix 3d images on kepler · 162352e6
      Ilia Mirkin authored
      Looks like SUBFM.3D and SUEAU are perfectly capable of dealing with 3d
      tiling, they just need the correct inputs. Supply them.
      We also have to deal with the case where a 2d "layer" of a 3d image is
      bound. In this case, we supply the z coordinate separately to the
      shader, which has to optionally treat every 2d case as if it could be a
      slice of a 3d texture.
      Signed-off-by: Ilia Mirkin's avatarIlia Mirkin <imirkin@alum.mit.edu>
      Cc: 19.0 <mesa-stable@lists.freedesktop.org>
    • Ilia Mirkin's avatar
      nvc0: add support for handling indirect draws with attrib conversion · 399215eb
      Ilia Mirkin authored
      The hardware does not natively support FIXED and DOUBLE formats. If
      those are used in an indirect draw, they have to be converted. Our
      conversion tries to be clever about only converting the data that's
      needed. However for indirect, that won't work.
      Given that DOUBLE or FIXED are highly unlikely to ever be used with
      indirect draws, read the indirect buffer on the CPU and issue draws
      Fixes the failing dEQP-GLES31.functional.draw_indirect.random.* tests.
      Signed-off-by: Ilia Mirkin's avatarIlia Mirkin <imirkin@alum.mit.edu>
      Cc: 19.0 <mesa-stable@lists.freedesktop.org>
  14. 05 Feb, 2019 1 commit
  15. 28 Jan, 2019 1 commit
  16. 23 Jan, 2019 1 commit
    • Ilia Mirkin's avatar
      nv50,nvc0: mark textures dirty on fb update · 8e26d534
      Ilia Mirkin authored
      We may have to flush the cache if there are any textures presently bound
      that refer to the outgoing framebuffer. This is only checked at
      validation time.
      Fixes a number of dEQP-GLES3.functional.fbo.color.repeated_clear.sample.*
      tests, which would bind a texture, then clear it while the binding was
      in effect, and then render to a different texture. This seems legal
      under the "no feedback loops" rule.
      Signed-off-by: Ilia Mirkin's avatarIlia Mirkin <imirkin@alum.mit.edu>
      Reviewed-by: Karol Herbst's avatarKarol Herbst <kherbst@redhat.com>
  17. 20 Jan, 2019 1 commit
  18. 27 Dec, 2018 2 commits
  19. 15 Dec, 2018 2 commits
    • Ilia Mirkin's avatar
      nvc0: always keep TSC slot 0 bound to fix TXF · 153d3fc5
      Ilia Mirkin authored
      Same as on nv50, the TXF op always uses the TSC bound to slot 0,
      returning blank values if nothing is bound.
      An earlier change arranges for the TSC entries list to always have valid
      data at entry 0, so here we just make use of it.
      Fixes arb_texture_buffer_object-subdata-sync among others.
      Signed-off-by: Ilia Mirkin's avatarIlia Mirkin <imirkin@alum.mit.edu>
    • Ilia Mirkin's avatar
      nvc0: replace use of explicit default_tsc with entry 0 · 4aeaf89a
      Ilia Mirkin authored
      This was used for implementing FBFETCH. However that uses TXF, which
      doesn't do much with a TSC. The only important bit is that sRGB-decoding
      works as expected, which we can achieve since all samplers we ever
      generate enable sRGB-decoding. Always point to entry 0 in the TSC table,
      and ensure that even before it ever gets initialized, the sRGB-decoding
      enable bit is set.
      Signed-off-by: Ilia Mirkin's avatarIlia Mirkin <imirkin@alum.mit.edu>
  20. 04 Dec, 2018 2 commits
  21. 01 Dec, 2018 1 commit
  22. 25 Oct, 2018 1 commit
  23. 09 Oct, 2018 2 commits
  24. 22 Sep, 2018 2 commits
  25. 11 Sep, 2018 1 commit
  26. 07 Sep, 2018 3 commits
  27. 04 Sep, 2018 1 commit
    • Emma Anholt's avatar
      gallium: Add a helper for implementing PIPE_CAP_* default values. · ad782a70
      Emma Anholt authored
      One of the pains of implementing a gallium driver is filling in a million
      pipe caps you don't know about yet when you're just starting out.  One of
      the pains of working on gallium is copy-and-pasting your new PIPE_CAP into
      each driver.  We can fix both of these by having each driver call into the
      default helper from their default case, so that both sides can ignore each
      other until they need to.
      v2: fix i915g build, revert swr change to avoid breaking scons build
      v3: Rebase on 3 new gallium caps.
      Reviewed-by: Marek Olšák <marek.olsak@amd.com> (v1)
      Cc: Bruce Cherniak <bruce.cherniak@intel.com>
      Cc: George Kyriazis <george.kyriazis@intel.com>
      Cc: Kenneth Graunke <kenneth@whitecape.org>