summaryrefslogtreecommitdiff
path: root/tools
AgeCommit message (Collapse)Author
2018-03-19tools/aubdump: For gen10+ support addresses up to 4GBJordan Justen
For gen10, we now add mappings for buffers as they are needed. Instead of doing this dynamically, we could always map the entire 4GB. With 4KB pages, the tables would take up 8MB in every AUB. AUBs are often quite huge compared to 8MB, but they can also be just a few hundred KB. This should allow the AUB to create up to about 4GB of allocated buffers, whereas before we were limited to about 64MB. While it is unlikely that we'll try to capture AUBs that generate buffers up to 4GB in size, this change also should allow pinned buffers to be used anywhere in the first 4GB. (I tested a pinned buffer at 0xf0000000.) Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Scott D Phillips <scott.d.phillips@intel.com>
2018-03-19tools/aubdump: Add bitmap to track gtt pages that have been mappedJordan Justen
This will allow us to map ranges as they are used, but prevents remapping already mapped regions. By mapping ranges as they are used, we can support pinned pages without having to map all pages of the first 32-bits. v2: * Make bitmap manipulation functions independent from 4k page size. Maybe will be usable also for 1GB pages with PPGTT. Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Scott D Phillips <scott.d.phillips@intel.com>
2018-03-19tools/aubdump: Add gen8_map_ggtt_rangeJordan Justen
This function should allow us to only write the page table entries that get used. v2: * Use align; deobfuscate start addr calc. (Scott) Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Scott D Phillips <scott.d.phillips@intel.com>
2018-03-12meson: Set up runpath for installed executablesPetri Latvala
Meson builds libigt as a shared library, and executables naturally have to find it at runtime. Using default options puts the library to a normal search paths, but any modifications to the directory options or a non-conventional prefix setting makes using LD_LIBRARY_PATH or other library search means mandatory. Add a build option 'use_rpath' (default: false) that makes meson set up DT_RUNPATH at install time, pointing to the library with a path relative to the executable, using $ORIGIN. That way the installed executables find the library even when not installed to exactly the build-time configured prefix path, a setup CI occasionally uses. Signed-off-by: Petri Latvala <petri.latvala@intel.com> Cc: Tomi Sarvela <tomi.p.sarvela@intel.com> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Tested-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2018-03-01tools/intel_dp_compliance: Add missing GLIB_CFLAGSThierry Reding
intel_dp_compliance.h includes the glib.h header file but the Makefile does not explicitly pass a -I option with the path containing that header, hence causing the build to fail. Note that this doesn't seem to happen with a recent enough version of cairo, which implicitly provides the correct -I option. Signed-off-by: Thierry Reding <treding@nvidia.com> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2018-03-01tools/intel_guc_logger: Send GuC log level in new i915 expected formatSagar Arun Kamble
i915 expects GuC log level to be specified as: 0: disabled 1: enabled (verbosity level 0 = min) 2: enabled (verbosity level 1) 3: enabled (verbosity level 2) 4: enabled (verbosity level 3 = max) Remove the earlier internal layout based logging control from guc_log_control and send new expected values. v2: log_level assert in guc_log_control, cleaner level setup (Michal) added missing copyright header. (Sagar) Signed-off-by: Sagar Arun Kamble <sagar.a.kamble@intel.com> Cc: Michal Wajdeczko <michal.wajdeczko@intel.com> Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Michal Winiarski <michal.winiarski@intel.com> Reviewed-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
2018-02-27igt: Make libudev mandatoryAntonio Argenziano
Since more essential components use libudev, make its dependency mandatory. Signed-off-by: Antonio Argenziano <antonio.argenziano@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Petri Latvala <petri.latvala@intel.com> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Acked-by: Petri Latvala <petri.latvala@intel.com>
2018-02-22tools/aubdump: Signal drm sync objects when device override is usedJordan Justen
This prevents an infinite hang with crucible (vulkan) rendering tests when --device is used. Cc: Jason Ekstrand <jason@jlekstrand.net> Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Scott D Phillips <scott.d.phillips@intel.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2018-02-22tools/aubdump: Note pinned BO in verbose outputJordan Justen
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Scott D Phillips <scott.d.phillips@intel.com>
2018-02-22tools/aubdump: Support alignment of BO in execbuffer2Jordan Justen
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Scott D Phillips <scott.d.phillips@intel.com>
2018-02-07tools/intel_aubdump: Simulate "enhanced execlist" submission for gen11+Scott D Phillips
gen11 execlist submission is done through the submit queue registers (ELSQ). See kernel patch "drm/i915/icl: Enhanced execution list support" Signed-off-by: Scott D Phillips <scott.d.phillips@intel.com> Tested-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2018-02-02tools: Clear unused fields in register specChris Wilson
If we fail to clear the other fields inside the register spec, they may be left with garbage instructing us to access the register via an invalid path. v2: Grab Mika's fix for get_regs() and check all parse_port_desc() callers. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104895 Fixes: 7f0be0e7d9be ("tools/intel_reg: Add reading and writing registers through engine") Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Jani Nikula <jani.nikula@intel.com> CC: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com> Reviewed-by: Jani Nikula <jani.nikula@intel.com> Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
2018-01-31tools/intel_reg: Add reading and writing registers through engineMika Kuoppala
Add option to specify engine for register read/write operation. If engine is specified, use MI_LOAD_REGISTER_IMM and MI_STORE_REGISTER_IMM to write and read register using a batch targeted at that engine. v2: no MI_NOOP after BBE (Chris) v3: use modern engine names (Chris), use global fd v4: strcasecmp (Chris) v5: use register definition format for engine (Jani) Cc: Jani Nikula <jani.nikula@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> CC: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Signed-off-by: Mika Kuoppala <mika.kuoppala@linux.intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> (v4) Acked-by: Jani Nikula <jani.nikula@intel.com>
2018-01-25meson: Use absolute path for IGT_DATADIRPetri Latvala
IGT_DATADIR needs to be an absolute path instead of relative to prefix or data files can only be found if cwd is exactly prefix. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104723 Signed-off-by: Petri Latvala <petri.latvala@intel.com> Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2018-01-23tools/intel_vbt_decode: add --describe optionJani Nikula
Print description of the form <bdb-version>-<vbt-signature> that could be used for e.g. filenames. Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2018-01-23tools/intel_vbt_decode: add --header option to only print headerJani Nikula
Sometimes it's useful just to print the VBT and BDB headers. Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2018-01-23tools/intel_vbt_decode: print child device countJani Nikula
Sometimes useful. Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2018-01-19tools/intel_vbt_decode: update vbt defs from kernelJani Nikula
Sync up with the following intel_vbt_defs.h changes in kernel: c4fb60b9aba9 ("drm/i915/bios: add DP max link rate to VBT child device struct") d6038611aa3d ("drm/i915: Parse max HDMI TMDS clock from VBT") 6e8fbf8d19e4 ("drm/i915/vbt: Fix HDMI level shifter and max data rate bitfield sizes") 9c3b2689d01f ("drm/i915/cnl: Map VBT DDC Pin to BSpec DDC Pin.") Reviewed-by: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2018-01-19intel_vbt_decode: Typo fixesAdam Jackson
Signed-off-by: Adam Jackson <ajax@redhat.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2018-01-17meson: Refactor get_option() calls for directoriesPetri Latvala
Fetch the configuration values in the toplevel meson.build for all subdirs to share. v2: Also remember tests/intel-ci/meson.build Signed-off-by: Petri Latvala <petri.latvala@intel.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2018-01-16meson: Build cnl_compute_wrpllPetri Latvala
Signed-off-by: Petri Latvala <petri.latvala@intel.com> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2018-01-12tools: Update .gitignorePetri Latvala
Fixes: 834321a5d76a ("tools: Cannonlake port clock programming") Signed-off-by: Petri Latvala <petri.latvala@intel.com> Cc: Mika Kahola <mika.kahola@intel.com> Reviewed-by: Mika Kahola <mika.kahola@intel.com>
2018-01-11include inttypes.h for PRI definesMike Frysinger
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=96620 Signed-off-by: Mike Frysinger <vapier@gentoo.org> Reviewed-by: Petri Latvala <petri.latvala@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-12-08debugger/overlay/tools: make sure to include embedded drm-uapi headersLionel Landwerlin
Headers from lib/ depend on drm uapi headers. Since we started embedding them, let's make sure to pull them first. We still depend on libdrm in places, we don't want the system headers from libdrm to be included prior to the embedded ones. v2: Fix debugger/overlay (Lionel) v3: More fixes in lib/tests (Lionel) Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
2017-12-07tools/intel_aubdump: Add ability to simulate execlist submissionScott D Phillips
Newer devices do not have the legacy ring buffer submission model, so aub files generated using that model cannot be handled by some internal tools. The execlist submission modeled by this change is pretty simplistic, using GGTT only and synchronizing after every batch. v2: - Move addr_bits init in separate patch (Jordan) - Don't change GTT entries in gen < 10 Signed-off-by: Scott D Phillips <scott.d.phillips@intel.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Tested-by: Jordan Justen <jordan.l.justen@intel.com> Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2017-12-07tools/intel_aubdump: Set addr_bits before write_headerScott D Phillips
write_header() uses addr_bits, so do the initialization earlier. Also set the gen to a non-zero value in case of unknown device, for use by a later patch. Signed-off-by: Scott D Phillips <scott.d.phillips@intel.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
2017-11-29tools/intel_watermark: Right justify register namesVille Syrjälä
I think the dump is a more legible when the register names are right justified. That way the register name and its value are right next to each other. Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> Reviewed-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2017-11-29tools/intel_watermark: Clean up formattingVille Syrjälä
Align the comlums properly, and replace some of the whitespace in the printf()s with properly sized fields. Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> Reviewed-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2017-11-29tools/intel_watermark: Clean up SKL plane namesVille Syrjälä
Only print the plane name for planes that actually exist. Also Also include the pipe in the plane name. Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> Reviewed-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2017-11-29tools/intel_watermark: Refactor reg name stuffVille Syrjälä
Pull the code to generate the SKL register names into small helper to declutter the main code. Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> Reviewed-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2017-11-29tools/intel_watermark: Silence gcc7 snprintf() warningsVille Syrjälä
Bump the snprintf() buffer size to 32 bytes to silence gcc. intel_watermark.c:203:57: warning: ‘%c’ directive output may be truncated writing 1 byte into a region of size between 0 and 9 [-Wformat-truncation=] snprintf(reg_name, sizeof(reg_name), "PLANE_WM_%1d_%c_%1d", ^~ intel_watermark.c:203:43: note: directive argument in the range [0, 8] snprintf(reg_name, sizeof(reg_name), "PLANE_WM_%1d_%c_%1d", ^~~~~~~~~~~~~~~~~~~~~ etc. Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> Reported-by: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Tested-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Reviewed-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2017-11-29igt: Remove Android supportArkadiusz Hiler
This patch gets rid of the Android support, deleting all the hacks and moving code around to the places it belongs. Android build is not really maintained properly and rots rather fast. With recent push for Meson here and Android going for Soong it will only accelerate. It's a good time to drop the illusion of providing any support. Cc: Daniel Vetter <daniel.vetter@intel.com> Cc: Kalyan Kondapally <kalyan.kondapally@intel.com> Cc: Petri Latvala <petri.latvala@intel.com> Cc: Radoslaw Szwichtenberg <radoslaw.szwichtenberg@intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com> Acked-by: Petri Latvala <petri.latvala@intel.com>
2017-11-22intel_gvtg_test: Handle system(3) return value.Tvrtko Ursulin
Avoid the build warning by checking the pkill either did not find any guests or managed to send a signal to all of them. v2: Inspect system(3) return value properly. (Petri Latvala) Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2017-11-21tools/intel_watermark: Try not to dump nonexistent planes on SKL+Dhinakaran Pandiyan
Having registers for nonexistent planes in the dumpo might end up being rather confusing. Try to only include real planes. Reviewed-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2017-11-21tools/intel_watermark: Dump WM_LINETIME on SKL+Ville Syrjälä
Reviewed-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2017-11-21tools/intel_watermark: Polish SKL+ register dump output a bitVille Syrjälä
Print hex numbers with "0x" prefix, and make the output a bit more compact. Reviewed-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2017-11-21tools/intel_watermark: Eliminate pointless %s in printf()Ville Syrjälä
Reviewed-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2017-11-21tools/intel_watermark: Update intel_watermark with SKL supportDhinakaran Pandiyan
Added support to print SKL watermark and DDB registers. v2: Printed raw register data, renamed planes and combined two printf()'s (Ville) v3: s/drm_fd/-1/ for intel_register_access_init() Signed-off-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> [vsyrjala: make it build, fix indentation, etc.] Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2017-11-21tools/intel_watermark: Print linetime wms in usecVille Syrjälä
Let's print the linetime watermarks un usecs. Might make it easier to spot bogus values. Reviewed-by: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2017-11-21tools: Stop opening the driver just to find the debugfsChris Wilson
Since the tools want to work without the module loaded, remove the assumption that we want to load the driver to find debugfs. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Ville Syrjala <ville.syrjala@linux.intel.com>
2017-11-17tools/error_decode: Print ASCII user buffersChris Wilson
Look at the first 16 characters of the user buffer and if they are all printable, assume that user buffer contains ASCII data (e.g. a debug log) that we want to simply print out. Otherwise, we treat it as a binary data and hexdump as before. Tvrtko: you know you could just write this as a printf (d'oh) Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
2017-11-06tools/aubdump: Avoid ISO C90 warningThierry Reding
GCC will warn about ISO C90 forbidding to mix declarations and code. Declare the variable at the beginning of the function to suppress the warning. Signed-off-by: Thierry Reding <treding@nvidia.com>
2017-10-24meson: intel_dp_compliance depends on libudevJani Nikula
Only build intel_dp_compliance when libudev is available, also include libudev in the list of dependencies. Fixes error when libudev isn't there: ../tools/intel_dp_compliance_hotplug.c:33:21: fatal error: libudev.h: No such file or directory #include <libudev.h> Signed-off-by: Jani Nikula <jani.nikula@intel.com> Reviewed-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
2017-10-20tools/intel_vbt_decode: abstract child devices printing moreJani Nikula
Unify the common code for current and legacy blocks. Acked-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2017-10-20tools/intel_vbt_decode: dump more child device data for version < 152Jani Nikula
There's no evidence that this is the limit. Acked-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2017-10-20tools/intel_vbt_decode: unify legacy child device block dumpingJani Nikula
It's the same stuff as in the new child devices. Acked-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2017-10-20tools/intel_vbt_decode: unify child device printing across versionsJani Nikula
Make it easier to compare dumping against the struct definition. v2: Fix version comparison for flags, aux channel and dongle detect, and fix some typos while at it (Ville) Acked-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2017-10-20tools/intel_vbt_decode: abstract DSI bridge type dumpJani Nikula
Cleaner than having it inline. Acked-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
2017-10-20tools/intel_vbt_decode: use %.*s instead of duplicating a stringJani Nikula
child->device_id may not be terminated, but we can use %.*s format specifier to define the max length to print. No need to make a copy. Acked-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Jani Nikula <jani.nikula@intel.com>