1. 04 Oct, 2017 1 commit
  2. 02 Oct, 2017 2 commits
  3. 08 Sep, 2017 1 commit
  4. 21 Aug, 2017 2 commits
  5. 14 Aug, 2017 1 commit
  6. 03 Aug, 2017 1 commit
  7. 26 Jul, 2017 1 commit
  8. 25 Jul, 2017 1 commit
  9. 20 Jul, 2017 2 commits
  10. 19 Jul, 2017 2 commits
  11. 17 Jul, 2017 1 commit
    • Lyude Paul's avatar
      configure.ac: Make building chamelium an option · fd096fcc
      Lyude Paul authored
      Originally when chamelium support got added we were expecting basically
      any distribution to already have the required dependencies for it,
      however seeing as someone made chamelium compilation conditional that
      must not actually be the case.
      
      This being said however, when compilation of the chamelium tests/libs
      was made to only build when all of the dependencies were found, nothing
      was actually added to configure.ac to give even the slightest indication
      that chamelium support wasn't going to get built. This ended up breaking
      my autocompletion for the chamelium source files, leading to a multihour
      troubleshooting session where I eventually realized that someone had
      changed building chamelium support from mandatory to automatic.
      
      For now, I'll make this conditional so that people who can't satisfy
      these dependencies can disable this and everyone else can get warnings
      to let them know that they're missing dependencies required to build
      this.
      
      Please add messages in the future to our build scripts when these things
      get changed :\.
      
      Additionally, we also add xmlrpc_util and xmlrpc_client to the
      chamelium dependencies. This isn't required older versions of libxmlrpc,
      but it seems that in newer versions they've changed which packages
      provide which symbols. It shouldn't break building with older versions
      of xmlrpc though.
      Signed-off-by: Lyude Paul's avatarLyude <lyude@redhat.com>
      fd096fcc
  12. 07 Jul, 2017 2 commits
  13. 06 Jul, 2017 1 commit
  14. 09 Jun, 2017 2 commits
  15. 08 Jun, 2017 1 commit
  16. 07 Jun, 2017 1 commit
  17. 30 May, 2017 1 commit
    • Tvrtko Ursulin's avatar
      igt: Fix detection of missing flex · d9dcfc3a
      Tvrtko Ursulin authored
      AM_PROG_FLEX macro will set the LEX variable using the missing
      script when the flex is not present. This will confuse the
      configure.ac check, which expects the AC_PROG_FLEX behaviour,
      and will so fail to detect the missing flex:
      
      	AS_IF([test x"$LEX" != "x:" -a x"$YACC" != xyacc],
      		[enable_assembler=yes],
      		[enable_assembler=no])
      
      This is because AM_PROG_LEX sets the LEX variable to
      "${SHELL} /home/sc/intel-gpu-tools/build-aux/missing flex",
      while AC_PROG_LEX would set it to ":".
      
      If for some reason we really need to keep AM_PROG_LEX,
      alternative fix could be something like this placed before
      the above AS_IF check:
      
      	AC_MSG_CHECKING([checking for working flex])
      	if ! eval "$LEX --version >/dev/null 2>&1"; then
      		AC_MSG_RESULT([failed])
      		LEX=:
      	else
      		AC_MSG_RESULT([pass])
      	fi
      
      Note the evil eval needed to recursively expand variables.
      Signed-off-by: Tvrtko Ursulin's avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
      Reviewed-by: Petri Latvala's avatarPetri Latvala <petri.latvala@intel.com>
      d9dcfc3a
  18. 22 Apr, 2017 1 commit
  19. 13 Mar, 2017 1 commit
  20. 06 Mar, 2017 1 commit
  21. 27 Feb, 2017 1 commit
  22. 27 Jan, 2017 1 commit
  23. 26 Jan, 2017 1 commit
    • Lyude Paul's avatar
      Add support for hotplug testing with the Chamelium · c99f8b7a
      Lyude Paul authored
      For the purpose of testing things such as hotplugging and bad monitors,
      the ChromeOS team ended up designing a neat little device known as the
      Chamelium. More information on this can be found here:
      
      	https://www.chromium.org/chromium-os/testing/chamelium
      
      This adds support for a couple of things to intel-gpu-tools:
       - igt library functions for connecting to udev and monitoring it for
         hotplug events, loosely based off of the unfinished hotplugging
         implementation in testdisplay
       - Library functions for controlling the chamelium in tests using
         xmlrpc. A couple of RPC calls were ommitted here, mainly because they
         didn't seem very useful for our needs (yet)
       - A set of functions for doing CRC checks and frame comparisons in
         tests
       - A set of basic tests using the Chamelium library.
      
      Cc: Tomeu Vizoso <tomeu@tomeuvizoso.net>
      Signed-off-by: Lyude Paul's avatarLyude <lyude@redhat.com>
      
      Changes since v1:
      - Don't try to guess connector mappings, have the user specify them
        manually using a configuration file
      - Open DRM fd using DRIVER_ANY, not DRIVER_INTEL
      - Lower the hotplug timeout a little bit, since 30 seconds was leftover
        from debugging these tests anyway
      - Don't try to keep track of the original state of the chamelium ports,
        and just leave them plugged in after each run. This makes more sense
        to me, since I'd imagine in automated testing setups using chameliums
        that all of the extra monitors will probably be provided by the
        Chamelium to begin with, so keeping them plugged in would make sure
        tests running afterwards that require >1 monitor don't get skipped.
      - Add wait_for_connector() to the chamelium tests. After some more
        testing, I found that depending on the system some tests would throw
        false negatives due to us not waiting long enough for the system to
        detect that we connected something to it. This mainly happened with
        VGA connectors, since their lack of HPD makes them take significantly
        longer for the hardware to notice. wait_for_connector() fixes this by
        continually reprobing the status of the desired connector (without
        relying on a hpd event happening, since that might never come) until
        we get what we want, or we time out and fail.
      - Use kmstest_get_property() for retrieving EDIDs instead of doing it by
        hand
      - Don't hardcode PIPE_A for bringing up the display, use kmstest to find
        an appropriate CRTC to use.
      Changes since v2:
      - Fix incorrect usage of the list helpers when recording new EDIDs
      - Add missing documentation
      - Make sure documentation actually appears
      - Since we finally got video capture working, add CRC functions and fix
        the ones we couldn't actually test before
      - In the exit handler, reset the xmlrpc env so we can properly reset the
        Chamelium even after an RPC error
      - Make sure compiling without Chamelium support still works
      Changes since v3:
      - Change the config file name from .igt_chamelium_rc to .igtrc
      - Remove chamelium global context
      - Get rid of define_common_connector_tests()
      - Get rid of connector list, expose connectors as opaque objects and
        provide helpers for accessing their attributes
      - Get rid of configure.ac option for Chamelium
      - Add tests for CRC functions
      - Add frame dumping functions + tests
      - Add FSM handling to chamelium_rpc()
      - Use LIBUDEV_LIBS in automake, not UDEV_LIBS
      - Documentation fixes
      - Improve debugging output some more
      - Remove skip_without_suspend_support, we no longer need to check for
        suspend support before calling things
      - Remove unnessecary malloc() checks with igt_assert()
      - Don't use igt_require in chamelium_init, leave it up to the caller
        whether or not to abort when failing to initialize the chamelium
      - Use igt_assert_eq for making assertions about connector's statuses
      - Define suspend/resume delay for tests as constant
      c99f8b7a
  24. 25 Jan, 2017 1 commit
    • Manasi Navare's avatar
      tools: Add intel_dp_compliance for DisplayPort 1.2 compliance automation · 9f336975
      Manasi Navare authored
      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's avatarManasi Navare <manasi.d.navare@intel.com>
      Signed-off-by: Dhinakaran Pandiyan's avatarDhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
      Reviewed-by: Petri Latvala's avatarPetri Latvala <petri.latvala@intel.com>
      9f336975
  25. 03 Jan, 2017 1 commit
    • Lyude Paul's avatar
      igt_core: add igt_constructor · 31811f4b
      Lyude Paul authored
      This is a simple macro for executing a block of code at the beginning of
      intel-gpu-tools, before any tests have been ran. Useful for
      initialization of global resources used in IGT libraries.
      Signed-off-by: Lyude Paul's avatarLyude <lyude@redhat.com>
      Reviewed-by: Chris Wilson's avatarChris Wilson <chris@chris-wilson.co.uk>
      
      Changes since v1:
       - Add the line number into the name of the constructor function so that
         multiple constructors may be used per-file.
      31811f4b
  26. 16 Dec, 2016 1 commit
  27. 02 Dec, 2016 1 commit
  28. 01 Dec, 2016 1 commit
    • Marius Vlad's avatar
      lib/igt_kmod: New library to support driver loading/unloading and additional helpers. · 0268d73b
      Marius Vlad authored
      lib/igt_aux: Added igt_pkill and igt_lsof helper.
      lib/igt_kmod: Added load/unload kmod helpers.
      
      v7:
      - document the case where leaving stray fd from drm_open_driver()
      might fail reloading the driver.
      - list also current opened files from /dev/dri in case we could not
      unload the driver.
      - convert igt_info to igt_warn (Chris Wilson)
      - added KMOD_|PROCPS CFLAGS (Chris Wilson)
      
      v6:
      - include latest modifications from tests/drv_module_reload:
      display all loaded modules and list information about opened
      files by processes (Petri Latvala)
      
      v5:
      - added igt_i915_driver_{load/unload}.
      - added kick_snd_hda_intel() to match current
      tests/drv_module_reload_basic and integrated into
      igt_i915_driver_load/unload.
      - added gtk-doc section for lib/igt_kmod
      
      v4:
      - decided to split libkmod helpers into their own file as there's
      another user lib/igt_gvt or tests/gvt_basic.
      - fixed some gtk-doc documentation.
      
      v3:
      - return -errno (igt_pkill()) in case of failure (Cris Wilson)
      - return bool for igt_kmod_is_loaded(), replaced strncasecmp with strncmp
      (Chris Wilson)
      
      v2:
      - Renamed libkmod helpers (Chris Wilson)
      - Removed SIGTERM/SIGKILL case where we repeatedly tried to terminate the
      process: just call kill(2) once (Chris Wilson)
      - Removed redundant check in igt_kmod_unload(), igt_module_in_use() (Chris
      Wilson)
      - Pass flags to igt_kmod_unload() from the caller (Chris Wilson)
      - Removed useless function igt_kill() which acts just as kill(2) (Chris
      Wilson)
      Signed-off-by: default avatarMarius Vlad <marius.c.vlad@intel.com>
      0268d73b
  29. 27 Nov, 2016 1 commit
  30. 09 Nov, 2016 1 commit
  31. 13 Oct, 2016 1 commit
  32. 02 Sep, 2016 1 commit
  33. 04 Aug, 2016 2 commits