summaryrefslogtreecommitdiff
path: root/lib/igt_device_scan.h
AgeCommit message (Collapse)AuthorFilesLines
2020-06-08lib/igt_device_scan: Add extra helpers for intel_gpu_topAyaz A Siddiqui1-1/+6
Will be used in the next patch. 1. set_pci_slot_name(): stores PCI_SLOT_NAME from prop to device 2. igt_device_find_first_discrete_card(): try to find first discrete GPU 3. igt_devices_free(): Free device buffers created during scan Signed-off-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com> Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2020-06-08lib/igt_device_scan: Make igt_device_scan independent from igt_coreAyaz A Siddiqui1-1/+7
igt_device_scan can now be used as a separate library which only depends glib and libudev - some IGT internals are being stubbed in this case. v2: (mostly) sort includes (Lucas) Cc: Lucas De Marchi <lucas.de.marchi@gmail.com> Signed-off-by: Ayaz A Siddiqui <ayaz.siddiqui@intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2020-05-05lib: Support multiple filtersArkadiusz Hiler1-4/+4
This patch brings back support for multiple filters that was in the original series by Zbyszek. We can now take multiple, semicolon separated filters. Right now the tests are using only the first filter. v2: drop unnecessary check before for-loop (Petri) Cc: Petri Latvala <petri.latvala@intel.com> Cc: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>
2019-12-04Introduce device selection APIZbigniew Kempczyński1-0/+64
The new device selection API based on scanning DRM subsystem using udev. It provides a set of functions for enumerating and filtering available graphic cards to get the corresponding /dev/dri nodes. For details check the top level documentation in igt_device_scan.c To be used in lsgpu tool and internally by drm_open_driver*() functions (see the following patches). v2 (Arek): * drop most of the glib code in favor of igt_list and plain C * make sysfs paths handling non-special - introduce sys: filter * drop multiple filter_* structs in favor of just two: - filter_class for defining filters types (e.g. sys:) - filter for "filter instance" - the data provided by the user * promote many macros to real functions for type safety * rename devs->devs to devs->all * rename devs->view to devs->filtered * don't expose "chip" (e.g. DRIVER_ANY) as it's unreadable as int * update docs to reflect those changes * move open functions that open igt_device_card to this patch * remove platform filter class for now * use only a single filter v3 (Arek): * fix some memory leaks and setting to NULL after free() (Zbigniew) * fix even more missing free() (Petri) * use the new igt_list API * fix null pointer dereference on filter->class Cc: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com> Reviewed-by: Petri Latvala <petri.latvala@intel.com>