diff options
author | Paul Mundt <lethal@linux-sh.org> | 2009-08-21 05:21:07 -0400 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2009-08-21 05:21:07 -0400 |
commit | 64a6d72213dd810dd55bd0a503c36150af41c3c3 (patch) | |
tree | 81f2f6e66d3a38f5cb7a27f0a85b365b25469fe4 /arch/sh/mm/cache-sh2a.c | |
parent | f26b2a562b46ab186c8383993ab1332673ac4a47 (diff) |
sh: Kill off now redundant local irq disabling.
on_each_cpu() takes care of IRQ and preempt handling, the localized
handling in each of the called functions can be killed off.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/mm/cache-sh2a.c')
-rw-r--r-- | arch/sh/mm/cache-sh2a.c | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/arch/sh/mm/cache-sh2a.c b/arch/sh/mm/cache-sh2a.c index 975899d83564..d783361e3f0a 100644 --- a/arch/sh/mm/cache-sh2a.c +++ b/arch/sh/mm/cache-sh2a.c | |||
@@ -102,12 +102,10 @@ static void sh2a_flush_icache_range(void *args) | |||
102 | struct flusher_data *data = args; | 102 | struct flusher_data *data = args; |
103 | unsigned long start, end; | 103 | unsigned long start, end; |
104 | unsigned long v; | 104 | unsigned long v; |
105 | unsigned long flags; | ||
106 | 105 | ||
107 | start = data->addr1 & ~(L1_CACHE_BYTES-1); | 106 | start = data->addr1 & ~(L1_CACHE_BYTES-1); |
108 | end = (data->addr2 + L1_CACHE_BYTES-1) & ~(L1_CACHE_BYTES-1); | 107 | end = (data->addr2 + L1_CACHE_BYTES-1) & ~(L1_CACHE_BYTES-1); |
109 | 108 | ||
110 | local_irq_save(flags); | ||
111 | jump_to_uncached(); | 109 | jump_to_uncached(); |
112 | 110 | ||
113 | for (v = start; v < end; v+=L1_CACHE_BYTES) { | 111 | for (v = start; v < end; v+=L1_CACHE_BYTES) { |
@@ -122,12 +120,10 @@ static void sh2a_flush_icache_range(void *args) | |||
122 | } | 120 | } |
123 | } | 121 | } |
124 | /* I-Cache invalidate */ | 122 | /* I-Cache invalidate */ |
125 | ctrl_outl(addr, | 123 | ctrl_outl(addr, CACHE_IC_ADDRESS_ARRAY | addr | 0x00000008); |
126 | CACHE_IC_ADDRESS_ARRAY | addr | 0x00000008); | ||
127 | } | 124 | } |
128 | 125 | ||
129 | back_to_cached(); | 126 | back_to_cached(); |
130 | local_irq_restore(flags); | ||
131 | } | 127 | } |
132 | 128 | ||
133 | void __init sh2a_cache_init(void) | 129 | void __init sh2a_cache_init(void) |