diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2018-06-10 12:00:13 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2018-06-10 12:00:13 -0400 |
commit | 9f3fbe852a510fbc0782f71e3b767418ed809cf4 (patch) | |
tree | f05559bf784d614630f6729ea318b6775d95718f | |
parent | a8a4021b776b4475e8a4657185a718cdfc07b88c (diff) | |
parent | 0cdd431c337e99177e68597f3de34bedd3a20a74 (diff) |
Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull irq fixes from Thomas Gleixner:
"Two small fixlets:
- Add the missing iomu mapping call in the Freescale/NXP/Qualcomm/
whoever owns it now/ SCFG MSI irqchip driver. Otherwise IRQs wont
work at all.
- Fix a SMP=n build warning in the STM32 irq chip driver"
* 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
irqchip/ls-scfg-msi: Map MSIs in the iommu
irqchip/stm32: Fix non-SMP build warning
-rw-r--r-- | drivers/irqchip/irq-ls-scfg-msi.c | 3 | ||||
-rw-r--r-- | drivers/irqchip/irq-stm32-exti.c | 4 |
2 files changed, 4 insertions, 3 deletions
diff --git a/drivers/irqchip/irq-ls-scfg-msi.c b/drivers/irqchip/irq-ls-scfg-msi.c index 57e3d900f19e..1ec3bfe56693 100644 --- a/drivers/irqchip/irq-ls-scfg-msi.c +++ b/drivers/irqchip/irq-ls-scfg-msi.c | |||
@@ -21,6 +21,7 @@ | |||
21 | #include <linux/of_pci.h> | 21 | #include <linux/of_pci.h> |
22 | #include <linux/of_platform.h> | 22 | #include <linux/of_platform.h> |
23 | #include <linux/spinlock.h> | 23 | #include <linux/spinlock.h> |
24 | #include <linux/dma-iommu.h> | ||
24 | 25 | ||
25 | #define MSI_IRQS_PER_MSIR 32 | 26 | #define MSI_IRQS_PER_MSIR 32 |
26 | #define MSI_MSIR_OFFSET 4 | 27 | #define MSI_MSIR_OFFSET 4 |
@@ -94,6 +95,8 @@ static void ls_scfg_msi_compose_msg(struct irq_data *data, struct msi_msg *msg) | |||
94 | 95 | ||
95 | if (msi_affinity_flag) | 96 | if (msi_affinity_flag) |
96 | msg->data |= cpumask_first(data->common->affinity); | 97 | msg->data |= cpumask_first(data->common->affinity); |
98 | |||
99 | iommu_dma_map_msi_msg(data->irq, msg); | ||
97 | } | 100 | } |
98 | 101 | ||
99 | static int ls_scfg_msi_set_affinity(struct irq_data *irq_data, | 102 | static int ls_scfg_msi_set_affinity(struct irq_data *irq_data, |
diff --git a/drivers/irqchip/irq-stm32-exti.c b/drivers/irqchip/irq-stm32-exti.c index 5089c1e2838d..3a7e8905a97e 100644 --- a/drivers/irqchip/irq-stm32-exti.c +++ b/drivers/irqchip/irq-stm32-exti.c | |||
@@ -552,9 +552,7 @@ static struct irq_chip stm32_exti_h_chip = { | |||
552 | .irq_set_type = stm32_exti_h_set_type, | 552 | .irq_set_type = stm32_exti_h_set_type, |
553 | .irq_set_wake = stm32_exti_h_set_wake, | 553 | .irq_set_wake = stm32_exti_h_set_wake, |
554 | .flags = IRQCHIP_MASK_ON_SUSPEND, | 554 | .flags = IRQCHIP_MASK_ON_SUSPEND, |
555 | #ifdef CONFIG_SMP | 555 | .irq_set_affinity = IS_ENABLED(CONFIG_SMP) ? stm32_exti_h_set_affinity : NULL, |
556 | .irq_set_affinity = stm32_exti_h_set_affinity, | ||
557 | #endif | ||
558 | }; | 556 | }; |
559 | 557 | ||
560 | static int stm32_exti_h_domain_alloc(struct irq_domain *dm, | 558 | static int stm32_exti_h_domain_alloc(struct irq_domain *dm, |