summaryrefslogtreecommitdiff
path: root/tools/Makefile.sources
AgeCommit message (Collapse)Author
2018-10-04tools: Add a simple tool to read/write/decode dpcd registersTarun Vyas
This tool serves as a wrapper around the constructs provided by the drm_dpcd_aux_dev kernel module by working on the /dev/drm_dp_aux[n] devices created by the kernel module. It supports reading and writing dpcd registers on the connected aux channels. In the follow-up patch, support for decoding these registers will be added to facilate debugging panel related issues. v2: (Fixes by Rodrigo but no functional changes yet): - Indentations, Typo, Missed spaces - Removing mentioning to decode and spec that is not implemented yet. - Add Makefile.sources back - Missed s/printf/igt_warn v3: - Address DK's review comments from v2 above. - Squash Rodrigo's file handling unification patch. - Make count, offset and device id optional. v4: - Better error handling and refactoring. Suggested-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Signed-off-by: Tarun Vyas <tarun.vyas@intel.com> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com> Reviewed-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
2018-01-08tools: Cannonlake port clock programmingMika Kahola
Cannonlake port clock programming tests and verifies DPLL legal dividers P, Q, and K. This tests adds two reference clocks 19.2MHz and 24MHz to test algorithm's capability to find P, Q, and K dividers as well as DCO frequency for different symbol clock rates. The test compares two algorithms, the reference with double precision and i915 implementation with fixed point precision. In case of a difference in computation the difference on dividers is printed out to the screen. Signed-off-by: Mika Kahola <mika.kahola@intel.com> Acked-by: Rodrigo Vivi <rodrigo.vivi@intel.com> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
2017-08-30tools: Add intel_vbt_defs.h to Makefile.sourcesArkadiusz Hiler
So is will be picked up for the distributable tarball. Fixes: 09f35ea4dc06 ("tools/intel_vbt_decode: start migrating to kernel intel_vbt_defs.h") Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Acked-by: Jani Nikula <jani.nikula@intel.com>
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-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-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-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-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-08-04tools/Makefile: Replace automake specific name of listings in Makfile.sourcesRobert Foss
Replace the automake specific names of listings in Makefile.sources with something not automake specific. Signed-off-by: Robert Foss <robert.foss@collabora.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2016-08-04tools/Makefile: Format whitespaceRobert Foss
Harmonize tabs/spaces etc. Signed-off-by: Robert Foss <robert.foss@collabora.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2016-08-04tools/Makefile: Don't build tools that depend on libdrm_intelRobert Foss
Use the HAS_INTEL automake flag to avoid building tools that won't compile unless libdrm_intel is available in the build system. Signed-off-by: Robert Foss <robert.foss@collabora.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2016-01-25tools: add intel_residencyPaulo Zanoni
After the recent discussions regarding the effects of the vblank disabling policies on PC state residencies, I started running some experiments to reevaluate some non-intuitive conclusions I had reached. In order to help me do this, I decided to write this tool. The idea is very simple: the tool puts the system on an screen-on idle state, checks which PC state residency is the deepest we can reach, measures its residency, then does some not-so-idle tests and measures the residencies. You can use the tool to compare different Kernel trees and you can also use the tool to compare enabled vs disabled features. It's obvious that these cases do not represent real-world use cases of our driver, but they are already enough to highlight differences between the many patches I wrote. I was even able to catch a bug in one of my patches by spotting an unexpected regression in the residencies. I've been using this tool for FBC, but I expect it to also be useful for PSR, DRRS and similar features. I've been measuring the effects of different optimizations I wrote, and I've also been measuring the FBC vs no-FBC cases. It is also important to highlight that if your system is not properly configured for efficient power savings the tool may not be able to show differences between the results. On my Broadwell machine, for example, if I don't run "powertop --auto-tune" before running the tool, I get PC2 as the deepest state, and 90%+ residency for every workload. After properly configuring the machine, I get PC7 as the deepest state, which is the expected. So far I only tested this tool on BDW and SKL, and it may hit some unexpected assertions for older platforms. I only implemented the cases that are immediately useful for me, but we may also expand the tool in the future. We can add more important workloads. We can add support for screen-off cases, so we can compare the effects of runtime PM and other screen-off features. There's a lot we can do, but none of this is on my current priority list. And remember: /usr/bin/paste is your friend when comparing results. v2: - Be more idle at setup_idle(). - Improve printing for /usr/bin/paste usage. Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
2015-12-31intel_error_decode: Inflate compressed error stateChris Wilson
Recent kernels compress the active objects using zlib + ascii85 encoding. This adapts the tool to decompress those inplace. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2015-08-17igt: remove deprecated reg access tools in favor of intel_regJani Nikula
intel_iosf_sb_read, intel_iosf_sb_write, intel_reg_dumper, intel_reg_read, intel_reg_snapshot, intel_reg_write, intel_vga_read, and intel_vga_write have been deprecated in favor of intel_reg. Remove the deprecated tools. intel_reg does everything they do, and more. Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2015-07-19tools: Add a simple stats generator 'igt_stats'Chris Wilson
A rudimentary tool on top of the igt_stats library. Reads a list of numbers from stdin or from a file and prints the estimate of the central location, aka average. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2015-06-30tools: Add an intel_firmware_decode toolDamien Lespiau
So we can inspect fw headers. Sample output: Firmware: skl_dmc_ver1_18.bin (7892 bytes) CSS header (128 bytes) module_type: DMC (9) header_len: 32 header_ver: 0x10000 module_id: 0x0 module_vendor: 0x0 date: 0x7df060c size: 1973 key_size: 0 modulus_size: 0 exponent_size: 0 version: 1.18 (0x10012) kernel_header_info: 0x0 Package header (256 bytes) header_len: 64 header_ver: 1 num_entries: 3 Firmware #1 stepping: A.* offset: 4294967295 Firmware #2 stepping: B.* offset: 4294967295 Firmware #3 stepping: *.* offset: 0 0x7f0867143000 0x7f0867143180 signature: 0x40403e3e header_len: 128 header_ver: 1 dmcc_ver: 520 project: 0x900 fw_size: 1845 fw_version: 0x10008 mmio_count: 3 write(0x0008f074, 0x00002fc0) write(0x0008f004, 0x02500204) write(0x0008f034, 0xc003b400) Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
2015-05-15intel_display_crc: A new tool to play with display CRCsDamien Lespiau
The CRC debug interface is a bit more than a simple textual file in debugfs as there are a small command language to control what we want from them. This tool starts, slowly, by allowing us to dump the pipe CRCs whenever we want. It can be handy to check what is the current CRC when we reach a certain state on the screen (when using --interactive-debug for instance) against a known CRC. Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
2015-05-08skl_compute_wrpll: Add a way to test the SKL WRPLL algorithmDamien Lespiau
I had various problems (infinite loops, unable to compute dividers for certain frequencies) after implementing a BSpec update. Much easier to debug that in userspace. Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
2015-05-08compute_wrpll: Rename ddi_compute_wrpll to hsw_compute_wrpllDamien Lespiau
We're going to add the SKL version, time to rename the HSW/BDW one. Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
2015-04-27tools: add missing header to distributed sourcesThomas Wood
Make sure all the sources for intel_reg are included in the distribution. Signed-off-by: Thomas Wood <thomas.wood@intel.com>
2015-04-23intel_reg: introduce one intel_reg tool to rule them allJani Nikula
Three Tools for the Elven-kings under the sky, Seven for the Dwarf-lords in their halls of stone, Nine for Mortal Men doomed to die, One for the Dark Lord on his dark throne In the Land of Mordor where the Shadows lie. One Tool to rule them all, One Tool to find them, One Tool to bring them all and in the darkness bind them In the Land of Mordor where the Shadows lie. J.R.R. Tolkien's epigraph to The Lord of The Tools | sed 's/Ring/Tool/g' Introduce intel_reg as the one Intel graphics register multitool to replace intel_reg_read, intel_reg_write, intel_iosf_sb_read, intel_iosf_sb_write, intel_vga_read, intel_vga_write, intel_reg_dumper, intel_reg_snapshot, and quick_dump.py. Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2015-03-24tools/intel_watermark: Tool to decode watermark registersVille Syrjälä
The watermark registers on the gmch platform are a bit of a mess. Add a tool to make some sense of them. While at it decode the ilk-bdw wm registers as well. SKL+ is left out for now since it's a very different beast. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2015-03-24tools: Remove intel_dpio_{read,write} toolsVille Syrjälä
intel_dpio_{read,write} as redundant as intel_iosf_sb_{read,write} handle the same task. The difference between the tools was the opcode used to read/write the registers, but with DPIO both opcodes work just fine, so there's no need for both sets of tools. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2015-01-12intel_gpu_frequency: A tool to manipulate Intel GPU frequencyBen Widawsky
WARNING: very minimally tested In general you should not need this tool. Its primary purpose is for benchmarking, and for debugging performance issues. For many kernel releases now sysfs has supported reading and writing the GPU frequency. Therefore, this tool provides no new functionality. What it does provide is an easy to package (for distros) tool that handles the most common scenarios. v2: Get rid of -f from the usage message (Jordan) Add space before [-s (Jordan) Add a -c/--custom example (Jordan) Add a setting for resetting to hardware default (Ken) Replicate examples in commit message in the source code. (me) v3: Its not It's (me) Add --help/-h to usage Add Version + man page Rename tool to intel_gpu_frequency, from intel_frequency Remove "sudo" from the examples Signed-off-by: Ben Widawsky <ben@bwidawsk.net> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Cc: Kenneth Graunke <kenneth@whitecape.org> Here are some sample usages: $ intel_gpu_frequency --get=cur,min,max,eff cur: 200 MHz min: 200 MHz RP1: 200 MHz max: 1200 MHz $ intel_gpu_frequency -g cur: 200 MHz min: 200 MHz RP1: 200 MHz max: 1200 MHz $ intel_gpu_frequency -geff RP1: 200 MHz $ intel_gpu_frequency --set min=300 $ intel_gpu_frequency --get min cur: 300 MHz min: 300 MHz RP1: 200 MHz max: 1200 MHz $ intel_gpu_frequency --custom max=900 $ intel_gpu_frequency --get max cur: 300 MHz min: 300 MHz RP1: 200 MHz max: 900 MHz $ intel_gpu_frequency --max $ intel_gpu_frequency -g cur: 1200 MHz min: 1200 MHz RP1: 200 MHz max: 1200 MHz $ intel_gpu_frequency -e $ intel_gpu_frequency -g cur: 200 MHz min: 200 MHz RP1: 200 MHz max: 200 MHz $ intel_gpu_frequency --max $ intel_gpu_frequency -g cur: 1200 MHz min: 1200 MHz RP1: 200 MHz max: 1200 MHz $ intel_gpu_frequency --min $ intel_gpu_frequency -g cur: 200 MHz min: 200 MHz RP1: 200 MHz max: 200 MHz
2015-01-11tools/Makefile: Alphabetize the listBen Widawsky
Signed-off-by: Ben Widawsky <ben@bwidawsk.net> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
2014-10-29Move watermark code from tests to toolsDaniel Vetter
They're now igt tests, and so if you blindly run lib/igt.cocci with spatch on tests/*c they get mangled. Move them away, but still keep them as noinst targets. Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
2014-09-18tools: Remove punit and nc reg read/write toolsVille Syrjälä
intel_iosf_sb_{read,write} provide the same functionality. intel_dpio_{read,write} are still left in place since they use a ifferent opcode to do the register access. Need to verify if both opcodes work. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2014-06-13tools/intel_display_poller: Add a new tool that will poll various display ↵Ville Syrjälä
registers intel_poller can be used to poll various display registers (IIR,scanline/pixel/flip/frame counter, live address, etc.). It can be used to determine eg. at which scanline or pixel count certain events occur. v2: s/intel_poller/intel_display_poller/ Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2014-06-13tools: Add intel_iosf_sb_{read,write} toolsVille Syrjälä
Add generic tools to poke at IOSF sideband. The user needs to manually specify SB port as well as the register. TODO: Maybe add symbolic names for the units? Would avoid having to trawl the docs for the magic hex value. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2014-01-17tools: Install them allDaniel Vetter
No reason really not too, especially since we install manpages for some of them. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=66656 Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2014-01-07tools: Remove intel_disable_clock_gatingDamien Lespiau
This tool only supports ILK. I take the fact that nobody has felt the need to update for later platform a sign it's not very useful. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
2013-11-12build: list all test/tool/lib source files in their own Makefile.sourcesOscar Mateo
In this way, all source files are listed in Makefile.sources and included from Makefile.am, thus enabling the reuse from Android makefiles. Signed-off-by: Oscar Mateo <oscar.mateo@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>