All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH i-g-t] tools: remove quick_dump
@ 2015-09-04 10:22 Thomas Wood
  2015-09-04 11:38 ` Ville Syrjälä
  2015-09-04 11:53 ` Jani Nikula
  0 siblings, 2 replies; 8+ messages in thread
From: Thomas Wood @ 2015-09-04 10:22 UTC (permalink / raw)
  To: intel-gfx

Remove quick_dump as it has been replaced by the intel_reg tool and move
the register definition files to tools/registers.

Signed-off-by: Thomas Wood <thomas.wood@intel.com>
---
 README                                             |  13 ---
 configure.ac                                       |  27 +----
 man/intel_reg.rst                                  |   3 +-
 tools/Makefile.am                                  |   6 +-
 tools/quick_dump/.gitignore                        |   2 -
 tools/quick_dump/Makefile.am                       |  34 ------
 tools/quick_dump/chipset.i                         |  41 --------
 tools/quick_dump/chipset_macro_wrap.c              |  68 ------------
 tools/quick_dump/quick_dump.py                     | 117 ---------------------
 tools/quick_dump/reg_access.py                     |  62 -----------
 tools/registers/Makefile.am                        |   1 +
 .../audio_config_haswell_plus.txt                  |   0
 .../audio_debug_haswell_plus.txt                   |   0
 tools/{quick_dump => registers}/base_interrupt.txt |   0
 tools/{quick_dump => registers}/base_other.txt     |   0
 tools/{quick_dump => registers}/base_power.txt     |   0
 tools/{quick_dump => registers}/base_rings.txt     |   0
 tools/{quick_dump => registers}/broadwell          |   0
 tools/{quick_dump => registers}/cherryview         |   0
 .../{quick_dump => registers}/chv_display_base.txt |   0
 .../{quick_dump => registers}/chv_dpio_phy_x1.txt  |   0
 .../{quick_dump => registers}/chv_dpio_phy_x2.txt  |   0
 tools/{quick_dump => registers}/chv_pipe_c.txt     |   0
 tools/{quick_dump => registers}/common_display.txt |   0
 tools/{quick_dump => registers}/gen6_other.txt     |   0
 tools/{quick_dump => registers}/gen7_other.txt     |   0
 tools/{quick_dump => registers}/gen8_interrupt.txt |   0
 tools/{quick_dump => registers}/gen8_other.txt     |   0
 tools/{quick_dump => registers}/haswell            |   0
 tools/{quick_dump => registers}/haswell_other.txt  |   0
 tools/{quick_dump => registers}/ivybridge          |   0
 tools/{quick_dump => registers}/sandybridge        |   0
 tools/{quick_dump => registers}/skl_display.txt    |   0
 tools/{quick_dump => registers}/skl_powerwells.txt |   0
 tools/{quick_dump => registers}/skylake            |   0
 tools/{quick_dump => registers}/valleyview         |   0
 .../{quick_dump => registers}/vlv_display_base.txt |   0
 tools/{quick_dump => registers}/vlv_dpio_phy.txt   |   0
 tools/{quick_dump => registers}/vlv_dsi.txt        |   0
 tools/{quick_dump => registers}/vlv_flisdsi.txt    |   0
 tools/{quick_dump => registers}/vlv_pipe_a.txt     |   0
 tools/{quick_dump => registers}/vlv_pipe_b.txt     |   0
 tools/{quick_dump => registers}/vlv_power.txt      |   0
 43 files changed, 6 insertions(+), 368 deletions(-)
 delete mode 100644 tools/quick_dump/.gitignore
 delete mode 100644 tools/quick_dump/Makefile.am
 delete mode 100644 tools/quick_dump/chipset.i
 delete mode 100644 tools/quick_dump/chipset_macro_wrap.c
 delete mode 100755 tools/quick_dump/quick_dump.py
 delete mode 100755 tools/quick_dump/reg_access.py
 create mode 100644 tools/registers/Makefile.am
 rename tools/{quick_dump => registers}/audio_config_haswell_plus.txt (100%)
 rename tools/{quick_dump => registers}/audio_debug_haswell_plus.txt (100%)
 rename tools/{quick_dump => registers}/base_interrupt.txt (100%)
 rename tools/{quick_dump => registers}/base_other.txt (100%)
 rename tools/{quick_dump => registers}/base_power.txt (100%)
 rename tools/{quick_dump => registers}/base_rings.txt (100%)
 rename tools/{quick_dump => registers}/broadwell (100%)
 rename tools/{quick_dump => registers}/cherryview (100%)
 rename tools/{quick_dump => registers}/chv_display_base.txt (100%)
 rename tools/{quick_dump => registers}/chv_dpio_phy_x1.txt (100%)
 rename tools/{quick_dump => registers}/chv_dpio_phy_x2.txt (100%)
 rename tools/{quick_dump => registers}/chv_pipe_c.txt (100%)
 rename tools/{quick_dump => registers}/common_display.txt (100%)
 rename tools/{quick_dump => registers}/gen6_other.txt (100%)
 rename tools/{quick_dump => registers}/gen7_other.txt (100%)
 rename tools/{quick_dump => registers}/gen8_interrupt.txt (100%)
 rename tools/{quick_dump => registers}/gen8_other.txt (100%)
 rename tools/{quick_dump => registers}/haswell (100%)
 rename tools/{quick_dump => registers}/haswell_other.txt (100%)
 rename tools/{quick_dump => registers}/ivybridge (100%)
 rename tools/{quick_dump => registers}/sandybridge (100%)
 rename tools/{quick_dump => registers}/skl_display.txt (100%)
 rename tools/{quick_dump => registers}/skl_powerwells.txt (100%)
 rename tools/{quick_dump => registers}/skylake (100%)
 rename tools/{quick_dump => registers}/valleyview (100%)
 rename tools/{quick_dump => registers}/vlv_display_base.txt (100%)
 rename tools/{quick_dump => registers}/vlv_dpio_phy.txt (100%)
 rename tools/{quick_dump => registers}/vlv_dsi.txt (100%)
 rename tools/{quick_dump => registers}/vlv_flisdsi.txt (100%)
 rename tools/{quick_dump => registers}/vlv_pipe_a.txt (100%)
 rename tools/{quick_dump => registers}/vlv_pipe_b.txt (100%)
 rename tools/{quick_dump => registers}/vlv_power.txt (100%)

diff --git a/README b/README
index ac9f8ad..6235655 100644
--- a/README
+++ b/README
@@ -102,17 +102,6 @@ tools/
 	These tools generally must be run as root, safe for the ones that just
 	decode dumps.
 
-tools/quick_dump
-	Quick dumper is a python tool built with SWIG bindings to
-	important libraries exported by the rest of the tool suite. The tool
-	itself is quite straight forward, and should also be a useful example
-	for others wishing to write python based i915 tools.
-
-	Note to package maintainers: It is not recommended to package
-	this directory, as the tool is not yet designed for wide usage. If the
-	package is installed via "make install" the users will have to set
-	their python library path appropriately. Use --disable-dumper
-
 debugger/
 	This tool is to be used to do shader debugging. It acts like a
 	debug server accepting connections from debug clients such as
@@ -148,9 +137,7 @@ everything (package names may vary):
 	libcairo2-dev
 	libdrm-dev
 	libpciaccess-dev
-	libpython3.3-dev
 	libunwind-dev
 	python-docutils
-	swig2.0
 	x11proto-dri2-dev
 	xutils-dev
diff --git a/configure.ac b/configure.ac
index 19f6fa4..e4515f3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -131,26 +131,6 @@ if test "x$NOUVEAU" = xyes; then
 fi
 AM_CONDITIONAL(HAVE_NOUVEAU, [test "x$NOUVEAU" = xyes])
 
