diff options
| author | Yuriy Kolerov <yuriy.kolerov@synopsys.com> | 2016-11-08 02:08:31 -0500 |
|---|---|---|
| committer | Vineet Gupta <vgupta@synopsys.com> | 2016-11-08 15:05:10 -0500 |
| commit | 34e71e4cbb8eb467dbcfb3afbd2b95ff2b08f482 (patch) | |
| tree | 966bf5fe9c434972a1a6be5b37653c65b1ecaeb2 /arch/arc/include/asm | |
| parent | 19dbc76228899be555b84a09fd3a364c2ce86bbb (diff) | |
ARC: IRQ: Do not use hwirq as virq and vice versa
This came up when reviewing code to address missing IRQ affinity
setting in AXS103 platform and/or implementing hierarchical IRQ domains
- smp_ipi_irq_setup() callers pass hwirq but in turn calls
request_percpu_irq() which expects a linux virq. So invoke
irq_find_mapping() to do the conversion
(also explicitify this in code by renaming the args appropriately)
- idu_of_init()/idu_cascade_isr() were similarly using linux virq where
hwirq is expected, so do the conversion using irqd_to_hwirq() helper
Signed-off-by: Yuriy Kolerov <yuriy.kolerov@synopsys.com>
[vgupta: made changelog a bit concise a bit]
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Diffstat (limited to 'arch/arc/include/asm')
| -rw-r--r-- | arch/arc/include/asm/smp.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/arc/include/asm/smp.h b/arch/arc/include/asm/smp.h index 89fdd1b0a76e..0861007d9ef3 100644 --- a/arch/arc/include/asm/smp.h +++ b/arch/arc/include/asm/smp.h | |||
| @@ -37,9 +37,9 @@ extern const char *arc_platform_smp_cpuinfo(void); | |||
| 37 | * API expected BY platform smp code (FROM arch smp code) | 37 | * API expected BY platform smp code (FROM arch smp code) |
| 38 | * | 38 | * |
| 39 | * smp_ipi_irq_setup: | 39 | * smp_ipi_irq_setup: |
| 40 | * Takes @cpu and @irq to which the arch-common ISR is hooked up | 40 | * Takes @cpu and @hwirq to which the arch-common ISR is hooked up |
| 41 | */ | 41 | */ |
| 42 | extern int smp_ipi_irq_setup(int cpu, int irq); | 42 | extern int smp_ipi_irq_setup(int cpu, irq_hw_number_t hwirq); |
| 43 | 43 | ||
| 44 | /* | 44 | /* |
| 45 | * struct plat_smp_ops - SMP callbacks provided by platform to ARC SMP | 45 | * struct plat_smp_ops - SMP callbacks provided by platform to ARC SMP |
