diff options
author | Adam Jackson <ajax@redhat.com> | 2010-03-31 17:25:23 -0400 |
---|---|---|
committer | Adam Jackson <ajax@redhat.com> | 2010-04-05 11:41:24 -0400 |
commit | cd64e193299be4b9733a5e804cedd99e2072830f (patch) | |
tree | 9dcf27ccfdfc5805c94f016d696a85ab44512654 /lib | |
parent | 2187ec2112750bb898416358ac5463eebbf30049 (diff) |
intel_reg_dumper: Add support for reading register dumps from files
Also add intel_reg_snapshot for creating such snapshots, and relevant
documentation.
Signed-off-by: Adam Jackson <ajax@redhat.com>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/intel_gpu_tools.c | 27 | ||||
-rw-r--r-- | lib/intel_gpu_tools.h | 1 |
2 files changed, 28 insertions, 0 deletions
diff --git a/lib/intel_gpu_tools.c b/lib/intel_gpu_tools.c index 6c85d2a1..a699ae82 100644 --- a/lib/intel_gpu_tools.c +++ b/lib/intel_gpu_tools.c @@ -25,12 +25,17 @@ * */ +#include <unistd.h> #include <stdlib.h> #include <stdio.h> #include <string.h> +#include <errno.h> #include <err.h> #include <assert.h> #include <sys/ioctl.h> +#include <sys/fcntl.h> +#include <sys/stat.h> +#include <sys/mman.h> #include "intel_gpu_tools.h" #include "i915_drm.h" #include "intel_batchbuffer.h" @@ -83,6 +88,28 @@ intel_get_pci_device(void) } void +intel_map_file(char *file) +{ + int fd; + struct stat st; + + fd = open(file, O_RDWR); + if (fd == -1) { + fprintf(stderr, "Couldn't open %s: %s\n", file, + strerror(errno)); + exit(1); + } + fstat(fd, &st); + mmio = mmap(NULL, st.st_size, PROT_READ|PROT_WRITE, MAP_PRIVATE, fd, 0); + if (mmio == MAP_FAILED) { + fprintf(stderr, "Couldn't mmap %s: %s\n", file, + strerror(errno)); + exit(1); + } + close(fd); +} + +void intel_get_mmio(void) { int mmio_bar; diff --git a/lib/intel_gpu_tools.h b/lib/intel_gpu_tools.h index 07340cc9..259fd9a9 100644 --- a/lib/intel_gpu_tools.h +++ b/lib/intel_gpu_tools.h @@ -56,3 +56,4 @@ void intel_get_drm_devid(int fd); void intel_copy_bo(struct intel_batchbuffer *batch, drm_intel_bo *dst_bo, drm_intel_bo *src_bo, int width, int height); +void intel_map_file(char *); |