summaryrefslogtreecommitdiff
path: root/docs
AgeCommit message (Collapse)Author
2022-06-13lib/i915_crc: Introduce crc32 on gpu for DG2Zbigniew Kempczyński
Adding crc32 calculation on gpu gives us new possibility to verify data integrity without relying on trust cpu mapping is correct. Patch introduces calculating crc32 on DG2 only. On older gens ALU (MI_MATH) doesn't support bit-shifting instructions as well as multiply or divide. Emulating n-bit shifts cost hundred of instructions with predicated SRM (works on render engine only). Another limitation is lack of indexed load / store. On DG2 we can use WPARID and CS_MI_ADDRESS_OFFSET to achieve indexed operation on memory. Due to performance reasons (cpu crc32 calculation even on WC memory is still much faster than on gpu, also depends on calculated object memory region) calculation will complete in reasonable of time only for few MiB. v2: - use registers relative to engine to allow run on all engines (Chris) - use predication instead of memory access to get better performance (Chris) - add location where crc32 implementation comes from (Petri) v4: - use common crc32 table from igt_crc - add docs v5: - change BIT(n) to informative macros (Zbigniew) Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Acked-by: Petri Latvala <petri.latvala@intel.com>
2022-06-13lib/igt_crc: Introduce common place for crc tables and functionsZbigniew Kempczyński
Add crc32 table for on-cpu crc calculation function. Other tables and algorithms should be added here allowing reuse tables for in-gpu crc calculation. Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2022-05-25tests/kms_chamelium: Check if port adapters are in useRyszard Knop
If a DUT has Chamelium ports connected via an adapter (for example, DP on the Chamelium side -> DP-HDMI adapter -> HDMI on the DUT), this will usually cause many tests to fail. If mismatching port types are found on both sides, the tests will now be aborted with a warning. This behavior can be overridden with a new AdapterAllowed config value, which must be set in [Chamelium:PORT] blocks in .igtrc. Signed-off-by: Ryszard Knop <ryszard.knop@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2022-04-14docs/code_coverage.md: document the code coverage filter scriptMauro Carvalho Chehab
Add documentation bits for the code_coverage_parse_info. While here, also drop the extensions from the scripts that were renamed. Reviewed-by: Ch Sai Gowtham <sai.gowtham.ch@intel.com> Reviewed-by: Andrzej Hajda <andrzej.hajda@intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2022-03-21docs: add documentation for code coverageMauro Carvalho Chehab
Document the IGT runner features related to code coverage data capture. Acked-by: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2022-03-11lib/i915_blt: Add library for blitterZbigniew Kempczyński
Blitter commands became complicated thus manual bitshifting is error prone and hard debugable - XY_BLOCK_COPY_BLT is the best example - in extended version (for DG2+) it takes 20 dwords of command data. To avoid mistakes and dozens of arguments for command library provides input data in more structured form. Currently supported commands: - XY_BLOCK_COPY_BLT: a) TGL/DG1 uses shorter version of command which doesn't support compression b) DG2+ command is extended and supports compression - XY_CTRL_SURF_COPY_BLT - XY_FAST_COPY_BLT Source, destination and batchbuffer are provided to blitter functions as objects (structs). This increases readability and allows use same object in many functions. Only drawback of such attitude is some fields used in one function may be ignored in another. As an example is blt_copy_object which contains a lot of information about gem object. In block-copy all of data are used but in fast-copy only some of them (fast-copy doesn't support compression). v2-v3: address review comments (Kamil) Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
2022-03-11lib/i915/gem_create: Introduce gem-pool bo cacheZbigniew Kempczyński
Handling batchbuffers with softpin requires tracking its state otherwise we can write to inflight batchbuffer and encounter gpu hang. Gem pool adds such tracking (similar to libdrm bo cache) and provides free and ready to use bo. If pool has no free bo new one is created what means pool can be growing during test execution. When test completes freeing buffers and memory is called from igt_core so no additional cleanup is necessary. Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Cc: Petri Latvala <petri.latvala@intel.com> Cc: Kamil Konieczny <kamil.konieczny@linux.intel.com> Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>
2021-12-07igt: Split out I/O helpersRob Clark
Split the readN()/writeN() helpers out into an igt_io module, so they can be re-used by tests. Signed-off-by: Rob Clark <robdclark@chromium.org>
2021-09-09msm: Add helper libraryRob Clark
Handle some of the boilerplate for tests. v2: fix comment, drop unnecessary drm_open_driver_render() error handling, docs fixes, drop igt_msm_pipe_get_param() (for now), handle NULL in destructors Signed-off-by: Rob Clark <robdclark@chromium.org> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2021-06-10lib: Add an intel_ctx wrapper struct and helpers (v6)Jason Ekstrand
We're trying to clean up some of our technical debt in the i915 API. In particular, context mutability and unnecessary getparam(). There's quite a bit of the introspection stuff that's not used by any userspace other than IGT. Most drivers don't care about fetching the set of engines, for instance, because they don't forget about what set of engines they asked for int the first place. Unfortunately, IGT relies heavily on context introspection for just about everything when it comes to multi-engine testing. It also likes to use ctx0 as temporary storage for whatever the current test config is. While effective at keeping IGC simple in some ways, this means we're making heavy use of context mutability. Also, passing data around with in tests isn't really what contexts are for. This patch adds a new intel_ctx_t struct which wraps a context and remembers the full context configuration. This will provide similar ease-of-use without having use ctx0 as temporary storage. v2 (Jason Ekstrand): - Make all intel_ctx_t's const v3 (Jason Ekstrand): - Fix up the docs so they build properly v4 (Jason Ekstrand): - Add an intel_ctx_create_for_engine helper v5 (Zbigniew Kempczyński): - Use SPDX license identifiers - Document default context semantics v6 (Ashutosh Dixit): - Fix SPDX in intel_ctx.h - Fix a typo in a comment v6 (Jason Ekstrand): - Add documentation about num_engines to intel_ctx_cfg_t Signed-off-by: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
2021-06-09docs: Add gem_engine_topology.h to the docsJason Ekstrand
Also, document a couple things while we're here. It's nowhere close to everything but it's more than nothing. Signed-off-by: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>
2021-04-23gitignore: Remove various .gitignore filesPetri Latvala
Now that autotools is gone and you always build to a dedicated build directory with meson, we can remove .gitignore files that only had the purpose of ignoring built binaries in the source directories. Signed-off-by: Petri Latvala <petri.latvala@intel.com> Cc: Arkadiusz Hiler <arek@hiler.eu> Reviewed-by: Arkadiusz Hiler <arek@hiler.eu>
2021-04-13lib/intel_allocator: Add intel_allocator coreZbigniew Kempczyński
For discrete gens we have to cease of using relocations when batch buffers are submitted to GPU. On cards which have ppgtt we can use softpin establishing addresses on our own. We added simple allocator (taken from Mesa; works on lists) and random allocator to exercise batches with different addresses. All of that works for single VM (context) so we have to add additional layer (intel_allocator) to support multiprocessing / multithreading. For main IGT process (also for threads created in it) intel_allocator resolves addresses "locally", just by mutexing access to global allocator data (ctx/vm map). When fork() is in use children cannot establish addresses on they own and have to contact to the thread spawned within main IGT process. Currently SysV IPC message queue was chosen as a communication channel between children and allocator thread. Child calls same functions as main IGT process, only communication path will be chosen instead of acquiring addresses locally. v2: Add intel_allocator_open_full() to allow user pass vm range. Add strategy: NONE, LOW_TO_HIGH, HIGH_TO_LOW passed to allocator backend. v3: Child is now able to use allocator directly as standalone. It only need to call intel_allocator_init() to reinitialize appropriate structures. v4: Add pseudo allocator - INTEL_ALLOCATOR_RELOC which just increments offsets to avoid unnecessary conditional code. v5: Alter allocator core according to igt_map changes. v6: Add internal version __intel_allocator_alloc() to return ALLOC_INVALID_ADDRESS without assertion. v7: Add libatomic for linking libigt library. It is required on some archs, like mips. Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Signed-off-by: Dominik Grzegorzek <dominik.grzegorzek@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Petri Latvala <petri.latvala@intel.com> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Acked-by: Petri Latvala <petri.latvala@intel.com>
2021-04-13lib/igt_map: Adopt Mesa hash tableDominik Grzegorzek
The _search function has been changed to return a pointer to the stored data instead of the entry struct. The _search_entry function, which acts as the original search has been added. Additionally _remove function has an optional delete_function param, to make it more usable. For more information, see: http://cgit.freedesktop.org/~anholt/hash_table/tree/README Signed-off-by: Dominik Grzegorzek <dominik.grzegorzek@intel.com> Cc: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Jason Ekstrand <jason@jlekstrand.net> Reviewed-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Acked-by: Petri Latvala <petri.latvala@intel.com>
2020-06-08python: Stop using cElementTreeArkadiusz Hiler
It got removed in Python 3.9 and ever since Python 3.3 it's: from xml.etree.ElementTree import * Link: https://docs.python.org/3.9/whatsnew/3.9.html#removed Issue: https://gitlab.freedesktop.org/drm/igt-gpu-tools/-/issues/86#note_520308 Cc: Petri Latvala <petri.latvala@intel.com> Cc: Lionel Landwerlin <lionel.g.landwerlin@linux.intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2020-01-23lib/igt_collection: Adding combinatorics facilityZbigniew Kempczyński
Dynamic tests gives us new method to create tests depending on the hardware/software capabilities. To check coverage some tests require verification over some set of objects/data. To make life easier with combinatorics this patch introduces igt_collection. Currently it supports iterating over set to get subsets, combinations, variations with and without repetitions. Code has some limitation (set/subset cannot be larger than 16 elements, what is enough for most cases). Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Cc: Petri Latvala <petri.latvala@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Acked-by: Petri Latvala <petri.latvala@intel.com>
2020-01-17lib/intel_bufops: Introduce buffer operationsZbigniew Kempczyński
Different GENs supports different tile surfaces. Older GENs have HW fences to allow X / Y surface tiling / detiling. Newer GENs have to tile / detile such surface in software. To make test developer life easier this code adds buffer operations (short buf_ops) to use appropriate functions allowing copying linear buffer to BO and from BO to linear buffer regardless GPU generation and tiling/swizzling within BO. For GENs having fences support preference is to use them if they are available (X / Y tiling is probed on buf_ops initialization). Note: on Gen2 code supports only HW tiling at the moment. Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Katarzyna Dec <katarzyna.dec@intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2019-12-04Add device selection in IGTZbigniew Kempczyński
New IGT command line argument --device, IGT_DEVICE enviroment and .igtrc Common::Device were added to allow selecting device using device selection API. See generated docs for device selection and lsgpu for more details on filters. NOTE: IGT_FORCE_DRIVER still works if no filter is selected. We may want to deprecate it later. NOTE2: This does not work with tests that open 2 or more devices (e.g. kms_prime). The core is capable of doing multiple filtering passes but we need to figure out how we want *open*() functions to expose this capability. v2 (Arek): * remove functions acting on igt_device_card * use only a single filter v3 (Arek): * typos, misspellings (Petri) * add notes on IGT_FORCE_DRIVER and opening 2 or more devices Cc: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2019-12-04Introduce device selection APIZbigniew Kempczyński
The new device selection API based on scanning DRM subsystem using udev. It provides a set of functions for enumerating and filtering available graphic cards to get the corresponding /dev/dri nodes. For details check the top level documentation in igt_device_scan.c To be used in lsgpu tool and internally by drm_open_driver*() functions (see the following patches). v2 (Arek): * drop most of the glib code in favor of igt_list and plain C * make sysfs paths handling non-special - introduce sys: filter * drop multiple filter_* structs in favor of just two: - filter_class for defining filters types (e.g. sys:) - filter for "filter instance" - the data provided by the user * promote many macros to real functions for type safety * rename devs->devs to devs->all * rename devs->view to devs->filtered * don't expose "chip" (e.g. DRIVER_ANY) as it's unreadable as int * update docs to reflect those changes * move open functions that open igt_device_card to this patch * remove platform filter class for now * use only a single filter v3 (Arek): * fix some memory leaks and setting to NULL after free() (Zbigniew) * fix even more missing free() (Petri) * use the new igt_list API * fix null pointer dereference on filter->class Cc: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2019-11-20docs: Remove defunct sectionsArkadiusz Hiler
* chamelium was renamed to kms_chamelium and is now part of the KMS Tests section * GVT tests were removed. v2: don't remove the API docs (Petri) Fixes: 8809638e8e42 ("tests: Rename chamelium to kms_chamelium.") Fixes: 8781fd89a63e ("igt: Remove gvt_basic") Reported-by: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2019-11-12lib/igt_list: Update, clean-up and document igt_listArkadiusz Hiler
Our list was something between Wayland and Linux Kernel list implementations, right in the uncanny valley. On top of that it falsely claimed that it's a straight copy from the Wayland project. Let's make our impl more akin to the kernel one to ease the cognitive dissonance for the developers working on all those projects. This patch: * mimics the current kernel list interface * separates IGT helpers in the source files * adds brief explanation and code example for igt-doc * introduces igt_list.c as static inlines are not visible in the docs v2: mimic the kernel instead of wayland (Chris) - _head suffix for the sentinel/link struct - _entry_ in iterator names that go over the elements v3: I forgot to merge this in time and there was another call site that had to be converted in gem_spin_batch.c Cc: Petri Latvala <petri.latvala@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Acked-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2019-10-09meson: Remove redundant install params from configure_filePetri Latvala
The 'install' param for configure_file was added in meson 0.50, and does nothing before that. When using meson >= 0.50 using the install param gives a warning if the minimum required meson version is lower than 0.50, because of reasons. 'install : false' is the default anyway when install_dir param is not set, so remove the redundant and erroneous install param usages. Signed-off-by: Petri Latvala <petri.latvala@intel.com> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2019-08-15docs/chamelium: document port auto-discoverySimon Ser
Explicit Chamelium port mappings are now optional. Signed-off-by: Simon Ser <simon.ser@intel.com> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2019-08-15docs/chamelium: indent .igtrc code blockSimon Ser
This makes it easier to tell the code block apart from the rest of the document. Signed-off-by: Simon Ser <simon.ser@intel.com> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2019-07-08docs: Embed subtest descriptions in the documentationArkadiusz Hiler
This rewrites generate_description_xml in Python, so that we generate properly escaped XML. The switch also makes the code more manageable. Changes in the generated docbook: 1. subtests are not simply listed anymore, they are now another (sub)section 2. subtests are now linkable, e.g. docs/igt-kms-tests.html#kms_hdmi_inject@inject-4k 3. subtest's section now includes output of --describe Python is required already by gtk-doc and we are not using anything other than the standard library. v2: keep the part of the subtest name after the last match (Simon) explicitly require python3 (Petri) v3: make sure that the tail of the subtest name after the last keyword match is included (Simon) Cc: Daniel Vetter <daniel@ffwll.ch> Cc: Petri Latvala <petri.latvala@intel.com> Cc: Simon Ser <simon.ser@intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Acked-by: Petri Latvala <petri.latvala@intel.com> Reviewed-by: Simon Ser <simon.ser@intel.com>
2019-06-12docs/chamelium: add quick-start commands and network setupSimon Ser
This saves people from searching how to use the serial console again, and how to configure network. Additionally, the /etc/network/interfaces file uses an old Debian-like format so `address 192.168.1.42/24` won't work, one needs to explicitly write down the network mask. Signed-off-by: Simon Ser <simon.ser@intel.com> Reviewed-by: Martin Peres <martin.peres@linux.intel.com>
2019-05-23docs/meson: Remove the hax for meson < 0.47Arkadiusz Hiler
With updated minimum required version to 0.47.0 it is no longer needed. Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2019-05-13docs/chamelium: add manual xmlrpc usageSimon Ser
For debugging purposes, it's useful to be able to send manual XML-RPC calls to the Chamelium. This commit adds an example call and links to the utility and the Chamelium API interface docs. Signed-off-by: Simon Ser <simon.ser@intel.com> Reviewed-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com> Reviewed-by: Imre Deak <imre.deak@intel.com>
2019-04-25tests/kms_chamelium: add dp-audio testSimon Ser
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>
2019-02-15lib: Drop IGT_EXIT_TIMEOUTDaniel Vetter
We use the timeout status for when the runner had to kill a testcase, which indicates a more sever issue than an operation failing that we expected to complete within seconds. Since it's unused, drop it. Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
2018-12-13autoconf: Drop gtkdoc supportDaniel Vetter
It's a huge kludge (doesn't track dependencies correctly) and compared to the meson one, real slow. Throw it out. Acked-by: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
2018-11-16tests: Move drv_ tests to i915 directoryArkadiusz Hiler
The drv_ tests are i915 specific, so let's move them to i915 directory and change the binary prefix to i915_. Additionally, while we at moving stuff around, let's rename module_reload to module_load and do the following cleanup with the subtests: basic-reload -> reload basic-no-display -> reload-no-display basic-reload-inject -> reload-with-fault-injection Cc: Martin Peres <martin.peres@linux.intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Acked-by: Martin Peres <martin.peres@linux.intel.com>
2018-10-23tests: Introduce i915 directoryArkadiusz Hiler
We can already move all the tests with distinct prefixes: gem_, gen3_ and i915_. pm_ and drv_ tests will follow in batches, so we can do the adjustments in the reporting/filtering layer of the CI system. v2: Fix test-list.txt generation with meson v3: Fix docs build (Petri) Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Petri Latvala <petri.latvala@intel.com> Cc: Martin Peres <martin.peres@linux.intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com> Tested-by: Petri Latvala <petri.latvala@intel.com> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Acked-by: Chris Wilson <chris@chris-wilson.co.uk>
2018-08-15docs: fix typo sharding->sharingLucas De Marchi
I was grepping for shard as the tests run on CI, but the only occurrence was this one which seems to be a typo since it's about prime tests. Fixes: 76bce773 ("docs: Update documentation generation with missing entries") Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2018-07-27docs/chamelium: Update sections of a network and a config file in detailGwan-gyeong Mun
It updates a network setting between a Target PC and a Chamelium. And it adds informations of Chamelium-specific keys for DRM connector and Chamelium Port ID in detail. And it adds "Running the Chamelium With IGT" section. v2: Martin Peres * Change FrameDumpPath to /root/ from /tmp/ on IGT configuration. * Add physical locations of DP1 and DP2 ports on Chamelium Board. Signed-off-by: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com> Reviewed-by: Martin Peres <martin.peres@linux.intel.com>
2018-07-27docs/chamelium: Change chamelium.c to kms_chamelium.cGwan-gyeong Mun
This commit (8809638e8e42488aac701066d7ced164854c6c9c) renamed chamelium to kms_chamelium. Signed-off-by: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com> Reviewed-by: Martin Peres <martin.peres@linux.intel.com>
2018-06-20gtkdoc: Remove the build_by_default hackDaniel Vetter
meson 0.45 properly supports generated content_files. Except for the minor issue that we're hitting an internal bug in meson. I've made a pull request for that https://github.com/mesonbuild/meson/pull/3189 which has now been addressed in commit c1f275bfa644beafab9f8572351d4b64d61c148b Author: Nirbheek Chauhan <nirbheek@centricular.com> Date: Sun May 6 20:09:49 2018 +0530 gnome.gtkdoc: Allow passing file objects as xml_files If we pass a source files() object, we will look for it in the build directory, which is wrong. If we pass a build files() object (from configure_file()), we will find it in the build directory, and then try to copy it on top of itself in gtkdochelper.py getting a SameFileError. Add a test for it, and also properly iterate custom target outputs when adding to content files. Downside of this all is that we'd need to up the meson requirements to something like 0.47, which isn't even released yet :-/ v2: Rebase and also add version requirement. v3: I figured out how to make this work with a meson version check! v4: Remove stray hunk (Petri). Cc: Eric Anholt <eric@anholt.net> Reviewed-by: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
2018-05-16igt: Drop Intel from the name in docs and pathsArkadiusz Hiler
This is just a simple change to reflect the actual state. No rewording yet, just a simple substitution in most visible places - docs, README and paths. There are probably some leftovers here and there, but we can let them be for now, this is already well overdue. v2: fixed couple of obvious leftovers pointed out by Petri Cc: Petri Latvala <petri.latvala@intel.com> Cc: Daniel Vetter <daniel.vetter@intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Acked-by: Harry Wentland <harry.wentland@amd.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2018-01-11Revert "build: make meson more official" damageDaniel Vetter
This reverts the meson.build changes from commit 07c331773dd3bc4dadb164bcd9bc06dbd01de3b6. Reviewed-by: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2018-01-11build: make meson more officialDaniel Vetter
I also noticed that meson.sh doesn't set the prefix for patch submission. Fix that (even thought hopefully real soon igt will move to its own list). v2: Review from Petri. Cc: Petri Latvala <petri.latvala@intel.com> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
2017-12-08lib: Print other clients when DRM_SET_MASTER failsChris Wilson
It looks like there are some rogue processes running in CI that prevent DRM_MASTER from being obtained. Dump the list of clients on failure to make it more obvious what is being left behind. v2: Fix up gtkdocs, meson build References: https://bugs.freedesktop.org/show_bug.cgi?id=104157 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2017-12-05meson: gtkdoc supportDaniel Vetter
Bunch of neat improvements: - xml generates correctly depend upon the test binaries - no need to re-run autogen.sh when new chapters/functions get added, all handed by meson Still one issue: - the gtkdoc target doesn't depend upon the custom_target yet, hacked around using build_by_default: true This is an issue known to upstream already: https://github.com/mesonbuild/meson/issues/2148 v2: Bump meson version to 0.42, since that's the first release which adds the build dir when running the gtkdoc tools, and hence allows including generated files. v2: - Undo the bump, it's only needed for generated source files. Other generated files as input should work with 0.40 already. - Generate version.xml from version.xml.in, which allows us to keep the &version; entity. v3: Add github issue link. v4: - Resurrect lost KEYWORDS (Petri) - Fix issue when running with a clean build, files() doesn't work on generate files (Petri). Reviewed-by: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2017-10-19lib/i915: Move submission related helpers to lib/i915/gem_submissionMichał Winiarski
Since I accidentally broke the build for some, by putting the pretty printer for submission inside ifdef HAVE_PROCPS, it's time to move the whole thing into lib/i915 while fixing this mistake. Let's also rename the pretty printer and add a doc to it as well as the section. Fixes: f6dfe556659f ("lib: Extract helpers for determining submission method") Signed-off-by: Michał Winiarski <michal.winiarski@intel.com> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2017-10-17lib/i915: Move context related helpers to lib/i915/gem_contextMichał Winiarski
We'd like to make ioctl_wrappers a bit thinner, and we plan to add new helpers in the following patch. Let's move context related helpers before adding more content. Signed-off-by: Michał Winiarski <michal.winiarski@intel.com> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Katarzyna Dec <katarzyna.dec@intel.com> Cc: Petri Latvala <petri.latvala@intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Katarzyna Dec <katarzyna.dec@intel.com> Acked-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2017-10-17lib/i915: Extract helpers for determining scheduler capabilitiesMichał Winiarski
Couple of tests are using either determining scheduler capabilities or pretty printing. Let's move those to helpers in lib. We can also keep the value obtained from getparam static. v2: Break the trend of expanding ioctl_wrappers Signed-off-by: Michał Winiarski <michal.winiarski@intel.com> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Katarzyna Dec <katarzyna.dec@intel.com> Cc: Petri Latvala <petri.latvala@intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Katarzyna Dec <katarzyna.dec@intel.com> Acked-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2017-10-10lib: Add some syncobj helpers (v2)Jason Ekstrand
[airlied: added some initial gtk-doc for the helper library.] Reviewed-by: Dave Airlie <airlied@redhat.com> Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
2017-10-02docs: Distribute audio.txt and chamelium.txtPetri Latvala
Signed-off-by: Petri Latvala <petri.latvala@intel.com> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2017-08-30docs/chamelium: Explain that the Chamelium should only target one DUTPaul Kocialkowski
This adds an explanation about why the Chamelium should only be connected to one target device at once to the in-tree documentation. Signed-off-by: Paul Kocialkowski <paul.kocialkowski@linux.intel.com> [with one small style change] Reviewed-by: Lyude Paul <lyude@redhat.com>
2017-08-28docs: Add user documentation about audio supportPaul Kocialkowski
This introduces plain-text documentation about the audio test, aimed at users who wish to setup and run the audio tests. Given the contents of this documentation, it felt more relevant to make it part of the tree instead of the API reference. Signed-off-by: Paul Kocialkowski <paul.kocialkowski@linux.intel.com> Reviewed-by: Lyude Paul <lyude@redhat.com>
2017-08-28docs: Add user and developer documentation about Chamelium supportPaul Kocialkowski
This introduces plain-text documentation about the Chamelium aimed at users who wish to deploy the platform, as well as developers who wish to work on improving IGT support for it. Given the contents of this documentation, it felt more relevant to make it part of the tree instead of the API reference. Signed-off-by: Paul Kocialkowski <paul.kocialkowski@linux.intel.com> (with one small typo fixed) Reviewed-by: Lyude Paul <lyude@redhat.com>