1. 26 Aug, 2016 3 commits
  2. 23 Aug, 2016 1 commit
  3. 17 Aug, 2016 3 commits
  4. 16 Aug, 2016 10 commits
  5. 09 Aug, 2016 1 commit
  6. 01 Aug, 2016 1 commit
  7. 23 Jul, 2016 1 commit
    • Marek Olšák's avatar
      gallium: split transfer_inline_write into buffer and texture callbacks · 1ffe77e7
      Marek Olšák authored
      
      
      to reduce the call indirections with u_resource_vtbl.
      
      The worst call tree you could get was:
        - u_transfer_inline_write_vtbl
          - u_default_transfer_inline_write
            - u_transfer_map_vtbl
              - driver_transfer_map
            - u_transfer_unmap_vtbl
              - driver_transfer_unmap
      
      That's 6 indirect calls. Some drivers only had 5. The goal is to have
      1 indirect call for drivers that care. The resource type can be determined
      statically at most call sites.
      
      The new interface is:
        pipe_context::buffer_subdata(ctx, resource, usage, offset, size, data)
        pipe_context::texture_subdata(ctx, resource, level, usage, box, data,
                                      stride, layer_stride)
      
      v2: fix whitespace, correct ilo's behavior
      Reviewed-by: default avatarNicolai Hähnle <nicolai.haehnle@amd.com>
      Acked-by: default avatarRoland Scheidegger <sroland@vmware.com>
      1ffe77e7
  8. 20 Jul, 2016 1 commit
  9. 15 Jul, 2016 3 commits
  10. 08 Jul, 2016 7 commits
    • Brian Paul's avatar
      svga: simplify/fix 1D/2D array resource copies · 74163475
      Brian Paul authored
      
      
      Fixes the one of the piglit arb_copy_image-targets tests for 1D arrays.
      Previously, we were applying the 1D array z/face adjustment twice.
      
      Also simplify the copy_region_vgpu10() function.  It never has to copy
      multiple array layers/slices.  The Mesa code for glCopyImageSubData does
      the loop over slices/faces.
      Reviewed-by: Charmaine Lee's avatarCharmaine Lee <charmainel@vmware.com>
      74163475
    • Brian Paul's avatar
      svga: remove unused variable · fb263176
      Brian Paul authored
      
      Reviewed-by: Charmaine Lee's avatarCharmaine Lee <charmainel@vmware.com>
      fb263176
    • Brian Paul's avatar
      svga: add dumping for more device commands · 689293ad
      Brian Paul authored
      
      Signed-off-by: Brian Paul's avatarBrian Paul <brianp@vmware.com>
      689293ad
    • Brian Paul's avatar
      svga: silence a couple unused variable warnings · 599c333d
      Brian Paul authored
      
      Signed-off-by: Brian Paul's avatarBrian Paul <brianp@vmware.com>
      599c333d
    • Charmaine Lee's avatar
      svga: rebind using render target surfaces in hw draw state · c3c7ff01
      Charmaine Lee authored
      
      
      Currently when we rebind framebuffer resources at the beginning of
      the command buffer, we use the color buffer surfaces saved in the context
      hw clear state. But the surfaces could be different from the actual
      emitted render target surfaces if any of the color buffer surfaces
      is also used for shader resource, in that case, we create
      a backed surface for the collided render target surface. So to rebind
      the framebuffer resources correctly, use the render target surfaces saved
      in the context hw draw state.
      
      Tested with Heaven, Lightsmark2008, MTT piglit, glretrace, conform.
      Reviewed-by: Brian Paul's avatarBrian Paul <brianp@vmware.com>
      c3c7ff01
    • Charmaine Lee's avatar
      svga: invalidate gb surface before it is reused · da98cee0
      Charmaine Lee authored
      
      
      With this patch, a guest-backed surface will be invalidated
      using the SVGA_3D_CMD_INVALIDATE_GB_SURFACE command before
      the surface is reused. This fixes the updating dirty image error
      from the device when a surface is reused.
      
      v2: Instead of invalidating the surface when it is reused,
          send the invalidate command before the surface is put into
          the recycle pool.
      
      v3: (1) surface invalidate is a noop operation in Linux winsys, since
              surface invalidation is not needed for DMA path.
          (2) Instead of invalidating the surface content in
              svga_screen_surface_destroy() when a surface is to be destroyed,
              it is done in svga_screen_cache_flush() when the surface is
              no longer referenced in a command buffer and is ready to
              be moved to the unused list. At this point, the surface will
              be moved to the invalidate list. When the surface invalidation
              is submitted, the surface will be moved to the unused list.
      
      Tested with piglit, glretrace.
      Reviewed-by: Brian Paul's avatarBrian Paul <brianp@vmware.com>
      Reviewed-by: Sinclair Yeh's avatarSinclair Yeh <syeh@vmware.com>
      da98cee0
    • Brian Paul's avatar
      svga: fix use of provoking vertex control · ca531aee
      Brian Paul authored
      If the SVGA3D_DEVCAP_DX_PROVOKING_VERTEX query returns false, never
      define rasterizer state objects with provokingVertexLast set.  Despite
      what the device reports, it may interpret the provokingVertexLast flag
      anyway.  This fixes an issue when using capability clamping.
      
      Tested with piglit provoking-vertex and glsl-fs-flat-color tests.
      
      VMware bug 1550143.
      
      Reviewed-by: <charmainel@vmware.com>
      ca531aee
  11. 05 Jul, 2016 1 commit
  12. 30 Jun, 2016 8 commits