summaryrefslogtreecommitdiff
path: root/tools
AgeCommit message (Collapse)Author
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-12quick_dump: Expand the WM cursor registersDamien Lespiau
The tool I used to generate that list doesn't support expanding the list of registers when dealing with something like CUR_WM_A_*. Expand it by hand for now (tm). Remove CUR_PAL_${pipe}_* for the same reason (and because it's not very useful to have). Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
2015-05-11quick_dump/skl: Add more pipe/plane registersDamien Lespiau
With the recent developments, add scaler and NV12 registers to the dump. Also add the cursor registers that were missing in the first batch. Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
2015-05-11build: Add missing line continuationDamien Lespiau
When -lrt was added, it was missing a '\' at the end of line. Add it. Cc: Tim Gore <tim.gore@intel.com> Cc: Thomas Wood <thomas.wood@intel.com> Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
2015-05-08skl_compute_wrpll: Prefer even dividersDamien Lespiau
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
2015-05-08skl_compute_wrpll: Count how many even/odd dividers we computeDamien Lespiau
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
2015-05-08skl_compute_wrpll: Make sure we respect the DCO frequency constraintsDamien Lespiau
We might as well verify that we have a semblance of all being in order by making sure the DCO frequency is within the expected bounds. 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-05-05rename global mmio variable to igt_global_mmioJani Nikula
Global variable names should reflect the fact that they are indeed global, and at the very least they should not be as short as just "mmio". Rename mmio to igt_global_mmio. Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2015-05-05intel_vga_{read,write}: use INREG and OUTREGJani Nikula
Use INREG and OUTREG instead of using mmio directly. Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2015-05-05intel_display_poller: use INREG and OUTREGJani Nikula
Use INREG and OUTREG instead of using mmio directly. Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2015-05-05intel_watermark: switch to INREGJani Nikula
Use INREG instead of using mmio directly. Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2015-05-05intel_reg_{read,write}: switch to INREG and OUTREGJani Nikula
Use INREG and OUTREG instead of using mmio directly. Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2015-05-05intel_reg_checker: switch to INREGJani Nikula
Use INREG instead of using mmio directly. Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2015-05-05intel_backlight: switch to INREG and OUTREGJani Nikula
Use INREG and OUTREG instead of using mmio directly. Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2015-05-05intel_reg: switch to INREG and OUTREGJani Nikula
Use INREG and OUTREG instead of using mmio directly. Signed-off-by: Jani Nikula <jani.nikula@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-27tools: update .gitignoreThomas Wood
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-04-22tools/quick_dump/makefile.am: add -lrt to get clock_gettimeTim Gore
Attempting to build IGT on linux without libunwind fails due to tools/quick_dump not linking the rt library, causing an undefined symbol error for clock_gettime. Adding -lrt to the list of libraries in Makefile.am fixes this. Signed-off-by: Tim Gore <tim.gore@intel.com> Signed-off-by: Thomas Wood <thomas.wood@intel.com>
2015-04-16quick_dump: Fix undefined symbols from libunwindVille Syrjälä
../../lib/.libs/libintel_tools.a(igt_core.o): In function `print_backtrace': intel-gpu-tools/lib/igt_core.c:981: undefined reference to `_Ux86_64_getcontext' intel-gpu-tools/lib/igt_core.c:982: undefined reference to `_ULx86_64_init_local' intel-gpu-tools/lib/igt_core.c:983: undefined reference to `_ULx86_64_step' intel-gpu-tools/lib/igt_core.c:987: undefined reference to `_ULx86_64_get_proc_name' Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2015-04-16quick_dump: Don't allow undefined symbols in _chipset.soVille Syrjälä
Every time _chipset.so has undefined symbols we fail to notice it at build time and then get to wonder why quick_dump fails to actually work. Pass -Wl,--no-undefined to the linker to get a build time error instead of the current runtime error. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2015-04-08tools/intel_reg_dumper: fix PIPECONF decodeImre Deak
- decode the register for BXT too - decode interlace on VLV/CHV too - don't decode rotation and bpc on platforms where these fields are not defined Signed-off-by: Imre Deak <imre.deak@intel.com>
2015-04-08tools/intel_reg_dumper: fix DSPCNTR decode for BXTImre Deak
Signed-off-by: Imre Deak <imre.deak@intel.com>
2015-04-08tools/intel_bios_read: fix SSC freq for BXTImre Deak
On BXT the SSC reference frequency is fixed 100MHz. Signed-off-by: Imre Deak <imre.deak@intel.com>
2015-04-08tools/intel_bios_reader: fix SSC freq for VLV/CHVImre Deak
VLV/CHV has a fixed 100MHz SSC reference frequency. Signed-off-by: Imre Deak <imre.deak@intel.com>
2015-03-26lib: print a stack trace when a test assertion failsThomas Wood
Add an optional dependency on libunwind to print stack traces when a test assertion fails. Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Thomas Wood <thomas.wood@intel.com>
2015-03-26tools/intel_error_decode: Add gen8+ fault data encodingsMika Kuoppala
These two registers contains the 48bit fault address. Reviewed-by: Michel Thierry <michel.thierry@intel.com> Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
2015-03-26tools/intel_error_decode: Add decodings for FAULT_REGMika Kuoppala
Add decodings for FAULT_REG v2: fix fault encodings and ignore addr type for gen8+ (Michel) fix engine mask Reviewed-by: Michel Thierry <michel.thierry@intel.com> Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
2015-03-26tools/intel_error_decode: Add ERROR decodings for gen8Mika Kuoppala
Add ERROR decodings for gen8 Reviewed-by: Michel Thierry <michel.thierry@intel.com> Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
2015-03-25tools: Update .gitignoreVille Syrjälä
Ignore intel_watermark and unignore the, now extinct, intel_dpio_{read,write}. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.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/intel_iosf_sb_read: Support different register stridesVille Syrjälä
Some IOSF SB units ogranize their registers in a pecualiar way. Even though the registers are 32 bits wide, the register offsets only increment by one when going from one register to the next. Correctly deal with this when dumping several consecutive registers. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2015-03-24tools/intel_iosf_sb_read: Add -c command line option like intel_reg_readVille Syrjälä
Add a command line option '-c <count>' that can be used to read set of consecutive registers without having to specify the offset for each of them. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2015-03-24tools/intel_iosf_sb_*: Support reading/writing multiple registers at onceVille Syrjälä
Allow the user to specify a list of registers to read, and register/value pairs to write. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2015-03-24tools/intel_iosf_sb_*: Use getopt() to parse the optionsVille Syrjälä
I want to add some command line options so switch to getopt() to make that easier. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2015-03-24tools/intel_iosf_sb_*: Replace if ladder with an array and bsearch()Ville Syrjälä
Replace the silly strcasecmp() if ladder with and array that maps the unit names to port numbers. And keep the thing sorted so we can do the lookup with bsearch() for extra speed :) 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-03-24toos/intel_iosf_sb_*: Fix DPIO IOSF SB port numberVille Syrjälä
The correct port is 0x12, not 0x13 which is actually GPIO_NC. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2015-03-24quick_dump/skl: Add power well registersDamien Lespiau
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
2015-03-12Remove old entries from .gitignore filesThomas Wood
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
2015-03-04tools/intel_gtt: Add support for gen8Mika Kuoppala
Add 64bit ptes and 8MB mmiobar offset for gen8 Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Cc: Ben Widawsky <benjamin.widawsky@intel.com> Acked-by: Ben Widawsky <benjamin.widawsky@intel.com> Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com>
2015-02-16tools/intel_audio_dump: add support for SkylakeLu, Han
This patch adds support for dumping audio registers of Skylake. Signed-off-by: Lu, Han <han.lu@intel.com>
2015-02-13quick_dump: Add interrupt and PPAT registers to the SKL dumpDamien Lespiau
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
2015-01-26tools/intel_audio_dump: add details dump for CherryviewLibin Yang
This patch adds the details dump for audio registers of Cherryview. Signed-off-by: Libin Yang <libin.yang@intel.com> Reviewed-by: Zhenyu Wang <zhenyuw@linux.intel.com>
2015-01-16tools/intel_gpu_frequency: remove use of getsuboptTim Gore
getsubopt is not available in android. The "get" option doesn't really need sub-options, just display all the current frequency settings (as per discussion with Ben Widawsky) Ben v2: Remove the -geff example in the header Fixed another typo for the --set while there (found by Dave Gordon) Signed-off-by: Tim Gore <tim.gore@intel.com> Reviewed-by: Ben Widawsky <ben@bwidawsk.net>
2015-01-15tools: add intel_gpu_frequency to .gitignoreThomas Wood
intel_gpu_frequency was added in commit 5fb26d1 (intel_gpu_frequency: A tool to manipulate Intel GPU frequency), but wasn't added to .gitignore. Cc: Ben Widawsky <benjamin.widawsky@intel.com> Signed-off-by: Thomas Wood <thomas.wood@intel.com>
2015-01-15intel_gpu_frequency: fix array bounds warningThomas Wood
Add a parameter for the size of the act_upon array in the parse function since its size cannot be calculated with ARRAY_SIZE from just the pointer. Cc: Ben Widawsky <benjamin.widawsky@intel.com> Signed-off-by: Thomas Wood <thomas.wood@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