OSDN Git Service

selftests/powerpc: Make reg.h common to all powerpc selftests
authorRashmica Gupta <rashmicy@gmail.com>
Wed, 23 Dec 2015 05:49:50 +0000 (16:49 +1100)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 11 May 2016 11:54:12 +0000 (21:54 +1000)
Currently there is a reg.h in pmu/ebb that has defines that are useful
in other powerpc selftests so move this up into selftests/powerpc
folder. Also include in utils.h - as this is often used in self tests.
Add in some other useful register defines.

Signed-off-by: Rashmica Gupta <rashmicy@gmail.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
tools/testing/selftests/powerpc/pmu/ebb/ebb.c
tools/testing/selftests/powerpc/pmu/ebb/reg_access_test.c
tools/testing/selftests/powerpc/reg.h [moved from tools/testing/selftests/powerpc/pmu/ebb/reg.h with 74% similarity]
tools/testing/selftests/powerpc/utils.h

index e67452f..46681fe 100644 (file)
@@ -15,7 +15,6 @@
 #include <sys/ioctl.h>
 
 #include "trace.h"
-#include "reg.h"
 #include "ebb.h"
 
 
similarity index 74%
rename from tools/testing/selftests/powerpc/pmu/ebb/reg.h
rename to tools/testing/selftests/powerpc/reg.h
index 5921b0d..65bfdee 100644 (file)
@@ -9,12 +9,12 @@
 #define __stringify_1(x)        #x
 #define __stringify(x)          __stringify_1(x)
 
-#define mfspr(rn)       ({unsigned long rval; \
-                         asm volatile("mfspr %0," __stringify(rn) \
-                                 : "=r" (rval)); rval; })
-#define mtspr(rn, v)    asm volatile("mtspr " __stringify(rn) ",%0" : \
-                                    : "r" ((unsigned long)(v)) \
-                                    : "memory")
+#define mfspr(rn)      ({unsigned long rval; \
+                        asm volatile("mfspr %0," _str(rn) \
+                                   : "=r" (rval)); rval; })
+#define mtspr(rn, v)   asm volatile("mtspr " _str(rn) ",%0" : \
+                                   : "r" ((unsigned long)(v)) \
+                                   : "memory")
 
 #define mb()           asm volatile("sync" : : : "memory");
 
 #define SPRN_SDAR      781
 #define SPRN_SIER      768
 
+#define SPRN_TEXASR     0x82
+#define SPRN_TFIAR      0x81    /* Transaction Failure Inst Addr    */
+#define SPRN_TFHAR      0x80    /* Transaction Failure Handler Addr */
+#define TEXASR_FS       0x08000000
+#define SPRN_TAR        0x32f
+
 #endif /* _SELFTESTS_POWERPC_REG_H */
index 3b370de..a985cfa 100644 (file)
@@ -11,6 +11,7 @@
 #include <stdint.h>
 #include <stdbool.h>
 #include <linux/auxvec.h>
+#include "reg.h"
 
 /* Avoid headaches with PRI?64 - just use %ll? always */
 typedef unsigned long long u64;