ALSA: hda - Adding one more ALC255 pin definition for headset problem
[linux/fpc-iii.git] / tools / testing / selftests / powerpc / utils.h
blobfbd33e52ef8f922a6ae0f94740b8c02ea7a12397
1 /*
2 * Copyright 2013, Michael Ellerman, IBM Corp.
3 * Licensed under GPLv2.
4 */
6 #ifndef _SELFTESTS_POWERPC_UTILS_H
7 #define _SELFTESTS_POWERPC_UTILS_H
9 #define __cacheline_aligned __attribute__((aligned(128)))
11 #include <stdint.h>
12 #include <stdbool.h>
13 #include <linux/auxvec.h>
14 #include "reg.h"
16 /* Avoid headaches with PRI?64 - just use %ll? always */
17 typedef unsigned long long u64;
18 typedef signed long long s64;
20 /* Just for familiarity */
21 typedef uint32_t u32;
22 typedef uint16_t u16;
23 typedef uint8_t u8;
26 int test_harness(int (test_function)(void), char *name);
27 extern void *get_auxv_entry(int type);
28 int pick_online_cpu(void);
30 static inline bool have_hwcap(unsigned long ftr)
32 return ((unsigned long)get_auxv_entry(AT_HWCAP) & ftr) == ftr;
35 static inline bool have_hwcap2(unsigned long ftr2)
37 return ((unsigned long)get_auxv_entry(AT_HWCAP2) & ftr2) == ftr2;
40 /* Yes, this is evil */
41 #define FAIL_IF(x) \
42 do { \
43 if ((x)) { \
44 fprintf(stderr, \
45 "[FAIL] Test FAILED on line %d\n", __LINE__); \
46 return 1; \
47 } \
48 } while (0)
50 /* The test harness uses this, yes it's gross */
51 #define MAGIC_SKIP_RETURN_VALUE 99
53 #define SKIP_IF(x) \
54 do { \
55 if ((x)) { \
56 fprintf(stderr, \
57 "[SKIP] Test skipped on line %d\n", __LINE__); \
58 return MAGIC_SKIP_RETURN_VALUE; \
59 } \
60 } while (0)
62 #define _str(s) #s
63 #define str(s) _str(s)
65 /* POWER9 feature */
66 #ifndef PPC_FEATURE2_ARCH_3_00
67 #define PPC_FEATURE2_ARCH_3_00 0x00800000
68 #endif
70 #endif /* _SELFTESTS_POWERPC_UTILS_H */