From 8ae86621d6fff60b6e20c6b0f9b336785c935b0f Mon Sep 17 00:00:00 2001 From: Michał Winiarski Date: Tue, 12 Mar 2019 13:48:13 +0100 Subject: lib/igt_device: Move intel_get_pci_device under igt_device MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It allows us to make things a little bit more generic. Also, we now require fd rather than doing guesswork when it comes to pci address. v2: Use readlinkat rather than string concat, move stuff around, provide a version that does not assert. (Chris) v3: Print addr on failure, avoid assignment in conditionals. (Chris) Signed-off-by: Michał Winiarski Cc: Chris Wilson Reviewed-by: Chris Wilson --- tools/intel_forcewaked.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'tools/intel_forcewaked.c') diff --git a/tools/intel_forcewaked.c b/tools/intel_forcewaked.c index 02fbf888..7d32337a 100644 --- a/tools/intel_forcewaked.c +++ b/tools/intel_forcewaked.c @@ -34,8 +34,8 @@ #include #include #include +#include "igt_device.h" #include "intel_io.h" -#include "intel_chipset.h" #include "drmtest.h" bool daemonized; @@ -65,6 +65,7 @@ is_alive(void) { int main(int argc, char *argv[]) { int ret; + int fd; if (argc > 2 || (argc == 2 && !strncmp(argv[1], "-h", 2))) { help(argv[1]); @@ -80,24 +81,27 @@ int main(int argc, char *argv[]) INFO_PRINT("started daemon"); } - ret = intel_register_access_init(intel_get_pci_device(), 1, -1); + fd = drm_open_driver(DRIVER_INTEL); + ret = intel_register_access_init(igt_device_get_pci_device(fd), 1, -1); if (ret) { INFO_PRINT("Couldn't init register access\n"); exit(1); } else { INFO_PRINT("Forcewake locked\n"); } + while(1) { if (!is_alive()) { INFO_PRINT("gpu reset? restarting daemon\n"); intel_register_access_fini(); - ret = intel_register_access_init(intel_get_pci_device(), 1, -1); + ret = intel_register_access_init(igt_device_get_pci_device(fd), 1, -1); if (ret) INFO_PRINT("Reg access init fail\n"); } sleep(1); } intel_register_access_fini(); + close(fd); INFO_PRINT("Forcewake unlock\n"); if (daemonized) { -- cgit v1.2.3