aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/sysdev/mpic.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/powerpc/sysdev/mpic.c')
-rw-r--r--arch/powerpc/sysdev/mpic.c32
1 files changed, 16 insertions, 16 deletions
diff --git a/arch/powerpc/sysdev/mpic.c b/arch/powerpc/sysdev/mpic.c
index bcfb900481f8..0b84b7c775d8 100644
--- a/arch/powerpc/sysdev/mpic.c
+++ b/arch/powerpc/sysdev/mpic.c
@@ -304,7 +304,7 @@ static void __init mpic_test_broken_ipi(struct mpic *mpic)
304 } 304 }
305} 305}
306 306
307#ifdef CONFIG_MPIC_BROKEN_U3 307#ifdef CONFIG_MPIC_U3_HT_IRQS
308 308
309/* Test if an interrupt is sourced from HyperTransport (used on broken U3s) 309/* Test if an interrupt is sourced from HyperTransport (used on broken U3s)
310 * to force the edge setting on the MPIC and do the ack workaround. 310 * to force the edge setting on the MPIC and do the ack workaround.
@@ -476,7 +476,7 @@ static void __init mpic_scan_ht_pics(struct mpic *mpic)
476 } 476 }
477} 477}
478 478
479#else /* CONFIG_MPIC_BROKEN_U3 */ 479#else /* CONFIG_MPIC_U3_HT_IRQS */
480 480
481static inline int mpic_is_ht_interrupt(struct mpic *mpic, unsigned int source) 481static inline int mpic_is_ht_interrupt(struct mpic *mpic, unsigned int source)
482{ 482{
@@ -487,7 +487,7 @@ static void __init mpic_scan_ht_pics(struct mpic *mpic)
487{ 487{
488} 488}
489 489
490#endif /* CONFIG_MPIC_BROKEN_U3 */ 490#endif /* CONFIG_MPIC_U3_HT_IRQS */
491 491
492 492
493#define mpic_irq_to_hw(virq) ((unsigned int)irq_map[virq].hwirq) 493#define mpic_irq_to_hw(virq) ((unsigned int)irq_map[virq].hwirq)
@@ -615,7 +615,7 @@ static void mpic_end_irq(unsigned int irq)
615 mpic_eoi(mpic); 615 mpic_eoi(mpic);
616} 616}
617 617
618#ifdef CONFIG_MPIC_BROKEN_U3 618#ifdef CONFIG_MPIC_U3_HT_IRQS
619 619
620static void mpic_unmask_ht_irq(unsigned int irq) 620static void mpic_unmask_ht_irq(unsigned int irq)
621{ 621{
@@ -665,7 +665,7 @@ static void mpic_end_ht_irq(unsigned int irq)
665 mpic_ht_end_irq(mpic, src); 665 mpic_ht_end_irq(mpic, src);
666 mpic_eoi(mpic); 666 mpic_eoi(mpic);
667} 667}
668#endif /* !CONFIG_MPIC_BROKEN_U3 */ 668#endif /* !CONFIG_MPIC_U3_HT_IRQS */
669 669
670#ifdef CONFIG_SMP 670#ifdef CONFIG_SMP
671 671
@@ -788,7 +788,7 @@ static struct irq_chip mpic_ipi_chip = {
788}; 788};
789#endif /* CONFIG_SMP */ 789#endif /* CONFIG_SMP */
790 790
791#ifdef CONFIG_MPIC_BROKEN_U3 791#ifdef CONFIG_MPIC_U3_HT_IRQS
792static struct irq_chip mpic_irq_ht_chip = { 792static struct irq_chip mpic_irq_ht_chip = {
793 .startup = mpic_startup_ht_irq, 793 .startup = mpic_startup_ht_irq,
794 .shutdown = mpic_shutdown_ht_irq, 794 .shutdown = mpic_shutdown_ht_irq,
@@ -797,7 +797,7 @@ static struct irq_chip mpic_irq_ht_chip = {
797 .eoi = mpic_end_ht_irq, 797 .eoi = mpic_end_ht_irq,
798 .set_type = mpic_set_irq_type, 798 .set_type = mpic_set_irq_type,
799}; 799};
800#endif /* CONFIG_MPIC_BROKEN_U3 */ 800#endif /* CONFIG_MPIC_U3_HT_IRQS */
801 801
802 802
803static int mpic_host_match(struct irq_host *h, struct device_node *node) 803static int mpic_host_match(struct irq_host *h, struct device_node *node)
@@ -837,11 +837,11 @@ static int mpic_host_map(struct irq_host *h, unsigned int virq,
837 /* Default chip */ 837 /* Default chip */
838 chip = &mpic->hc_irq; 838 chip = &mpic->hc_irq;
839 839
840#ifdef CONFIG_MPIC_BROKEN_U3 840#ifdef CONFIG_MPIC_U3_HT_IRQS
841 /* Check for HT interrupts, override vecpri */ 841 /* Check for HT interrupts, override vecpri */
842 if (mpic_is_ht_interrupt(mpic, hw)) 842 if (mpic_is_ht_interrupt(mpic, hw))
843 chip = &mpic->hc_ht_irq; 843 chip = &mpic->hc_ht_irq;
844#endif /* CONFIG_MPIC_BROKEN_U3 */ 844#endif /* CONFIG_MPIC_U3_HT_IRQS */
845 845
846 DBG("mpic: mapping to irq chip @%p\n", chip); 846 DBG("mpic: mapping to irq chip @%p\n", chip);
847 847
@@ -937,12 +937,12 @@ struct mpic * __init mpic_alloc(struct device_node *node,
937 mpic->hc_irq.typename = name; 937 mpic->hc_irq.typename = name;
938 if (flags & MPIC_PRIMARY) 938 if (flags & MPIC_PRIMARY)
939 mpic->hc_irq.set_affinity = mpic_set_affinity; 939 mpic->hc_irq.set_affinity = mpic_set_affinity;
940#ifdef CONFIG_MPIC_BROKEN_U3 940#ifdef CONFIG_MPIC_U3_HT_IRQS
941 mpic->hc_ht_irq = mpic_irq_ht_chip; 941 mpic->hc_ht_irq = mpic_irq_ht_chip;
942 mpic->hc_ht_irq.typename = name; 942 mpic->hc_ht_irq.typename = name;
943 if (flags & MPIC_PRIMARY) 943 if (flags & MPIC_PRIMARY)
944 mpic->hc_ht_irq.set_affinity = mpic_set_affinity; 944 mpic->hc_ht_irq.set_affinity = mpic_set_affinity;
945#endif /* CONFIG_MPIC_BROKEN_U3 */ 945#endif /* CONFIG_MPIC_U3_HT_IRQS */
946 946
947#ifdef CONFIG_SMP 947#ifdef CONFIG_SMP
948 mpic->hc_ipi = mpic_ipi_chip; 948 mpic->hc_ipi = mpic_ipi_chip;
@@ -970,7 +970,7 @@ struct mpic * __init mpic_alloc(struct device_node *node,
970 mpic->spurious_vec = intvec_top; 970 mpic->spurious_vec = intvec_top;
971 971
972 /* Check for "big-endian" in device-tree */ 972 /* Check for "big-endian" in device-tree */
973 if (node && get_property(node, "big-endian", NULL) != NULL) 973 if (node && of_get_property(node, "big-endian", NULL) != NULL)
974 mpic->flags |= MPIC_BIG_ENDIAN; 974 mpic->flags |= MPIC_BIG_ENDIAN;
975 975
976 976
@@ -986,13 +986,13 @@ struct mpic * __init mpic_alloc(struct device_node *node,
986 BUG_ON(paddr == 0 && node == NULL); 986 BUG_ON(paddr == 0 && node == NULL);
987 987
988 /* If no physical address passed in, check if it's dcr based */ 988 /* If no physical address passed in, check if it's dcr based */
989 if (paddr == 0 && get_property(node, "dcr-reg", NULL) != NULL) 989 if (paddr == 0 && of_get_property(node, "dcr-reg", NULL) != NULL)
990 mpic->flags |= MPIC_USES_DCR; 990 mpic->flags |= MPIC_USES_DCR;
991 991
992#ifdef CONFIG_PPC_DCR 992#ifdef CONFIG_PPC_DCR
993 if (mpic->flags & MPIC_USES_DCR) { 993 if (mpic->flags & MPIC_USES_DCR) {
994 const u32 *dbasep; 994 const u32 *dbasep;
995 dbasep = get_property(node, "dcr-reg", NULL); 995 dbasep = of_get_property(node, "dcr-reg", NULL);
996 BUG_ON(dbasep == NULL); 996 BUG_ON(dbasep == NULL);
997 mpic->dcr_base = *dbasep; 997 mpic->dcr_base = *dbasep;
998 mpic->reg_type = mpic_access_dcr; 998 mpic->reg_type = mpic_access_dcr;
@@ -1006,7 +1006,7 @@ struct mpic * __init mpic_alloc(struct device_node *node,
1006 */ 1006 */
1007 if (paddr == 0 && !(mpic->flags & MPIC_USES_DCR)) { 1007 if (paddr == 0 && !(mpic->flags & MPIC_USES_DCR)) {
1008 const u32 *reg; 1008 const u32 *reg;
1009 reg = get_property(node, "reg", NULL); 1009 reg = of_get_property(node, "reg", NULL);
1010 BUG_ON(reg == NULL); 1010 BUG_ON(reg == NULL);
1011 paddr = of_translate_address(node, reg); 1011 paddr = of_translate_address(node, reg);
1012 BUG_ON(paddr == OF_BAD_ADDR); 1012 BUG_ON(paddr == OF_BAD_ADDR);
@@ -1142,7 +1142,7 @@ void __init mpic_init(struct mpic *mpic)
1142 1142
1143 /* Do the HT PIC fixups on U3 broken mpic */ 1143 /* Do the HT PIC fixups on U3 broken mpic */
1144 DBG("MPIC flags: %x\n", mpic->flags); 1144 DBG("MPIC flags: %x\n", mpic->flags);
1145 if ((mpic->flags & MPIC_BROKEN_U3) && (mpic->flags & MPIC_PRIMARY)) 1145 if ((mpic->flags & MPIC_U3_HT_IRQS) && (mpic->flags & MPIC_PRIMARY))
1146 mpic_scan_ht_pics(mpic); 1146 mpic_scan_ht_pics(mpic);
1147 1147
1148 for (i = 0; i < mpic->num_sources; i++) { 1148 for (i = 0; i < mpic->num_sources; i++) {