Home
last modified time | relevance | path

Searched refs:hw_irq (Results 1 – 18 of 18) sorted by relevance

/arch/powerpc/sysdev/xics/
Dics-rtas.c29 unsigned int hw_irq = (unsigned int)irqd_to_hwirq(d); in ics_rtas_unmask_irq() local
33 pr_devel("xics: unmask virq %d [hw 0x%x]\n", d->irq, hw_irq); in ics_rtas_unmask_irq()
35 if (hw_irq == XICS_IPI || hw_irq == XICS_IRQ_SPURIOUS) in ics_rtas_unmask_irq()
40 call_status = rtas_call(ibm_set_xive, 3, 1, NULL, hw_irq, server, in ics_rtas_unmask_irq()
45 __func__, hw_irq, server, call_status); in ics_rtas_unmask_irq()
50 call_status = rtas_call(ibm_int_on, 1, 1, NULL, hw_irq); in ics_rtas_unmask_irq()
53 __func__, hw_irq, call_status); in ics_rtas_unmask_irq()
65 static void ics_rtas_mask_real_irq(unsigned int hw_irq) in ics_rtas_mask_real_irq() argument
69 if (hw_irq == XICS_IPI) in ics_rtas_mask_real_irq()
72 call_status = rtas_call(ibm_int_off, 1, 1, NULL, hw_irq); in ics_rtas_mask_real_irq()
[all …]
Dics-opal.c44 unsigned int hw_irq = (unsigned int)irqd_to_hwirq(d); in ics_opal_unmask_irq() local
48 pr_devel("ics-hal: unmask virq %d [hw 0x%x]\n", d->irq, hw_irq); in ics_opal_unmask_irq()
50 if (hw_irq == XICS_IPI || hw_irq == XICS_IRQ_SPURIOUS) in ics_opal_unmask_irq()
56 rc = opal_set_xive(hw_irq, server, DEFAULT_PRIORITY); in ics_opal_unmask_irq()
60 __func__, d->irq, hw_irq, server, rc); in ics_opal_unmask_irq()
69 static void ics_opal_mask_real_irq(unsigned int hw_irq) in ics_opal_mask_real_irq() argument
74 if (hw_irq == XICS_IPI) in ics_opal_mask_real_irq()
78 rc = opal_set_xive(hw_irq, server, 0xff); in ics_opal_mask_real_irq()
81 __func__, hw_irq, rc); in ics_opal_mask_real_irq()
86 unsigned int hw_irq = (unsigned int)irqd_to_hwirq(d); in ics_opal_mask_irq() local
[all …]
Dics-native.c134 static int ics_native_check(struct ics *ics, unsigned int hw_irq) in ics_native_check() argument
138 pr_devel("%s: hw_irq=0x%x\n", __func__, hw_irq); in ics_native_check()
140 if (hw_irq < in->ibase || hw_irq >= (in->ibase + in->icount)) in ics_native_check()
Dicp-opal.c108 unsigned int hw_irq = (unsigned int)irqd_to_hwirq(d); in icp_opal_eoi() local
112 rc = opal_int_eoi((xics_pop_cppr() << 24) | hw_irq); in icp_opal_eoi()
Dicp-hv.c77 unsigned int hw_irq = (unsigned int)irqd_to_hwirq(d); in icp_hv_eoi() local
80 icp_hv_set_xirr((xics_pop_cppr() << 24) | hw_irq); in icp_hv_eoi()
Dicp-native.c88 unsigned int hw_irq = (unsigned int)irqd_to_hwirq(d); in icp_native_eoi() local
91 icp_native_set_xirr((xics_pop_cppr() << 24) | hw_irq); in icp_native_eoi()
/arch/powerpc/sysdev/xive/
Dxive-internal.h41 int (*populate_irq_data)(u32 hw_irq, struct xive_irq_data *data);
42 int (*configure_irq)(u32 hw_irq, u32 target, u8 prio, u32 sw_irq);
43 int (*get_irq_config)(u32 hw_irq, u32 *target, u8 *prio,
54 void (*sync_source)(u32 hw_irq);
55 u64 (*esb_rw)(u32 hw_irq, u32 offset, u64 data, bool write);
Dnative.c46 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()
75 pr_err("Failed to map EOI page for irq 0x%x\n", hw_irq); in xive_native_populate_irq_data()
79 data->hw_irq = hw_irq; in xive_native_populate_irq_data()
90 pr_err("Failed to map trigger page for irq 0x%x\n", hw_irq); in xive_native_populate_irq_data()
97 int xive_native_configure_irq(u32 hw_irq, u32 target, u8 prio, u32 sw_irq) in xive_native_configure_irq() argument
102 rc = opal_xive_set_irq_config(hw_irq, target, prio, sw_irq); in xive_native_configure_irq()
111 static int xive_native_get_irq_config(u32 hw_irq, u32 *target, u8 *prio, in xive_native_get_irq_config() argument
118 rc = opal_xive_get_irq_config(hw_irq, &vp, prio, &lirq); in xive_native_get_irq_config()
[all …]
Dcommon.c215 val = xive_ops->esb_rw(xd->hw_irq, offset, 0, 0); in xive_esb_read()
225 xive_ops->esb_rw(xd->hw_irq, offset, data, 1); in xive_esb_write()
267 static struct irq_data *xive_get_irq_data(u32 hw_irq) in xive_get_irq_data() argument
269 unsigned int irq = irq_find_mapping(xive_irq_domain, hw_irq); in xive_get_irq_data()
274 int xmon_xive_get_irq_config(u32 hw_irq, struct irq_data *d) in xmon_xive_get_irq_config() argument
281 rc = xive_ops->get_irq_config(hw_irq, &target, &prio, &lirq); in xmon_xive_get_irq_config()
283 xmon_printf("IRQ 0x%08x : no config rc=%d\n", hw_irq, rc); in xmon_xive_get_irq_config()
288 hw_irq, target, prio, lirq); in xmon_xive_get_irq_config()
291 d = xive_get_irq_data(hw_irq); in xmon_xive_get_irq_config()
610 unsigned int hw_irq = (unsigned int)irqd_to_hwirq(d); in xive_irq_startup() local
[all …]
Dspapr.c385 static int xive_spapr_populate_irq_data(u32 hw_irq, struct xive_irq_data *data) in xive_spapr_populate_irq_data() argument
395 rc = plpar_int_get_source_info(0, hw_irq, &flags, &eoi_page, &trig_page, in xive_spapr_populate_irq_data()
410 data->hw_irq = hw_irq; in xive_spapr_populate_irq_data()
428 pr_err("Failed to map EOI page for irq 0x%x\n", hw_irq); in xive_spapr_populate_irq_data()
441 pr_err("Failed to map trigger page for irq 0x%x\n", hw_irq); in xive_spapr_populate_irq_data()
447 static int xive_spapr_configure_irq(u32 hw_irq, u32 target, u8 prio, u32 sw_irq) in xive_spapr_configure_irq() argument
451 rc = plpar_int_set_source_config(XIVE_SRC_SET_EISN, hw_irq, target, in xive_spapr_configure_irq()
457 static int xive_spapr_get_irq_config(u32 hw_irq, u32 *target, u8 *prio, in xive_spapr_get_irq_config() argument
465 rc = plpar_int_get_source_config(0, hw_irq, &h_target, &h_prio, in xive_spapr_get_irq_config()
658 static void xive_spapr_sync_source(u32 hw_irq) in xive_spapr_sync_source() argument
[all …]
/arch/powerpc/include/asm/
Dxive.h47 u32 hw_irq; member
104 int xmon_xive_get_irq_config(u32 hw_irq, struct irq_data *d);
111 int xive_native_populate_irq_data(u32 hw_irq,
116 int xive_native_configure_irq(u32 hw_irq, u32 target, u8 prio, u32 sw_irq);
122 void xive_native_sync_source(u32 hw_irq);
123 void xive_native_sync_queue(u32 hw_irq);
Dopal.h122 int64_t opal_pci_msi_eoi(uint64_t phb_id, uint32_t hw_irq);
/arch/powerpc/platforms/powernv/
Dopal-irqchip.c235 u32 hw_irq; in opal_event_init() local
239 i, &hw_irq); in opal_event_init()
246 virq = irq_create_mapping(NULL, hw_irq); in opal_event_init()
248 pr_warn("Failed to map OPAL irq 0x%x\n", hw_irq); in opal_event_init()
Dpci-ioda.c1991 unsigned int hw_irq = (unsigned int)irqd_to_hwirq(d); in pnv_ioda2_msi_eoi() local
1995 rc = opal_pci_msi_eoi(phb->opal_id, hw_irq); in pnv_ioda2_msi_eoi()
/arch/um/include/asm/
DKbuild13 generic-y += hw_irq.h
/arch/powerpc/kvm/
Dbook3s_hv_rm_xics.c35 static int xics_opal_set_server(unsigned int hw_irq, int server_cpu);
785 static int xics_opal_set_server(unsigned int hw_irq, int server_cpu) in xics_opal_set_server() argument
789 return opal_set_xive(hw_irq, mangle_cpu, DEFAULT_PRIORITY); in xics_opal_set_server()
Dbook3s_xive.c954 unsigned int hw_irq = (unsigned int)irqd_to_hwirq(host_data); in kvmppc_xive_set_mapped() local
963 __func__, guest_irq, host_irq, hw_irq); in kvmppc_xive_set_mapped()
1009 state->pt_number = hw_irq; in kvmppc_xive_set_mapped()
1018 xive_native_configure_irq(hw_irq, in kvmppc_xive_set_mapped()
1030 xive_vm_source_eoi(hw_irq, state->pt_data); in kvmppc_xive_set_mapped()
Dbook3s_xive_template.c72 static void GLUE(X_PFX,source_eoi)(u32 hw_irq, struct xive_irq_data *xd) in GLUE()