aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers
Commit message (Collapse)AuthorAgeFilesLines
...
* panfrost: Identify zs_samples fieldAlyssa Rosenzweig2020-07-151-2/+2
| | | | | | | For MSAA depth/stencil. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5929>
* panfrost: Include sample count in payload estimatesAlyssa Rosenzweig2020-07-151-0/+2
| | | | | | | Otherwise we might not reserve enough space. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5929>
* panfrost: Expose panfrost_get_blend_shaderAlyssa Rosenzweig2020-07-152-1/+8
| | | | | | | It is needed to produce a blend shader for blits. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5929>
* panfrost: Force Z/S writebackAlyssa Rosenzweig2020-07-151-2/+2
| | | | | | | This is unfortunately necessary for conformance at this stage. Signed-off-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5929>
* nv50_2d: regenerate envytools-based rnndb headersRhys Kidd2020-07-161-14/+30
| | | | | | | | | | | | | | | | | | | | | The headers hadn't been regenerated from envytools in a long time, and there were a few minor divergences. Based on envytools commit c20929ed0f3be18b8419f7332ee22d905feb6589 Among other things, rnndb has changed naming to G80/etc, for now I've not tackled switching that over and replaced the nvidia codenames back to the chip ids that mesa uses with the following: $ sed -i 's/G80_2D/NV50_2D/g' rnndb/graph/g80_2d.xml.h $ sed -i 's/GF100_2D/NVC0_2D/g' rnndb/graph/g80_2d.xml.h No other modifications of the headergen'd headers was done, which was helped by the differing #define's being unutilised presently. Signed-off-by: Rhys Kidd <[email protected]> Reviewed-by: Karol Herbst <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5920>
* panfrost: Dual source blend supportIcecream952020-07-154-21/+37
| | | | | Reviewed-by: Alyssa Rosenzweig <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5620>
* freedreno/a6xx: don't enable early-z/lrz if no z-testRob Clark2020-07-141-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | But if shader explicitly asks for early-fragment-tests, obey it's wishes. Fixes a handful of skia (skqp) CTS fails (9.0_r12) * gles_bug593049 * gles_circular_arcs_fill * gles_circular_arcs_stroke_and_fill_square * gles_clippedcubic2 * gles_complexclip2_path_bw * gles_complexclip2_rrect_bw * gles_complexclip3_complex * gles_complexclip3_simple * gles_crbug_691386 * gles_cubicclosepath * gles_cubicpath * gles_degeneratesegments * gles_filltypespersp * gles_innershapes_bw * gles_inverse_paths * gles_mixedtextblobs * gles_onebadarc * gles_quadclosepath * gles_quadpath * gles_rrect_clip_bw * gles_scale-pixels * gles_scaledstrokes * gles_squarehair * gles_strokes_zoomed * gles_windowrectangles Signed-off-by: Rob Clark <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5907>
* freedreno/a6xx: bail instead of crash for compile failsRob Clark2020-07-141-0/+6
| | | | | Signed-off-by: Rob Clark <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5907>
* freedreno/ir3: add missing VS driver paramsRob Clark2020-07-141-2/+4
| | | | | | | Some of these only used by turnip so far, this is just for clarity. Signed-off-by: Rob Clark <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5907>
* zink: enable tgsi texcoord pipe capMike Blumenkrantz2020-07-142-26/+39
| | | | | | | | | | | | | | this requires some modifications to the ntv slot remapping, as we definitely don't want to reserve another 25% of the available slots for the (deprecated) texcoord varyings now we remap VARYING_SLOT_TEX[n] to the last available slots, which lets us avoid needing to do permanent reservation, and we check to make sure that we haven't seen the corresponding texcoord varying any time we emit a non-texcoord varying in that slot Reviewed-by: Erik Faye-Lund <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5551>
* nouveau: expose HMMKarol Herbst2020-07-141-0/+3
| | | | | | | | v2: moved caps Signed-off-by: Karol Herbst <[email protected]> Reviewed-by: Pierre Moreau <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5906>
* nvc0: support PIPE_CAP_RESOURCE_FROM_USER_MEMORY_COMPUTE_ONLYKarol Herbst2020-07-143-2/+101
| | | | | | | v2: rework by adding a new buffer status Signed-off-by: Karol Herbst <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5906>
* nouveau: enable HMMKarol Herbst2020-07-142-3/+70
| | | | | | | | | | | | | v2: move declarations into libdrm v3: fix typos rework handling of how much memory to reserve v4: remove unused parameter unmap cutout on error and when the screen is destroyed v5: move into screen_create enable HMM only if CL gets enabled Signed-off-by: Karol Herbst <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5906>
* freedreno/regs: update a6xx PC regsJonathan Marek2020-07-143-4/+2
| | | | | | | Update some registers in the 0x9800-0xa000 range. Signed-off-by: Jonathan Marek <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5870>
* freedreno/regs: update a6xx VPC regsJonathan Marek2020-07-143-12/+8
| | | | | | | Update some registers in the 0x9000-0x95ff range. Signed-off-by: Jonathan Marek <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5870>
* freedreno/regs: update a6xx RB regsJonathan Marek2020-07-142-5/+5
| | | | | | | Update some registers in the 0x8c00-0x8dff range. Signed-off-by: Jonathan Marek <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5870>
* freedreno/regs: update a6xx GRAS registersJonathan Marek2020-07-144-31/+30
| | | | | | | Update some registers in the 0x8000-0x87ff range. Signed-off-by: Jonathan Marek <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5870>
* zink: try to handle multisampled null buffersMike Blumenkrantz2020-07-144-7/+13
| | | | | | | | I don't have any tests for this that I've run into yet, so this is mostly just guessing Reviewed-by: Erik Faye-Lund <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5686>
* zink: handle empty attachmentsMike Blumenkrantz2020-07-144-11/+60
| | | | | | | | | create an empty buffer and surface to reuse for the fb attachment here this fixes most of the arb_framebuffer_object tests in piglit Reviewed-by: Erik Faye-Lund <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5686>
* Revert https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4580Michel Dänzer2020-07-146-174/+5
| | | | | | | | | | | It broke the CI pipeline on master: https://gitlab.freedesktop.org/mesa/mesa/-/jobs/3604314 https://gitlab.freedesktop.org/mesa/mesa/-/jobs/3604315 Revert for now, to allow other MRs to be merged. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5905>
* nouveau: expose HMMKarol Herbst2020-07-141-0/+3
| | | | | | | | v2: moved caps Signed-off-by: Karol Herbst <[email protected]> Reviewed-by: Pierre Moreau <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4580>
* nvc0: support PIPE_CAP_RESOURCE_FROM_USER_MEMORY_COMPUTE_ONLYKarol Herbst2020-07-143-2/+101
| | | | | | | v2: rework by adding a new buffer status Signed-off-by: Karol Herbst <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4580>
* nouveau: enable HMMKarol Herbst2020-07-142-3/+70
| | | | | | | | | | | | | v2: move declarations into libdrm v3: fix typos rework handling of how much memory to reserve v4: remove unused parameter unmap cutout on error and when the screen is destroyed v5: move into screen_create enable HMM only if CL gets enabled Signed-off-by: Karol Herbst <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4580>
* zink: block resolve blits for depth/stencil buffersMike Blumenkrantz2020-07-141-0/+1
| | | | | | | | "The format features of dstImage must contain VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT" - vkCmdResolveImage spec Reviewed-by: Erik Faye-Lund <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5888>
* zink: block vkCmdBlitImage usage for multi sampled blitsMike Blumenkrantz2020-07-141-0/+4
| | | | | | | this is prohibited by spec Reviewed-by: Erik Faye-Lund <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5888>
* zink: try copy_region hook for blits where we can't do a regular blit or resolveMike Blumenkrantz2020-07-141-0/+7
| | | | | | | | | in cases where the formats match, we can likely just pass this through for now fixes a ton of spec@!opengl 1.1@depthstencil-default_fb-blit piglit tests Reviewed-by: Erik Faye-Lund <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5888>
* gv100/ir: set ftz bit on floating point operationsKarol Herbst2020-07-142-2/+8
| | | | | | | Fixes Unigine Heavens ambient occlusion Signed-off-by: Karol Herbst <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5881>
* freedreno/a6xx: Add some documentation for shared constsConnor Abbott2020-07-141-1/+1
| | | | | | | | I'm not convinced we'll actually want to use this, and there may be another enable bit in SP_UNKNOWN_AB00, but it's nice to at least write this down in case we want to try using it in the future. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5877>
* freedreno/a6xx: Rename and document HLSQ_UPDATE_CNTLConnor Abbott2020-07-144-8/+49
| | | | | | | | | | | | | It turns out that this clears CP_LOAD_STATE6 packets, including disabling any pending loads for SS6_INDIRECT/SS6_BINDLESS (these loads don't actually happen until the draw itself, and I'm not sure if they happen if the state is unused by the shader) and marking constants and UBO descriptors loaded with SS6_DIRECT as invalid. It's used very differently from HLSQ_UPDATE_CNTL on a4xx from whence the name came, and unlike on a4xx it's not readable, so this probably doesn't line up with HLSQ_UPDATE_CNTL on a4xx. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5877>
* freedreno/registers: Rename SP_2D_SRC_FORMATKristian H. Kristensen2020-07-142-11/+11
| | | | | | | This register contains information about the destination format, so let's rename to SP_2D_DST_FORMAT. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* freedreno/a6xx: Split clear and blit texture into different functionsKristian H. Kristensen2020-07-141-84/+98
| | | | | | | | Now that most of the state programming is in shareable helpers, we can split emit_blit_or_clear_texture into emit_blit_texture and fd6_clear_surface. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* freedreno/a6xx: Don't take pipe_blit_info in emit_blit_dstKristian H. Kristensen2020-07-141-11/+11
| | | | | | | We only need a few fields and we'll want to use this in cases where we don't have a pipe_blit_info. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* freedreno/a6xx: Program RB_UNKNOWN_8C01 in setup helperKristian H. Kristensen2020-07-141-6/+3
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* freedreno/a6xx: Move CP_SET_MARKER to setup helperKristian H. Kristensen2020-07-141-6/+3
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* freedreno/a6xx: Move REG_A6XX_SP_2D_SRC_FORMAT programming to helperKristian H. Kristensen2020-07-141-30/+27
| | | | | | Rename helper to emit_blit_setup(). Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* freedreno/a6xx: Program A6XX_SP_2D_SRC_FORMAT_COLOR_FORMAT based on dst formatKristian H. Kristensen2020-07-141-9/+7
| | | | | | It's a badly named register... Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* freedreno/a6xx: Make blit_control helper a little more helpfulKristian H. Kristensen2020-07-141-19/+16
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* freedreno/a6xx: Enable FMT6_10_10_10_2_UNORM blittingKristian H. Kristensen2020-07-141-3/+0
| | | | | | | | Now that we correctly program the _DEST version for the blit destination and use float16 internal format, these formats work with the blitter. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* freedreno/a6xx: Separate stencil sysmem clear fixKristian H. Kristensen2020-07-141-0/+1
| | | | | | We need to clear with PIPE_FORMAT_S8_UINT. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* freedreno/a6xx: Don't emit src state when clearingKristian H. Kristensen2020-07-141-11/+15
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* freedreno/a6xx: Consolidate computing blit_cntlKristian H. Kristensen2020-07-141-5/+5
| | | | | | | Compute the blit_cntl value in one place and group it with the register writes. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* freedreno/a6xx: Program SP_2D_SRC_FORMAT outside blit loopKristian H. Kristensen2020-07-141-23/+23
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* freedreno/a6xx: Set src and dst rects outside blit loopKristian H. Kristensen2020-07-141-12/+12
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* freedreno/a6xx: Don't set unknown bit when tiling differsKristian H. Kristensen2020-07-141-7/+0
| | | | | | | | There is a bit here that's sometimes set, but it's generally not related to whether tiling differs between src and dst. Let's stop setting it until we know more. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* freedreno/a6xx: Split out src and dst setup helpers for blitKristian H. Kristensen2020-07-141-86/+92
| | | | Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* freedreno/a6xx: Move fd6_ifmt into fd6_blitter.cKristian H. Kristensen2020-07-142-68/+68
| | | | | | It's only used in this file. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* freedreno/a6xx: Don't blit with R2D_RAWKristian H. Kristensen2020-07-142-20/+8
| | | | | | | | | | | Map all formats to a valid ifmt. FMT6_10_10_10_2_UNORM_DEST still doesn't work on the blitter so keep that one on the u_blitter path. Fixes dEQP-GLES31.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.* with FD_MESA_DEBUG=nogmem. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5717>
* freedreno/regs: update primitive output related registersJonathan Marek2020-07-143-47/+46
| | | | | Signed-off-by: Jonathan Marek <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5790>
* freedreno/ir3_cmdline: Fix an uninit var warning.Eric Anholt2020-07-141-8/+6
| | | | | | | You could only access entry through the initialized path, but we can clean up the compiler warning by not keeping the other var. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5834>
* zink: use type of src[0] for ntv store and load opsMike Blumenkrantz2020-07-131-4/+2
| | | | | | | | | | | in some cases (e.g., gl_ClipDistance) the nir_variable type doesn't match the needed destination type, so we can simplify this code to just use the destination type fixes [email protected]@execution@interpolation@interpolation-none-gl_backcolor-smooth-vertex Reviewed-by: Erik Faye-Lund <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5852>