/arch/powerpc/sysdev/xics/ |
D | ics-rtas.c | 42 unsigned int hw_irq = (unsigned int)irqd_to_hwirq(d); in ics_rtas_unmask_irq() local 46 pr_devel("xics: unmask virq %d [hw 0x%x]\n", d->irq, hw_irq); in ics_rtas_unmask_irq() 48 if (hw_irq == XICS_IPI || hw_irq == XICS_IRQ_SPURIOUS) in ics_rtas_unmask_irq() 53 call_status = rtas_call(ibm_set_xive, 3, 1, NULL, hw_irq, server, in ics_rtas_unmask_irq() 58 __func__, hw_irq, server, call_status); in ics_rtas_unmask_irq() 63 call_status = rtas_call(ibm_int_on, 1, 1, NULL, hw_irq); in ics_rtas_unmask_irq() 66 __func__, hw_irq, call_status); in ics_rtas_unmask_irq() 87 static void ics_rtas_mask_real_irq(unsigned int hw_irq) in ics_rtas_mask_real_irq() argument 91 if (hw_irq == XICS_IPI) in ics_rtas_mask_real_irq() 94 call_status = rtas_call(ibm_int_off, 1, 1, NULL, hw_irq); in ics_rtas_mask_real_irq() [all …]
|
D | ics-opal.c | 48 unsigned int hw_irq = (unsigned int)irqd_to_hwirq(d); in ics_opal_unmask_irq() local 52 pr_devel("ics-hal: unmask virq %d [hw 0x%x]\n", d->irq, hw_irq); in ics_opal_unmask_irq() 54 if (hw_irq == XICS_IPI || hw_irq == XICS_IRQ_SPURIOUS) in ics_opal_unmask_irq() 60 rc = opal_set_xive(hw_irq, server, DEFAULT_PRIORITY); in ics_opal_unmask_irq() 64 __func__, d->irq, hw_irq, server, rc); in ics_opal_unmask_irq() 84 static void ics_opal_mask_real_irq(unsigned int hw_irq) in ics_opal_mask_real_irq() argument 89 if (hw_irq == XICS_IPI) in ics_opal_mask_real_irq() 93 rc = opal_set_xive(hw_irq, server, 0xff); in ics_opal_mask_real_irq() 96 __func__, hw_irq, rc); in ics_opal_mask_real_irq() 101 unsigned int hw_irq = (unsigned int)irqd_to_hwirq(d); in ics_opal_mask_irq() local [all …]
|
D | icp-opal.c | 111 unsigned int hw_irq = (unsigned int)irqd_to_hwirq(d); in icp_opal_eoi() local 115 rc = opal_int_eoi((xics_pop_cppr() << 24) | hw_irq); in icp_opal_eoi()
|
D | icp-hv.c | 81 unsigned int hw_irq = (unsigned int)irqd_to_hwirq(d); in icp_hv_eoi() local 84 icp_hv_set_xirr((xics_pop_cppr() << 24) | hw_irq); in icp_hv_eoi()
|
D | icp-native.c | 93 unsigned int hw_irq = (unsigned int)irqd_to_hwirq(d); in icp_native_eoi() local 96 icp_native_set_xirr((xics_pop_cppr() << 24) | hw_irq); in icp_native_eoi()
|
/arch/powerpc/sysdev/xive/ |
D | xive-internal.h | 38 int (*populate_irq_data)(u32 hw_irq, struct xive_irq_data *data); 39 int (*configure_irq)(u32 hw_irq, u32 target, u8 prio, u32 sw_irq); 48 void (*eoi)(u32 hw_irq); 49 void (*sync_source)(u32 hw_irq); 50 u64 (*esb_rw)(u32 hw_irq, u32 offset, u64 data, bool write);
|
D | common.c | 203 val = xive_ops->esb_rw(xd->hw_irq, offset, 0, 0); in xive_esb_read() 217 xive_ops->esb_rw(xd->hw_irq, offset, data, 1); in xive_esb_write() 312 void xive_do_source_eoi(u32 hw_irq, struct xive_irq_data *xd) in xive_do_source_eoi() argument 317 else if (hw_irq && xd->flags & XIVE_IRQ_FLAG_EOI_FW) { in xive_do_source_eoi() 327 xive_ops->eoi(hw_irq); in xive_do_source_eoi() 544 unsigned int hw_irq = (unsigned int)irqd_to_hwirq(d); in xive_irq_startup() local 548 d->irq, hw_irq, d); in xive_irq_startup() 581 rc = xive_ops->configure_irq(hw_irq, in xive_irq_startup() 596 unsigned int hw_irq = (unsigned int)irqd_to_hwirq(d); in xive_irq_shutdown() local 599 d->irq, hw_irq, d); in xive_irq_shutdown() [all …]
|
D | native.c | 46 int xive_native_populate_irq_data(u32 hw_irq, struct xive_irq_data *data) in xive_native_populate_irq_data() argument 55 rc = opal_xive_get_irq_info(hw_irq, &flags, &eoi_page, &trig_page, in xive_native_populate_irq_data() 59 hw_irq, rc); in xive_native_populate_irq_data() 81 pr_err("Failed to map EOI page for irq 0x%x\n", hw_irq); in xive_native_populate_irq_data() 85 data->hw_irq = hw_irq; in xive_native_populate_irq_data() 96 pr_err("Failed to map trigger page for irq 0x%x\n", hw_irq); in xive_native_populate_irq_data() 103 int xive_native_configure_irq(u32 hw_irq, u32 target, u8 prio, u32 sw_irq) in xive_native_configure_irq() argument 108 rc = opal_xive_set_irq_config(hw_irq, target, prio, sw_irq); in xive_native_configure_irq() 383 static void xive_native_eoi(u32 hw_irq) in xive_native_eoi() argument 389 opal_int_eoi(hw_irq); in xive_native_eoi() [all …]
|
D | spapr.c | 271 static int xive_spapr_populate_irq_data(u32 hw_irq, struct xive_irq_data *data) in xive_spapr_populate_irq_data() argument 281 rc = plpar_int_get_source_info(0, hw_irq, &flags, &eoi_page, &trig_page, in xive_spapr_populate_irq_data() 296 data->hw_irq = hw_irq; in xive_spapr_populate_irq_data() 314 pr_err("Failed to map EOI page for irq 0x%x\n", hw_irq); in xive_spapr_populate_irq_data() 326 pr_err("Failed to map trigger page for irq 0x%x\n", hw_irq); in xive_spapr_populate_irq_data() 332 static int xive_spapr_configure_irq(u32 hw_irq, u32 target, u8 prio, u32 sw_irq) in xive_spapr_configure_irq() argument 336 rc = plpar_int_set_source_config(XIVE_SRC_SET_EISN, hw_irq, target, in xive_spapr_configure_irq() 510 static void xive_spapr_eoi(u32 hw_irq) in xive_spapr_eoi() argument 529 static void xive_spapr_sync_source(u32 hw_irq) in xive_spapr_sync_source() argument 532 plpar_int_sync(0, hw_irq); in xive_spapr_sync_source()
|
/arch/powerpc/include/asm/ |
D | xive.h | 48 u32 hw_irq; member 133 extern int xive_native_populate_irq_data(u32 hw_irq, 138 extern int xive_native_configure_irq(u32 hw_irq, u32 target, u8 prio, u32 sw_irq); 144 extern void xive_native_sync_source(u32 hw_irq);
|
D | pnv-pci.h | 39 int64_t pnv_opal_pci_msi_eoi(struct irq_chip *chip, unsigned int hw_irq);
|
/arch/tile/include/asm/ |
D | Kbuild | 8 generic-y += hw_irq.h
|
/arch/parisc/include/asm/ |
D | Kbuild | 8 generic-y += hw_irq.h
|
/arch/m68k/include/asm/ |
D | Kbuild | 8 generic-y += hw_irq.h
|
/arch/blackfin/include/asm/ |
D | Kbuild | 9 generic-y += hw_irq.h
|
/arch/arm64/include/asm/ |
D | Kbuild | 9 generic-y += hw_irq.h
|
/arch/arc/include/asm/ |
D | Kbuild | 11 generic-y += hw_irq.h
|
/arch/um/include/asm/ |
D | Kbuild | 14 generic-y += hw_irq.h
|
/arch/powerpc/kvm/ |
D | book3s_xive_template.c | 84 static void GLUE(X_PFX,source_eoi)(u32 hw_irq, struct xive_irq_data *xd) in GLUE() 89 else if (hw_irq && xd->flags & XIVE_IRQ_FLAG_EOI_FW) { in GLUE() 90 opal_int_eoi(hw_irq); in GLUE()
|
/arch/metag/include/asm/ |
D | Kbuild | 12 generic-y += hw_irq.h
|
/arch/unicore32/include/asm/ |
D | Kbuild | 14 generic-y += hw_irq.h
|
/arch/hexagon/include/asm/ |
D | Kbuild | 14 generic-y += hw_irq.h
|
/arch/openrisc/include/asm/ |
D | Kbuild | 17 generic-y += hw_irq.h
|
/arch/c6x/include/asm/ |
D | Kbuild | 14 generic-y += hw_irq.h
|
/arch/nios2/include/asm/ |
D | Kbuild | 19 generic-y += hw_irq.h
|