diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/amba/bus.h | 2 | ||||
-rw-r--r-- | include/linux/irqchip/arm-gic.h | 7 | ||||
-rw-r--r-- | include/trace/events/power_cpu_migrate.h | 67 |
3 files changed, 75 insertions, 1 deletions
diff --git a/include/linux/amba/bus.h b/include/linux/amba/bus.h index 682df0e1954a..63b5eff0a80f 100644 --- a/include/linux/amba/bus.h +++ b/include/linux/amba/bus.h | |||
@@ -21,7 +21,7 @@ | |||
21 | #include <linux/resource.h> | 21 | #include <linux/resource.h> |
22 | #include <linux/regulator/consumer.h> | 22 | #include <linux/regulator/consumer.h> |
23 | 23 | ||
24 | #define AMBA_NR_IRQS 2 | 24 | #define AMBA_NR_IRQS 9 |
25 | #define AMBA_CID 0xb105f00d | 25 | #define AMBA_CID 0xb105f00d |
26 | 26 | ||
27 | struct clk; | 27 | struct clk; |
diff --git a/include/linux/irqchip/arm-gic.h b/include/linux/irqchip/arm-gic.h index 0e5d9ecdb2b6..cac496b1e279 100644 --- a/include/linux/irqchip/arm-gic.h +++ b/include/linux/irqchip/arm-gic.h | |||
@@ -31,6 +31,8 @@ | |||
31 | #define GIC_DIST_TARGET 0x800 | 31 | #define GIC_DIST_TARGET 0x800 |
32 | #define GIC_DIST_CONFIG 0xc00 | 32 | #define GIC_DIST_CONFIG 0xc00 |
33 | #define GIC_DIST_SOFTINT 0xf00 | 33 | #define GIC_DIST_SOFTINT 0xf00 |
34 | #define GIC_DIST_SGI_PENDING_CLEAR 0xf10 | ||
35 | #define GIC_DIST_SGI_PENDING_SET 0xf20 | ||
34 | 36 | ||
35 | #define GICH_HCR 0x0 | 37 | #define GICH_HCR 0x0 |
36 | #define GICH_VTR 0x4 | 38 | #define GICH_VTR 0x4 |
@@ -74,6 +76,11 @@ static inline void gic_init(unsigned int nr, int start, | |||
74 | gic_init_bases(nr, start, dist, cpu, 0, NULL); | 76 | gic_init_bases(nr, start, dist, cpu, 0, NULL); |
75 | } | 77 | } |
76 | 78 | ||
79 | void gic_send_sgi(unsigned int cpu_id, unsigned int irq); | ||
80 | int gic_get_cpu_id(unsigned int cpu); | ||
81 | void gic_migrate_target(unsigned int new_cpu_id); | ||
82 | unsigned long gic_get_sgir_physaddr(void); | ||
83 | |||
77 | #endif /* __ASSEMBLY */ | 84 | #endif /* __ASSEMBLY */ |
78 | 85 | ||
79 | #endif | 86 | #endif |
diff --git a/include/trace/events/power_cpu_migrate.h b/include/trace/events/power_cpu_migrate.h new file mode 100644 index 000000000000..f76dd4de625e --- /dev/null +++ b/include/trace/events/power_cpu_migrate.h | |||
@@ -0,0 +1,67 @@ | |||
1 | #undef TRACE_SYSTEM | ||
2 | #define TRACE_SYSTEM power | ||
3 | |||
4 | #if !defined(_TRACE_POWER_CPU_MIGRATE_H) || defined(TRACE_HEADER_MULTI_READ) | ||
5 | #define _TRACE_POWER_CPU_MIGRATE_H | ||
6 | |||
7 | #include <linux/tracepoint.h> | ||
8 | |||
9 | #define __cpu_migrate_proto \ | ||
10 | TP_PROTO(u64 timestamp, \ | ||
11 | u32 cpu_hwid) | ||
12 | #define __cpu_migrate_args \ | ||
13 | TP_ARGS(timestamp, \ | ||
14 | cpu_hwid) | ||
15 | |||
16 | DECLARE_EVENT_CLASS(cpu_migrate, | ||
17 | |||
18 | __cpu_migrate_proto, | ||
19 | __cpu_migrate_args, | ||
20 | |||
21 | TP_STRUCT__entry( | ||
22 | __field(u64, timestamp ) | ||
23 | __field(u32, cpu_hwid ) | ||
24 | ), | ||
25 | |||
26 | TP_fast_assign( | ||
27 | __entry->timestamp = timestamp; | ||
28 | __entry->cpu_hwid = cpu_hwid; | ||
29 | ), | ||
30 | |||
31 | TP_printk("timestamp=%llu cpu_hwid=0x%08lX", | ||
32 | (unsigned long long)__entry->timestamp, | ||
33 | (unsigned long)__entry->cpu_hwid | ||
34 | ) | ||
35 | ); | ||
36 | |||
37 | #define __define_cpu_migrate_event(name) \ | ||
38 | DEFINE_EVENT(cpu_migrate, cpu_migrate_##name, \ | ||
39 | __cpu_migrate_proto, \ | ||
40 | __cpu_migrate_args \ | ||
41 | ) | ||
42 | |||
43 | __define_cpu_migrate_event(begin); | ||
44 | __define_cpu_migrate_event(finish); | ||
45 | __define_cpu_migrate_event(current); | ||
46 | |||
47 | #undef __define_cpu_migrate | ||
48 | #undef __cpu_migrate_proto | ||
49 | #undef __cpu_migrate_args | ||
50 | |||
51 | /* This file can get included multiple times, TRACE_HEADER_MULTI_READ at top */ | ||
52 | #ifndef _PWR_CPU_MIGRATE_EVENT_AVOID_DOUBLE_DEFINING | ||
53 | #define _PWR_CPU_MIGRATE_EVENT_AVOID_DOUBLE_DEFINING | ||
54 | |||
55 | /* | ||
56 | * Set from_phys_cpu and to_phys_cpu to CPU_MIGRATE_ALL_CPUS to indicate | ||
57 | * a whole-cluster migration: | ||
58 | */ | ||
59 | #define CPU_MIGRATE_ALL_CPUS 0x80000000U | ||
60 | #endif | ||
61 | |||
62 | #endif /* _TRACE_POWER_CPU_MIGRATE_H */ | ||
63 | |||
64 | /* This part must be outside protection */ | ||
65 | #undef TRACE_INCLUDE_FILE | ||
66 | #define TRACE_INCLUDE_FILE power_cpu_migrate | ||
67 | #include <trace/define_trace.h> | ||