diff options
author | Rob Herring <robh@kernel.org> | 2014-05-13 19:34:35 -0400 |
---|---|---|
committer | Rob Herring <robh@kernel.org> | 2014-05-13 19:34:35 -0400 |
commit | eafd370dfe487facfdef499057f4eac9aa0b4bf5 (patch) | |
tree | 0925a67cd658cdf4811f49b4cd2073f663166bd0 /include/linux/interrupt.h | |
parent | c3fc952d2fbe3ec78defd70cf73d5d76d27092ec (diff) | |
parent | fb2caa50fbacd21719a90dd66b617ce3cb4fd6d7 (diff) |
Merge branch 'dt-bus-name' into for-next
Diffstat (limited to 'include/linux/interrupt.h')
-rw-r--r-- | include/linux/interrupt.h | 35 |
1 files changed, 34 insertions, 1 deletions
diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h index c7bfac1c4a7b..97ac926c78a7 100644 --- a/include/linux/interrupt.h +++ b/include/linux/interrupt.h | |||
@@ -203,7 +203,40 @@ static inline int check_wakeup_irqs(void) { return 0; } | |||
203 | 203 | ||
204 | extern cpumask_var_t irq_default_affinity; | 204 | extern cpumask_var_t irq_default_affinity; |
205 | 205 | ||
206 | extern int irq_set_affinity(unsigned int irq, const struct cpumask *cpumask); | 206 | /* Internal implementation. Use the helpers below */ |
207 | extern int __irq_set_affinity(unsigned int irq, const struct cpumask *cpumask, | ||
208 | bool force); | ||
209 | |||
210 | /** | ||
211 | * irq_set_affinity - Set the irq affinity of a given irq | ||
212 | * @irq: Interrupt to set affinity | ||
213 | * @cpumask: cpumask | ||
214 | * | ||
215 | * Fails if cpumask does not contain an online CPU | ||
216 | */ | ||
217 | static inline int | ||
218 | irq_set_affinity(unsigned int irq, const struct cpumask *cpumask) | ||
219 | { | ||
220 | return __irq_set_affinity(irq, cpumask, false); | ||
221 | } | ||
222 | |||
223 | /** | ||
224 | * irq_force_affinity - Force the irq affinity of a given irq | ||
225 | * @irq: Interrupt to set affinity | ||
226 | * @cpumask: cpumask | ||
227 | * | ||
228 | * Same as irq_set_affinity, but without checking the mask against | ||
229 | * online cpus. | ||
230 | * | ||
231 | * Solely for low level cpu hotplug code, where we need to make per | ||
232 | * cpu interrupts affine before the cpu becomes online. | ||
233 | */ | ||
234 | static inline int | ||
235 | irq_force_affinity(unsigned int irq, const struct cpumask *cpumask) | ||
236 | { | ||
237 | return __irq_set_affinity(irq, cpumask, true); | ||
238 | } | ||
239 | |||
207 | extern int irq_can_set_affinity(unsigned int irq); | 240 | extern int irq_can_set_affinity(unsigned int irq); |
208 | extern int irq_select_affinity(unsigned int irq); | 241 | extern int irq_select_affinity(unsigned int irq); |
209 | 242 | ||