Mauro Rossi
f065ec43ab
android: freedreno/ir3: fix include paths
...
Fixes the following building error:
external/mesa/src/freedreno/ir3/disasm-a3xx.c:33:10: fatal error: 'disasm.h' file not found
#include "disasm.h"
^~~~~~~~~~
1 error generated.
Fixes: f7bd3456d7 ("freedreno: deduplicate a3xx+ disasm")
Signed-off-by: Mauro Rossi <issor.oruam@gmail.com >
Acked-by: Rob Clark <robdclark@gmail.com >
Reviewed-by: Eric Engestrom <eric@engestrom.ch >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6151 >
2020-08-02 21:40:21 +02:00
Mauro Rossi
711c30b764
android: freedreno/registers: fix generated headers rules
...
Fixes the following building errors:
FAILED: ninja: 'external/mesa/src/freedreno/registers/a2xx.xml',
needed by 'out/target/product/x86_64/gen/STATIC_LIBRARIES/libfreedreno_registers_intermediates/registers/a2xx.xml.h',
missing and no known rule to make it
...
FAILED: ninja: 'external/mesa/src/freedreno/registers/adreno-pm4-pack.xml.h',
needed by 'out/target/product/x86_64/gen/STATIC_LIBRARIES/libfreedreno_registers_intermediates/registers/adreno-pm4-pack.xml.h',
missing and no known rule to make it
Fixes: b721d336da ("freedreno: slurp in rnndb")
Signed-off-by: Mauro Rossi <issor.oruam@gmail.com >
Acked-by: Rob Clark <robdclark@gmail.com >
Reviewed-by: Eric Engestrom <eric@engestrom.ch >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6151 >
2020-08-02 21:40:21 +02:00
Tapani Pälli
32e0f7e097
anv: toggle on VK_EXT_extended_dynamic_state
...
Signed-off-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5604 >
2020-08-02 17:44:54 +00:00
Tapani Pälli
b9a05447a1
anv: dynamic vertex input binding stride and size support
...
If pStrides or Psizes are NULL we should use the values defined by the
pipeline.
v2: fix commit message and fix the code to set explicitly if we are
using dynamic stride/size
Signed-off-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5604 >
2020-08-02 17:44:54 +00:00
Tapani Pälli
e4590c0750
anv: depth/stencil dynamic state support
...
v2: code cleanup, remove extra spaces (Lionel)
Signed-off-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5604 >
2020-08-02 17:44:54 +00:00
Tapani Pälli
f6fa4a8000
anv: add support for dynamic primitive topology change
...
This is done using 3DSTATE_VF_TOPOLOGY packet that overrides topology
used in subsequent 3DPRIMITIVE commands. For gen7[5] we override the
pipeline topology when emitting draw commands.
v2: fix the way gen7[5] is handled (Lionel)
Signed-off-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5604 >
2020-08-02 17:44:54 +00:00
Tapani Pälli
f426663f9c
anv: add support for dynamic viewport and scissor with count
...
Signed-off-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5604 >
2020-08-02 17:44:54 +00:00
Tapani Pälli
9220598b36
anv: add support for dynamic cull mode and winding order
...
v2: cleanup, white space issues (Lionel)
Signed-off-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5604 >
2020-08-02 17:44:54 +00:00
Tapani Pälli
c34d8ac26e
anv: handle dynamic viewport count
...
Emit 3DSTATE_CLIP during cmd_buffer_flush_state so that we can change
the max viewport count dynamically.
v2: use one common clip state as size is the same for all gens (Lionel)
Signed-off-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5604 >
2020-08-02 17:44:54 +00:00
Tapani Pälli
11f3fb9a4e
anv: consider dynamic state when creating pipeline
...
Leave default state values as zero so that when we OR them later
it is only the dynamic state value that matters.
v2: code cleanup + skip topology emit in base batch
when topology is dynamic (Lionel)
Signed-off-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5604 >
2020-08-02 17:44:54 +00:00
Tapani Pälli
65de778e0b
anv: add new dynamic states
...
Signed-off-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5604 >
2020-08-02 17:44:54 +00:00
Tapani Pälli
2260ce6d0c
anv: add VK_EXT_extended_dynamic_state but leave it disabled
...
This is needed to ensure the function prototypes are declared.
v2: tweak commit message (Jason)
Signed-off-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5604 >
2020-08-02 17:44:54 +00:00
Eric Engestrom
a4181fcd42
meson: fix -D xlib-lease=auto detection
...
This is used by Vulkan, not EGL, and depends on having DRM/KMS, not GBM.
Reported-by: Oschowa <oschowa@web.de >
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/3346
Fixes: e00adef34a ("egl: automatically compile the `drm` platform when available")
Signed-off-by: Eric Engestrom <eric@engestrom.ch >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6150 >
2020-08-02 16:23:47 +00:00
Eric Engestrom
c1476044b5
egl: consistently use dri2_egl_display() helper macro
...
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Frank Binns <frank.binns@imgtec.com >
Reviewed-by: Emil Velikov <emil.velikov@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6133 >
2020-08-02 01:13:48 +02:00
Connor Abbott
27eea627ef
freedreno/afuc: Fix PM4 enum parsing
...
We were open-coding it, and getting variant parsing wrong for things
like "A4XX-" which don't explicitly include the version being
disassembled. Use the rnn function instead. This makes CP_INDIRECT show
up again. Also propagate const-ness to users.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6140 >
2020-08-01 17:51:01 +00:00
Connor Abbott
a5daaed587
freedreno/afuc: Add missing rnn_prepdb()
...
It's totally not obvious, but this runs extra error checking and is
necessary for correct variant handling, and variant handling will
silently not work if it's not enabled. Add it asm.c even though it's not
strictly necessary, to prevent anyone from missing this in the future.
Missing this really should be an error.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6140 >
2020-08-01 17:51:01 +00:00
Connor Abbott
8d0e5e0626
freedreno/cffdec: Stop open-coding enum parsing
...
Now that rnndec_decode_enum() has been fixed, it does the same thing as
this function.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6140 >
2020-08-01 17:51:01 +00:00
Connor Abbott
73241ca53e
freedreno/rnn: Make rnn_decode_enum() respect variants
...
We'll need this for afuc, and we're currently also open-coding the same
thing in rnnutils. It seems this function was added to decode pm4 packet
names, but it currently has no users, so make it useful for what it
was intended to do.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6140 >
2020-08-01 17:51:01 +00:00
Eric Engestrom
b67695d597
egl/haiku: drop overwritten preset of EGL version
...
`init_haiku()` is called by `eglInitialize()`, which then calls
`_eglComputeVersion()` (without even anything in between). The latter
sets the EGL version based on the extensions supported, and since Haiku
doesn't support any it will end up overwriting the same `1.4` value.
Signed-off-by: Eric Engestrom <eric@engestrom.ch >
Reviewed-by: Frank Binns <frank.binns@imgtec.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6131 >
2020-08-01 17:31:33 +00:00
Eric Engestrom
9c6fa9421d
egl: const _eglDriver
...
Converted using `s/_EGLDriver/const _EGLDriver/g` and dropped a couple
of irrelevant changes in comments, in the `_EGL_DRIVER_TYPECAST()` macro
and the typedef itself.
Signed-off-by: Eric Engestrom <eric@engestrom.ch >
Reviewed-by: Frank Binns <frank.binns@imgtec.com >
Reviewed-by: Emil Velikov <emil.velikov@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6129 >
2020-08-01 17:12:20 +00:00
Lepton Wu
81c0e2ab63
egl: Allow software rendering for vgem/virtio_gpu in platform_device
...
Then user could explicitly choose the underlying device for software
rendering when both vgem/virtio_vga are there.
Signed-off-by: Lepton Wu <lepton@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5830 >
2020-08-01 10:07:25 +00:00
Matt Turner
eaf27eb512
intel/tools: Test notification subregisters
...
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5956 >
2020-07-31 12:59:24 -07:00
Matt Turner
ac7ecd205b
intel/tools: Simplify notification register handling
...
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5956 >
2020-07-31 12:59:24 -07:00
Matt Turner
63181df09b
intel/tools: Don't hardcode notification register
...
Previously we parsed a src non-terminal but did nothing with it. Since
the WAIT instruction is kind of weird, in that you have to give it the
same notification subregister for both destination and source, and it
always has an exec size of 1, let's parse a destination instead of a
source. This way, we can parse a writemask rather than a swizzle in
align16 mode, and easily convert the writemask to a swizzle to create
the source register.
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5956 >
2020-07-31 12:59:24 -07:00
Matt Turner
90c18ec8db
intel/tools: Manually set ARF register file/nr/subnr
...
brw_reg::subnr is in bytes, like the subnr field in the instruction
word, but we disassemble the subregister number in units of the type.
For example g0.3<1>F would have a subnr=12.
These non-terminals produce a brw_reg and feed into other non-terminals
that call brw_reg(), where they are passed the subnr that we set here.
brw_reg()'s subnr parameter is expected to be in terms of the register
type, and it is multiplied by the type size to calculate the subnr in
bytes.
In these non-terminals, we don't know the register type yet, so we
must store the subregister number as it was given to us in the .subnr
field and let the brw_reg() constructor handle the conversion to the
canonical byte-based subnr form when it knows the type.
Before this patch, subregister numbers applied to these registers would
be multiplied with the type size twice.
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5956 >
2020-07-31 12:59:24 -07:00
Matt Turner
af6d6f5c43
intel/tools: Pass integers, not enums, to stride()
...
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5956 >
2020-07-31 12:59:24 -07:00
Matt Turner
c883c482be
intel/compiler: Relax SENDS regioning assertions
...
The next commit fixes a mistake in the assembler and ends up running
afoul of this assertion.
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5956 >
2020-07-31 12:59:24 -07:00
Matt Turner
363e5ef5a5
intel/tools: Simplify dstregion
...
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5956 >
2020-07-31 12:59:24 -07:00
Matt Turner
3d9c673c0f
intel/tools: Simplify immediate handling
...
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5956 >
2020-07-31 12:59:24 -07:00
Matt Turner
59801f07e7
intel/tools: Make writemask an integer
...
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5956 >
2020-07-31 12:59:24 -07:00
Matt Turner
e115c499da
intel/tools: Make swizzle an integer
...
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5956 >
2020-07-31 12:59:24 -07:00
Matt Turner
3e1602cc4f
intel/tools: Simplify register type handling
...
Produce a brw_reg_type rather than a whole brw_reg and rename a few
non-terminals.
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5956 >
2020-07-31 12:59:24 -07:00
Matt Turner
2851c218e2
intel/tools: Don't allow empty type specifier
...
It's preferable to require an explicit type.
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5956 >
2020-07-31 12:59:24 -07:00
Matt Turner
6809b93411
intel/tools: Remove stray newline
...
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5956 >
2020-07-31 12:59:24 -07:00
Matt Turner
fdfbb1ed26
intel/tools: Fix typos
...
Reviewed-by: Sagar Ghuge <sagar.ghuge@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5956 >
2020-07-31 12:59:24 -07:00
Alyssa Rosenzweig
2dec9092be
pan/bit: Remove BI_SHIFT stub
...
Fixes compile error with -Dtools=panfrost
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Fixes: 946ff9b439 ("bifrost: Add support for nir_op_ishl")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6142 >
2020-07-31 10:15:00 -04:00
Alyssa Rosenzweig
aa989aed6d
pan/bit: Update f32->f16 convert test
...
Needs a second argument to be consistent with the real IR and the
hardware instruction.
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Fixes: 8a4efe2d73 ("pan/bi: Pack second argument of F32_TO_F16")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6142 >
2020-07-31 10:14:59 -04:00
Tomeu Vizoso
cf8a8b764e
ci: Set date in LAVA DUTs from NTP servers
...
The MinIO server is sometimes complaining about the submitted date being
too off.
Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com >
Reviewed-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6135 >
2020-07-31 14:14:38 +02:00
Eric Anholt
7f40db42a2
docs: Explain how to set up a personal gitlab runner.
...
I'm not the only one doing it, so document it, especially since there's a
new trick as of
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5669
Reviewed-by: Andres Gomez <agomez@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5988 >
2020-07-31 09:17:02 +00:00
Connor Abbott
8e626879dd
freedreno/a6xx: Fix CP_BIN_SIZE_ADDRESS name
...
Also document some other registers gleaned from looking at the context
switch save/restore routines and fix CP_SDS_REM_SIZE, and make the names
line up with the CP perfcntr names. Note that the CP reads the draw
stream size in CP_SET_BIN_DATA5 using MEM_READ_ADDR, which is probably
why this was mistaken for the draw stream size address.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6123 >
2020-07-31 07:44:02 +00:00
David Stevens
6c11a7994d
i965/i915: Add colorspace support to YUV sampling
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6122 >
2020-07-31 07:27:03 +00:00
David Stevens
d8fdb8dab4
nir: Add colorspace support to YUV lowering pass
...
This change adds support for BT709 and BT2020 colorspace to the YUV
lowering pass. The default remains BT601.
This change also fixes minor imprecision in the last digits of the BT601
offsets due to computation from rounded values when the math was
simplified.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Rob Clark <robdclark@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6122 >
2020-07-31 07:27:03 +00:00
Mike Blumenkrantz
f3509c0766
zink: add extension loading framework for spirv builder
...
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5969 >
2020-07-31 06:53:01 +00:00
Italo Nicola
a91011c9ec
pan/mdg: emit REGISTER_UNUSED on unused ALU src2
...
This saves power and time by skipping a roundtrip to the register file.
Signed-off-by: Italo Nicola <italonicola@collabora.com >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6128 >
2020-07-31 00:25:21 +00:00
Lepton Wu
a2065917cc
mapi: Return NULL function pointers for GL_EXT_debug_marker
...
Mesa returns a stub function pointer to glAnything for years.
Android framework till API level 30 just uses function pointers
returned from eglGetProcAddress without checking if the underlying
extension is supported. If we return stub pointers for functions
in GL_EXT_debug_marker, Android just uses our stub functions instead
of its own stubs and then fail the dEQP. In the past, the issue
didn't show up because mesa only has limited slots and run out of slots
before Android calls eglGetProcAddress on functions inside
GL_EXT_debug_marker.
Signed-off-by: Lepton Wu <lepton@chromium.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5652 >
2020-07-30 23:45:56 +00:00
Eric Engestrom
258165bed4
egl: drop left-over function prototype
...
Signed-off-by: Eric Engestrom <eric@engestrom.ch >
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com >
Reviewed-by: Emil Velikov <emil.velikov@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6037 >
2020-07-30 23:24:30 +00:00
Eric Engestrom
ed3f1e04c7
egl: rename _eglMatchDriver() to _eglInitializeDisplay()
...
... and fix the comment to better reflect what this really does.
The whole "match a driver at runtime" thing has been gone for years.
Signed-off-by: Eric Engestrom <eric@engestrom.ch >
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com >
Reviewed-by: Emil Velikov <emil.velikov@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6037 >
2020-07-30 23:24:30 +00:00
Eric Engestrom
6d6b82a159
egl: inline _eglMatchAndInitialize() and refactor _eglMatchDriver()
...
Signed-off-by: Eric Engestrom <eric@engestrom.ch >
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com >
Reviewed-by: Emil Velikov <emil.velikov@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6037 >
2020-07-30 23:24:30 +00:00
Eric Engestrom
a77050c034
egl: fix _eglMatchDriver() return type
...
The one caller only ever checks if the return value is NULL or not, so
let's simplify the function by only returning that information.
Signed-off-by: Eric Engestrom <eric@engestrom.ch >
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com >
Reviewed-by: Emil Velikov <emil.velikov@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6037 >
2020-07-30 23:24:30 +00:00
Eric Engestrom
f91851e615
egl: drop unnecessary _eglGetDriver()
...
Signed-off-by: Eric Engestrom <eric@engestrom.ch >
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com >
Reviewed-by: Emil Velikov <emil.velikov@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6037 >
2020-07-30 23:24:30 +00:00