diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2015-09-01 17:33:35 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-09-01 17:33:35 -0400 |
commit | 17e6b00ac422b49d44a0b8d98402a211f726282d (patch) | |
tree | c7e9143030d20625a0bd94e12ddaf9421890c375 /arch/ia64 | |
parent | 5e359bf2219d8622eb0931701e45af55db323228 (diff) | |
parent | e324c4dc4a5991d5b1171f434884a4026345e4b4 (diff) |
Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull irq updates from Thomas Gleixner:
"This updated pull request does not contain the last few GIC related
patches which were reported to cause a regression. There is a fix
available, but I let it breed for a couple of days first.
The irq departement provides:
- new infrastructure to support non PCI based MSI interrupts
- a couple of new irq chip drivers
- the usual pile of fixlets and updates to irq chip drivers
- preparatory changes for removal of the irq argument from interrupt
flow handlers
- preparatory changes to remove IRQF_VALID"
* 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (129 commits)
irqchip/imx-gpcv2: IMX GPCv2 driver for wakeup sources
irqchip: Add bcm2836 interrupt controller for Raspberry Pi 2
irqchip: Add documentation for the bcm2836 interrupt controller
irqchip/bcm2835: Add support for being used as a second level controller
irqchip/bcm2835: Refactor handle_IRQ() calls out of MAKE_HWIRQ
PCI: xilinx: Fix typo in function name
irqchip/gic: Ensure gic_cpu_if_up/down() programs correct GIC instance
irqchip/gic: Only allow the primary GIC to set the CPU map
PCI/MSI: pci-xgene-msi: Consolidate chained IRQ handler install/remove
unicore32/irq: Prepare puv3_gpio_handler for irq argument removal
tile/pci_gx: Prepare trio_handle_level_irq for irq argument removal
m68k/irq: Prepare irq handlers for irq argument removal
C6X/megamode-pic: Prepare megamod_irq_cascade for irq argument removal
blackfin: Prepare irq handlers for irq argument removal
arc/irq: Prepare idu_cascade_isr for irq argument removal
sparc/irq: Use access helper irq_data_get_affinity_mask()
sparc/irq: Use helper irq_data_get_irq_handler_data()
parisc/irq: Use access helper irq_data_get_affinity_mask()
mn10300/irq: Use access helper irq_data_get_affinity_mask()
irqchip/i8259: Prepare i8259_irq_dispatch for irq argument removal
...
Diffstat (limited to 'arch/ia64')
-rw-r--r-- | arch/ia64/kernel/iosapic.c | 8 | ||||
-rw-r--r-- | arch/ia64/kernel/irq.c | 6 | ||||
-rw-r--r-- | arch/ia64/kernel/msi_ia64.c | 6 | ||||
-rw-r--r-- | arch/ia64/sn/kernel/msi_sn.c | 4 |
4 files changed, 12 insertions, 12 deletions
diff --git a/arch/ia64/kernel/iosapic.c b/arch/ia64/kernel/iosapic.c index bc9501e36e77..d2fae054d988 100644 --- a/arch/ia64/kernel/iosapic.c +++ b/arch/ia64/kernel/iosapic.c | |||
@@ -610,9 +610,9 @@ register_intr (unsigned int gsi, int irq, unsigned char delivery, | |||
610 | chip->name, irq_type->name); | 610 | chip->name, irq_type->name); |
611 | chip = irq_type; | 611 | chip = irq_type; |
612 | } | 612 | } |
613 | __irq_set_chip_handler_name_locked(irq, chip, trigger == IOSAPIC_EDGE ? | 613 | irq_set_chip_handler_name_locked(irq_get_irq_data(irq), chip, |
614 | handle_edge_irq : handle_level_irq, | 614 | trigger == IOSAPIC_EDGE ? handle_edge_irq : handle_level_irq, |
615 | NULL); | 615 | NULL); |
616 | return 0; | 616 | return 0; |
617 | } | 617 | } |
618 | 618 | ||
@@ -838,7 +838,7 @@ iosapic_unregister_intr (unsigned int gsi) | |||
838 | if (iosapic_intr_info[irq].count == 0) { | 838 | if (iosapic_intr_info[irq].count == 0) { |
839 | #ifdef CONFIG_SMP | 839 | #ifdef CONFIG_SMP |
840 | /* Clear affinity */ | 840 | /* Clear affinity */ |
841 | cpumask_setall(irq_get_irq_data(irq)->affinity); | 841 | cpumask_setall(irq_get_affinity_mask(irq)); |
842 | #endif | 842 | #endif |
843 | /* Clear the interrupt information */ | 843 | /* Clear the interrupt information */ |
844 | iosapic_intr_info[irq].dest = 0; | 844 | iosapic_intr_info[irq].dest = 0; |
diff --git a/arch/ia64/kernel/irq.c b/arch/ia64/kernel/irq.c index 812a1e6b3179..de4fc00dea98 100644 --- a/arch/ia64/kernel/irq.c +++ b/arch/ia64/kernel/irq.c | |||
@@ -67,7 +67,7 @@ static char irq_redir [NR_IRQS]; // = { [0 ... NR_IRQS-1] = 1 }; | |||
67 | void set_irq_affinity_info (unsigned int irq, int hwid, int redir) | 67 | void set_irq_affinity_info (unsigned int irq, int hwid, int redir) |
68 | { | 68 | { |
69 | if (irq < NR_IRQS) { | 69 | if (irq < NR_IRQS) { |
70 | cpumask_copy(irq_get_irq_data(irq)->affinity, | 70 | cpumask_copy(irq_get_affinity_mask(irq), |
71 | cpumask_of(cpu_logical_id(hwid))); | 71 | cpumask_of(cpu_logical_id(hwid))); |
72 | irq_redir[irq] = (char) (redir & 0xff); | 72 | irq_redir[irq] = (char) (redir & 0xff); |
73 | } | 73 | } |
@@ -119,8 +119,8 @@ static void migrate_irqs(void) | |||
119 | if (irqd_is_per_cpu(data)) | 119 | if (irqd_is_per_cpu(data)) |
120 | continue; | 120 | continue; |
121 | 121 | ||
122 | if (cpumask_any_and(data->affinity, cpu_online_mask) | 122 | if (cpumask_any_and(irq_data_get_affinity_mask(data), |
123 | >= nr_cpu_ids) { | 123 | cpu_online_mask) >= nr_cpu_ids) { |
124 | /* | 124 | /* |
125 | * Save it for phase 2 processing | 125 | * Save it for phase 2 processing |
126 | */ | 126 | */ |
diff --git a/arch/ia64/kernel/msi_ia64.c b/arch/ia64/kernel/msi_ia64.c index d70bf15c690a..af4eaec0f7c3 100644 --- a/arch/ia64/kernel/msi_ia64.c +++ b/arch/ia64/kernel/msi_ia64.c | |||
@@ -23,7 +23,7 @@ static int ia64_set_msi_irq_affinity(struct irq_data *idata, | |||
23 | if (irq_prepare_move(irq, cpu)) | 23 | if (irq_prepare_move(irq, cpu)) |
24 | return -1; | 24 | return -1; |
25 | 25 | ||
26 | __get_cached_msi_msg(idata->msi_desc, &msg); | 26 | __get_cached_msi_msg(irq_data_get_msi_desc(idata), &msg); |
27 | 27 | ||
28 | addr = msg.address_lo; | 28 | addr = msg.address_lo; |
29 | addr &= MSI_ADDR_DEST_ID_MASK; | 29 | addr &= MSI_ADDR_DEST_ID_MASK; |
@@ -36,7 +36,7 @@ static int ia64_set_msi_irq_affinity(struct irq_data *idata, | |||
36 | msg.data = data; | 36 | msg.data = data; |
37 | 37 | ||
38 | pci_write_msi_msg(irq, &msg); | 38 | pci_write_msi_msg(irq, &msg); |
39 | cpumask_copy(idata->affinity, cpumask_of(cpu)); | 39 | cpumask_copy(irq_data_get_affinity_mask(idata), cpumask_of(cpu)); |
40 | 40 | ||
41 | return 0; | 41 | return 0; |
42 | } | 42 | } |
@@ -148,7 +148,7 @@ static int dmar_msi_set_affinity(struct irq_data *data, | |||
148 | msg.address_lo |= MSI_ADDR_DEST_ID_CPU(cpu_physical_id(cpu)); | 148 | msg.address_lo |= MSI_ADDR_DEST_ID_CPU(cpu_physical_id(cpu)); |
149 | 149 | ||
150 | dmar_msi_write(irq, &msg); | 150 | dmar_msi_write(irq, &msg); |
151 | cpumask_copy(data->affinity, mask); | 151 | cpumask_copy(irq_data_get_affinity_mask(data), mask); |
152 | 152 | ||
153 | return 0; | 153 | return 0; |
154 | } | 154 | } |
diff --git a/arch/ia64/sn/kernel/msi_sn.c b/arch/ia64/sn/kernel/msi_sn.c index a0eb27b66d13..fb25065b22c6 100644 --- a/arch/ia64/sn/kernel/msi_sn.c +++ b/arch/ia64/sn/kernel/msi_sn.c | |||
@@ -175,7 +175,7 @@ static int sn_set_msi_irq_affinity(struct irq_data *data, | |||
175 | * Release XIO resources for the old MSI PCI address | 175 | * Release XIO resources for the old MSI PCI address |
176 | */ | 176 | */ |
177 | 177 | ||
178 | __get_cached_msi_msg(data->msi_desc, &msg); | 178 | __get_cached_msi_msg(irq_data_get_msi_desc(data), &msg); |
179 | sn_pdev = (struct pcidev_info *)sn_irq_info->irq_pciioinfo; | 179 | sn_pdev = (struct pcidev_info *)sn_irq_info->irq_pciioinfo; |
180 | pdev = sn_pdev->pdi_linux_pcidev; | 180 | pdev = sn_pdev->pdi_linux_pcidev; |
181 | provider = SN_PCIDEV_BUSPROVIDER(pdev); | 181 | provider = SN_PCIDEV_BUSPROVIDER(pdev); |
@@ -206,7 +206,7 @@ static int sn_set_msi_irq_affinity(struct irq_data *data, | |||
206 | msg.address_lo = (u32)(bus_addr & 0x00000000ffffffff); | 206 | msg.address_lo = (u32)(bus_addr & 0x00000000ffffffff); |
207 | 207 | ||
208 | pci_write_msi_msg(irq, &msg); | 208 | pci_write_msi_msg(irq, &msg); |
209 | cpumask_copy(data->affinity, cpu_mask); | 209 | cpumask_copy(irq_data_get_affinity_mask(data), cpu_mask); |
210 | 210 | ||
211 | return 0; | 211 | return 0; |
212 | } | 212 | } |