From Tungsten Graphics

Jump to: navigation, search

Gallium3D TODO list


Driver interface

  • Add an extension/errata mechanism to the Gallium driver interface.
  • Occlusion query support in the interface and softpipe.
  • Make p_winsys more independent of p_context
  • support allocating/freeing surfaces without a context
  • surfaces -- remove _quad_* interfaces in favour of the tile interfaces.
  • surfaces -- make tiles a fixed size


State tracker

  • Flesh out pixel path operations
  • Flesh out operations that might require blits, figure out whether we can drop blit support altogether, or perhaps treat the blitter as a piece of extended hardware functionality, present in some devices but optional overall.


TGSI

  • LLVM backend, initial target CPU acceleration of vertex shaders
  • Finish conditional support in interpreter.


i915simple / intel_winsys

  • Allocate tiled backbuffers
  • Allocate/use indirect state buffers
  • Fallbacks using the failover module.
  • Advertise extensions/unsupported functionality correctly.
  • Advertise a full list of supported render/texture/scanout buffer formats.
  • Use softpipe/sp_prim_vbuf.c mechanism to build proper vertex buffers.
  • Make sure performance can match the mainline driver.


Softpipe

  • Create tile-based render caches instead of direct _quad_* reads/writes
  • Combine the multiple color, z reads/writes.
  • Restore early-z functionality.
  • Architectural-level performance tuning (as opposed to tweaking)