summaryrefslogtreecommitdiff
path: root/tools
AgeCommit message (Collapse)Author
2017-05-11intel_error_decode: Tell zlib the correct amount of memory we allocatedChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2017-05-10intel_error_decode: Fix off-by-one when dumping the binary objectsChris Wilson
Include the last line to show the last bytes, important when looking for overflows! Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2017-05-04intel_reg: Use the drm device fd as a hint onlyChris Wilson
We want intel_reg to work even when i915.ko isn't loaded, in which case there is debugfs to provide /debug/.../i915_forcewake, but we will survive without! Fixes: 301ad44cdf1b ("lib: Open debugfs files for the given DRM device") Reported-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2017-04-22Fix build for intel_dp_complianceChris Wilson
Tries to use glib without setting the CFLAGS. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2017-04-14aubdump: Don't bail if a GEM handle of 0 is passed into execbufJason Ekstrand
A gem handle of 0 can be used to check for whether or not 48-bit addressing is available. This keeps aubdump from failing on you if you try to do the check. Reviewed-by: Rafael Antognolli <rafael.antognolli@intel.com>
2017-04-08tools/intel_error_decode: Dump the GuC log if availableChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2017-04-08tools/intel_error_decode: Don't try instruction decoding on data buffersChris Wilson
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2017-04-06tools/intel_error_decode: Refactor matching known buffersChris Wilson
Lots of repeated code, and a few missed named buffers. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2017-04-06tools/intel_error_decode: Automatically open a pagerChris Wilson
A feature I've wanted for a long time, just to save typing | less every time. Implementation nabbed from aubinator_error_decode. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2017-04-06tools/intel_error_decode: Add support for user specified boChris Wilson
See EXEC_OBJECT_CAPTURE. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2017-04-06tools/intel_error_decode: Do ascii85 decode firstChris Wilson
The dashes "---" may occur within an ascii85 block, but only an ascii85 block starts with ':' or '~'. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2017-03-28tools: Remove accidentally included binary intel_bios_readerRobert Foss
The binary tools/intel_bios_reader was accidentally included in 3e04c5197ff965a8cd050f9c3b5213abcf437a31. This commit removes it again. Signed-off-by: Robert Foss <robert.foss@collabora.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
2017-03-24lib/debugfs: Phase out igt_debugfs_fopen()Chris Wilson
Wrapping fdopen() proved dangerous, the underlying fd is not refcounted, and we must close it in the library or else we easily leak and exhaust all fd. Since we can't provide igt_debugfs_fopen(), move the burden onto the caller for those that require a stream FILE*. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2017-03-21Restore "lib: Open debugfs files for the given DRM device"Chris Wilson
This reverts commit 25fbae15262cf570e207e62f50e7c5233e06bc67, restoring commit 301ad44cdf1b868b1ab89096721da91fa8541fdc Author: Tomeu Vizoso <tomeu.vizoso@collabora.com> Date: Thu Mar 2 10:37:11 2017 +0100 lib: Open debugfs files for the given DRM device with fixes. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2017-03-21Revert "lib: Open debugfs files for the given DRM device"Tomeu Vizoso
This reverts commit 301ad44cdf1b868b1ab89096721da91fa8541fdc. When a render-only device is opened and gem_quiescent_gpu is called, we need to use the debugfs dir for the master device instead. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
2017-03-21lib: Open debugfs files for the given DRM deviceTomeu Vizoso
When opening a DRM debugfs file, locate the right path based on the given DRM device FD. This is needed so, in setups with more than one DRM device, any operations on debugfs files affect the expected DRM device. v2: - rebased and fixed new API additions v3: - updated chamelium test, which was missed previously - use the minor of the device for the debugfs path, not the major - have a proper exit handler for calling igt_hpd_storm_reset with the right device fd. Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com> Reviewed-by: Robert Foss <robert.foss@collabora.com> Acked-by: Chris Wilson <chris@chris-wilson.co.uk>
2017-03-10tools/intel_vbt_decode: Remove unused codePetri Latvala
efp_conn() and related have been unused since 86a546f6f798 ("tools/intel_bios_reader: Dump out more information from the child device structure") Signed-off-by: Petri Latvala <petri.latvala@intel.com> Reviewed-by: Jani Nikula <jani.nikula@intel.com>
2017-03-09aubdump: Support EXECBUFFER2_WRJason Ekstrand
2017-03-09Add the new tool for create GVT-g Linux guest based on KVMGTTerrence Xu
GVT-g (Intel® Graphics Virtualization Technology) is a full GPU virtualization solution with mediated pass-through support. This tool is for create basic Linux guest based on KVMGT with VFIO framework, it including create vgpu, create guest, check IP address, destroy guest, remove vgpu,check dmesg log, etc functions. v2: Treat this case as a free-standing tool, with detect & skip when it's not running on GVT-g capable platform or running without the required tools. v3: Make some optimizations: like "update the generate mac address scripts", "provide more useful information for end user", etc. v4: Miscellaneous cleanup (Petri) Signed-off-by: Terrence Xu <terrence.xu@intel.com> Signed-off-by: Benyu Xu <benyux.xu@intel.com> Signed-off-by: Petri Latvala <petri.latvala@intel.com>
2017-02-19tools/intel_guc_logger: Fix the assert for the verbosity levelOscar Mateo
I guess no one has needed to change the verbosity level of the GuC logs. Signed-off-by: Oscar Mateo <oscar.mateo@intel.com> Reviewed-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Reviewed-by: Robert Foss <robert.foss@collabora.com>
2017-02-10tools/intel_reg: Dump SKL AUX_DIST registers for all planesVille Syrjälä
We are missing the AUX_DIST registers for pipes A and B. Add them, and move the pipe C AUX_DIST registers next to the AUX_OFFSET registers for a bit more convenience. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2017-01-31tests/kms_rotation_crc: Add support for dynamic number of planesRobert Foss
Add changes reflecting the new support for dynamic number of planes per pipe. Signed-off-by: Robert Foss <robert.foss@collabora.com> Reviewed-by: Mika Kahola <mika.kahola@intel.com>
2017-01-31tools: rename intel_bios_reader to intel_vbt_decodeJani Nikula
After all these years intel_bios_reader and intel_bios_dumper still manage to confuse me. Read or dump, which one decodes. Rename intel_bios_reader to intel_vbt_decode to be in line with the naming of all the other tools (particularly the closely related intel_opregion_decode tool) that decode previously gathered or dumped information. Acked-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Acked-by: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2017-01-30intel_bios_reader: print more VBT and BDB header infoJani Nikula
Add more info and realign accordingly. Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2017-01-30intel_bios_reader: be more informative about unknown blocksJani Nikula
We don't know how to decode all blocks, make it clear this is not an error. Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2017-01-30intel_bios_reader: add hex dumping of headersJani Nikula
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2017-01-30intel_bios_reader: abstract a more generic hex dumperJani Nikula
Let us reuse the dumper for headers. Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2017-01-30intel_bios_reader: add more structured printout of headersJani Nikula
Make the different parts of the VBT stand out better in the output. Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2017-01-25tools: Add intel_dp_compliance for DisplayPort 1.2 compliance automationNavare, Manasi D
This is the userspace component of the Displayport Compliance testing software required for compliance testing of the I915 Display Port driver. This must be running in order to successfully complete Display Port compliance testing. This app and the kernel code that accompanies it has been written to satify the requirements of the Displayport Link CTS 1.2 rev1.1 specification from VESA. Note that this application does not support eDP compliance testing. This utility has an automation support for the Link training tests (4.3.1.1. - 4.3.2.3), EDID tests (4.2.2.3 - 4.2.2.6) and Video Pattern generation tests (4.3.3.1) from CTS specification 1.2 Rev 1.1. This tool has the support for responding to the hotplug uevents sent by compliance testting unit after each test. The Linux DUT running this utility must be in text (console) mode and cannot have any other display manager running. Since this uses sysfs nodes for kernel interaction, this utility should be run as Root. Once this user application is up and running, waiting for test requests, the test appliance software on the windows host can now be used to execute the compliance tests. This app is based on some prior work done in April 2015 (by Todd Previte <tprevite@gmail.com>) v2: * Add mode unset on hotplug uevent on disconnect (Manasi Navare) v3: Made capitalization consistent Reduced line lengths Added return value checks Changed how GLib is linked Fixed build warnings v4: * Conditionally build this tool if UDEV is present (Petri Latvala) * igt_warn and info cleanup to remove \r * Add intel_dp_compliance to tools/.gitignore * Change the year in copyright statements to current (Petri Latvala) Cc: Petri Latvala <petri.latvala@intel.com> Cc: Marius Vlad <marius.c.vlad@intel.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Manasi Navare <manasi.d.navare@intel.com> Signed-off-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2016-12-23tools/intel_display_poller: Add gen9+ supportVille Syrjälä
All the registers we care about should be the same for all bdw+ platforms, so let's just use the bdw path for gen9+. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2016-12-19tools/intel_display_poller: Allow the tool to be used without i915 loadedVille Syrjälä
We don't need the drm fd to find out the PCI device ID. So let's drop the drm stuff, which allows the tool to work without i915 loaded. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2016-12-19tools/intel_reg: Dump some interesting CCK regs on VLV/CHVVille Syrjälä
CCK houses various important clock related registers. Let's dump those as well. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2016-12-19tools/intel_bios_reader: Dump the DSI video transfer mode and pixel overlapVille Syrjälä
Knowing how were trasmitting the data is pretty important, so let's dump out the video transfer mode and pixel overlap for DSI. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2016-12-02tools: Add intel_gem_info to .gitignorePetri Latvala
Signed-off-by: Petri Latvala <petri.latvala@intel.com>
2016-12-02tests/drv_module_reload: Convert sh script to C version.Marius Vlad
v5: - reword gem_info to gem_sanitychecks (Chris Wilson) - remove subgroups/subtests for gem_exec_store and gem_sanitycheck (Chris Wilson) v4: - adjust test to make use of lib/igt_kmod - replaced SW_FINISH with SET_CACHEING (Chris Wilson) v3: - fix passing boolean value as flags to igt_kmod_unload(). v2: - embedded gem_alive and gem_exec_store into test (Chris Wilson) - int main() to igt_main (Chris Wilson) - moved tests/gem_alive -> tools/gem_info (Chris Wilson) - added to intel-ci/fast-feedback.testlist (Petri Latvala) - added hda_dynamic_debug() (Petri Latvala) - renamed from tests/drv_module_reload_basic to tests/drv_module_reload (all subtests are basic and have been added to fast-feedback.testlist) Signed-off-by: Marius Vlad <marius.c.vlad@intel.com> Acked-by: Petri Latvala <petri.latvala@intel.com>
2016-12-01Silence a bunch of "const discard" warningsChris Wilson
A few warnings of the form: gem_mmap_gtt.c: In function ‘copy_wc_page’: gem_mmap_gtt.c:480:16: warning: initialization discards ‘const’ qualifier from pointer target type [enabled by default] __m128i *S = (const __m128i *)src; are no more. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-11-28aubdump: Add a PCI-ID= entry to the AUB file commentJason Ekstrand
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
2016-11-28aubdump: Set the application nameJason Ekstrand
This will help with identifying aub files Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
2016-11-28Revert "aubdump: Bump the GTT size to 256MB"Jason Ekstrand
This reverts commit c6191a41f6c858cbdd4280e9ffcc91170e87ebeb. It turns out that having a GTT that large causes the simulator massive headaches. Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
2016-11-24aubdump: Fix intel_aubdump -o <filename>Kenneth Graunke
This looks like a mistake in 1f43677f895a88ae880b35f9b18cc7e6869d0ca6. Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
2016-11-22aubdump: Bump the GTT size to 256MBJason Ekstrand
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
2016-11-22aubdump: Fix GTT setup for Gen8+Francisco Jerez
Gen8+ have 64 bit GTT entries, so we need to allocate twice as much space for the GTT table in order to cover the same number of GTT pages. Fixes sporadic page-fault crashes on the simulator. Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-11-22aubdump: Handle 48-bit relocations properlyJason Ekstrand
aubdump was only writing 32-bits regardless of platform. This is fine if the client being dumped leaves the top 32 bits zero since the aubdump GTT is fairly small. However, if the client does store something in the upper 32 bits, this results in an invalid relocation. Cc: Kristian Høgsberg <krh@bitplanet.net> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
2016-11-09aubdump: add --command option to stream aubdump to another programLionel Landwerlin
This comes handy if you want to look at your application output without having to save it into a file. For example, use this with aubinator from Mesa : $ intel_aubdump -c '/path/to/aubinator --gen=hsw' my_gl_app v2: Fix handling empty command line option v3: Fix command line concatenation (again...) v4: Use execvp (Petri) Indentation (Petri) Allow recording to a file and stream to an external application (Lionel) Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Sirisha Gandikota <Sirisha.Gandikota@intel.com>
2016-11-09tools: intel_aubdump: pass configuration through file descriptorLionel Landwerlin
This makes parsing options less complicated and easier to extend. v2: Fix device id parsing (atoi -> sscanf) (Sirisha) Combine with previous commit moving init function (Sirisha) v3: Fix behavior change between bash 4.3 & 4.4 in <<< with \n characters (Lionel) Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Sirisha Gandikota <Sirisha.Gandikota@intel.com>
2016-11-09lib: use the local intel_aub.h fileEmil Velikov
File is provided by the libdrm_intel package which is optional. Since we already have a local copy of the file, we might as well use it ;-) v2: Move the file alongside intel_bufmgr.h and use it in the disable-intel case. Cc: Brian Starkey <brian.starkey@arm.com> Reported-by: Brian Starkey <brian.starkey@arm.com> Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Tested-by: Brian Starkey <brian.starkey@arm.com>
2016-11-03tools: Add intel_guc_logger to .gitignorePetri Latvala
Also re-sort the file. Signed-off-by: Petri Latvala <petri.latvala@intel.com>
2016-10-25This patch provides a test utility which helps capture GuC firmware logs andAkash Goel
then dump them to file. The logs are pulled from a debugfs file '/sys/kernel/debug/dri/guc_log' and by default stored into a file 'guc_log_dump.dat'. The name, including the location, of the output file can be changed through a command line argument. The utility goes into an infinite loop where it waits for the arrival of new logs and as soon as new set of logs are produced it captures them in its local buffer which is then flushed out to the file on disk. Any time when logging needs to be ended, User can stop this utility (CTRL+C). Before entering into a loop, it first discards whatever logs are present in the debugfs file. This way User can first launch this utility and then start a workload/activity for which GuC firmware logs are to be actually captured and keep running the utility for as long as its needed, like once the workload is over this utility can be forcefully stopped. If the logging wasn't enabled on GuC side by the Driver at boot time, utility will first enable the logging and later on when it is stopped (CTRL+C) it will also pause the logging on GuC side. v2: - Use combination of alarm system call & SIGALRM signal to run the utility for required duration. (Tvrtko) - Fix inconsistencies, do minor cleanup and refactoring. (Tvrtko) v3: - Fix discrepancy for the output file command line option and update the Usage/help string. v4: - Update the exit condition for flusher thread, now will exit only after the capture loop is over and not when the flag to stop logging is set. This handles a corner case, due to which the dump of last captured buffer was getting missed. - Add a newline character at the end of assert messages. - Avoid the assert for the case, which occurs very rarely, when there are no bytes read from the relay file. Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> Signed-off-by: Akash Goel <akash.goel@intel.com> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> (v3)
2016-10-15tools/l3_parity: Skip on ivb with only a single sliceChris Wilson
The l3_parity tool requires multiple banks and fails on ivb which has no l3_parity_slice_1. References: https://bugs.freedesktop.org/show_bug.cgi?id=97565 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-10-07tools/intel_reg: Return SUCCESS after a succesful dumpVille Syrjälä
No reason why 'intel_reg dump' can't declare success after a succesful dumping. Spotted after fixing tools_test to use the right tool :) Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>