diff options
-rw-r--r-- | meta/conf/distro/poky.conf | 2 | ||||
-rw-r--r-- | meta/packages/oprofile/oprofile/armv6_events.patch | 142 |
2 files changed, 64 insertions, 80 deletions
diff --git a/meta/conf/distro/poky.conf b/meta/conf/distro/poky.conf index 111adaf126..4a17dea53e 100644 --- a/meta/conf/distro/poky.conf +++ b/meta/conf/distro/poky.conf | |||
@@ -100,7 +100,7 @@ SRCDATE_libfakekey ?= "20051101" | |||
100 | SRCDATE_xcalibrate ?= "20060312" | 100 | SRCDATE_xcalibrate ?= "20060312" |
101 | SRCDATE_qemu ?= "20060723" | 101 | SRCDATE_qemu ?= "20060723" |
102 | SRCDATE_qemu-native ?= "20060723" | 102 | SRCDATE_qemu-native ?= "20060723" |
103 | SRCDATE_oprofile ?= "20070522" | 103 | SRCDATE_oprofile ?= "20070524" |
104 | SRCDATE_oprofileui ?= "20070522" | 104 | SRCDATE_oprofileui ?= "20070522" |
105 | SRCDATE_zaurusd ?= "20070417" | 105 | SRCDATE_zaurusd ?= "20070417" |
106 | SRCDATE_owl-video-widget ?= "20070417" | 106 | SRCDATE_owl-video-widget ?= "20070417" |
diff --git a/meta/packages/oprofile/oprofile/armv6_events.patch b/meta/packages/oprofile/oprofile/armv6_events.patch index 6384e38e55..cbe6efef8e 100644 --- a/meta/packages/oprofile/oprofile/armv6_events.patch +++ b/meta/packages/oprofile/oprofile/armv6_events.patch | |||
@@ -1,50 +1,28 @@ | |||
1 | --- | 1 | --- |
2 | events/Makefile.am | 1 + | 2 | events/arm/armv6/events | 9 ++++++--- |
3 | events/arm/armv6/events | 25 +++++++++++++++++++++++++ | 3 | events/arm/armv6/unit_masks | 2 +- |
4 | events/arm/armv6/unit_masks | 4 ++++ | 4 | libop/op_cpu_type.c | 2 +- |
5 | libop/op_cpu_type.c | 1 + | 5 | libop/op_cpu_type.h | 2 +- |
6 | libop/op_cpu_type.h | 1 + | 6 | libop/op_events.c | 5 +---- |
7 | libop/op_events.c | 1 + | 7 | utils/ophelp.c | 2 +- |
8 | utils/ophelp.c | 5 ++++- | 8 | 6 files changed, 11 insertions(+), 11 deletions(-) |
9 | 7 files changed, 37 insertions(+), 1 deletion(-) | ||
10 | 9 | ||
11 | Index: oprofile/events/Makefile.am | ||
12 | =================================================================== | ||
13 | --- oprofile.orig/events/Makefile.am 2007-05-23 11:32:24.000000000 +0100 | ||
14 | +++ oprofile/events/Makefile.am 2007-05-23 14:13:12.000000000 +0100 | ||
15 | @@ -29,6 +29,7 @@ event_files = \ | ||
16 | x86-64/family10/events x86-64/family10/unit_masks \ | ||
17 | arm/xscale1/events arm/xscale1/unit_masks \ | ||
18 | arm/xscale2/events arm/xscale2/unit_masks \ | ||
19 | + arm/armv6/events arm/armv6/unit_masks \ | ||
20 | mips/20K/events mips/20K/unit_masks \ | ||
21 | mips/24K/events mips/24K/unit_masks \ | ||
22 | mips/25K/events mips/25K/unit_masks \ | ||
23 | Index: oprofile/events/arm/armv6/events | 10 | Index: oprofile/events/arm/armv6/events |
24 | =================================================================== | 11 | =================================================================== |
25 | --- /dev/null 1970-01-01 00:00:00.000000000 +0000 | 12 | --- oprofile.orig/events/arm/armv6/events 2007-05-23 15:02:33.000000000 +0100 |
26 | +++ oprofile/events/arm/armv6/events 2007-05-23 14:13:12.000000000 +0100 | 13 | +++ oprofile/events/arm/armv6/events 2007-05-24 00:33:41.000000000 +0100 |
27 | @@ -0,0 +1,25 @@ | 14 | @@ -1,4 +1,4 @@ |
15 | -# ARM11 events | ||
28 | +# ARM V6 events | 16 | +# ARM V6 events |
29 | +# | 17 | # |
30 | +event:0x00 counters:1,2 um:zero minimum:500 name:IFU_IFETCH_MISS : number of instruction fetch misses | 18 | event:0x00 counters:1,2 um:zero minimum:500 name:IFU_IFETCH_MISS : number of instruction fetch misses |
31 | +event:0x01 counters:1,2 um:zero minimum:500 name:CYCLES_IFU_MEM_STALL : cycles instruction fetch pipe is stalled | 19 | event:0x01 counters:1,2 um:zero minimum:500 name:CYCLES_IFU_MEM_STALL : cycles instruction fetch pipe is stalled |
32 | +event:0x02 counters:1,2 um:zero minimum:500 name:CYCLES_DATA_STALL : cycles stall occurs for due to data dependency | 20 | @@ -17,5 +17,8 @@ event:0x0f counters:1,2 um:zero minimum: |
33 | +event:0x03 counters:1,2 um:zero minimum:500 name:ITLB_MISS : number of ITLB misses | 21 | event:0x10 counters:1,2 um:zero minimum:500 name:EXP_EXTERNAL : Explict external data access |
34 | +event:0x04 counters:1,2 um:zero minimum:500 name:DTLB_MISS : number of DTLB misses | 22 | event:0x11 counters:1,2 um:zero minimum:500 name:LSU_STALL : cycles stalled because Load Store request queque is full |
35 | +event:0x05 counters:1,2 um:zero minimum:500 name:BR_INST_EXECUTED : branch instruction executed w/ or w/o program flow change | 23 | event:0x12 counters:1,2 um:zero minimum:500 name:WRITE_DRAIN : Times write buffer was drained |
36 | +event:0x06 counters:1,2 um:zero minimum:500 name:BR_INST_MISS_PRED : branch mispredicted | 24 | -event:0xff counters:0 um:zero minimum:500 name:CPU_CYCLES : clock cycles counter |
37 | +event:0x07 counters:1,2 um:zero minimum:500 name:INSN_EXECUTED : instruction executed | 25 | -# |
38 | +event:0x08 counters:1,2 um:zero minimum:500 name:CYCLES_DCACHE_FULL_STALL : cycles in stall due to full dcache | ||
39 | +event:0x09 counters:1,1 um:zero minimum:500 name:DCACHE_FULL_STALL_CNT : number of stalls due to dcache full condition | ||
40 | +event:0x0a counters:1,2 um:zero minimum:500 name:DCACHE_ACCESS : data cache access | ||
41 | +event:0x0b counters:1,2 um:zero minimum:500 name:DCACHE_MISS : data cache miss | ||
42 | +event:0x0c counters:1,2 um:zero minimum:500 name:DCACHE_WB : data cache writeback, 1 event for every half cacheline | ||
43 | +event:0x0d counters:1,2 um:zero minimum:500 name:PC_CHANGE : number of times the program counter was changed without a mode switch | ||
44 | +event:0x0f counters:1,2 um:zero minimum:500 name:TLB_MISS : Main TLB miss | ||
45 | +event:0x10 counters:1,2 um:zero minimum:500 name:EXP_EXTERNAL : Explict external data access | ||
46 | +event:0x11 counters:1,2 um:zero minimum:500 name:LSU_STALL : cycles stalled because Load Store request queque is full | ||
47 | +event:0x12 counters:1,2 um:zero minimum:500 name:WRITE_DRAIN : Time swrite buffer was drained | ||
48 | +event:0x20 counters:1,2 um:zero minimum:500 name:ETMEXTOUT0 : nuber of cycles ETMEXTOUT[0] signal was asserted | 26 | +event:0x20 counters:1,2 um:zero minimum:500 name:ETMEXTOUT0 : nuber of cycles ETMEXTOUT[0] signal was asserted |
49 | +event:0x21 counters:1,2 um:zero minimum:500 name:ETMEXTOUT1 : nuber of cycles ETMEXTOUT[1] signal was asserted | 27 | +event:0x21 counters:1,2 um:zero minimum:500 name:ETMEXTOUT1 : nuber of cycles ETMEXTOUT[1] signal was asserted |
50 | +event:0x22 counters:1,2 um:zero minimum:500 name:ETMEXTOUT_BOTH : nuber of cycles both ETMEXTOUT [0] and [1] were asserted * 2 | 28 | +event:0x22 counters:1,2 um:zero minimum:500 name:ETMEXTOUT_BOTH : nuber of cycles both ETMEXTOUT [0] and [1] were asserted * 2 |
@@ -52,67 +30,73 @@ Index: oprofile/events/arm/armv6/events | |||
52 | +event:0xfe counters:0 um:zero minimum:500 name:CPU_CYCLES : clock cycles counter | 30 | +event:0xfe counters:0 um:zero minimum:500 name:CPU_CYCLES : clock cycles counter |
53 | Index: oprofile/events/arm/armv6/unit_masks | 31 | Index: oprofile/events/arm/armv6/unit_masks |
54 | =================================================================== | 32 | =================================================================== |
55 | --- /dev/null 1970-01-01 00:00:00.000000000 +0000 | 33 | --- oprofile.orig/events/arm/armv6/unit_masks 2007-05-23 15:02:33.000000000 +0100 |
56 | +++ oprofile/events/arm/armv6/unit_masks 2007-05-23 14:13:12.000000000 +0100 | 34 | +++ oprofile/events/arm/armv6/unit_masks 2007-05-23 15:28:24.000000000 +0100 |
57 | @@ -0,0 +1,4 @@ | 35 | @@ -1,4 +1,4 @@ |
36 | -# Arm11 possible unit masks | ||
58 | +# ARM V6 PMU possible unit masks | 37 | +# ARM V6 PMU possible unit masks |
59 | +# | 38 | # |
60 | +name:zero type:mandatory default:0x00 | 39 | name:zero type:mandatory default:0x00 |
61 | + 0x00 No unit mask | 40 | 0x00 No unit mask |
62 | Index: oprofile/libop/op_cpu_type.c | 41 | Index: oprofile/libop/op_cpu_type.c |
63 | =================================================================== | 42 | =================================================================== |
64 | --- oprofile.orig/libop/op_cpu_type.c 2007-05-23 11:32:35.000000000 +0100 | 43 | --- oprofile.orig/libop/op_cpu_type.c 2007-05-24 00:17:01.000000000 +0100 |
65 | +++ oprofile/libop/op_cpu_type.c 2007-05-23 14:13:12.000000000 +0100 | 44 | +++ oprofile/libop/op_cpu_type.c 2007-05-24 00:26:34.000000000 +0100 |
66 | @@ -69,6 +69,7 @@ static struct cpu_descr const cpu_descrs | 45 | @@ -70,7 +70,7 @@ static struct cpu_descr const cpu_descrs |
67 | { "ppc64 Cell Broadband Engine", "ppc64/cell-be", CPU_PPC64_CELL, 8 }, | ||
68 | { "AMD64 family10", "x86-64/family10", CPU_FAMILY10, 4 }, | 46 | { "AMD64 family10", "x86-64/family10", CPU_FAMILY10, 4 }, |
69 | { "ppc64 PA6T", "ppc64/pa6t", CPU_PPC64_PA6T, 6 }, | 47 | { "ppc64 PA6T", "ppc64/pa6t", CPU_PPC64_PA6T, 6 }, |
70 | + { "ARM/V6 PMU", "arm/armv6", CPU_ARM_V6, 3 }, | 48 | { "ARM MPCore", "arm/mpcore", CPU_ARM_MPCORE, 2 }, |
49 | - { "ARM11 PMU", "arm/armv6", CPU_ARM_ARM11, 3 }, | ||
50 | + { "ARM V6 PMU", "arm/armv6", CPU_ARM_V6, 3 }, | ||
71 | }; | 51 | }; |
72 | 52 | ||
73 | static size_t const nr_cpu_descrs = sizeof(cpu_descrs) / sizeof(struct cpu_descr); | 53 | static size_t const nr_cpu_descrs = sizeof(cpu_descrs) / sizeof(struct cpu_descr); |
74 | Index: oprofile/libop/op_cpu_type.h | 54 | Index: oprofile/libop/op_cpu_type.h |
75 | =================================================================== | 55 | =================================================================== |
76 | --- oprofile.orig/libop/op_cpu_type.h 2007-05-23 11:32:35.000000000 +0100 | 56 | --- oprofile.orig/libop/op_cpu_type.h 2007-05-24 00:17:01.000000000 +0100 |
77 | +++ oprofile/libop/op_cpu_type.h 2007-05-23 14:13:12.000000000 +0100 | 57 | +++ oprofile/libop/op_cpu_type.h 2007-05-24 00:26:50.000000000 +0100 |
78 | @@ -67,6 +67,7 @@ typedef enum { | 58 | @@ -68,7 +68,7 @@ typedef enum { |
79 | CPU_PPC64_CELL, /**< ppc64 Cell Broadband Engine*/ | ||
80 | CPU_FAMILY10, /**< AMD family 10 */ | 59 | CPU_FAMILY10, /**< AMD family 10 */ |
81 | CPU_PPC64_PA6T, /**< ppc64 PA6T */ | 60 | CPU_PPC64_PA6T, /**< ppc64 PA6T */ |
82 | + CPU_ARM_V6, /**< ARM V6 PMU */ | 61 | CPU_ARM_MPCORE, /**< ARM MPCore */ |
62 | - CPU_ARM_ARM11, /**< ARM11 */ | ||
63 | + CPU_ARM_V6, /**< ARM V6 */ | ||
83 | MAX_CPU_TYPE | 64 | MAX_CPU_TYPE |
84 | } op_cpu; | 65 | } op_cpu; |
85 | 66 | ||
86 | Index: oprofile/libop/op_events.c | 67 | Index: oprofile/libop/op_events.c |
87 | =================================================================== | 68 | =================================================================== |
88 | --- oprofile.orig/libop/op_events.c 2007-05-23 11:32:35.000000000 +0100 | 69 | --- oprofile.orig/libop/op_events.c 2007-05-24 00:17:01.000000000 +0100 |
89 | +++ oprofile/libop/op_events.c 2007-05-23 14:13:12.000000000 +0100 | 70 | +++ oprofile/libop/op_events.c 2007-05-24 00:27:49.000000000 +0100 |
90 | @@ -785,6 +785,7 @@ void op_default_event(op_cpu cpu_type, s | 71 | @@ -786,6 +786,7 @@ void op_default_event(op_cpu cpu_type, s |
91 | // we could possibly use the CCNT | ||
92 | case CPU_ARM_XSCALE1: | 72 | case CPU_ARM_XSCALE1: |
93 | case CPU_ARM_XSCALE2: | 73 | case CPU_ARM_XSCALE2: |
74 | case CPU_ARM_MPCORE: | ||
94 | + case CPU_ARM_V6: | 75 | + case CPU_ARM_V6: |
95 | descr->name = "CPU_CYCLES"; | 76 | descr->name = "CPU_CYCLES"; |
96 | break; | 77 | break; |
97 | 78 | ||
79 | @@ -842,10 +843,6 @@ void op_default_event(op_cpu cpu_type, s | ||
80 | descr->name = "CPU_CLK"; | ||
81 | break; | ||
82 | |||
83 | - case CPU_ARM_ARM11: | ||
84 | - descr->name = "CPU_CYCLES"; | ||
85 | - break; | ||
86 | - | ||
87 | // don't use default, if someone add a cpu he wants a compiler | ||
88 | // warning if he forgets to handle it here. | ||
89 | case CPU_TIMER_INT: | ||
98 | Index: oprofile/utils/ophelp.c | 90 | Index: oprofile/utils/ophelp.c |
99 | =================================================================== | 91 | =================================================================== |
100 | --- oprofile.orig/utils/ophelp.c 2007-05-23 11:32:45.000000000 +0100 | 92 | --- oprofile.orig/utils/ophelp.c 2007-05-24 00:17:12.000000000 +0100 |
101 | +++ oprofile/utils/ophelp.c 2007-05-23 14:16:33.000000000 +0100 | 93 | +++ oprofile/utils/ophelp.c 2007-05-24 00:26:08.000000000 +0100 |
102 | @@ -424,12 +424,15 @@ int main(int argc, char const * argv[]) | 94 | @@ -429,7 +429,7 @@ int main(int argc, char const * argv[]) |
103 | printf("See Intel XScale Core Developer's Manual\n" | 95 | "Page 3-70, performance counters\n"); |
104 | "Chapter 8 Performance Monitoring\n"); | ||
105 | break; | ||
106 | + | ||
107 | + case CPU_ARM_V6: | ||
108 | + printf("See ARM11 Technical Reference Manual\n"); | ||
109 | break; | 96 | break; |
110 | 97 | ||
111 | case CPU_PPC64_PA6T: | 98 | - case CPU_ARM_ARM11: |
112 | printf("See PA6T Power Implementation Features Book IV\n" | 99 | + case CPU_ARM_V6: |
113 | "Chapter 7 Performance Counters\n"); | 100 | printf("See ARM11 Technical Reference Manual\n"); |
114 | - break; | 101 | break; |
115 | + break; | ||
116 | 102 | ||
117 | case CPU_PPC64_POWER4: | ||
118 | case CPU_PPC64_POWER5: | ||