diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2016-05-16 19:50:38 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2016-05-16 19:50:38 -0400 |
commit | ce6a01c2d50e1d400cb6d492841f9b1932034fc2 (patch) | |
tree | 16a8fd6f9250b019daa9afaacb33fe42e2d01a74 | |
parent | bc231d9ede99518b67a77544d9084f15b898fe2e (diff) | |
parent | 096a8b6d5e7ab9f8ca3d2474b3ca6a1fe79e0371 (diff) |
Merge tag 'metag-for-v4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/metag
Pull metag architecture updates from James Hogan:
"Three minor fixes:
- removal of stale comment
- fix build for Meta1 when perf events are enabled
- fix inline asm constraint in atomics"
* tag 'metag-for-v4.7' of git://git.kernel.org/pub/scm/linux/kernel/git/jhogan/metag:
metag: Fix atomic_*_return inline asm constraints
metag: perf: fix build on Meta1
metag: ftrace: remove the misleading comment for ftrace_dyn_arch_init
-rw-r--r-- | arch/metag/include/asm/atomic_lnkget.h | 2 | ||||
-rw-r--r-- | arch/metag/kernel/ftrace.c | 1 | ||||
-rw-r--r-- | arch/metag/kernel/perf/perf_event.c | 3 |
3 files changed, 4 insertions, 2 deletions
diff --git a/arch/metag/include/asm/atomic_lnkget.h b/arch/metag/include/asm/atomic_lnkget.h index a62581815624..88fa25fae8bd 100644 --- a/arch/metag/include/asm/atomic_lnkget.h +++ b/arch/metag/include/asm/atomic_lnkget.h | |||
@@ -61,7 +61,7 @@ static inline int atomic_##op##_return(int i, atomic_t *v) \ | |||
61 | " CMPT %0, #HI(0x02000000)\n" \ | 61 | " CMPT %0, #HI(0x02000000)\n" \ |
62 | " BNZ 1b\n" \ | 62 | " BNZ 1b\n" \ |
63 | : "=&d" (temp), "=&da" (result) \ | 63 | : "=&d" (temp), "=&da" (result) \ |
64 | : "da" (&v->counter), "bd" (i) \ | 64 | : "da" (&v->counter), "br" (i) \ |
65 | : "cc"); \ | 65 | : "cc"); \ |
66 | \ | 66 | \ |
67 | smp_mb(); \ | 67 | smp_mb(); \ |
diff --git a/arch/metag/kernel/ftrace.c b/arch/metag/kernel/ftrace.c index ac8c039b0318..f7b23d300881 100644 --- a/arch/metag/kernel/ftrace.c +++ b/arch/metag/kernel/ftrace.c | |||
@@ -115,7 +115,6 @@ int ftrace_make_call(struct dyn_ftrace *rec, unsigned long addr) | |||
115 | return ftrace_modify_code(ip, old, new); | 115 | return ftrace_modify_code(ip, old, new); |
116 | } | 116 | } |
117 | 117 | ||
118 | /* run from kstop_machine */ | ||
119 | int __init ftrace_dyn_arch_init(void) | 118 | int __init ftrace_dyn_arch_init(void) |
120 | { | 119 | { |
121 | return 0; | 120 | return 0; |
diff --git a/arch/metag/kernel/perf/perf_event.c b/arch/metag/kernel/perf/perf_event.c index 2478ec6d23c9..33a365f924be 100644 --- a/arch/metag/kernel/perf/perf_event.c +++ b/arch/metag/kernel/perf/perf_event.c | |||
@@ -618,6 +618,8 @@ static void metag_pmu_enable_counter(struct hw_perf_event *event, int idx) | |||
618 | 618 | ||
619 | /* Check for a core internal or performance channel event. */ | 619 | /* Check for a core internal or performance channel event. */ |
620 | if (tmp) { | 620 | if (tmp) { |
621 | /* PERF_ICORE/PERF_CHAN only exist since Meta2 */ | ||
622 | #ifdef METAC_2_1 | ||
621 | void *perf_addr; | 623 | void *perf_addr; |
622 | 624 | ||
623 | /* | 625 | /* |
@@ -640,6 +642,7 @@ static void metag_pmu_enable_counter(struct hw_perf_event *event, int idx) | |||
640 | 642 | ||
641 | if (perf_addr) | 643 | if (perf_addr) |
642 | metag_out32((config & 0x0f), perf_addr); | 644 | metag_out32((config & 0x0f), perf_addr); |
645 | #endif | ||
643 | 646 | ||
644 | /* | 647 | /* |
645 | * Now we use the high nibble as the performance event to | 648 | * Now we use the high nibble as the performance event to |