Age | Commit message (Collapse) | Author |
|
Some displays might not support hardcoded 1024x768.
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=109294
Reviewed-by: Mika Kahola <mika.kahola@intel.com>
|
|
Instead of listing virtio-gpu with both spellings in the modules
array, properly use its driver name for opening and module name for
loading.
Signed-off-by: Petri Latvala <petri.latvala@intel.com>
Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
|
|
Audio tests have been removed and replaced by Chamelium tests.
Signed-off-by: Simon Ser <simon.ser@intel.com>
Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
|
|
Chamelium uses xmlrpc client which:
$ xmlrpc-c-config client --libs
-L/usr/lib/x86_64-linux-gnu -lxmlrpc_client -lxmlrpc -lxmlrpc_xmlparse -lxmlrpc_xmltok -lxmlrpc_util -lcurl
Debian/Ubuntu (and perhaps others) lack dependency on libcurl-dev:
$ apt depends libxmlrpc-core-c3-dev
Depends: libxmlrpc-core-c3 (= 1.33.14-4)
Suggests: xmlrpc-api-utils
$ apt depends libxmlrpc-core-c3
libxmlrpc-core-c3
Depends: libc6 (>= 2.14)
Depends: libcurl3 (>= 7.16.2)
Which causes:
/usr/bin/ld: cannot find -lcurl
collect2: error: ld returned 1 exit status
[14/711] Compiling C object 'tests/59830eb@@kms_atomic@exe/kms_atomic.c.o'.
ninja: build stopped: subcommand failed.
Debian's `reportbug` was used to report this issue.
Meanwhile we can explicitly ask for libcurl.
Cc: Petri Latvala <petri.latvala@intel.com>
Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Reviewed-by: Petri Latvala <petri.latvala@intel.com>
|
|
The generated EDIDs were wrongly indicating that they support analog sync.
Fixup the detailed timings flags to advertise digital sync instead.
Currently the Linux kernel seems to ignore this completely. However I'd prefer
to fix this anyway to make sure we don't run into issues if an EDID consumer
actually cares about it.
The header definitions for EDID_PT_* values has been re-organized to make it
clearer in which situations the flags are relevant.
Changes from v1 to v2:
- Fix misleading commit message
- Revert the "misc" → "features" rename
- Re-organize EDID_PT_* definitions to make them clearer
Changes from v2 to v3:
- Include review changelog in commit message
- Fix "Fixes:" tag to conform to the kernel style
- Re-order EDID_PT_* definitions to sort by descending bitshift
Signed-off-by: Simon Ser <simon.ser@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Fixes: a2fd0489c87a ("lib/igt_edid: new library for generating EDIDs")
|
|
Latest stable release of Fedora
Reviewed-by: Petri Latvala <petri.latvala@intel.com>
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Lyude Paul <lyude@redhat.com>
|
|
dnf supports installing packages by their pkgconfig names using the
pkgconfig() RPM macro. Since these more closely match the dependencies
that meson uses and don't have a chance of changing in the future like
Fedora package name do, let's use these with dnf instead.
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Reviewed-by: Petri Latvala <petri.latvala@intel.com>
Signed-off-by: Lyude Paul <lyude@redhat.com>
|
|
That's what it's there for.
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Reviewed-by: Petri Latvala <petri.latvala@intel.com>
Signed-off-by: Lyude Paul <lyude@redhat.com>
|
|
Following some discussion and confusion around whether or not assert()
should be used, it seems the decision has come to "yes, sometimes". To
quote Petri Latvala on the appropriate points to use assert() in lib/:
However, it's the thought that matters, and this is slightly going off
on a tangent. Those uses of assert in lib/ are for places where
1) something is fatally wrong and we need to drop everything and stop
executing
2) cannot use igt_assert for it. That's for places where we can say
"you tried testing your kernel but it has a bug". The lib/ asserts
are for "IGT has a bug", or in a couple of cases, "your IGT setup
has a bug".
While we did come to the conclusion that we should possibly consider
introducing a new API to check for bugs with igt (and prevent further
testing if any are found), until then let's at least make sure that
assert() always works where we expect it.
So, accomplish this by raising an error if b_ndebug isn't set to
'false'. Additionally, run the compile check in lib/check-ndebug.h to
make sure that the user does not have -DNDEBUG set in their CFLAGS,
c_args options, etc.
Reviewed-by: Petri Latvala <petri.latvala@intel.com>
Signed-off-by: Lyude Paul <lyude@redhat.com>
|
|
While I'm pretty confident that no one cares to use libigt.so or
lib_aubdump.so anywhere outside of igt, many distributions including
Fedora and Debian strongly suggest that packages have some sort of so
versioning, even if it's just '0'. So, let's fulfill that minimum
requirement to make this easier to package.
Acked-by: Petri Latvala <petri.latvala@intel.com>
Acked-by: Daniel Vetter <daniel@ffwll.ch>
Signed-off-by: Lyude Paul <lyude@redhat.com>
|
|
glibc 2.30+ will actually include a definition for gettid() that makes
it so that users don't have to manually define a wrapper for it
themselves with syscall(). We don't currently check for this, and as a
result will end up redefining gettid() on the latest versions of glibc,
causing the build to fail:
FAILED: lib/76b5a35@@igt-igt_kmod_c@sta/igt_kmod.c.o
In file included from /usr/include/unistd.h:1170,
from ../../mnt/vol/lib/igt_core.h:43,
from ../../mnt/vol/lib/igt_kmod.c:28:
/usr/include/bits/unistd_ext.h:34:28: error: macro "gettid" passed 1 arguments, but takes just 0
34 | extern __pid_t gettid (void) __THROW;
| ^
In file included from ../../mnt/vol/lib/igt_kmod.c:27:
../../mnt/vol/lib/igt_aux.h:40: note: macro "gettid" defined here
40 | #define gettid() syscall(__NR_gettid)
|
[36/771] Compiling C object 'lib/76b5a35@@igt-igt_kms_c@sta/igt_kms.c.o'.
ninja: build stopped: subcommand failed.
So, fix this by by adding some meson checks to define HAVE_GETTID whenever the
host defines its own gettid(), and avoid redefining gettid() when HAVE_GETTID is
defined.
This fixes build igt-gpu-tools for me on Fedora Rawhide
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Reviewed-by: Petri Latvala <petri.latvala@intel.com>
Signed-off-by: Lyude Paul <lyude@redhat.com>
|
|
Partly, for correctness. But mostly because not typecasting properly
causes the gettid() macro provided by newer glibc to be typed as pid_t
(aka int), while ours is typed as long. Causing annoying warnings:
[158/846] Compiling C object 'tests/59830eb@@drm_import_export@exe/drm_import_export.c.o'.
In file included from ../../mnt/vol/lib/drmtest.h:39,
from ../../mnt/vol/lib/igt.h:27,
from ../../mnt/vol/tests/drm_import_export.c:27:
../../mnt/vol/tests/drm_import_export.c: In function ‘test_thread’:
../../mnt/vol/tests/drm_import_export.c:123:12: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘__pid_t’ {aka ‘int’} [-Wformat=]
123 | igt_debug("start %ld\n", gettid());
| ^~~~~~~~~~~~~ ~~~~~~~~
| |
| __pid_t {aka int}
../../mnt/vol/lib/igt_core.h:875:64: note: in definition of macro ‘igt_debug’
875 | #define igt_debug(f...) igt_log(IGT_LOG_DOMAIN, IGT_LOG_DEBUG, f)
| ^
../../mnt/vol/tests/drm_import_export.c:123:21: note: format string is defined here
123 | igt_debug("start %ld\n", gettid());
| ~~^
| |
| long int
| %d
So, typecast gettid() as pid_t and update all of our callers accordingly
Reviewed-by: Petri Latvala <petri.latvala@intel.com>
Signed-off-by: Lyude Paul <lyude@redhat.com>
|
|
Currently we have multiple different parts of IGT that define their own
wrapper around the gettid() syscall (or just call it directly with no
wrapper).
Additionally, add the appropriate #includes for igt_aux.h to make sure
syscall() is available.
Reviewed-by: Petri Latvala <petri.latvala@intel.com>
Signed-off-by: Lyude Paul <lyude@redhat.com>
|
|
Since meson 0.50.0, unit tests which return the GNU standard return code
99 will fail, regardless of whether or not should_fail:true is passed to
test(). Unfortunately, our standard error code (IGT_EXIT_FAILURE) is
also 99.
So, fix this by changing our standard error code to 98.
Reviewed-by: Petri Latvala <petri.latvala@intel.com>
Signed-off-by: Lyude Paul <lyude@redhat.com>
|
|
This adds a build and test step with Clang on Fedora. Hopefully this can
help keeping Clang builds healthy.
Signed-off-by: Simon Ser <simon.ser@intel.com>
Acked-by: Petri Latvala <petri.latvala@intel.com>
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
|
|
To stop sending those pesky failure emails, that condition people to
ignore anything sent from gitlab-ci.
Now we will have to click the button manually, whenever we want to bump
the docs.
Cc: Petri Latvala <petri.latvala@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
Bugzilla: https://gitlab.freedesktop.org/freedesktop/freedesktop/issues/46
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
|
|
The test is doing multiple iterations (50). Each iteration tries to
squeeze target number of cursor updates in half a second worth of flips.
If we don't hit the target in any given iteration we bail out early.
Because of that we don't have the data on the number of iterations that
have failed and/or succeeded any given run, which makes hunting down
this elusive issue hard.
Let's change that so we always go through all the iterations and fail at
the end printing out the number of iterations we haven't met the target.
Each failed iteration also logs how many cursor updates it has managed
to do.
Since our target is generated run-time and is also load sensitive, let's
bump the log level of message containing our target to "info" so we can
compare those values across both passes and failures.
Cc: Anusha Srivatsa <anusha.srivatsa@intel.com>
Cc: Martin Peres <martin.peres@linux.intel.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
Reviewed-by: Martin Peres <martin.peres@linux.intel.com>
|
|
open(3) takes va_args after the flags and O_CREAT will read the first one. If
we don't provide one, this is undefined behaviour.
(Someone reported it broke the build for them)
Signed-off-by: Simon Ser <simon.ser@intel.com>
Fixes: 311baff151f9 ("tests/kms_chamelium: add dp-audio test")
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
|
|
Unify the MOCS to be more consistently across the platforms.
Currently gen8+ are specifyig UC whereas earlier platforms
generally use PTE. Let's make everyone more or less specify
L3+PTE.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Allow copying between fp16 surfaces. We'll use the FLOAT
surface format since that's all the display supports currently.
Hopefully the hardware gives us a 1:1 copy, at least if
the input doesn't contain crazy infs/nans etc. We could
choose UNORM instead but that won't work for eventually
exposing fp16+ccs. Although we do need to replace the
simple bpp value with a more specific format type to get
10bpc+ccs working as well.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
16k*16k*16 == 1<<32, so 32bits isn't enough for the result when
we start to have big framebuffers.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
We're currently overallocating the shadow buffer stride by a
factor of 8. This didn't go down so well when I tried to use
a 16kx16k float framebuffer.
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Fixes: b0033d9310c1 ("lib/color_encoding: Prepare support for HDR modes, v2.")
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
If we can't match the devid to a chipset, we do not have a reference for
the tiling strides. Instead of randomly failing, skip with a
semi-informative message.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110523
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
|
|
Remove it from intel_os.c and gem_exec_reuse.c and globally
define in igt_aux.c.
v3: update comment in the code and commit message.
Signed-off-by: Caz Yokoyama <caz.yokoyama@intel.com>
Cc: Petri Latvala <petri.latvala@intel.com>
Reviewed-by: Petri Latvala <petri.latvala@intel.com>
|
|
Commit a794f28f01f2 ("lib: sync with the newer i915_pciids.h from the
Kernel") added CML PCI IDs but did not update intel_device_info.c
Signed-off-by: Petri Latvala <petri.latvala@intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110514
Cc: Antonio Argenziano <antonio.argenziano@intel.com>
Cc: Anusha Srivatsa <anusha.srivatsa@intel.com>
Cc: Lucas De Marchi <lucas.demarchi@intel.com>
Cc: José Roberto de Souza <jose.souza@intel.com>
Acked-by: Antonio Argenziano <antonio.argenziano@intel.com>
|
|
Given an implicit semaphore from one engine to the next, check that if
we skip the wait on that semaphore the following batch although
submitted early (as it depends along the single engine timeline) is not
executed ahead of its dependency.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Cc: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
|
|
Check that we can reorder batches around userspace semaphore waits by
injecting a semaphore that is only released by a later context.
NB: This is expected to fail with the current execlists implementation.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
|
|
The commit introducing Chamelium audio tests and removing old audio tests
doesn't update autotools files. This patch fixes it.
Signed-off-by: Simon Ser <simon.ser@intel.com>
Fixes: 311baff151f90c1db6f57ee9515216b4f9da5db7
Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
|
|
The audio test is now run multiple times with a variety of playback sampling
rates.
We now query the capture audio format from the Chamelium XML-RPC API instead of
hardcoding it.
One limitation is that we need to start sending an audio signal before being
able to query the capture audio format. However we need the capture sample rate
to decide which frequencies we generate. For now we use the playback rate and
check that it's the same as the capture rate.
Another limitation is that the DP receiver reports an unknown sampling rate
during the 44.1KHz test. In this case we assume the capture rate is the same as
the playback rate. We'll fail later anyway if this assumption is incorrect
since we check the signal we receive.
Chameleon bug: https://crbug.com/950913
Signed-off-by: Simon Ser <simon.ser@intel.com>
Reviewed-by: Martin Peres <martin.peres@linux.intel.com>
|
|
Send a different signal to each channel and make sure captured audio channels
are not swapped or mixed up.
The Chamelium device has a bug and already swaps the left and right channels.
For this reason, clients need to retrieve the Chamelium channel mapping and
accomodate for this. See https://crbug.com/950922 for a discussion about this.
Signed-off-by: Simon Ser <simon.ser@intel.com>
Reviewed-by: Martin Peres <martin.peres@linux.intel.com>
|
|
This commit updates the audio test to make sure we receive a signal from both
audio channels. However this commit doesn't check that left and right channels
are not swapped. Such a check requires some more work (because the Chamelium
device does swap left and right channels) and will be implemented in a future
commit.
This commit adds a new channel argument to audio_signal_add_frequency, to add
a frequency to a single channel only.
Some light refactoring has been performed: a proper audio_signal_fini
function has been introduced and size_t in now used when it should be.
Signed-off-by: Simon Ser <simon.ser@intel.com>
Reviewed-by: Martin Peres <martin.peres@linux.intel.com>
|
|
Most people don't have "remember what the last two parameters of
snd_pcm_set_params are" in their lifegoals list. Use variables so that it's
clearer what those are.
Signed-off-by: Simon Ser <simon.ser@intel.com>
Reviewed-by: Martin Peres <martin.peres@linux.intel.com>
|
|
- Print matched audio devices
- Print min/max values when alsa_test_configuration fails
- Print debug log line when skipping a frequency
Signed-off-by: Simon Ser <simon.ser@intel.com>
Reviewed-by: Martin Peres <martin.peres@linux.intel.com>
|
|
Before this patch, the audio test first sends an audio signal for 2s, and then
checks whether the captured signal matches.
This patch makes it so we send and check the signal in parallel. Thus we can
stop the test as soon as we receive the correct signal. This saves ~2s per
audio test.
Signed-off-by: Simon Ser <simon.ser@intel.com>
Reviewed-by: Martin Peres <martin.peres@linux.intel.com>
|
|
This new test ensures DisplayPort audio works by using the Chamelium.
It enables the DisplayPort output and sends an audio signal containing a set of
frequencies we choose to all HDMI/DisplayPort audio devices. It starts
recording audio on the Chamelium device and uses the stream server to retrieve
captured audio pages. It then checks that the capture audio signal contains the
frequencies we sent, and only those, by computing a FFT.
A new library has been added to libigt to communicate with the stream server.
It implements a simple custom TCP protocol.
In case the test fails, a WAV file with the captured data is saved on disk.
Right now the test has a few limitations:
- Only the first channel is checked
- IGT only generates audio with a single sampling rate (48 KHz)
- Audio data is not captured in real-time
These limitations will be lifted in future patches.
PulseAudio must not run during the tests since ALSA is used directly. To ensure
this, edit /etc/pulse/client.conf and add `autospawn=no`. Then run
`pulseaudio --kill`.
This commit deletes the existing audio tests. They weren't run and required an
exotic configuration (HDMI audio splitter, dummy HDMI sink and a line-in port
on the DUT).
This patch also changes lib/igt_audio to use uint16_t instead of short. The
rationale is:
- The standard says a short is at least 16 bit wide, but a short can be
larger (in practice it won't happen, but better use types correctly)
- It makes it clearer that the audio format is S16_LE, since "16" is
in the type name.
This patch depends on the following Chameleon bugs:
- https://crbug.com/948060
- https://crbug.com/950857
Signed-off-by: Simon Ser <simon.ser@intel.com>
Reviewed-by: Martin Peres <martin.peres@linux.intel.com>
|
|
The source file contains a special code-path for Clang, however this path fails
to compile:
../lib/igt_halffloat.c:227:7: error: conflicting types for 'igt_half_to_float'
float igt_half_to_float(const uint16_t *h, float *f, unsigned int num)
^
../lib/igt_halffloat.h:26:6: note: previous declaration is here
void igt_half_to_float(const uint16_t *h, float *f, unsigned int num);
^
1 error generated.
This commit fixes this mismatch.
Signed-off-by: Simon Ser <simon.ser@intel.com>
Reviewed-by: Petri Latvala <petri.latvala@intel.com>
|
|
Update the list of pixel formats that cannot be rotated by 90/270 degrees. With this patch,
the kernel and IGT are aligned for i915 driver.
References: https://bugs.freedesktop.org/show_bug.cgi?id=109052
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110369
Signed-off-by: Mika Kahola <mika.kahola@intel.com>
Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
|
|
Step 1 in debugging: Actually understand what's going wrong.
References: https://bugs.freedesktop.org/show_bug.cgi?id=102887
Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
Cc: "Peres, Martin" <martin.peres@intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
|
|
Use spin->condition to mark the spot we have
saved for manipulating the looping condition.
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Libify resetting a spin for reuse.
v2: use also in perf_pmu
v3: s/cmd_spin/cmd_precondition
v4: remove early return for !spin (Chris)
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Signed-off-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Disallow Yf tiling and Y-tiled 90/270 rotation for fp16 on Intel hardware.
rfc2:
- Move check into can_rotate (Maarten)
- Use igt_plane_has_format_mod (Maarten)
v1:
- Drop Y tile check (Ville)
Signed-off-by: Kevin Strasser <kevin.strasser@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
|
|
Follow design of P01x conversion to support tests needing pixel data in fp16
(half float 64 bpp).
rfc2:
- Convert whole rows of pixels if possible (Maarten)
- Treat rgbx like rgba, let hardware ignore alpha (Maarten)
Signed-off-by: Kevin Strasser <kevin.strasser@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
|
|
Probe for and make an API available for tests to use f16c intrinsics to
generate needed fp16 pixel data.
Also import a pure c fp32 <-> fp16 conversion implementation from Mesa
18.3.4, which will act as a fallback when f16c is unavailable.
rfc2:
- Change API to reduce number of function calls (Maarten)
v1:
- Move pragma so AVX code isn't emitted for fallbacks (Ville)
- Change edx to ecx (Ville)
Signed-off-by: Kevin Strasser <kevin.strasser@intel.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
|
|
The earlier approach of checking the higher tiled stride
limit has backfired. All out blits are between tiled and
linear, but we only ever check this for the tiled fb. Thus
we are taking the blitter path even though the linear fb
exceeds the blitter limits. So let's just check the limits
as if we are operating on linear fbs.
And let's toss in some width/height checks, and let's do
the checks for all the color planes as well.
v2: Reword the comment a bit to hopefully make it legible (Chris)
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
The blit and rendercopy implementations are now identical.
Kill one.
v2: s/__blit/__gpu/ (Chris)
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Use igt_assert_lt/lte for the blitter coord/stride asserts
so that we can see what the offending value was. gcc likes
to optimize the values away so gdb often doesn't help as
much as one would like.
v2: Remove the duplicate CHECK_RANGE() definitions (Chris)
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Unref the bos after one subtest is done. The next subtest
will allocate its own bos.
v2: Add scratch_buf_fini() and reverse the onion (Chris)
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
We're currently leaking all the temporary bos we construct
for rendercopy. That doesn't go so well when trying to test
with 1GiB framebuffers.
v2: Add fini_buf() (Chris)
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
There is no guarantee that spinners are and will be implemented
using batches. As we have igt_spin_t, manipulate it through
igt_spin_* functions consistently and hide the batch nature.
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Instead of opencoding the poll into the spinner, use
a helper to check if spinner has started.
v2: use zero as presumed offset (Chris)
v3: cleanup the relocs (Chris)
v4: leave the domains to zero, avoid relocation (Chris)
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
|