Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Branch: msm-drm
Commits on Aug 29, 2013
  1. freedreno: pipe loader for either kgsl or msm

    The downstream android kernel driver is "kgsl", the upstream drm/kms
    driver is called "msm".  Since libdrm_freedreno handles the differences
    between the two, we need to load the same thing for either device.
    Signed-off-by: Rob Clark <>
  2. freedreno: updates for msm drm/kms driver

    There where some small API tweaks in libdrm_freedreno to enable support
    for msm drm/kms driver.
    Signed-off-by: Rob Clark <>
  3. freedreno/a3xx/compiler: handle sync flags better

    We need to set the flag on all the .xyzw components that are written by
    the instruction, not just on .x.  Otherwise a later use of rN.y (for
    example) will not trigger the appropriate sync bit to be set.
    Signed-off-by: Rob Clark <>
  4. freedreno/a3xx/compiler: better const handling

    Seems like most/all instructions have some restrictions about const src
    registers.  In seems like the 2 src (cat2) instructions can take at most
    one const, and the 3 src (cat3) instructions can take at most one const
    in the first 2 arguments.  And so on.  Handle this properly now.
    Signed-off-by: Rob Clark <>
  5. @aphogat

    glsl: Allow precision qualifiers for sampler types

    aphogat authored
    GLSL 1.30 doesn't allow precision qualifiers on sampler types,
    but in GLSL ES, sampler types are also allowed. This seems like
    an oversight (since the intention of including these in GLSL 1.30
    is to allow compatibility with ES shaders).
    Currently, Mesa allows "default" precision qualifiers to be set for
    sampler types in GLSL (commit d5948f2). This patch makes it follow
    GLSL ES rules and also allow declaring sampler variables with a
    precision qualifier in GLSL 1.30 (and later). e.g.
    uniform lowp sampler2D sampler;
    This fixes a shader compilation error in Khronos OpenGL conformance
    test "depth_texture_mipmap".
    V2: Update comments.
    Signed-off-by: Ian Romanick <>
    Signed-off-by: Anuj Phogat <>
    Reviewed-by: Ian Romanick <>
    Cc: <>
  6. @mattst88

    glsl: Add heuristics to print floating-point numbers better.

    mattst88 authored
    v2: Fix *.expected files to match.
    Reviewed-by: Paul Berry <>
  7. @jonathangray

    radeonsi: Make sure libdrm_radeon headers are picked up from the righ…

    jonathangray authored Michel Dänzer committed
    …t place
    And remove libdrm/ from a winsys include statement.
    Signed-off-by: Jonathan Gray <>
  8. draw: fix point/line/triangle determination in draw_need_pipeline()

    Brian Paul authored
    The previous point/line/triangle() functions didn't handle GS primitives.
    Reviewed-by: Roland Scheidegger <>
  9. radeon/uvd: fix MPEG2/4 ref frame index limit

    Christian König authored
    Otherwise the first few frames have an incorrect reference index.
    Signed-off-by: Christian König <>
  10. @vinsonlee

    nouveau: Copy m4x4 and m8x8 separately.

    vinsonlee authored
    Silences Coverity "Out-of-bounds access" defect.
    Signed-off-by: Vinson Lee <>