-#Configure options for the python quick-dumper
-AC_ARG_ENABLE(dumper,
-	      AS_HELP_STRING([--disable-dumper],
-			     [Disable the python based register dumper (default: enabled)]),
-			     [DUMPER=$enableval], [DUMPER=auto])
-if test "x$DUMPER" = xauto; then
-	# AX_PYTHON_DEVEL/AX_SWIG_PYTHON are not super friendly and don't
-	# easily allow us to introspect the result of their checks. So if we
-	# find SWING on the system, that's enough to try compiling the dumper.
-	AX_PKG_SWIG(2.0.0, [DUMPER=yes], [DUMPER=no])
-fi
-if test "x$DUMPER" = xyes; then
-	AC_DEFINE(HAVE_DUMPER, 1, [Have dumper support])
-	# SWIG configuration
-	AX_PKG_SWIG(2.0.0, [], [ AC_MSG_ERROR([SWIG 2.0.0 or higher is required to build..]) ])
-	AX_PYTHON_DEVEL([>= '3.0'])
-	AX_SWIG_PYTHON
-fi
-AM_CONDITIONAL(HAVE_DUMPER, [test "x$DUMPER" = xyes])
-
 # Define a configure option for the shader debugger
 AC_ARG_ENABLE(shader-debugger, AS_HELP_STRING([--enable-shader-debugger],
 	      [Enable shader debugging support [autodetected]]),
@@ -237,9 +217,9 @@ AC_DEFINE_UNQUOTED(TARGET_CPU_PLATFORM, ["$host_cpu"], [Target platform])
 
 files="broadwell cherryview haswell ivybridge sandybridge valleyview skylake"
 for file in $files; do
-	QUICK_DUMP_EXTRA_DIST="$QUICK_DUMP_EXTRA_DIST $file `tr '\n' ' ' < $srcdir/tools/quick_dump/$file`"
+	REGISTERS_EXTRA_DIST="$REGISTERS_EXTRA_DIST $file `tr '\n' ' ' < $srcdir/tools/registers/$file`"
 done
-AC_SUBST(QUICK_DUMP_EXTRA_DIST)
+AC_SUBST(REGISTERS_EXTRA_DIST)
 
 AC_CONFIG_FILES([
 		 Makefile
@@ -255,8 +235,8 @@ AC_CONFIG_FILES([
 		 scripts/Makefile
 		 tests/Makefile
 		 tools/Makefile
-		 tools/quick_dump/Makefile
 		 tools/null_state_gen/Makefile
+		 tools/registers/Makefile
 		 debugger/Makefile
 		 debugger/system_routine/Makefile
 		 assembler/Makefile
@@ -284,7 +264,6 @@ echo ""
 echo " • Tools:"
 echo "       Assembler          : ${enable_assembler}"
 echo "       Debugger           : ${enable_debugger}"
-echo "       Python dumper      : ${DUMPER}"
 echo "       Overlay            : X: ${enable_overlay_xlib}, Xv: ${enable_overlay_xvlib}"
 echo ""
 echo " • API-Documentation      : ${enable_gtk_doc}"
diff --git a/man/intel_reg.rst b/man/intel_reg.rst
index c6e2fea..d90c307 100644
--- a/man/intel_reg.rst
+++ b/man/intel_reg.rst
@@ -197,8 +197,7 @@ variable, the directory is scanned for a spec file in this order:
 Register Spec File Format
 -------------------------
 
-The register spec format is compatible with the quick_dump.py format, briefly
-described below:
+The register spec format is briefly described below:
 
 * Empty lines and lines beginning with "#", ";", or "//" are ignored.
 
diff --git a/tools/Makefile.am b/tools/Makefile.am
index 0aeb173..95ede58 100644
--- a/tools/Makefile.am
+++ b/tools/Makefile.am
@@ -1,10 +1,6 @@
 include Makefile.sources
 
-SUBDIRS = null_state_gen
-
-if HAVE_DUMPER
-SUBDIRS += quick_dump
-endif
+SUBDIRS = null_state_gen registers
 
 AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/lib
 AM_CFLAGS = $(DEBUG_CFLAGS) $(DRM_CFLAGS) $(PCIACCESS_CFLAGS) $(CWARNFLAGS) $(CAIRO_CFLAGS) $(LIBUNWIND_CFLAGS)
diff --git a/tools/quick_dump/.gitignore b/tools/quick_dump/.gitignore
deleted file mode 100644
index 918a66b..0000000
--- a/tools/quick_dump/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-chipset_wrap_python.c
-chipset.py
diff --git a/tools/quick_dump/Makefile.am b/tools/quick_dump/Makefile.am
deleted file mode 100644
index 0643a81..0000000
--- a/tools/quick_dump/Makefile.am
+++ /dev/null
@@ -1,34 +0,0 @@
-AM_CPPFLAGS = -I$(top_srcdir)/lib -I$(top_builddir)/lib $(PYTHON_CPPFLAGS) $(DRM_CFLAGS) $(CAIRO_CFLAGS) -I$(top_srcdir)
-
-dist_bin_SCRIPTS = quick_dump.py reg_access.py
-bin_SCRIPTS = chipset.py
-
-lib_LTLIBRARIES = I915ChipsetPython.la
-I915ChipsetPython_la_LDFLAGS = -module -avoid-version $(PYTHON_LDFLAGS) \
-	-Wl,--no-undefined
-I915ChipsetPython_la_SOURCES = chipset_macro_wrap.c
-nodist_I915ChipsetPython_la_SOURCES = chipset_wrap_python.c
-I915ChipsetPython_la_LIBADD =			\
-	$(top_builddir)/lib/libintel_tools.la	\
-	$(PCIACCESS_LIBS)			\
-	$(DRM_LIBS)				\
-	$(CAIRO_LIBS)				\
-	$(LIBUNWIND_LIBS)			\
-	-lrt					\
-	-lm					\
-	$(NULL)
-
-chipset.py: chipset_wrap_python.c
-
-chipset_wrap_python.c: chipset.i
-	$(AM_V_GEN)$(SWIG) $(AX_SWIG_PYTHON_OPT) -I/usr/include -I$(top_srcdir)/lib -o $@ $<
-
-all-local: I915ChipsetPython.la
-	$(LN_S) -f .libs/I915ChipsetPython.so _chipset.so
-
-CLEANFILES = chipset_wrap_python.c chipset.py _chipset.so
-EXTRA_DIST = $(QUICK_DUMP_EXTRA_DIST) \
-	      base_interrupt.txt base_other.txt base_power.txt base_rings.txt \
-	      quick_dump.py \
-	      reg_access.py \
-	      chipset.i
diff --git a/tools/quick_dump/chipset.i b/tools/quick_dump/chipset.i
deleted file mode 100644
index 90db40e..0000000
--- a/tools/quick_dump/chipset.i
+++ /dev/null
@@ -1,41 +0,0 @@
-%module chipset
-%include "stdint.i"
-%{
-#include <pciaccess.h>
-#include <stdint.h>
-#include "intel_chipset.h"
-#include "intel_io.h"
-extern int is_sandybridge(unsigned short pciid);
-extern int is_ivybridge(unsigned short pciid);
-extern int is_valleyview(unsigned short pciid);
-extern int is_cherryview(unsigned short pciid);
-extern int is_haswell(unsigned short pciid);
-extern int is_broadwell(unsigned short pciid);
-extern int is_skylake(unsigned short pciid);
-extern struct pci_device *intel_get_pci_device();
-extern int intel_register_access_init(struct pci_device *pci_dev, int safe);
-extern uint32_t intel_register_read(uint32_t reg);
-extern void intel_register_write(uint32_t reg, uint32_t val);
-extern void intel_register_access_fini();
-extern int intel_register_access_needs_fakewake();
-extern unsigned short pcidev_to_devid(struct pci_device *pci_dev);
-extern uint32_t intel_dpio_reg_read(uint32_t reg, int phy);
-extern uint32_t intel_flisdsi_reg_read(uint32_t reg);
-%}
-
-extern int is_sandybridge(unsigned short pciid);
-extern int is_ivybridge(unsigned short pciid);
-extern int is_valleyview(unsigned short pciid);
-extern int is_cherryview(unsigned short pciid);
-extern int is_haswell(unsigned short pciid);
-extern int is_broadwell(unsigned short pciid);
-extern int is_skylake(unsigned short pciid);
-extern struct pci_device *intel_get_pci_device();
-extern int intel_register_access_init(struct pci_device *pci_dev, int safe);
-extern uint32_t intel_register_read(uint32_t reg);
-extern void intel_register_write(uint32_t reg, uint32_t val);
-extern void intel_register_access_fini();
-extern int intel_register_access_needs_fakewake();
-extern unsigned short pcidev_to_devid(struct pci_device *pci_dev);
-extern uint32_t intel_dpio_reg_read(uint32_t reg, int phy);
-extern uint32_t intel_flisdsi_reg_read(uint32_t reg);
diff --git a/tools/quick_dump/chipset_macro_wrap.c b/tools/quick_dump/chipset_macro_wrap.c
deleted file mode 100644
index fa568d6..0000000
--- a/tools/quick_dump/chipset_macro_wrap.c
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Copyright © 2014 Intel Corporation
- *
- * Permission is hereby granted, free of charge, to any person obtaining a
- * copy of this software and associated documentation files (the "Software"),
- * to deal in the Software without restriction, including without limitation
- * the rights to use, copy, modify, merge, publish, distribute, sublicense,
- * and/or sell copies of the Software, and to permit persons to whom the
- * Software is furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice (including the next
- * paragraph) shall be included in all copies or substantial portions of the
- * Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
- * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- */
-
-#include <stdbool.h>
-#include <stdlib.h>
-#include <pciaccess.h>
-#include "intel_chipset.h"
-
-int is_sandybridge(unsigned short pciid)
-{
-	return IS_GEN6(pciid);
-}
-
-int is_ivybridge(unsigned short pciid)
-{
-	return IS_IVYBRIDGE(pciid);
-}
-
-int is_valleyview(unsigned short pciid)
-{
-	return IS_VALLEYVIEW(pciid);
-}
-
-int is_cherryview(unsigned short pciid)
-{
-	return IS_CHERRYVIEW(pciid);
-}
-
-int is_haswell(unsigned short pciid)
-{
-	return IS_HASWELL(pciid);
-}
-
-int is_broadwell(unsigned short pciid)
-{
-	return IS_BROADWELL(pciid);
-}
-
-int is_skylake(unsigned short pciid)
-{
-	return IS_SKYLAKE(pciid);
-}
-
-/* Simple helper because I couldn't make this work in the script */
-unsigned short pcidev_to_devid(struct pci_device *pdev)
-{
-	return pdev->device_id;
-}
diff --git a/tools/quick_dump/quick_dump.py b/tools/quick_dump/quick_dump.py
deleted file mode 100755
index 702a9d5..0000000
--- a/tools/quick_dump/quick_dump.py
+++ /dev/null
@@ -1,117 +0,0 @@
-#!/usr/bin/env python3
-
-# register definition format:
-# ('register name', 'register offset', 'register type')
-#
-# register types:
-#  '' - normal register
-#  'DPIO' - DPIO register
-#
-# vim: tabstop=8 expandtab shiftwidth=4 softtabstop=4
-
-import argparse
-import os
-import sys
-import ast
-import subprocess
-import chipset
-import reg_access as reg
-
-# Ignore lines which are considered comments
-def ignore_line(line):
-    if not line.strip():
-        return True
-    if len(line) > 1:
-        if line[1] == '/' and line[0] == '/':
-            return True
-    if len(line) > 0:
-        if line[0] == '#' or line[0] == ';':
-            return True
-    return False
-
-def parse_file(file):
-    print('{0:^10s} | {1:^33s} | {2:^10s}'. format('offset', file.name, 'value'))
-    print('-' * 59)
-    for line in file:
-        if ignore_line(line):
-            continue
-        register = ast.literal_eval(line)
-        intreg = int(register[1], 16)
-        if register[2] == 'FLISDSI':
-            val = reg.flisdsi_read(intreg)
-        elif register[2] == 'DPIO':
-            val = reg.dpio_read(intreg, 0)
-        elif register[2] == 'DPIO2':
-            val = reg.dpio_read(intreg, 1)
-        else:
-            if register[2] != '':
-                intreg = intreg + int(register[2], 16)
-            val = reg.read(intreg)
-        print('{0:#010x} | {1:<33} | {2:#010x}'.format(intreg, register[0], val))
-    print('')
-
-def walk_base_files():
-    for root, dirs, files in os.walk('.'):
-        for name in files:
-            if name.startswith(("base_")):
-                file = open(name.rstrip(), 'r')
-                parse_file(file)
-
-def autodetect_chipset():
-    pci_dev = chipset.intel_get_pci_device()
-    devid = chipset.pcidev_to_devid(pci_dev)
-    if chipset.is_sandybridge(devid):
-        return open('sandybridge', 'r')
-    elif chipset.is_ivybridge(devid):
-        return open('ivybridge', 'r')
-    elif chipset.is_cherryview(devid):
-        return open('cherryview', 'r')
-    elif chipset.is_valleyview(devid):
-        return open('valleyview', 'r')
-    elif chipset.is_haswell(devid):
-        return open('haswell', 'r')
-    elif chipset.is_broadwell(devid):
-        return open('broadwell', 'r')
-    elif chipset.is_skylake(devid):
-        return open('skylake', 'r')
-    else:
-        print("Autodetect of devid " + hex(devid) + " failed")
-        return None
-
-if __name__ == "__main__":
-    parser = argparse.ArgumentParser(description='Dumb register dumper.')
-    parser.add_argument('-b', '--baseless',
-            action='store_true', default=False,
-            help='baseless mode, ignore files starting with base_')
-    parser.add_argument('-f', '--file',
-            type=argparse.FileType('r'), default=None)
-    parser.add_argument('profile', nargs='?',
-            type=argparse.FileType('r'), default=None)
-
-    args = parser.parse_args()
-
-    if reg.init() == False:
-        print("Register initialization failed")
-        sys.exit()
-
-    # Put us where the script is
-    os.chdir(os.path.dirname(sys.argv[0]))
-
-    # specifying a file trumps all other things
-    if args.file != None:
-        parse_file(args.file)
-        sys.exit()
-
-    #parse anything named base_ these are assumed to apply for all gens.
-    if args.baseless == False:
-        walk_base_files()
-
-    if args.profile == None:
-        args.profile = autodetect_chipset()
-
-    if args.profile == None:
-        sys.exit()
-
-    for extra in args.profile:
-        extra_file = open(extra.rstrip(), 'r')
-        parse_file(extra_file)
diff --git a/tools/quick_dump/reg_access.py b/tools/quick_dump/reg_access.py
deleted file mode 100755
index 6a93f63..0000000
--- a/tools/quick_dump/reg_access.py
+++ /dev/null
@@ -1,62 +0,0 @@
-#!/usr/bin/env python3
-# vim: tabstop=8 expandtab shiftwidth=4 softtabstop=4
-import chipset
-
-def read(reg):
-    val = chipset.intel_register_read(reg)
-    return val
-
-def write(reg, val):
-    chipset.intel_register_write(reg, val)
-
-def gen6_forcewake_get():
-    write(0xa18c, 0x1)
-    read(0xa180)
-
-def mt_forcewake_get():
-    write(0xa188, 0x10001)
-    read(0xa180)
-
-def vlv_forcewake_get():
-    write(0x1300b0, 0x10001)
-    read(0x1300b4)
-
-# don't be clever, just try all possibilities
-def get_wake():
-    gen6_forcewake_get()
-    mt_forcewake_get()
-    vlv_forcewake_get()
-
-def dpio_read(reg, phy):
-    phy = int(phy)
-
-    val = chipset.intel_dpio_reg_read(reg, phy)
-    return val
-
-def flisdsi_read(reg):
-    val = chipset.intel_flisdsi_reg_read(reg)
-    return val
-
-
-def init():
-    pci_dev = chipset.intel_get_pci_device()
-    ret = chipset.intel_register_access_init(pci_dev, 0)
-    if ret != 0:
-        print("Register access init failed");
-        return False
-
-    if chipset.intel_register_access_needs_fakewake():
-        print("Forcing forcewake. Don't expect your system to work after this.")
-        get_wake()
-
-    return True
-
-if __name__ == "__main__":
-    import sys
-
-    if init() == False:
-        sys.exit()
-
-    reg = sys.argv[1]
-    print(hex(read(int(reg,16))))
-    chipset.intel_register_access_fini()
diff --git a/tools/registers/Makefile.am b/tools/registers/Makefile.am
new file mode 100644
index 0000000..4e1e3c2
--- /dev/null
+++ b/tools/registers/Makefile.am
@@ -0,0 +1 @@
+EXTRA_DIST = ${REGISTERS_EXTRA_DIST}
diff --git a/tools/quick_dump/audio_config_haswell_plus.txt b/tools/registers/audio_config_haswell_plus.txt
similarity index 100%
rename from tools/quick_dump/audio_config_haswell_plus.txt
rename to tools/registers/audio_config_haswell_plus.txt
diff --git a/tools/quick_dump/audio_debug_haswell_plus.txt b/tools/registers/audio_debug_haswell_plus.txt
similarity index 100%
rename from tools/quick_dump/audio_debug_haswell_plus.txt
rename to tools/registers/audio_debug_haswell_plus.txt
diff --git a/tools/quick_dump/base_interrupt.txt b/tools/registers/base_interrupt.txt
similarity index 100%
rename from tools/quick_dump/base_interrupt.txt
rename to tools/registers/base_interrupt.txt
diff --git a/tools/quick_dump/base_other.txt b/tools/registers/base_other.txt
similarity index 100%
rename from tools/quick_dump/base_other.txt
rename to tools/registers/base_other.txt
diff --git a/tools/quick_dump/base_power.txt b/tools/registers/base_power.txt
similarity index 100%
rename from tools/quick_dump/base_power.txt
rename to tools/registers/base_power.txt
diff --git a/tools/quick_dump/base_rings.txt b/tools/registers/base_rings.txt
similarity index 100%
rename from tools/quick_dump/base_rings.txt
rename to tools/registers/base_rings.txt
diff --git a/tools/quick_dump/broadwell b/tools/registers/broadwell
similarity index 100%
rename from tools/quick_dump/broadwell
rename to tools/registers/broadwell
diff --git a/tools/quick_dump/cherryview b/tools/registers/cherryview
similarity index 100%
rename from tools/quick_dump/cherryview
rename to tools/registers/cherryview
diff --git a/tools/quick_dump/chv_display_base.txt b/tools/registers/chv_display_base.txt
similarity index 100%
rename from tools/quick_dump/chv_display_base.txt
rename to tools/registers/chv_display_base.txt
diff --git a/tools/quick_dump/chv_dpio_phy_x1.txt b/tools/registers/chv_dpio_phy_x1.txt
similarity index 100%
rename from tools/quick_dump/chv_dpio_phy_x1.txt
rename to tools/registers/chv_dpio_phy_x1.txt
diff --git a/tools/quick_dump/chv_dpio_phy_x2.txt b/tools/registers/chv_dpio_phy_x2.txt
similarity index 100%
rename from tools/quick_dump/chv_dpio_phy_x2.txt
rename to tools/registers/chv_dpio_phy_x2.txt
diff --git a/tools/quick_dump/chv_pipe_c.txt b/tools/registers/chv_pipe_c.txt
similarity index 100%
rename from tools/quick_dump/chv_pipe_c.txt
rename to tools/registers/chv_pipe_c.txt
diff --git a/tools/quick_dump/common_display.txt b/tools/registers/common_display.txt
similarity index 100%
rename from tools/quick_dump/common_display.txt
rename to tools/registers/common_display.txt
diff --git a/tools/quick_dump/gen6_other.txt b/tools/registers/gen6_other.txt
similarity index 100%
rename from tools/quick_dump/gen6_other.txt
rename to tools/registers/gen6_other.txt
diff --git a/tools/quick_dump/gen7_other.txt b/tools/registers/gen7_other.txt
similarity index 100%
rename from tools/quick_dump/gen7_other.txt
rename to tools/registers/gen7_other.txt
diff --git a/tools/quick_dump/gen8_interrupt.txt b/tools/registers/gen8_interrupt.txt
similarity index 100%
rename from tools/quick_dump/gen8_interrupt.txt
rename to tools/registers/gen8_interrupt.txt
diff --git a/tools/quick_dump/gen8_other.txt b/tools/registers/gen8_other.txt
similarity index 100%
rename from tools/quick_dump/gen8_other.txt
rename to tools/registers/gen8_other.txt
diff --git a/tools/quick_dump/haswell b/tools/registers/haswell
similarity index 100%
rename from tools/quick_dump/haswell
rename to tools/registers/haswell
diff --git a/tools/quick_dump/haswell_other.txt b/tools/registers/haswell_other.txt
similarity index 100%
rename from tools/quick_dump/haswell_other.txt
rename to tools/registers/haswell_other.txt
diff --git a/tools/quick_dump/ivybridge b/tools/registers/ivybridge
similarity index 100%
rename from tools/quick_dump/ivybridge
rename to tools/registers/ivybridge
diff --git a/tools/quick_dump/sandybridge b/tools/registers/sandybridge
similarity index 100%
rename from tools/quick_dump/sandybridge
rename to tools/registers/sandybridge
diff --git a/tools/quick_dump/skl_display.txt b/tools/registers/skl_display.txt
similarity index 100%
rename from tools/quick_dump/skl_display.txt
rename to tools/registers/skl_display.txt
diff --git a/tools/quick_dump/skl_powerwells.txt b/tools/registers/skl_powerwells.txt
similarity index 100%
rename from tools/quick_dump/skl_powerwells.txt
rename to tools/registers/skl_powerwells.txt
diff --git a/tools/quick_dump/skylake b/tools/registers/skylake
similarity index 100%
rename from tools/quick_dump/skylake
rename to tools/registers/skylake
diff --git a/tools/quick_dump/valleyview b/tools/registers/valleyview
similarity index 100%
rename from tools/quick_dump/valleyview
rename to tools/registers/valleyview
diff --git a/tools/quick_dump/vlv_display_base.txt b/tools/registers/vlv_display_base.txt
similarity index 100%
rename from tools/quick_dump/vlv_display_base.txt
rename to tools/registers/vlv_display_base.txt
diff --git a/tools/quick_dump/vlv_dpio_phy.txt b/tools/registers/vlv_dpio_phy.txt
similarity index 100%
rename from tools/quick_dump/vlv_dpio_phy.txt
rename to tools/registers/vlv_dpio_phy.txt
diff --git a/tools/quick_dump/vlv_dsi.txt b/tools/registers/vlv_dsi.txt
similarity index 100%
rename from tools/quick_dump/vlv_dsi.txt
rename to tools/registers/vlv_dsi.txt
diff --git a/tools/quick_dump/vlv_flisdsi.txt b/tools/registers/vlv_flisdsi.txt
similarity index 100%
rename from tools/quick_dump/vlv_flisdsi.txt
rename to tools/registers/vlv_flisdsi.txt
diff --git a/tools/quick_dump/vlv_pipe_a.txt b/tools/registers/vlv_pipe_a.txt
similarity index 100%
rename from tools/quick_dump/vlv_pipe_a.txt
rename to tools/registers/vlv_pipe_a.txt
diff --git a/tools/quick_dump/vlv_pipe_b.txt b/tools/registers/vlv_pipe_b.txt
similarity index 100%
rename from tools/quick_dump/vlv_pipe_b.txt
rename to tools/registers/vlv_pipe_b.txt
diff --git a/tools/quick_dump/vlv_power.txt b/tools/registers/vlv_power.txt
similarity index 100%
rename from tools/quick_dump/vlv_power.txt
rename to tools/registers/vlv_power.txt
-- 
1.9.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH i-g-t] tools: remove quick_dump
  2015-09-04 10:22 [PATCH i-g-t] tools: remove quick_dump Thomas Wood
@ 2015-09-04 11:38 ` Ville Syrjälä
  2015-09-04 11:48   ` Ville Syrjälä
  2015-09-04 11:55   ` Jani Nikula
  2015-09-04 11:53 ` Jani Nikula
  1 sibling, 2 replies; 8+ messages in thread
From: Ville Syrjälä @ 2015-09-04 11:38 UTC (permalink / raw)
  To: Thomas Wood; +Cc: intel-gfx

On Fri, Sep 04, 2015 at 11:22:28AM +0100, Thomas Wood wrote:
> Remove quick_dump as it has been replaced by the intel_reg tool and move
> the register definition files to tools/registers.
> 
> Signed-off-by: Thomas Wood <thomas.wood@intel.com>

NAK

It's the only tool that works on VLV/CHV reasonably.

> ---
>  README                                             |  13 ---
>  configure.ac                                       |  27 +----
>  man/intel_reg.rst                                  |   3 +-
>  tools/Makefile.am                                  |   6 +-
>  tools/quick_dump/.gitignore                        |   2 -
>  tools/quick_dump/Makefile.am                       |  34 ------
>  tools/quick_dump/chipset.i                         |  41 --------
>  tools/quick_dump/chipset_macro_wrap.c              |  68 ------------
>  tools/quick_dump/quick_dump.py                     | 117 ---------------------
>  tools/quick_dump/reg_access.py                     |  62 -----------
>  tools/registers/Makefile.am                        |   1 +
>  .../audio_config_haswell_plus.txt                  |   0
>  .../audio_debug_haswell_plus.txt                   |   0
>  tools/{quick_dump => registers}/base_interrupt.txt |   0
>  tools/{quick_dump => registers}/base_other.txt     |   0
>  tools/{quick_dump => registers}/base_power.txt     |   0
>  tools/{quick_dump => registers}/base_rings.txt     |   0
>  tools/{quick_dump => registers}/broadwell          |   0
>  tools/{quick_dump => registers}/cherryview         |   0
>  .../{quick_dump => registers}/chv_display_base.txt |   0
>  .../{quick_dump => registers}/chv_dpio_phy_x1.txt  |   0
>  .../{quick_dump => registers}/chv_dpio_phy_x2.txt  |   0
>  tools/{quick_dump => registers}/chv_pipe_c.txt     |   0
>  tools/{quick_dump => registers}/common_display.txt |   0
>  tools/{quick_dump => registers}/gen6_other.txt     |   0
>  tools/{quick_dump => registers}/gen7_other.txt     |   0
>  tools/{quick_dump => registers}/gen8_interrupt.txt |   0
>  tools/{quick_dump => registers}/gen8_other.txt     |   0
>  tools/{quick_dump => registers}/haswell            |   0
>  tools/{quick_dump => registers}/haswell_other.txt  |   0
>  tools/{quick_dump => registers}/ivybridge          |   0
>  tools/{quick_dump => registers}/sandybridge        |   0
>  tools/{quick_dump => registers}/skl_display.txt    |   0
>  tools/{quick_dump => registers}/skl_powerwells.txt |   0
>  tools/{quick_dump => registers}/skylake            |   0
>  tools/{quick_dump => registers}/valleyview         |   0
>  .../{quick_dump => registers}/vlv_display_base.txt |   0
>  tools/{quick_dump => registers}/vlv_dpio_phy.txt   |   0
>  tools/{quick_dump => registers}/vlv_dsi.txt        |   0
>  tools/{quick_dump => registers}/vlv_flisdsi.txt    |   0
>  tools/{quick_dump => registers}/vlv_pipe_a.txt     |   0
>  tools/{quick_dump => registers}/vlv_pipe_b.txt     |   0
>  tools/{quick_dump => registers}/vlv_power.txt      |   0
>  43 files changed, 6 insertions(+), 368 deletions(-)
>  delete mode 100644 tools/quick_dump/.gitignore
>  delete mode 100644 tools/quick_dump/Makefile.am
>  delete mode 100644 tools/quick_dump/chipset.i
>  delete mode 100644 tools/quick_dump/chipset_macro_wrap.c
>  delete mode 100755 tools/quick_dump/quick_dump.py
>  delete mode 100755 tools/quick_dump/reg_access.py
>  create mode 100644 tools/registers/Makefile.am
>  rename tools/{quick_dump => registers}/audio_config_haswell_plus.txt (100%)
>  rename tools/{quick_dump => registers}/audio_debug_haswell_plus.txt (100%)
>  rename tools/{quick_dump => registers}/base_interrupt.txt (100%)
>  rename tools/{quick_dump => registers}/base_other.txt (100%)
>  rename tools/{quick_dump => registers}/base_power.txt (100%)
>  rename tools/{quick_dump => registers}/base_rings.txt (100%)
>  rename tools/{quick_dump => registers}/broadwell (100%)
>  rename tools/{quick_dump => registers}/cherryview (100%)
>  rename tools/{quick_dump => registers}/chv_display_base.txt (100%)
>  rename tools/{quick_dump => registers}/chv_dpio_phy_x1.txt (100%)
>  rename tools/{quick_dump => registers}/chv_dpio_phy_x2.txt (100%)
>  rename tools/{quick_dump => registers}/chv_pipe_c.txt (100%)
>  rename tools/{quick_dump => registers}/common_display.txt (100%)
>  rename tools/{quick_dump => registers}/gen6_other.txt (100%)
>  rename tools/{quick_dump => registers}/gen7_other.txt (100%)
>  rename tools/{quick_dump => registers}/gen8_interrupt.txt (100%)
>  rename tools/{quick_dump => registers}/gen8_other.txt (100%)
>  rename tools/{quick_dump => registers}/haswell (100%)
>  rename tools/{quick_dump => registers}/haswell_other.txt (100%)
>  rename tools/{quick_dump => registers}/ivybridge (100%)
>  rename tools/{quick_dump => registers}/sandybridge (100%)
>  rename tools/{quick_dump => registers}/skl_display.txt (100%)
>  rename tools/{quick_dump => registers}/skl_powerwells.txt (100%)
>  rename tools/{quick_dump => registers}/skylake (100%)
>  rename tools/{quick_dump => registers}/valleyview (100%)
>  rename tools/{quick_dump => registers}/vlv_display_base.txt (100%)
>  rename tools/{quick_dump => registers}/vlv_dpio_phy.txt (100%)
>  rename tools/{quick_dump => registers}/vlv_dsi.txt (100%)
>  rename tools/{quick_dump => registers}/vlv_flisdsi.txt (100%)
>  rename tools/{quick_dump => registers}/vlv_pipe_a.txt (100%)
>  rename tools/{quick_dump => registers}/vlv_pipe_b.txt (100%)
>  rename tools/{quick_dump => registers}/vlv_power.txt (100%)
> 
> diff --git a/README b/README
> index ac9f8ad..6235655 100644
> --- a/README
> +++ b/README
> @@ -102,17 +102,6 @@ tools/
>  	These tools generally must be run as root, safe for the ones that just
>  	decode dumps.
>  
> -tools/quick_dump
> -	Quick dumper is a python tool built with SWIG bindings to
> -	important libraries exported by the rest of the tool suite. The tool
> -	itself is quite straight forward, and should also be a useful example
> -	for others wishing to write python based i915 tools.
> -
> -	Note to package maintainers: It is not recommended to package
> -	this directory, as the tool is not yet designed for wide usage. If the
> -	package is installed via "make install" the users will have to set
> -	their python library path appropriately. Use --disable-dumper
> -
>  debugger/
>  	This tool is to be used to do shader debugging. It acts like a
>  	debug server accepting connections from debug clients such as
> @@ -148,9 +137,7 @@ everything (package names may vary):
>  	libcairo2-dev
>  	libdrm-dev
>  	libpciaccess-dev
> -	libpython3.3-dev
>  	libunwind-dev
>  	python-docutils
> -	swig2.0
>  	x11proto-dri2-dev
>  	xutils-dev
> diff --git a/configure.ac b/configure.ac
> index 19f6fa4..e4515f3 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -131,26 +131,6 @@ if test "x$NOUVEAU" = xyes; then
>  fi
>  AM_CONDITIONAL(HAVE_NOUVEAU, [test "x$NOUVEAU" = xyes])
>  
> -#Configure options for the python quick-dumper
> -AC_ARG_ENABLE(dumper,
> -	      AS_HELP_STRING([--disable-dumper],
> -			     [Disable the python based register dumper (default: enabled)]),
> -			     [DUMPER=$enableval], [DUMPER=auto])
> -if test "x$DUMPER" = xauto; then
> -	# AX_PYTHON_DEVEL/AX_SWIG_PYTHON are not super friendly and don't
> -	# easily allow us to introspect the result of their checks. So if we
> -	# find SWING on the system, that's enough to try compiling the dumper.
> -	AX_PKG_SWIG(2.0.0, [DUMPER=yes], [DUMPER=no])
> -fi
> -if test "x$DUMPER" = xyes; then
> -	AC_DEFINE(HAVE_DUMPER, 1, [Have dumper support])
> -	# SWIG configuration
> -	AX_PKG_SWIG(2.0.0, [], [ AC_MSG_ERROR([SWIG 2.0.0 or higher is required to build..]) ])
> -	AX_PYTHON_DEVEL([>= '3.0'])
> -	AX_SWIG_PYTHON
> -fi
> -AM_CONDITIONAL(HAVE_DUMPER, [test "x$DUMPER" = xyes])
> -
>  # Define a configure option for the shader debugger
>  AC_ARG_ENABLE(shader-debugger, AS_HELP_STRING([--enable-shader-debugger],
>  	      [Enable shader debugging support [autodetected]]),
> @@ -237,9 +217,9 @@ AC_DEFINE_UNQUOTED(TARGET_CPU_PLATFORM, ["$host_cpu"], [Target platform])
>  
>  files="broadwell cherryview haswell ivybridge sandybridge valleyview skylake"
>  for file in $files; do
> -	QUICK_DUMP_EXTRA_DIST="$QUICK_DUMP_EXTRA_DIST $file `tr '\n' ' ' < $srcdir/tools/quick_dump/$file`"
> +	REGISTERS_EXTRA_DIST="$REGISTERS_EXTRA_DIST $file `tr '\n' ' ' < $srcdir/tools/registers/$file`"
>  done
> -AC_SUBST(QUICK_DUMP_EXTRA_DIST)
> +AC_SUBST(REGISTERS_EXTRA_DIST)
>  
>  AC_CONFIG_FILES([
>  		 Makefile
> @@ -255,8 +235,8 @@ AC_CONFIG_FILES([
>  		 scripts/Makefile
>  		 tests/Makefile
>  		 tools/Makefile
> -		 tools/quick_dump/Makefile
>  		 tools/null_state_gen/Makefile
> +		 tools/registers/Makefile
>  		 debugger/Makefile
>  		 debugger/system_routine/Makefile
>  		 assembler/Makefile
> @@ -284,7 +264,6 @@ echo ""
>  echo " • Tools:"
>  echo "       Assembler          : ${enable_assembler}"
>  echo "       Debugger           : ${enable_debugger}"
> -echo "       Python dumper      : ${DUMPER}"
>  echo "       Overlay            : X: ${enable_overlay_xlib}, Xv: ${enable_overlay_xvlib}"
>  echo ""
>  echo " • API-Documentation      : ${enable_gtk_doc}"
> diff --git a/man/intel_reg.rst b/man/intel_reg.rst
> index c6e2fea..d90c307 100644
> --- a/man/intel_reg.rst
> +++ b/man/intel_reg.rst
> @@ -197,8 +197,7 @@ variable, the directory is scanned for a spec file in this order:
>  Register Spec File Format
>  -------------------------
>  
> -The register spec format is compatible with the quick_dump.py format, briefly
> -described below:
> +The register spec format is briefly described below:
>  
>  * Empty lines and lines beginning with "#", ";", or "//" are ignored.
>  
> diff --git a/tools/Makefile.am b/tools/Makefile.am
> index 0aeb173..95ede58 100644
> --- a/tools/Makefile.am
> +++ b/tools/Makefile.am
> @@ -1,10 +1,6 @@
>  include Makefile.sources
>  
> -SUBDIRS = null_state_gen
> -
> -if HAVE_DUMPER
> -SUBDIRS += quick_dump
> -endif
> +SUBDIRS = null_state_gen registers
>  
>  AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/lib
>  AM_CFLAGS = $(DEBUG_CFLAGS) $(DRM_CFLAGS) $(PCIACCESS_CFLAGS) $(CWARNFLAGS) $(CAIRO_CFLAGS) $(LIBUNWIND_CFLAGS)
> diff --git a/tools/quick_dump/.gitignore b/tools/quick_dump/.gitignore
> deleted file mode 100644
> index 918a66b..0000000
> --- a/tools/quick_dump/.gitignore
> +++ /dev/null
> @@ -1,2 +0,0 @@
> -chipset_wrap_python.c
> -chipset.py
> diff --git a/tools/quick_dump/Makefile.am b/tools/quick_dump/Makefile.am
> deleted file mode 100644
> index 0643a81..0000000
> --- a/tools/quick_dump/Makefile.am
> +++ /dev/null
> @@ -1,34 +0,0 @@
> -AM_CPPFLAGS = -I$(top_srcdir)/lib -I$(top_builddir)/lib $(PYTHON_CPPFLAGS) $(DRM_CFLAGS) $(CAIRO_CFLAGS) -I$(top_srcdir)
> -
> -dist_bin_SCRIPTS = quick_dump.py reg_access.py
> -bin_SCRIPTS = chipset.py
> -
> -lib_LTLIBRARIES = I915ChipsetPython.la
> -I915ChipsetPython_la_LDFLAGS = -module -avoid-version $(PYTHON_LDFLAGS) \
> -	-Wl,--no-undefined
> -I915ChipsetPython_la_SOURCES = chipset_macro_wrap.c
> -nodist_I915ChipsetPython_la_SOURCES = chipset_wrap_python.c
> -I915ChipsetPython_la_LIBADD =			\
> -	$(top_builddir)/lib/libintel_tools.la	\
> -	$(PCIACCESS_LIBS)			\
> -	$(DRM_LIBS)				\
> -	$(CAIRO_LIBS)				\
> -	$(LIBUNWIND_LIBS)			\
> -	-lrt					\
> -	-lm					\
> -	$(NULL)
> -
> -chipset.py: chipset_wrap_python.c
> -
> -chipset_wrap_python.c: chipset.i
> -	$(AM_V_GEN)$(SWIG) $(AX_SWIG_PYTHON_OPT) -I/usr/include -I$(top_srcdir)/lib -o $@ $<
> -
> -all-local: I915ChipsetPython.la
> -	$(LN_S) -f .libs/I915ChipsetPython.so _chipset.so
> -
> -CLEANFILES = chipset_wrap_python.c chipset.py _chipset.so
> -EXTRA_DIST = $(QUICK_DUMP_EXTRA_DIST) \
> -	      base_interrupt.txt base_other.txt base_power.txt base_rings.txt \
> -	      quick_dump.py \
> -	      reg_access.py \
> -	      chipset.i
> diff --git a/tools/quick_dump/chipset.i b/tools/quick_dump/chipset.i
> deleted file mode 100644
> index 90db40e..0000000
> --- a/tools/quick_dump/chipset.i
> +++ /dev/null
> @@ -1,41 +0,0 @@
> -%module chipset
> -%include "stdint.i"
> -%{
> -#include <pciaccess.h>
> -#include <stdint.h>
> -#include "intel_chipset.h"
> -#include "intel_io.h"
> -extern int is_sandybridge(unsigned short pciid);
> -extern int is_ivybridge(unsigned short pciid);
> -extern int is_valleyview(unsigned short pciid);
> -extern int is_cherryview(unsigned short pciid);
> -extern int is_haswell(unsigned short pciid);
> -extern int is_broadwell(unsigned short pciid);
> -extern int is_skylake(unsigned short pciid);
> -extern struct pci_device *intel_get_pci_device();
> -extern int intel_register_access_init(struct pci_device *pci_dev, int safe);
> -extern uint32_t intel_register_read(uint32_t reg);
> -extern void intel_register_write(uint32_t reg, uint32_t val);
> -extern void intel_register_access_fini();
> -extern int intel_register_access_needs_fakewake();
> -extern unsigned short pcidev_to_devid(struct pci_device *pci_dev);
> -extern uint32_t intel_dpio_reg_read(uint32_t reg, int phy);
> -extern uint32_t intel_flisdsi_reg_read(uint32_t reg);
> -%}
> -
> -extern int is_sandybridge(unsigned short pciid);
> -extern int is_ivybridge(unsigned short pciid);
> -extern int is_valleyview(unsigned short pciid);
> -extern int is_cherryview(unsigned short pciid);
> -extern int is_haswell(unsigned short pciid);
> -extern int is_broadwell(unsigned short pciid);
> -extern int is_skylake(unsigned short pciid);
> -extern struct pci_device *intel_get_pci_device();
> -extern int intel_register_access_init(struct pci_device *pci_dev, int safe);
> -extern uint32_t intel_register_read(uint32_t reg);
> -extern void intel_register_write(uint32_t reg, uint32_t val);
> -extern void intel_register_access_fini();
> -extern int intel_register_access_needs_fakewake();
> -extern unsigned short pcidev_to_devid(struct pci_device *pci_dev);
> -extern uint32_t intel_dpio_reg_read(uint32_t reg, int phy);
> -extern uint32_t intel_flisdsi_reg_read(uint32_t reg);
> diff --git a/tools/quick_dump/chipset_macro_wrap.c b/tools/quick_dump/chipset_macro_wrap.c
> deleted file mode 100644
> index fa568d6..0000000
> --- a/tools/quick_dump/chipset_macro_wrap.c
> +++ /dev/null
> @@ -1,68 +0,0 @@
> -/*
> - * Copyright © 2014 Intel Corporation
> - *
> - * Permission is hereby granted, free of charge, to any person obtaining a
> - * copy of this software and associated documentation files (the "Software"),
> - * to deal in the Software without restriction, including without limitation
> - * the rights to use, copy, modify, merge, publish, distribute, sublicense,
> - * and/or sell copies of the Software, and to permit persons to whom the
> - * Software is furnished to do so, subject to the following conditions:
> - *
> - * The above copyright notice and this permission notice (including the next
> - * paragraph) shall be included in all copies or substantial portions of the
> - * Software.
> - *
> - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
> - * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
> - * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
> - * DEALINGS IN THE SOFTWARE.
> - */
> -
> -#include <stdbool.h>
> -#include <stdlib.h>
> -#include <pciaccess.h>
> -#include "intel_chipset.h"
> -
> -int is_sandybridge(unsigned short pciid)
> -{
> -	return IS_GEN6(pciid);
> -}
> -
> -int is_ivybridge(unsigned short pciid)
> -{
> -	return IS_IVYBRIDGE(pciid);
> -}
> -
> -int is_valleyview(unsigned short pciid)
> -{
> -	return IS_VALLEYVIEW(pciid);
> -}
> -
> -int is_cherryview(unsigned short pciid)
> -{
> -	return IS_CHERRYVIEW(pciid);
> -}
> -
> -int is_haswell(unsigned short pciid)
> -{
> -	return IS_HASWELL(pciid);
> -}
> -
> -int is_broadwell(unsigned short pciid)
> -{
> -	return IS_BROADWELL(pciid);
> -}
> -
> -int is_skylake(unsigned short pciid)
> -{
> -	return IS_SKYLAKE(pciid);
> -}
> -
> -/* Simple helper because I couldn't make this work in the script */
> -unsigned short pcidev_to_devid(struct pci_device *pdev)
> -{
> -	return pdev->device_id;
> -}
> diff --git a/tools/quick_dump/quick_dump.py b/tools/quick_dump/quick_dump.py
> deleted file mode 100755
> index 702a9d5..0000000
> --- a/tools/quick_dump/quick_dump.py
> +++ /dev/null
> @@ -1,117 +0,0 @@
> -#!/usr/bin/env python3
> -
> -# register definition format:
> -# ('register name', 'register offset', 'register type')
> -#
> -# register types:
> -#  '' - normal register
> -#  'DPIO' - DPIO register
> -#
> -# vim: tabstop=8 expandtab shiftwidth=4 softtabstop=4
> -
> -import argparse
> -import os
> -import sys
> -import ast
> -import subprocess
> -import chipset
> -import reg_access as reg
> -
> -# Ignore lines which are considered comments
> -def ignore_line(line):
> -    if not line.strip():
> -        return True
> -    if len(line) > 1:
> -        if line[1] == '/' and line[0] == '/':
> -            return True
> -    if len(line) > 0:
> -        if line[0] == '#' or line[0] == ';':
> -            return True
> -    return False
> -
> -def parse_file(file):
> -    print('{0:^10s} | {1:^33s} | {2:^10s}'. format('offset', file.name, 'value'))
> -    print('-' * 59)
> -    for line in file:
> -        if ignore_line(line):
> -            continue
> -        register = ast.literal_eval(line)
> -        intreg = int(register[1], 16)
> -        if register[2] == 'FLISDSI':
> -            val = reg.flisdsi_read(intreg)
> -        elif register[2] == 'DPIO':
> -            val = reg.dpio_read(intreg, 0)
> -        elif register[2] == 'DPIO2':
> -            val = reg.dpio_read(intreg, 1)
> -        else:
> -            if register[2] != '':
> -                intreg = intreg + int(register[2], 16)
> -            val = reg.read(intreg)
> -        print('{0:#010x} | {1:<33} | {2:#010x}'.format(intreg, register[0], val))
> -    print('')
> -
> -def walk_base_files():
> -    for root, dirs, files in os.walk('.'):
> -        for name in files:
> -            if name.startswith(("base_")):
> -                file = open(name.rstrip(), 'r')
> -                parse_file(file)
> -
> -def autodetect_chipset():
> -    pci_dev = chipset.intel_get_pci_device()
> -    devid = chipset.pcidev_to_devid(pci_dev)
> -    if chipset.is_sandybridge(devid):
> -        return open('sandybridge', 'r')
> -    elif chipset.is_ivybridge(devid):
> -        return open('ivybridge', 'r')
> -    elif chipset.is_cherryview(devid):
> -        return open('cherryview', 'r')
> -    elif chipset.is_valleyview(devid):
> -        return open('valleyview', 'r')
> -    elif chipset.is_haswell(devid):
> -        return open('haswell', 'r')
> -    elif chipset.is_broadwell(devid):
> -        return open('broadwell', 'r')
> -    elif chipset.is_skylake(devid):
> -        return open('skylake', 'r')
> -    else:
> -        print("Autodetect of devid " + hex(devid) + " failed")
> -        return None
> -
> -if __name__ == "__main__":
> -    parser = argparse.ArgumentParser(description='Dumb register dumper.')
> -    parser.add_argument('-b', '--baseless',
> -            action='store_true', default=False,
> -            help='baseless mode, ignore files starting with base_')
> -    parser.add_argument('-f', '--file',
> -            type=argparse.FileType('r'), default=None)
> -    parser.add_argument('profile', nargs='?',
> -            type=argparse.FileType('r'), default=None)
> -
> -    args = parser.parse_args()
> -
> -    if reg.init() == False:
> -        print("Register initialization failed")
> -        sys.exit()
> -
> -    # Put us where the script is
> -    os.chdir(os.path.dirname(sys.argv[0]))
> -
> -    # specifying a file trumps all other things
> -    if args.file != None:
> -        parse_file(args.file)
> -        sys.exit()
> -
> -    #parse anything named base_ these are assumed to apply for all gens.
> -    if args.baseless == False:
> -        walk_base_files()
> -
> -    if args.profile == None:
> -        args.profile = autodetect_chipset()
> -
> -    if args.profile == None:
> -        sys.exit()
> -
> -    for extra in args.profile:
> -        extra_file = open(extra.rstrip(), 'r')
> -        parse_file(extra_file)
> diff --git a/tools/quick_dump/reg_access.py b/tools/quick_dump/reg_access.py
> deleted file mode 100755
> index 6a93f63..0000000
> --- a/tools/quick_dump/reg_access.py
> +++ /dev/null
> @@ -1,62 +0,0 @@
> -#!/usr/bin/env python3
> -# vim: tabstop=8 expandtab shiftwidth=4 softtabstop=4
> -import chipset
> -
> -def read(reg):
> -    val = chipset.intel_register_read(reg)
> -    return val
> -
> -def write(reg, val):
> -    chipset.intel_register_write(reg, val)
> -
> -def gen6_forcewake_get():
> -    write(0xa18c, 0x1)
> -    read(0xa180)
> -
> -def mt_forcewake_get():
> -    write(0xa188, 0x10001)
> -    read(0xa180)
> -
> -def vlv_forcewake_get():
> -    write(0x1300b0, 0x10001)
> -    read(0x1300b4)
> -
> -# don't be clever, just try all possibilities
> -def get_wake():
> -    gen6_forcewake_get()
> -    mt_forcewake_get()
> -    vlv_forcewake_get()
> -
> -def dpio_read(reg, phy):
> -    phy = int(phy)
> -
> -    val = chipset.intel_dpio_reg_read(reg, phy)
> -    return val
> -
> -def flisdsi_read(reg):
> -    val = chipset.intel_flisdsi_reg_read(reg)
> -    return val
> -
> -
> -def init():
> -    pci_dev = chipset.intel_get_pci_device()
> -    ret = chipset.intel_register_access_init(pci_dev, 0)
> -    if ret != 0:
> -        print("Register access init failed");
> -        return False
> -
> -    if chipset.intel_register_access_needs_fakewake():
> -        print("Forcing forcewake. Don't expect your system to work after this.")
> -        get_wake()
> -
> -    return True
> -
> -if __name__ == "__main__":
> -    import sys
> -
> -    if init() == False:
> -        sys.exit()
> -
> -    reg = sys.argv[1]
> -    print(hex(read(int(reg,16))))
> -    chipset.intel_register_access_fini()
> diff --git a/tools/registers/Makefile.am b/tools/registers/Makefile.am
> new file mode 100644
> index 0000000..4e1e3c2
> --- /dev/null
> +++ b/tools/registers/Makefile.am
> @@ -0,0 +1 @@
> +EXTRA_DIST = ${REGISTERS_EXTRA_DIST}
> diff --git a/tools/quick_dump/audio_config_haswell_plus.txt b/tools/registers/audio_config_haswell_plus.txt
> similarity index 100%
> rename from tools/quick_dump/audio_config_haswell_plus.txt
> rename to tools/registers/audio_config_haswell_plus.txt
> diff --git a/tools/quick_dump/audio_debug_haswell_plus.txt b/tools/registers/audio_debug_haswell_plus.txt
> similarity index 100%
> rename from tools/quick_dump/audio_debug_haswell_plus.txt
> rename to tools/registers/audio_debug_haswell_plus.txt
> diff --git a/tools/quick_dump/base_interrupt.txt b/tools/registers/base_interrupt.txt
> similarity index 100%
> rename from tools/quick_dump/base_interrupt.txt
> rename to tools/registers/base_interrupt.txt
> diff --git a/tools/quick_dump/base_other.txt b/tools/registers/base_other.txt
> similarity index 100%
> rename from tools/quick_dump/base_other.txt
> rename to tools/registers/base_other.txt
> diff --git a/tools/quick_dump/base_power.txt b/tools/registers/base_power.txt
> similarity index 100%
> rename from tools/quick_dump/base_power.txt
> rename to tools/registers/base_power.txt
> diff --git a/tools/quick_dump/base_rings.txt b/tools/registers/base_rings.txt
> similarity index 100%
> rename from tools/quick_dump/base_rings.txt
> rename to tools/registers/base_rings.txt
> diff --git a/tools/quick_dump/broadwell b/tools/registers/broadwell
> similarity index 100%
> rename from tools/quick_dump/broadwell
> rename to tools/registers/broadwell
> diff --git a/tools/quick_dump/cherryview b/tools/registers/cherryview
> similarity index 100%
> rename from tools/quick_dump/cherryview
> rename to tools/registers/cherryview
> diff --git a/tools/quick_dump/chv_display_base.txt b/tools/registers/chv_display_base.txt
> similarity index 100%
> rename from tools/quick_dump/chv_display_base.txt
> rename to tools/registers/chv_display_base.txt
> diff --git a/tools/quick_dump/chv_dpio_phy_x1.txt b/tools/registers/chv_dpio_phy_x1.txt
> similarity index 100%
> rename from tools/quick_dump/chv_dpio_phy_x1.txt
> rename to tools/registers/chv_dpio_phy_x1.txt
> diff --git a/tools/quick_dump/chv_dpio_phy_x2.txt b/tools/registers/chv_dpio_phy_x2.txt
> similarity index 100%
> rename from tools/quick_dump/chv_dpio_phy_x2.txt
> rename to tools/registers/chv_dpio_phy_x2.txt
> diff --git a/tools/quick_dump/chv_pipe_c.txt b/tools/registers/chv_pipe_c.txt
> similarity index 100%
> rename from tools/quick_dump/chv_pipe_c.txt
> rename to tools/registers/chv_pipe_c.txt
> diff --git a/tools/quick_dump/common_display.txt b/tools/registers/common_display.txt
> similarity index 100%
> rename from tools/quick_dump/common_display.txt
> rename to tools/registers/common_display.txt
> diff --git a/tools/quick_dump/gen6_other.txt b/tools/registers/gen6_other.txt
> similarity index 100%
> rename from tools/quick_dump/gen6_other.txt
> rename to tools/registers/gen6_other.txt
> diff --git a/tools/quick_dump/gen7_other.txt b/tools/registers/gen7_other.txt
> similarity index 100%
> rename from tools/quick_dump/gen7_other.txt
> rename to tools/registers/gen7_other.txt
> diff --git a/tools/quick_dump/gen8_interrupt.txt b/tools/registers/gen8_interrupt.txt
> similarity index 100%
> rename from tools/quick_dump/gen8_interrupt.txt
> rename to tools/registers/gen8_interrupt.txt
> diff --git a/tools/quick_dump/gen8_other.txt b/tools/registers/gen8_other.txt
> similarity index 100%
> rename from tools/quick_dump/gen8_other.txt
> rename to tools/registers/gen8_other.txt
> diff --git a/tools/quick_dump/haswell b/tools/registers/haswell
> similarity index 100%
> rename from tools/quick_dump/haswell
> rename to tools/registers/haswell
> diff --git a/tools/quick_dump/haswell_other.txt b/tools/registers/haswell_other.txt
> similarity index 100%
> rename from tools/quick_dump/haswell_other.txt
> rename to tools/registers/haswell_other.txt
> diff --git a/tools/quick_dump/ivybridge b/tools/registers/ivybridge
> similarity index 100%
> rename from tools/quick_dump/ivybridge
> rename to tools/registers/ivybridge
> diff --git a/tools/quick_dump/sandybridge b/tools/registers/sandybridge
> similarity index 100%
> rename from tools/quick_dump/sandybridge
> rename to tools/registers/sandybridge
> diff --git a/tools/quick_dump/skl_display.txt b/tools/registers/skl_display.txt
> similarity index 100%
> rename from tools/quick_dump/skl_display.txt
> rename to tools/registers/skl_display.txt
> diff --git a/tools/quick_dump/skl_powerwells.txt b/tools/registers/skl_powerwells.txt
> similarity index 100%
> rename from tools/quick_dump/skl_powerwells.txt
> rename to tools/registers/skl_powerwells.txt
> diff --git a/tools/quick_dump/skylake b/tools/registers/skylake
> similarity index 100%
> rename from tools/quick_dump/skylake
> rename to tools/registers/skylake
> diff --git a/tools/quick_dump/valleyview b/tools/registers/valleyview
> similarity index 100%
> rename from tools/quick_dump/valleyview
> rename to tools/registers/valleyview
> diff --git a/tools/quick_dump/vlv_display_base.txt b/tools/registers/vlv_display_base.txt
> similarity index 100%
> rename from tools/quick_dump/vlv_display_base.txt
> rename to tools/registers/vlv_display_base.txt
> diff --git a/tools/quick_dump/vlv_dpio_phy.txt b/tools/registers/vlv_dpio_phy.txt
> similarity index 100%
> rename from tools/quick_dump/vlv_dpio_phy.txt
> rename to tools/registers/vlv_dpio_phy.txt
> diff --git a/tools/quick_dump/vlv_dsi.txt b/tools/registers/vlv_dsi.txt
> similarity index 100%
> rename from tools/quick_dump/vlv_dsi.txt
> rename to tools/registers/vlv_dsi.txt
> diff --git a/tools/quick_dump/vlv_flisdsi.txt b/tools/registers/vlv_flisdsi.txt
> similarity index 100%
> rename from tools/quick_dump/vlv_flisdsi.txt
> rename to tools/registers/vlv_flisdsi.txt
> diff --git a/tools/quick_dump/vlv_pipe_a.txt b/tools/registers/vlv_pipe_a.txt
> similarity index 100%
> rename from tools/quick_dump/vlv_pipe_a.txt
> rename to tools/registers/vlv_pipe_a.txt
> diff --git a/tools/quick_dump/vlv_pipe_b.txt b/tools/registers/vlv_pipe_b.txt
> similarity index 100%
> rename from tools/quick_dump/vlv_pipe_b.txt
> rename to tools/registers/vlv_pipe_b.txt
> diff --git a/tools/quick_dump/vlv_power.txt b/tools/registers/vlv_power.txt
> similarity index 100%
> rename from tools/quick_dump/vlv_power.txt
> rename to tools/registers/vlv_power.txt
> -- 
> 1.9.1
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Ville Syrjälä
Intel OTC
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH i-g-t] tools: remove quick_dump
  2015-09-04 11:38 ` Ville Syrjälä
@ 2015-09-04 11:48   ` Ville Syrjälä
  2015-09-04 11:55   ` Jani Nikula
  1 sibling, 0 replies; 8+ messages in thread
From: Ville Syrjälä @ 2015-09-04 11:48 UTC (permalink / raw)
  To: Thomas Wood; +Cc: intel-gfx

On Fri, Sep 04, 2015 at 02:38:41PM +0300, Ville Syrjälä wrote:
> On Fri, Sep 04, 2015 at 11:22:28AM +0100, Thomas Wood wrote:
> > Remove quick_dump as it has been replaced by the intel_reg tool and move
> > the register definition files to tools/registers.
> > 
> > Signed-off-by: Thomas Wood <thomas.wood@intel.com>
> 
> NAK
> 
> It's the only tool that works on VLV/CHV reasonably.

OK, I take it back.

intel_reg dump --spec=... works fine, and the patch doens't kill the reg
list files.

> 
> > ---
> >  README                                             |  13 ---
> >  configure.ac                                       |  27 +----
> >  man/intel_reg.rst                                  |   3 +-
> >  tools/Makefile.am                                  |   6 +-
> >  tools/quick_dump/.gitignore                        |   2 -
> >  tools/quick_dump/Makefile.am                       |  34 ------
> >  tools/quick_dump/chipset.i                         |  41 --------
> >  tools/quick_dump/chipset_macro_wrap.c              |  68 ------------
> >  tools/quick_dump/quick_dump.py                     | 117 ---------------------
> >  tools/quick_dump/reg_access.py                     |  62 -----------
> >  tools/registers/Makefile.am                        |   1 +
> >  .../audio_config_haswell_plus.txt                  |   0
> >  .../audio_debug_haswell_plus.txt                   |   0
> >  tools/{quick_dump => registers}/base_interrupt.txt |   0
> >  tools/{quick_dump => registers}/base_other.txt     |   0
> >  tools/{quick_dump => registers}/base_power.txt     |   0
> >  tools/{quick_dump => registers}/base_rings.txt     |   0
> >  tools/{quick_dump => registers}/broadwell          |   0
> >  tools/{quick_dump => registers}/cherryview         |   0
> >  .../{quick_dump => registers}/chv_display_base.txt |   0
> >  .../{quick_dump => registers}/chv_dpio_phy_x1.txt  |   0
> >  .../{quick_dump => registers}/chv_dpio_phy_x2.txt  |   0
> >  tools/{quick_dump => registers}/chv_pipe_c.txt     |   0
> >  tools/{quick_dump => registers}/common_display.txt |   0
> >  tools/{quick_dump => registers}/gen6_other.txt     |   0
> >  tools/{quick_dump => registers}/gen7_other.txt     |   0
> >  tools/{quick_dump => registers}/gen8_interrupt.txt |   0
> >  tools/{quick_dump => registers}/gen8_other.txt     |   0
> >  tools/{quick_dump => registers}/haswell            |   0
> >  tools/{quick_dump => registers}/haswell_other.txt  |   0
> >  tools/{quick_dump => registers}/ivybridge          |   0
> >  tools/{quick_dump => registers}/sandybridge        |   0
> >  tools/{quick_dump => registers}/skl_display.txt    |   0
> >  tools/{quick_dump => registers}/skl_powerwells.txt |   0
> >  tools/{quick_dump => registers}/skylake            |   0
> >  tools/{quick_dump => registers}/valleyview         |   0
> >  .../{quick_dump => registers}/vlv_display_base.txt |   0
> >  tools/{quick_dump => registers}/vlv_dpio_phy.txt   |   0
> >  tools/{quick_dump => registers}/vlv_dsi.txt        |   0
> >  tools/{quick_dump => registers}/vlv_flisdsi.txt    |   0
> >  tools/{quick_dump => registers}/vlv_pipe_a.txt     |   0
> >  tools/{quick_dump => registers}/vlv_pipe_b.txt     |   0
> >  tools/{quick_dump => registers}/vlv_power.txt      |   0
> >  43 files changed, 6 insertions(+), 368 deletions(-)
> >  delete mode 100644 tools/quick_dump/.gitignore
> >  delete mode 100644 tools/quick_dump/Makefile.am
> >  delete mode 100644 tools/quick_dump/chipset.i
> >  delete mode 100644 tools/quick_dump/chipset_macro_wrap.c
> >  delete mode 100755 tools/quick_dump/quick_dump.py
> >  delete mode 100755 tools/quick_dump/reg_access.py
> >  create mode 100644 tools/registers/Makefile.am
> >  rename tools/{quick_dump => registers}/audio_config_haswell_plus.txt (100%)
> >  rename tools/{quick_dump => registers}/audio_debug_haswell_plus.txt (100%)
> >  rename tools/{quick_dump => registers}/base_interrupt.txt (100%)
> >  rename tools/{quick_dump => registers}/base_other.txt (100%)
> >  rename tools/{quick_dump => registers}/base_power.txt (100%)
> >  rename tools/{quick_dump => registers}/base_rings.txt (100%)
> >  rename tools/{quick_dump => registers}/broadwell (100%)
> >  rename tools/{quick_dump => registers}/cherryview (100%)
> >  rename tools/{quick_dump => registers}/chv_display_base.txt (100%)
> >  rename tools/{quick_dump => registers}/chv_dpio_phy_x1.txt (100%)
> >  rename tools/{quick_dump => registers}/chv_dpio_phy_x2.txt (100%)
> >  rename tools/{quick_dump => registers}/chv_pipe_c.txt (100%)
> >  rename tools/{quick_dump => registers}/common_display.txt (100%)
> >  rename tools/{quick_dump => registers}/gen6_other.txt (100%)
> >  rename tools/{quick_dump => registers}/gen7_other.txt (100%)
> >  rename tools/{quick_dump => registers}/gen8_interrupt.txt (100%)
> >  rename tools/{quick_dump => registers}/gen8_other.txt (100%)
> >  rename tools/{quick_dump => registers}/haswell (100%)
> >  rename tools/{quick_dump => registers}/haswell_other.txt (100%)
> >  rename tools/{quick_dump => registers}/ivybridge (100%)
> >  rename tools/{quick_dump => registers}/sandybridge (100%)
> >  rename tools/{quick_dump => registers}/skl_display.txt (100%)
> >  rename tools/{quick_dump => registers}/skl_powerwells.txt (100%)
> >  rename tools/{quick_dump => registers}/skylake (100%)
> >  rename tools/{quick_dump => registers}/valleyview (100%)
> >  rename tools/{quick_dump => registers}/vlv_display_base.txt (100%)
> >  rename tools/{quick_dump => registers}/vlv_dpio_phy.txt (100%)
> >  rename tools/{quick_dump => registers}/vlv_dsi.txt (100%)
> >  rename tools/{quick_dump => registers}/vlv_flisdsi.txt (100%)
> >  rename tools/{quick_dump => registers}/vlv_pipe_a.txt (100%)
> >  rename tools/{quick_dump => registers}/vlv_pipe_b.txt (100%)
> >  rename tools/{quick_dump => registers}/vlv_power.txt (100%)
> > 
> > diff --git a/README b/README
> > index ac9f8ad..6235655 100644
> > --- a/README
> > +++ b/README
> > @@ -102,17 +102,6 @@ tools/
> >  	These tools generally must be run as root, safe for the ones that just
> >  	decode dumps.
> >  
> > -tools/quick_dump
> > -	Quick dumper is a python tool built with SWIG bindings to
> > -	important libraries exported by the rest of the tool suite. The tool
> > -	itself is quite straight forward, and should also be a useful example
> > -	for others wishing to write python based i915 tools.
> > -
> > -	Note to package maintainers: It is not recommended to package
> > -	this directory, as the tool is not yet designed for wide usage. If the
> > -	package is installed via "make install" the users will have to set
> > -	their python library path appropriately. Use --disable-dumper
> > -
> >  debugger/
> >  	This tool is to be used to do shader debugging. It acts like a
> >  	debug server accepting connections from debug clients such as
> > @@ -148,9 +137,7 @@ everything (package names may vary):
> >  	libcairo2-dev
> >  	libdrm-dev
> >  	libpciaccess-dev
> > -	libpython3.3-dev
> >  	libunwind-dev
> >  	python-docutils
> > -	swig2.0
> >  	x11proto-dri2-dev
> >  	xutils-dev
> > diff --git a/configure.ac b/configure.ac
> > index 19f6fa4..e4515f3 100644
> > --- a/configure.ac
> > +++ b/configure.ac
> > @@ -131,26 +131,6 @@ if test "x$NOUVEAU" = xyes; then
> >  fi
> >  AM_CONDITIONAL(HAVE_NOUVEAU, [test "x$NOUVEAU" = xyes])
> >  
> > -#Configure options for the python quick-dumper
> > -AC_ARG_ENABLE(dumper,
> > -	      AS_HELP_STRING([--disable-dumper],
> > -			     [Disable the python based register dumper (default: enabled)]),
> > -			     [DUMPER=$enableval], [DUMPER=auto])
> > -if test "x$DUMPER" = xauto; then
> > -	# AX_PYTHON_DEVEL/AX_SWIG_PYTHON are not super friendly and don't
> > -	# easily allow us to introspect the result of their checks. So if we
> > -	# find SWING on the system, that's enough to try compiling the dumper.
> > -	AX_PKG_SWIG(2.0.0, [DUMPER=yes], [DUMPER=no])
> > -fi
> > -if test "x$DUMPER" = xyes; then
> > -	AC_DEFINE(HAVE_DUMPER, 1, [Have dumper support])
> > -	# SWIG configuration
> > -	AX_PKG_SWIG(2.0.0, [], [ AC_MSG_ERROR([SWIG 2.0.0 or higher is required to build..]) ])
> > -	AX_PYTHON_DEVEL([>= '3.0'])
> > -	AX_SWIG_PYTHON
> > -fi
> > -AM_CONDITIONAL(HAVE_DUMPER, [test "x$DUMPER" = xyes])
> > -
> >  # Define a configure option for the shader debugger
> >  AC_ARG_ENABLE(shader-debugger, AS_HELP_STRING([--enable-shader-debugger],
> >  	      [Enable shader debugging support [autodetected]]),
> > @@ -237,9 +217,9 @@ AC_DEFINE_UNQUOTED(TARGET_CPU_PLATFORM, ["$host_cpu"], [Target platform])
> >  
> >  files="broadwell cherryview haswell ivybridge sandybridge valleyview skylake"
> >  for file in $files; do
> > -	QUICK_DUMP_EXTRA_DIST="$QUICK_DUMP_EXTRA_DIST $file `tr '\n' ' ' < $srcdir/tools/quick_dump/$file`"
> > +	REGISTERS_EXTRA_DIST="$REGISTERS_EXTRA_DIST $file `tr '\n' ' ' < $srcdir/tools/registers/$file`"
> >  done
> > -AC_SUBST(QUICK_DUMP_EXTRA_DIST)
> > +AC_SUBST(REGISTERS_EXTRA_DIST)
> >  
> >  AC_CONFIG_FILES([
> >  		 Makefile
> > @@ -255,8 +235,8 @@ AC_CONFIG_FILES([
> >  		 scripts/Makefile
> >  		 tests/Makefile
> >  		 tools/Makefile
> > -		 tools/quick_dump/Makefile
> >  		 tools/null_state_gen/Makefile
> > +		 tools/registers/Makefile
> >  		 debugger/Makefile
> >  		 debugger/system_routine/Makefile
> >  		 assembler/Makefile
> > @@ -284,7 +264,6 @@ echo ""
> >  echo " • Tools:"
> >  echo "       Assembler          : ${enable_assembler}"
> >  echo "       Debugger           : ${enable_debugger}"
> > -echo "       Python dumper      : ${DUMPER}"
> >  echo "       Overlay            : X: ${enable_overlay_xlib}, Xv: ${enable_overlay_xvlib}"
> >  echo ""
> >  echo " • API-Documentation      : ${enable_gtk_doc}"
> > diff --git a/man/intel_reg.rst b/man/intel_reg.rst
> > index c6e2fea..d90c307 100644
> > --- a/man/intel_reg.rst
> > +++ b/man/intel_reg.rst
> > @@ -197,8 +197,7 @@ variable, the directory is scanned for a spec file in this order:
> >  Register Spec File Format
> >  -------------------------
> >  
> > -The register spec format is compatible with the quick_dump.py format, briefly
> > -described below:
> > +The register spec format is briefly described below:
> >  
> >  * Empty lines and lines beginning with "#", ";", or "//" are ignored.
> >  
> > diff --git a/tools/Makefile.am b/tools/Makefile.am
> > index 0aeb173..95ede58 100644
> > --- a/tools/Makefile.am
> > +++ b/tools/Makefile.am
> > @@ -1,10 +1,6 @@
> >  include Makefile.sources
> >  
> > -SUBDIRS = null_state_gen
> > -
> > -if HAVE_DUMPER
> > -SUBDIRS += quick_dump
> > -endif
> > +SUBDIRS = null_state_gen registers
> >  
> >  AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/lib
> >  AM_CFLAGS = $(DEBUG_CFLAGS) $(DRM_CFLAGS) $(PCIACCESS_CFLAGS) $(CWARNFLAGS) $(CAIRO_CFLAGS) $(LIBUNWIND_CFLAGS)
> > diff --git a/tools/quick_dump/.gitignore b/tools/quick_dump/.gitignore
> > deleted file mode 100644
> > index 918a66b..0000000
> > --- a/tools/quick_dump/.gitignore
> > +++ /dev/null
> > @@ -1,2 +0,0 @@
> > -chipset_wrap_python.c
> > -chipset.py
> > diff --git a/tools/quick_dump/Makefile.am b/tools/quick_dump/Makefile.am
> > deleted file mode 100644
> > index 0643a81..0000000
> > --- a/tools/quick_dump/Makefile.am
> > +++ /dev/null
> > @@ -1,34 +0,0 @@
> > -AM_CPPFLAGS = -I$(top_srcdir)/lib -I$(top_builddir)/lib $(PYTHON_CPPFLAGS) $(DRM_CFLAGS) $(CAIRO_CFLAGS) -I$(top_srcdir)
> > -
> > -dist_bin_SCRIPTS = quick_dump.py reg_access.py
> > -bin_SCRIPTS = chipset.py
> > -
> > -lib_LTLIBRARIES = I915ChipsetPython.la
> > -I915ChipsetPython_la_LDFLAGS = -module -avoid-version $(PYTHON_LDFLAGS) \
> > -	-Wl,--no-undefined
> > -I915ChipsetPython_la_SOURCES = chipset_macro_wrap.c
> > -nodist_I915ChipsetPython_la_SOURCES = chipset_wrap_python.c
> > -I915ChipsetPython_la_LIBADD =			\
> > -	$(top_builddir)/lib/libintel_tools.la	\
> > -	$(PCIACCESS_LIBS)			\
> > -	$(DRM_LIBS)				\
> > -	$(CAIRO_LIBS)				\
> > -	$(LIBUNWIND_LIBS)			\
> > -	-lrt					\
> > -	-lm					\
> > -	$(NULL)
> > -
> > -chipset.py: chipset_wrap_python.c
> > -
> > -chipset_wrap_python.c: chipset.i
> > -	$(AM_V_GEN)$(SWIG) $(AX_SWIG_PYTHON_OPT) -I/usr/include -I$(top_srcdir)/lib -o $@ $<
> > -
> > -all-local: I915ChipsetPython.la
> > -	$(LN_S) -f .libs/I915ChipsetPython.so _chipset.so
> > -
> > -CLEANFILES = chipset_wrap_python.c chipset.py _chipset.so
> > -EXTRA_DIST = $(QUICK_DUMP_EXTRA_DIST) \
> > -	      base_interrupt.txt base_other.txt base_power.txt base_rings.txt \
> > -	      quick_dump.py \
> > -	      reg_access.py \
> > -	      chipset.i
> > diff --git a/tools/quick_dump/chipset.i b/tools/quick_dump/chipset.i
> > deleted file mode 100644
> > index 90db40e..0000000
> > --- a/tools/quick_dump/chipset.i
> > +++ /dev/null
> > @@ -1,41 +0,0 @@
> > -%module chipset
> > -%include "stdint.i"
> > -%{
> > -#include <pciaccess.h>
> > -#include <stdint.h>
> > -#include "intel_chipset.h"
> > -#include "intel_io.h"
> > -extern int is_sandybridge(unsigned short pciid);
> > -extern int is_ivybridge(unsigned short pciid);
> > -extern int is_valleyview(unsigned short pciid);
> > -extern int is_cherryview(unsigned short pciid);
> > -extern int is_haswell(unsigned short pciid);
> > -extern int is_broadwell(unsigned short pciid);
> > -extern int is_skylake(unsigned short pciid);
> > -extern struct pci_device *intel_get_pci_device();
> > -extern int intel_register_access_init(struct pci_device *pci_dev, int safe);
> > -extern uint32_t intel_register_read(uint32_t reg);
> > -extern void intel_register_write(uint32_t reg, uint32_t val);
> > -extern void intel_register_access_fini();
> > -extern int intel_register_access_needs_fakewake();
> > -extern unsigned short pcidev_to_devid(struct pci_device *pci_dev);
> > -extern uint32_t intel_dpio_reg_read(uint32_t reg, int phy);
> > -extern uint32_t intel_flisdsi_reg_read(uint32_t reg);
> > -%}
> > -
> > -extern int is_sandybridge(unsigned short pciid);
> > -extern int is_ivybridge(unsigned short pciid);
> > -extern int is_valleyview(unsigned short pciid);
> > -extern int is_cherryview(unsigned short pciid);
> > -extern int is_haswell(unsigned short pciid);
> > -extern int is_broadwell(unsigned short pciid);
> > -extern int is_skylake(unsigned short pciid);
> > -extern struct pci_device *intel_get_pci_device();
> > -extern int intel_register_access_init(struct pci_device *pci_dev, int safe);
> > -extern uint32_t intel_register_read(uint32_t reg);
> > -extern void intel_register_write(uint32_t reg, uint32_t val);
> > -extern void intel_register_access_fini();
> > -extern int intel_register_access_needs_fakewake();
> > -extern unsigned short pcidev_to_devid(struct pci_device *pci_dev);
> > -extern uint32_t intel_dpio_reg_read(uint32_t reg, int phy);
> > -extern uint32_t intel_flisdsi_reg_read(uint32_t reg);
> > diff --git a/tools/quick_dump/chipset_macro_wrap.c b/tools/quick_dump/chipset_macro_wrap.c
> > deleted file mode 100644
> > index fa568d6..0000000
> > --- a/tools/quick_dump/chipset_macro_wrap.c
> > +++ /dev/null
> > @@ -1,68 +0,0 @@
> > -/*
> > - * Copyright © 2014 Intel Corporation
> > - *
> > - * Permission is hereby granted, free of charge, to any person obtaining a
> > - * copy of this software and associated documentation files (the "Software"),
> > - * to deal in the Software without restriction, including without limitation
> > - * the rights to use, copy, modify, merge, publish, distribute, sublicense,
> > - * and/or sell copies of the Software, and to permit persons to whom the
> > - * Software is furnished to do so, subject to the following conditions:
> > - *
> > - * The above copyright notice and this permission notice (including the next
> > - * paragraph) shall be included in all copies or substantial portions of the
> > - * Software.
> > - *
> > - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> > - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> > - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
> > - * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> > - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
> > - * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
> > - * DEALINGS IN THE SOFTWARE.
> > - */
> > -
> > -#include <stdbool.h>
> > -#include <stdlib.h>
> > -#include <pciaccess.h>
> > -#include "intel_chipset.h"
> > -
> > -int is_sandybridge(unsigned short pciid)
> > -{
> > -	return IS_GEN6(pciid);
> > -}
> > -
> > -int is_ivybridge(unsigned short pciid)
> > -{
> > -	return IS_IVYBRIDGE(pciid);
> > -}
> > -
> > -int is_valleyview(unsigned short pciid)
> > -{
> > -	return IS_VALLEYVIEW(pciid);
> > -}
> > -
> > -int is_cherryview(unsigned short pciid)
> > -{
> > -	return IS_CHERRYVIEW(pciid);
> > -}
> > -
> > -int is_haswell(unsigned short pciid)
> > -{
> > -	return IS_HASWELL(pciid);
> > -}
> > -
> > -int is_broadwell(unsigned short pciid)
> > -{
> > -	return IS_BROADWELL(pciid);
> > -}
> > -
> > -int is_skylake(unsigned short pciid)
> > -{
> > -	return IS_SKYLAKE(pciid);
> > -}
> > -
> > -/* Simple helper because I couldn't make this work in the script */
> > -unsigned short pcidev_to_devid(struct pci_device *pdev)
> > -{
> > -	return pdev->device_id;
> > -}
> > diff --git a/tools/quick_dump/quick_dump.py b/tools/quick_dump/quick_dump.py
> > deleted file mode 100755
> > index 702a9d5..0000000
> > --- a/tools/quick_dump/quick_dump.py
> > +++ /dev/null
> > @@ -1,117 +0,0 @@
> > -#!/usr/bin/env python3
> > -
> > -# register definition format:
> > -# ('register name', 'register offset', 'register type')
> > -#
> > -# register types:
> > -#  '' - normal register
> > -#  'DPIO' - DPIO register
> > -#
> > -# vim: tabstop=8 expandtab shiftwidth=4 softtabstop=4
> > -
> > -import argparse
> > -import os
> > -import sys
> > -import ast
> > -import subprocess
> > -import chipset
> > -import reg_access as reg
> > -
> > -# Ignore lines which are considered comments
> > -def ignore_line(line):
> > -    if not line.strip():
> > -        return True
> > -    if len(line) > 1:
> > -        if line[1] == '/' and line[0] == '/':
> > -            return True
> > -    if len(line) > 0:
> > -        if line[0] == '#' or line[0] == ';':
> > -            return True
> > -    return False
> > -
> > -def parse_file(file):
> > -    print('{0:^10s} | {1:^33s} | {2:^10s}'. format('offset', file.name, 'value'))
> > -    print('-' * 59)
> > -    for line in file:
> > -        if ignore_line(line):
> > -            continue
> > -        register = ast.literal_eval(line)
> > -        intreg = int(register[1], 16)
> > -        if register[2] == 'FLISDSI':
> > -            val = reg.flisdsi_read(intreg)
> > -        elif register[2] == 'DPIO':
> > -            val = reg.dpio_read(intreg, 0)
> > -        elif register[2] == 'DPIO2':
> > -            val = reg.dpio_read(intreg, 1)
> > -        else:
> > -            if register[2] != '':
> > -                intreg = intreg + int(register[2], 16)
> > -            val = reg.read(intreg)
> > -        print('{0:#010x} | {1:<33} | {2:#010x}'.format(intreg, register[0], val))
> > -    print('')
> > -
> > -def walk_base_files():
> > -    for root, dirs, files in os.walk('.'):
> > -        for name in files:
> > -            if name.startswith(("base_")):
> > -                file = open(name.rstrip(), 'r')
> > -                parse_file(file)
> > -
> > -def autodetect_chipset():
> > -    pci_dev = chipset.intel_get_pci_device()
> > -    devid = chipset.pcidev_to_devid(pci_dev)
> > -    if chipset.is_sandybridge(devid):
> > -        return open('sandybridge', 'r')
> > -    elif chipset.is_ivybridge(devid):
> > -        return open('ivybridge', 'r')
> > -    elif chipset.is_cherryview(devid):
> > -        return open('cherryview', 'r')
> > -    elif chipset.is_valleyview(devid):
> > -        return open('valleyview', 'r')
> > -    elif chipset.is_haswell(devid):
> > -        return open('haswell', 'r')
> > -    elif chipset.is_broadwell(devid):
> > -        return open('broadwell', 'r')
> > -    elif chipset.is_skylake(devid):
> > -        return open('skylake', 'r')
> > -    else:
> > -        print("Autodetect of devid " + hex(devid) + " failed")
> > -        return None
> > -
> > -if __name__ == "__main__":
> > -    parser = argparse.ArgumentParser(description='Dumb register dumper.')
> > -    parser.add_argument('-b', '--baseless',
> > -            action='store_true', default=False,
> > -            help='baseless mode, ignore files starting with base_')
> > -    parser.add_argument('-f', '--file',
> > -            type=argparse.FileType('r'), default=None)
> > -    parser.add_argument('profile', nargs='?',
> > -            type=argparse.FileType('r'), default=None)
> > -
> > -    args = parser.parse_args()
> > -
> > -    if reg.init() == False:
> > -        print("Register initialization failed")
> > -        sys.exit()
> > -
> > -    # Put us where the script is
> > -    os.chdir(os.path.dirname(sys.argv[0]))
> > -
> > -    # specifying a file trumps all other things
> > -    if args.file != None:
> > -        parse_file(args.file)
> > -        sys.exit()
> > -
> > -    #parse anything named base_ these are assumed to apply for all gens.
> > -    if args.baseless == False:
> > -        walk_base_files()
> > -
> > -    if args.profile == None:
> > -        args.profile = autodetect_chipset()
> > -
> > -    if args.profile == None:
> > -        sys.exit()
> > -
> > -    for extra in args.profile:
> > -        extra_file = open(extra.rstrip(), 'r')
> > -        parse_file(extra_file)
> > diff --git a/tools/quick_dump/reg_access.py b/tools/quick_dump/reg_access.py
> > deleted file mode 100755
> > index 6a93f63..0000000
> > --- a/tools/quick_dump/reg_access.py
> > +++ /dev/null
> > @@ -1,62 +0,0 @@
> > -#!/usr/bin/env python3
> > -# vim: tabstop=8 expandtab shiftwidth=4 softtabstop=4
> > -import chipset
> > -
> > -def read(reg):
> > -    val = chipset.intel_register_read(reg)
> > -    return val
> > -
> > -def write(reg, val):
> > -    chipset.intel_register_write(reg, val)
> > -
> > -def gen6_forcewake_get():
> > -    write(0xa18c, 0x1)
> > -    read(0xa180)
> > -
> > -def mt_forcewake_get():
> > -    write(0xa188, 0x10001)
> > -    read(0xa180)
> > -
> > -def vlv_forcewake_get():
> > -    write(0x1300b0, 0x10001)
> > -    read(0x1300b4)
> > -
> > -# don't be clever, just try all possibilities
> > -def get_wake():
> > -    gen6_forcewake_get()
> > -    mt_forcewake_get()
> > -    vlv_forcewake_get()
> > -
> > -def dpio_read(reg, phy):
> > -    phy = int(phy)
> > -
> > -    val = chipset.intel_dpio_reg_read(reg, phy)
> > -    return val
> > -
> > -def flisdsi_read(reg):
> > -    val = chipset.intel_flisdsi_reg_read(reg)
> > -    return val
> > -
> > -
> > -def init():
> > -    pci_dev = chipset.intel_get_pci_device()
> > -    ret = chipset.intel_register_access_init(pci_dev, 0)
> > -    if ret != 0:
> > -        print("Register access init failed");
> > -        return False
> > -
> > -    if chipset.intel_register_access_needs_fakewake():
> > -        print("Forcing forcewake. Don't expect your system to work after this.")
> > -        get_wake()
> > -
> > -    return True
> > -
> > -if __name__ == "__main__":
> > -    import sys
> > -
> > -    if init() == False:
> > -        sys.exit()
> > -
> > -    reg = sys.argv[1]
> > -    print(hex(read(int(reg,16))))
> > -    chipset.intel_register_access_fini()
> > diff --git a/tools/registers/Makefile.am b/tools/registers/Makefile.am
> > new file mode 100644
> > index 0000000..4e1e3c2
> > --- /dev/null
> > +++ b/tools/registers/Makefile.am
> > @@ -0,0 +1 @@
> > +EXTRA_DIST = ${REGISTERS_EXTRA_DIST}
> > diff --git a/tools/quick_dump/audio_config_haswell_plus.txt b/tools/registers/audio_config_haswell_plus.txt
> > similarity index 100%
> > rename from tools/quick_dump/audio_config_haswell_plus.txt
> > rename to tools/registers/audio_config_haswell_plus.txt
> > diff --git a/tools/quick_dump/audio_debug_haswell_plus.txt b/tools/registers/audio_debug_haswell_plus.txt
> > similarity index 100%
> > rename from tools/quick_dump/audio_debug_haswell_plus.txt
> > rename to tools/registers/audio_debug_haswell_plus.txt
> > diff --git a/tools/quick_dump/base_interrupt.txt b/tools/registers/base_interrupt.txt
> > similarity index 100%
> > rename from tools/quick_dump/base_interrupt.txt
> > rename to tools/registers/base_interrupt.txt
> > diff --git a/tools/quick_dump/base_other.txt b/tools/registers/base_other.txt
> > similarity index 100%
> > rename from tools/quick_dump/base_other.txt
> > rename to tools/registers/base_other.txt
> > diff --git a/tools/quick_dump/base_power.txt b/tools/registers/base_power.txt
> > similarity index 100%
> > rename from tools/quick_dump/base_power.txt
> > rename to tools/registers/base_power.txt
> > diff --git a/tools/quick_dump/base_rings.txt b/tools/registers/base_rings.txt
> > similarity index 100%
> > rename from tools/quick_dump/base_rings.txt
> > rename to tools/registers/base_rings.txt
> > diff --git a/tools/quick_dump/broadwell b/tools/registers/broadwell
> > similarity index 100%
> > rename from tools/quick_dump/broadwell
> > rename to tools/registers/broadwell
> > diff --git a/tools/quick_dump/cherryview b/tools/registers/cherryview
> > similarity index 100%
> > rename from tools/quick_dump/cherryview
> > rename to tools/registers/cherryview
> > diff --git a/tools/quick_dump/chv_display_base.txt b/tools/registers/chv_display_base.txt
> > similarity index 100%
> > rename from tools/quick_dump/chv_display_base.txt
> > rename to tools/registers/chv_display_base.txt
> > diff --git a/tools/quick_dump/chv_dpio_phy_x1.txt b/tools/registers/chv_dpio_phy_x1.txt
> > similarity index 100%
> > rename from tools/quick_dump/chv_dpio_phy_x1.txt
> > rename to tools/registers/chv_dpio_phy_x1.txt
> > diff --git a/tools/quick_dump/chv_dpio_phy_x2.txt b/tools/registers/chv_dpio_phy_x2.txt
> > similarity index 100%
> > rename from tools/quick_dump/chv_dpio_phy_x2.txt
> > rename to tools/registers/chv_dpio_phy_x2.txt
> > diff --git a/tools/quick_dump/chv_pipe_c.txt b/tools/registers/chv_pipe_c.txt
> > similarity index 100%
> > rename from tools/quick_dump/chv_pipe_c.txt
> > rename to tools/registers/chv_pipe_c.txt
> > diff --git a/tools/quick_dump/common_display.txt b/tools/registers/common_display.txt
> > similarity index 100%
> > rename from tools/quick_dump/common_display.txt
> > rename to tools/registers/common_display.txt
> > diff --git a/tools/quick_dump/gen6_other.txt b/tools/registers/gen6_other.txt
> > similarity index 100%
> > rename from tools/quick_dump/gen6_other.txt
> > rename to tools/registers/gen6_other.txt
> > diff --git a/tools/quick_dump/gen7_other.txt b/tools/registers/gen7_other.txt
> > similarity index 100%
> > rename from tools/quick_dump/gen7_other.txt
> > rename to tools/registers/gen7_other.txt
> > diff --git a/tools/quick_dump/gen8_interrupt.txt b/tools/registers/gen8_interrupt.txt
> > similarity index 100%
> > rename from tools/quick_dump/gen8_interrupt.txt
> > rename to tools/registers/gen8_interrupt.txt
> > diff --git a/tools/quick_dump/gen8_other.txt b/tools/registers/gen8_other.txt
> > similarity index 100%
> > rename from tools/quick_dump/gen8_other.txt
> > rename to tools/registers/gen8_other.txt
> > diff --git a/tools/quick_dump/haswell b/tools/registers/haswell
> > similarity index 100%
> > rename from tools/quick_dump/haswell
> > rename to tools/registers/haswell
> > diff --git a/tools/quick_dump/haswell_other.txt b/tools/registers/haswell_other.txt
> > similarity index 100%
> > rename from tools/quick_dump/haswell_other.txt
> > rename to tools/registers/haswell_other.txt
> > diff --git a/tools/quick_dump/ivybridge b/tools/registers/ivybridge
> > similarity index 100%
> > rename from tools/quick_dump/ivybridge
> > rename to tools/registers/ivybridge
> > diff --git a/tools/quick_dump/sandybridge b/tools/registers/sandybridge
> > similarity index 100%
> > rename from tools/quick_dump/sandybridge
> > rename to tools/registers/sandybridge
> > diff --git a/tools/quick_dump/skl_display.txt b/tools/registers/skl_display.txt
> > similarity index 100%
> > rename from tools/quick_dump/skl_display.txt
> > rename to tools/registers/skl_display.txt
> > diff --git a/tools/quick_dump/skl_powerwells.txt b/tools/registers/skl_powerwells.txt
> > similarity index 100%
> > rename from tools/quick_dump/skl_powerwells.txt
> > rename to tools/registers/skl_powerwells.txt
> > diff --git a/tools/quick_dump/skylake b/tools/registers/skylake
> > similarity index 100%
> > rename from tools/quick_dump/skylake
> > rename to tools/registers/skylake
> > diff --git a/tools/quick_dump/valleyview b/tools/registers/valleyview
> > similarity index 100%
> > rename from tools/quick_dump/valleyview
> > rename to tools/registers/valleyview
> > diff --git a/tools/quick_dump/vlv_display_base.txt b/tools/registers/vlv_display_base.txt
> > similarity index 100%
> > rename from tools/quick_dump/vlv_display_base.txt
> > rename to tools/registers/vlv_display_base.txt
> > diff --git a/tools/quick_dump/vlv_dpio_phy.txt b/tools/registers/vlv_dpio_phy.txt
> > similarity index 100%
> > rename from tools/quick_dump/vlv_dpio_phy.txt
> > rename to tools/registers/vlv_dpio_phy.txt
> > diff --git a/tools/quick_dump/vlv_dsi.txt b/tools/registers/vlv_dsi.txt
> > similarity index 100%
> > rename from tools/quick_dump/vlv_dsi.txt
> > rename to tools/registers/vlv_dsi.txt
> > diff --git a/tools/quick_dump/vlv_flisdsi.txt b/tools/registers/vlv_flisdsi.txt
> > similarity index 100%
> > rename from tools/quick_dump/vlv_flisdsi.txt
> > rename to tools/registers/vlv_flisdsi.txt
> > diff --git a/tools/quick_dump/vlv_pipe_a.txt b/tools/registers/vlv_pipe_a.txt
> > similarity index 100%
> > rename from tools/quick_dump/vlv_pipe_a.txt
> > rename to tools/registers/vlv_pipe_a.txt
> > diff --git a/tools/quick_dump/vlv_pipe_b.txt b/tools/registers/vlv_pipe_b.txt
> > similarity index 100%
> > rename from tools/quick_dump/vlv_pipe_b.txt
> > rename to tools/registers/vlv_pipe_b.txt
> > diff --git a/tools/quick_dump/vlv_power.txt b/tools/registers/vlv_power.txt
> > similarity index 100%
> > rename from tools/quick_dump/vlv_power.txt
> > rename to tools/registers/vlv_power.txt
> > -- 
> > 1.9.1
> > 
> > _______________________________________________
> > Intel-gfx mailing list
> > Intel-gfx@lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/intel-gfx
> 
> -- 
> Ville Syrjälä
> Intel OTC
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Ville Syrjälä
Intel OTC
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH i-g-t] tools: remove quick_dump
  2015-09-04 10:22 [PATCH i-g-t] tools: remove quick_dump Thomas Wood
  2015-09-04 11:38 ` Ville Syrjälä
@ 2015-09-04 11:53 ` Jani Nikula
  2015-09-04 14:24   ` [PATCH i-g-t] tools: install the register definition files Thomas Wood
  1 sibling, 1 reply; 8+ messages in thread
From: Jani Nikula @ 2015-09-04 11:53 UTC (permalink / raw)
  To: Thomas Wood, intel-gfx

On Fri, 04 Sep 2015, Thomas Wood <thomas.wood@intel.com> wrote:
> Remove quick_dump as it has been replaced by the intel_reg tool and move
> the register definition files to tools/registers.
>
> Signed-off-by: Thomas Wood <thomas.wood@intel.com>

Acked-by: Jani Nikula <jani.nikula@intel.com>

As a follow-up, I'd like it if Someone(tm) would add rules to install
the register definitions to some appropriate location, and modify
intel_reg to look there by default. Now people will have to have the
source to get the definitions, and direct intel_reg there with
--spec=PATH.



-- 
Jani Nikula, Intel Open Source Technology Center
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH i-g-t] tools: remove quick_dump
  2015-09-04 11:38 ` Ville Syrjälä
  2015-09-04 11:48   ` Ville Syrjälä
@ 2015-09-04 11:55   ` Jani Nikula
  1 sibling, 0 replies; 8+ messages in thread
From: Jani Nikula @ 2015-09-04 11:55 UTC (permalink / raw)
  To: Ville Syrjälä, Thomas Wood; +Cc: intel-gfx

On Fri, 04 Sep 2015, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
> On Fri, Sep 04, 2015 at 11:22:28AM +0100, Thomas Wood wrote:
>> Remove quick_dump as it has been replaced by the intel_reg tool and move
>> the register definition files to tools/registers.
>> 
>> Signed-off-by: Thomas Wood <thomas.wood@intel.com>
>
> NAK
>
> It's the only tool that works on VLV/CHV reasonably.

As said on IRC, intel_reg --spec=/path/to/igt/tools/registers will do
that for you. (Or tools/quick_dump before this patch.)

BR,
Jani.


-- 
Jani Nikula, Intel Open Source Technology Center
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH i-g-t] tools: install the register definition files
  2015-09-04 11:53 ` Jani Nikula
@ 2015-09-04 14:24   ` Thomas Wood
  2015-09-04 15:44     ` [PATCH i-g-t v2] " Thomas Wood
  0 siblings, 1 reply; 8+ messages in thread
From: Thomas Wood @ 2015-09-04 14:24 UTC (permalink / raw)
  To: intel-gfx

Install the register definition files and use them by default in
intel_reg.

Suggested-by: Jani Nikula <jani.nikula@linux.intel.com>
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
---
 configure.ac                | 5 +++--
 tools/Makefile.am           | 2 +-
 tools/intel_reg.c           | 4 +++-
 tools/registers/Makefile.am | 3 ++-
 4 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/configure.ac b/configure.ac
index e4515f3..c7cb199 100644
--- a/configure.ac
+++ b/configure.ac
@@ -217,9 +217,10 @@ AC_DEFINE_UNQUOTED(TARGET_CPU_PLATFORM, ["$host_cpu"], [Target platform])
 
 files="broadwell cherryview haswell ivybridge sandybridge valleyview skylake"
 for file in $files; do
-	REGISTERS_EXTRA_DIST="$REGISTERS_EXTRA_DIST $file `tr '\n' ' ' < $srcdir/tools/registers/$file`"
+	REGISTER_FILES="$REGISTER_FILES $file `cat $srcdir/tools/registers/$file`"
 done
-AC_SUBST(REGISTERS_EXTRA_DIST)
+REGISTER_FILES=`echo $REGISTER_FILES | tr ' ' '\n' | sort -u | tr '\n' ' '`
+AC_SUBST(REGISTER_FILES)
 
 AC_CONFIG_FILES([
 		 Makefile
diff --git a/tools/Makefile.am b/tools/Makefile.am
index 95ede58..8e454b4 100644
--- a/tools/Makefile.am
+++ b/tools/Makefile.am
@@ -3,7 +3,7 @@ include Makefile.sources
 SUBDIRS = null_state_gen registers
 
 AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/lib
-AM_CFLAGS = $(DEBUG_CFLAGS) $(DRM_CFLAGS) $(PCIACCESS_CFLAGS) $(CWARNFLAGS) $(CAIRO_CFLAGS) $(LIBUNWIND_CFLAGS)
+AM_CFLAGS = $(DEBUG_CFLAGS) $(DRM_CFLAGS) $(PCIACCESS_CFLAGS) $(CWARNFLAGS) $(CAIRO_CFLAGS) $(LIBUNWIND_CFLAGS) -DPKGDATADIR=\"$(pkgdatadir)\"
 LDADD = $(top_builddir)/lib/libintel_tools.la $(DRM_LIBS) $(PCIACCESS_LIBS) $(CAIRO_LIBS) $(LIBUDEV_LIBS) $(LIBUNWIND_LIBS) -lm
 AM_LDFLAGS = -Wl,--as-needed
 
diff --git a/tools/intel_reg.c b/tools/intel_reg.c
index 190aa5b..d8cd7ab 100644
--- a/tools/intel_reg.c
+++ b/tools/intel_reg.c
@@ -713,13 +713,15 @@ static int get_reg_spec_file(char *buf, size_t buflen, const char *dir,
 static int read_reg_spec(struct config *config)
 {
 	char buf[PATH_MAX];
-	char *path;
+	const char *path;
 	struct stat st;
 	int r;
 
 	path = config->specfile;
 	if (!path)
 		path = getenv("INTEL_REG_SPEC");
+	if (!path)
+		path = PKGDATADIR"/registers";
 
 	if (!path)
 		goto builtin;
diff --git a/tools/registers/Makefile.am b/tools/registers/Makefile.am
index 4e1e3c2..14293df 100644
--- a/tools/registers/Makefile.am
+++ b/tools/registers/Makefile.am
@@ -1 +1,2 @@
-EXTRA_DIST = ${REGISTERS_EXTRA_DIST}
+register_definitiondir = ${pkgdatadir}/registers
+dist_register_definition_DATA = ${REGISTER_FILES}
-- 
1.9.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [PATCH i-g-t v2] tools: install the register definition files
  2015-09-04 14:24   ` [PATCH i-g-t] tools: install the register definition files Thomas Wood
@ 2015-09-04 15:44     ` Thomas Wood
  2015-09-07  7:43       ` Jani Nikula
  0 siblings, 1 reply; 8+ messages in thread
From: Thomas Wood @ 2015-09-04 15:44 UTC (permalink / raw)
  To: intel-gfx

Install the register definition files and use them by default in
intel_reg.

v2: remove redundant path check

Suggested-by: Jani Nikula <jani.nikula@linux.intel.com>
Signed-off-by: Thomas Wood <thomas.wood@intel.com>
---
 configure.ac                | 5 +++--
 tools/Makefile.am           | 2 +-
 tools/intel_reg.c           | 4 ++--
 tools/registers/Makefile.am | 3 ++-
 4 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/configure.ac b/configure.ac
index e4515f3..c7cb199 100644
--- a/configure.ac
+++ b/configure.ac
@@ -217,9 +217,10 @@ AC_DEFINE_UNQUOTED(TARGET_CPU_PLATFORM, ["$host_cpu"], [Target platform])
 
 files="broadwell cherryview haswell ivybridge sandybridge valleyview skylake"
 for file in $files; do
-	REGISTERS_EXTRA_DIST="$REGISTERS_EXTRA_DIST $file `tr '\n' ' ' < $srcdir/tools/registers/$file`"
+	REGISTER_FILES="$REGISTER_FILES $file `cat $srcdir/tools/registers/$file`"
 done
-AC_SUBST(REGISTERS_EXTRA_DIST)
+REGISTER_FILES=`echo $REGISTER_FILES | tr ' ' '\n' | sort -u | tr '\n' ' '`
+AC_SUBST(REGISTER_FILES)
 
 AC_CONFIG_FILES([
 		 Makefile
diff --git a/tools/Makefile.am b/tools/Makefile.am
index 95ede58..8e454b4 100644
--- a/tools/Makefile.am
+++ b/tools/Makefile.am
@@ -3,7 +3,7 @@ include Makefile.sources
 SUBDIRS = null_state_gen registers
 
 AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/lib
-AM_CFLAGS = $(DEBUG_CFLAGS) $(DRM_CFLAGS) $(PCIACCESS_CFLAGS) $(CWARNFLAGS) $(CAIRO_CFLAGS) $(LIBUNWIND_CFLAGS)
+AM_CFLAGS = $(DEBUG_CFLAGS) $(DRM_CFLAGS) $(PCIACCESS_CFLAGS) $(CWARNFLAGS) $(CAIRO_CFLAGS) $(LIBUNWIND_CFLAGS) -DPKGDATADIR=\"$(pkgdatadir)\"
 LDADD = $(top_builddir)/lib/libintel_tools.la $(DRM_LIBS) $(PCIACCESS_LIBS) $(CAIRO_LIBS) $(LIBUDEV_LIBS) $(LIBUNWIND_LIBS) -lm
 AM_LDFLAGS = -Wl,--as-needed
 
diff --git a/tools/intel_reg.c b/tools/intel_reg.c
index 190aa5b..95760db 100644
--- a/tools/intel_reg.c
+++ b/tools/intel_reg.c
@@ -713,7 +713,7 @@ static int get_reg_spec_file(char *buf, size_t buflen, const char *dir,
 static int read_reg_spec(struct config *config)
 {
 	char buf[PATH_MAX];
-	char *path;
+	const char *path;
 	struct stat st;
 	int r;
 
@@ -722,7 +722,7 @@ static int read_reg_spec(struct config *config)
 		path = getenv("INTEL_REG_SPEC");
 
 	if (!path)
-		goto builtin;
+		path = PKGDATADIR"/registers";
 
 	r = stat(path, &st);
 	if (r) {
diff --git a/tools/registers/Makefile.am b/tools/registers/Makefile.am
index 4e1e3c2..14293df 100644
--- a/tools/registers/Makefile.am
+++ b/tools/registers/Makefile.am
@@ -1 +1,2 @@
-EXTRA_DIST = ${REGISTERS_EXTRA_DIST}
+register_definitiondir = ${pkgdatadir}/registers
+dist_register_definition_DATA = ${REGISTER_FILES}
-- 
1.9.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [PATCH i-g-t v2] tools: install the register definition files
  2015-09-04 15:44     ` [PATCH i-g-t v2] " Thomas Wood
@ 2015-09-07  7:43       ` Jani Nikula
  0 siblings, 0 replies; 8+ messages in thread
From: Jani Nikula @ 2015-09-07  7:43 UTC (permalink / raw)
  To: Thomas Wood, intel-gfx

On Fri, 04 Sep 2015, Thomas Wood <thomas.wood@intel.com> wrote:
> Install the register definition files and use them by default in
> intel_reg.
>
> v2: remove redundant path check
>
> Suggested-by: Jani Nikula <jani.nikula@linux.intel.com>
> Signed-off-by: Thomas Wood <thomas.wood@intel.com>

LGTM, though I wouldn't trust my review of autotools changes. ;)

BR,
Jani.


> ---
>  configure.ac                | 5 +++--
>  tools/Makefile.am           | 2 +-
>  tools/intel_reg.c           | 4 ++--
>  tools/registers/Makefile.am | 3 ++-
>  4 files changed, 8 insertions(+), 6 deletions(-)
>
> diff --git a/configure.ac b/configure.ac
> index e4515f3..c7cb199 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -217,9 +217,10 @@ AC_DEFINE_UNQUOTED(TARGET_CPU_PLATFORM, ["$host_cpu"], [Target platform])
>  
>  files="broadwell cherryview haswell ivybridge sandybridge valleyview skylake"
>  for file in $files; do
> -	REGISTERS_EXTRA_DIST="$REGISTERS_EXTRA_DIST $file `tr '\n' ' ' < $srcdir/tools/registers/$file`"
> +	REGISTER_FILES="$REGISTER_FILES $file `cat $srcdir/tools/registers/$file`"
>  done
> -AC_SUBST(REGISTERS_EXTRA_DIST)
> +REGISTER_FILES=`echo $REGISTER_FILES | tr ' ' '\n' | sort -u | tr '\n' ' '`
> +AC_SUBST(REGISTER_FILES)
>  
>  AC_CONFIG_FILES([
>  		 Makefile
> diff --git a/tools/Makefile.am b/tools/Makefile.am
> index 95ede58..8e454b4 100644
> --- a/tools/Makefile.am
> +++ b/tools/Makefile.am
> @@ -3,7 +3,7 @@ include Makefile.sources
>  SUBDIRS = null_state_gen registers
>  
>  AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/lib
> -AM_CFLAGS = $(DEBUG_CFLAGS) $(DRM_CFLAGS) $(PCIACCESS_CFLAGS) $(CWARNFLAGS) $(CAIRO_CFLAGS) $(LIBUNWIND_CFLAGS)
> +AM_CFLAGS = $(DEBUG_CFLAGS) $(DRM_CFLAGS) $(PCIACCESS_CFLAGS) $(CWARNFLAGS) $(CAIRO_CFLAGS) $(LIBUNWIND_CFLAGS) -DPKGDATADIR=\"$(pkgdatadir)\"
>  LDADD = $(top_builddir)/lib/libintel_tools.la $(DRM_LIBS) $(PCIACCESS_LIBS) $(CAIRO_LIBS) $(LIBUDEV_LIBS) $(LIBUNWIND_LIBS) -lm
>  AM_LDFLAGS = -Wl,--as-needed
>  
> diff --git a/tools/intel_reg.c b/tools/intel_reg.c
> index 190aa5b..95760db 100644
> --- a/tools/intel_reg.c
> +++ b/tools/intel_reg.c
> @@ -713,7 +713,7 @@ static int get_reg_spec_file(char *buf, size_t buflen, const char *dir,
>  static int read_reg_spec(struct config *config)
>  {
>  	char buf[PATH_MAX];
> -	char *path;
> +	const char *path;
>  	struct stat st;
>  	int r;
>  
> @@ -722,7 +722,7 @@ static int read_reg_spec(struct config *config)
>  		path = getenv("INTEL_REG_SPEC");
>  
>  	if (!path)
> -		goto builtin;
> +		path = PKGDATADIR"/registers";
>  
>  	r = stat(path, &st);
>  	if (r) {
> diff --git a/tools/registers/Makefile.am b/tools/registers/Makefile.am
> index 4e1e3c2..14293df 100644
> --- a/tools/registers/Makefile.am
> +++ b/tools/registers/Makefile.am
> @@ -1 +1,2 @@
> -EXTRA_DIST = ${REGISTERS_EXTRA_DIST}
> +register_definitiondir = ${pkgdatadir}/registers
> +dist_register_definition_DATA = ${REGISTER_FILES}
> -- 
> 1.9.1
>

-- 
Jani Nikula, Intel Open Source Technology Center
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2015-09-07  7:40 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-09-04 10:22 [PATCH i-g-t] tools: remove quick_dump Thomas Wood
2015-09-04 11:38 ` Ville Syrjälä
2015-09-04 11:48   ` Ville Syrjälä
2015-09-04 11:55   ` Jani Nikula
2015-09-04 11:53 ` Jani Nikula
2015-09-04 14:24   ` [PATCH i-g-t] tools: install the register definition files Thomas Wood
2015-09-04 15:44     ` [PATCH i-g-t v2] " Thomas Wood
2015-09-07  7:43       ` Jani Nikula

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.