Commits on Aug 28, 2013
  1. @kaydenl

    i965: Allocate just enough space for user clip planes in uniform arrays.

    kaydenl authored
    Previously, we allocated space in brw_vs_prog_data's params and
    pull_params arrays for MAX_CLIP_PLANES vec4s---even when it wasn't
    On a 64-bit architecture, this used 0.5 kB of space (8 clip planes *
    4 floats per plane * 8 bytes per float pointer * 2 arrays of pointers =
    512 bytes).  Since this cost was per-vertex shader, it added up.
    Conveniently, we already store the number of clip plane constants in the
    program key.  By using that, we can allocate the exact amount of space
    needed.  For the common case where user clipping is disabled, this means
    0 bytes.
    While we're here, mention exactly what code requires this extra space,
    since it wasn't obvious.
    Signed-off-by: Kenneth Graunke <>
    Reviewed-by: Eric Anholt <>
    Reviewed-by: Paul Berry <>
  2. @chadversary

    i965: Silence unused variable warning in release build

    chadversary authored
    Use `(void) success;` to silence this warning:
      warning: unused variable 'success' [-Wunused-variable]
             bool success = do_vs_prog(brw, ctx->Shader.CurrentVertexProgram,
    Reviewed-by: Kenneth Graunke <>
    Signed-off-by: Chad Versace <>
  3. docs: minor fixes for 9.2 release notes

    Brian Paul authored
    Fix incorrect </li> tag, fix language.
    (cherry picked from commit 2377205)
Commits on Aug 27, 2013
  1. docs: Add news item for 9.2 release

    Ian Romanick authored
    Signed-off-by: Ian Romanick <>
  2. docs: Import 9.2 release notes

    Ian Romanick authored
    Signed-off-by: Ian Romanick <>
  3. @fabe3k @stereotype441

    mesa/main: Check for 0 size draws after validation.

    fabe3k authored stereotype441 committed
    When validating draw parameters move check for 0 draw count last
    (drawing with count 0 is not an error), so that other parameters (e.g.: the
    primitive type) are validated and the correct errors (if applicable) are
    >From the OpenGL 3.3 spec page 33 (page 48 of the PDF):
    "[Regarding DrawArraysOneInstance, in terms of which other draw operations
    are defined:]
    If count is negative, an INVALID_VALUE error is generated."
    This patch also changes the bahavior of MultiDrawElements to perform the draw
    operation if some primitive's index counts are zero.
    Signed-off-by: Fabian Bieler <>
    Reviewed-by: Brian Paul <>
    Reviewed-by: Paul Berry <>
  4. @mattst88

    glsl: Add built-ins from ARB_shader_bit_encoding to ARB_gpu_shader5.

    mattst88 authored
    Reviewed-by: Paul Berry <>
  5. @mattst88

    i965/vs: Add support for translating ir_triop_fma into MAD.

    mattst88 authored
    Reviewed-by: Paul Berry <>
    Reviewed-by: Ian Romanick <>
  6. @mattst88

    i965/fs: Add support for translating ir_triop_fma into MAD.

    mattst88 authored
    Reviewed-by: Ian Romanick <>
  7. @mattst88

    i965/fs: Assert that ir_expressions are usable by 3-src instructions.

    mattst88 authored
    MAD will be generated directly from ir_triop_fma, so this assertion
    checks that all ir_expressions are usable.
    Reviewed-by: Paul Berry <>
  8. @mattst88

    glsl: Add support for new fma built-in in ARB_gpu_shader5.

    mattst88 authored
    v2: Add constant folding support.
    Reviewed-by: Paul Berry <>
    Reviewed-by: Ian Romanick <>
  9. @mattst88

    glsl: Add new fma built-in IR and prototype from ARB_gpu_shader5.

    mattst88 authored
    Reviewed-by: Paul Berry <>
    Reviewed-by: Ian Romanick <>
  10. r300g: enable MSAA on r300-r400, be careful about using color compres…

    Marek Olšák authored
    MSAA was tested by one user on RS690 and it works for him with color
    compression (CMASK) disabled. Our theory is that his chipset lacks CMASK RAM.
    Since we don't have hardware documentation about which chipsets actually have
    CMASK RAM, I had to take a guess based on the presence of HiZ.
    Reviewed-by: Alex Deucher <>
  11. @FabioPedretti @chadversary Bump Wayland requirement to 1.2.0

    FabioPedretti authored chadversary committed
    Since 8d29b52 wayland 1.2.0 is required.
    Reviewed-by: Chad Versace <>
  12. draw: clean up setting stream out information a bit

    Roland Scheidegger authored
    In particular noone is interested in the vertex count, so drop that,
    and also drop the duplicated num_primitives_generated /
    so.primitives_storage_needed variables in drivers. I am unable for now to figure
    out if primitives_storage_needed in SO stats (used for d3d10) should
    increase if SO is disabled, though the equivalent num_primitives_generated
    used for OpenGL definitely should increase. In any case we were only counting
    when SO is active both in softpipe and llvmpipe anyway so don't pretend there's
    an independent num_primitives_generated counter which would count always.
    (This means the PIPE_QUERY_PRIMITIVES_GENERATED count will still be wrong just
    as before, should eventually fix this by doing either separate counting for this
    query or adjust the code so it always counts this even if SO is inactive depending
    on what's correct for d3d10.)
    Reviewed-by: Brian Paul <>
  13. llvmpipe: support nested/overlapping queries for all query types

    Roland Scheidegger authored
    There's just no way resetting the counters is working with nested/overlapping
    Reviewed-by: Brian Paul <>
  14. softpipe: support nested/overlapping queries for all query types

    Roland Scheidegger authored
    There's just no way resetting the counters is working with nested/overlapping
    Reviewed-by: Brian Paul <>
  15. @mattst88

    glsl: Disallow uniform block layout qualifiers on non-uniform block v…

    mattst88 authored
    Cc: 9.2 <>
    Reviewed-by: Ian Romanick <>
  16. @zero-io @mattst88

    Fixed and/or order mistake, resulting in compiling llvmpipe without l…

    zero-io authored mattst88 committed
    …lvm installed
    Cc: 9.2 <>
    Reviewed-by: Matt Turner <>
  17. i915: Optimize SEQ and SNE when two operands are uniforms

    Ian Romanick authored
    SEQ and SNE are not native i915 instructions, so they each generate at
    least 3 instructions.  If both operands are uniforms or constants, we
    get 5 instructions like:
                    U[1] = MOV CONST[1]
                    U[0].xyz = SGE CONST[0].xxxx, U[1]
                    U[1] = MOV CONST[1].-x-y-z-w
                    R[0].xyz = SGE CONST[0].-x-x-x-x, U[1]
                    R[0].xyz = MUL R[0], U[0]
    This code is stupid.  Instead of having the individual calls to
    i915_emit_arith generate the moves to utemps, do it in the caller.  This
    results in code like:
                    U[1] = MOV CONST[1]
                    U[0].xyz = SGE CONST[0].xxxx, U[1]
                    R[0].xyz = SGE CONST[0].-x-x-x-x, U[1].-x-y-z-w
                    R[0].xyz = MUL R[0], U[0]
    This allows fs-temp-array-mat2-index-col-wr and
    fs-temp-array-mat2-index-row-wr to fit in hardware limits (instead of
    falling back to software rasterization).
    NOTE: Without pending patches to the piglit tests, these tests will now
    fail.  This is an unrelated, pre-existing issue.
    v2: Copy most of the body of the commit message into comments in the
    code.  Suggested by Eric.
    Signed-off-by: Ian Romanick <>
    Reviewed-by: Eric Anholt <>
  18. @tstellarAMD

    clover: Don't use PIPE_TRANSFER_UNSYNCHRONIZED for blocking copies

    tstellarAMD authored
    CC: "9.2" <>
    Reviewed-by: Francisco Jerez <>
  19. @olesalscheider @tstellarAMD

    st/clover: Add event to deps even if it has been triggered

    olesalscheider authored tstellarAMD committed
    The command is submitted once the event has been triggered, but it might not
    have completed yet. Therefore, we have to add it to deps in order to wait on it.
    Signed-off-by: Niels Ole Salscheider <>
    Reviewed-by: Francisco Jerez <>
  20. @olesalscheider @tstellarAMD

    st/clover: Profiling support

    olesalscheider authored tstellarAMD committed
    Signed-off-by: Niels Ole Salscheider <>
    Acked-by: Francisco Jerez <>
Something went wrong with that request. Please try again.