Home
last modified time | relevance | path

Searched refs:hwirq (Results 1 - 25 of 716) sorted by relevance

12345678910>>...29

/kernel/linux/linux-6.6/drivers/irqchip/
H A Dirq-sp7021-intc.c81 static void sp_intc_assign_bit(u32 hwirq, void __iomem *base, bool value) in sp_intc_assign_bit() argument
87 offset = (hwirq / 32) * 4; in sp_intc_assign_bit()
93 mask |= BIT(hwirq % 32); in sp_intc_assign_bit()
95 mask &= ~BIT(hwirq % 32); in sp_intc_assign_bit()
102 u32 hwirq = d->hwirq; in sp_intc_ack_irq() local
104 if (unlikely(IS_GPIO_INT(hwirq) && TEST_STATE(hwirq, _IS_EDGE))) { // WORKAROUND in sp_intc_ack_irq()
105 sp_intc_assign_bit(hwirq, REG_INTR_POLARITY, !TEST_STATE(hwirq, _IS_LO in sp_intc_ack_irq()
124 u32 hwirq = d->hwirq; sp_intc_set_type() local
171 int hwirq; sp_intc_handle_ext_cascaded() local
195 sp_intc_irq_domain_map(struct irq_domain *domain, unsigned int irq, irq_hw_number_t hwirq) sp_intc_irq_domain_map() argument
[all...]
H A Dirq-mchp-eic.c51 tmp = readl_relaxed(eic->base + MCHP_EIC_SCFG(d->hwirq)); in mchp_eic_irq_mask()
53 writel_relaxed(tmp, eic->base + MCHP_EIC_SCFG(d->hwirq)); in mchp_eic_irq_mask()
62 tmp = readl_relaxed(eic->base + MCHP_EIC_SCFG(d->hwirq)); in mchp_eic_irq_unmask()
64 writel_relaxed(tmp, eic->base + MCHP_EIC_SCFG(d->hwirq)); in mchp_eic_irq_unmask()
74 tmp = readl_relaxed(eic->base + MCHP_EIC_SCFG(d->hwirq)); in mchp_eic_irq_set_type()
96 writel_relaxed(tmp, eic->base + MCHP_EIC_SCFG(d->hwirq)); in mchp_eic_irq_set_type()
103 irq_set_irq_wake(eic->irqs[d->hwirq], on); in mchp_eic_irq_set_wake()
105 eic->wakeup_source |= BIT(d->hwirq); in mchp_eic_irq_set_wake()
107 eic->wakeup_source &= ~BIT(d->hwirq); in mchp_eic_irq_set_wake()
114 unsigned int hwirq; in mchp_eic_irq_suspend() local
128 unsigned int hwirq; mchp_eic_irq_resume() local
160 irq_hw_number_t hwirq; mchp_eic_domain_alloc() local
[all...]
H A Dirq-pruss-intc.c173 * @hwirq: the system event number
178 static void pruss_intc_map(struct pruss_intc *intc, unsigned long hwirq) in pruss_intc_map() argument
186 intc->event_channel[hwirq].ref_count++; in pruss_intc_map()
188 ch = intc->event_channel[hwirq].value; in pruss_intc_map()
191 pruss_intc_update_cmr(intc, hwirq, ch); in pruss_intc_map()
193 reg_idx = hwirq / 32; in pruss_intc_map()
194 val = BIT(hwirq % 32); in pruss_intc_map()
208 hwirq, ch, host); in pruss_intc_map()
216 * @hwirq: the system event number
222 static void pruss_intc_unmap(struct pruss_intc *intc, unsigned long hwirq) in pruss_intc_unmap() argument
293 unsigned int hwirq = data->hwirq; pruss_intc_irq_ack() local
301 unsigned int hwirq = data->hwirq; pruss_intc_irq_mask() local
309 unsigned int hwirq = data->hwirq; pruss_intc_irq_unmask() local
466 unsigned long hwirq = irqd_to_hwirq(irq_get_irq_data(virq)); pruss_intc_irq_domain_unmap() local
491 int hwirq, err; pruss_intc_irq_handler() local
606 unsigned int hwirq; pruss_intc_remove() local
[all...]
H A Dirq-or1k-pic.c28 mtspr(SPR_PICMR, mfspr(SPR_PICMR) & ~(1UL << data->hwirq)); in or1k_pic_mask()
33 mtspr(SPR_PICMR, mfspr(SPR_PICMR) | (1UL << data->hwirq)); in or1k_pic_unmask()
38 mtspr(SPR_PICSR, (1UL << data->hwirq)); in or1k_pic_ack()
43 mtspr(SPR_PICMR, mfspr(SPR_PICMR) & ~(1UL << data->hwirq)); in or1k_pic_mask_ack()
44 mtspr(SPR_PICSR, (1UL << data->hwirq)); in or1k_pic_mask_ack()
55 mtspr(SPR_PICSR, mfspr(SPR_PICSR) & ~(1UL << data->hwirq)); in or1k_pic_or1200_ack()
60 mtspr(SPR_PICMR, mfspr(SPR_PICMR) & ~(1UL << data->hwirq)); in or1k_pic_or1200_mask_ack()
61 mtspr(SPR_PICSR, mfspr(SPR_PICSR) & ~(1UL << data->hwirq)); in or1k_pic_or1200_mask_ack()
102 int hwirq; in pic_get_irq() local
104 hwirq in pic_get_irq()
[all...]
H A Dirq-sifive-plic.c93 static void __plic_toggle(void __iomem *enable_base, int hwirq, int enable) in __plic_toggle() argument
95 u32 __iomem *reg = enable_base + (hwirq / 32) * sizeof(u32); in __plic_toggle()
96 u32 hwirq_mask = 1 << (hwirq % 32); in __plic_toggle()
104 static void plic_toggle(struct plic_handler *handler, int hwirq, int enable) in plic_toggle() argument
107 __plic_toggle(handler->enable_base, hwirq, enable); in plic_toggle()
119 plic_toggle(handler, d->hwirq, enable); in plic_irq_toggle()
137 writel(1, priv->regs + PRIORITY_BASE + d->hwirq * PRIORITY_PER_ID); in plic_irq_unmask()
144 writel(0, priv->regs + PRIORITY_BASE + d->hwirq * PRIORITY_PER_ID); in plic_irq_mask()
152 plic_toggle(handler, d->hwirq, 1); in plic_irq_eoi()
153 writel(d->hwirq, handle in plic_irq_eoi()
307 plic_irqdomain_map(struct irq_domain *d, unsigned int irq, irq_hw_number_t hwirq) plic_irqdomain_map() argument
319 plic_irq_domain_translate(struct irq_domain *d, struct irq_fwspec *fwspec, unsigned long *hwirq, unsigned int *type) plic_irq_domain_translate() argument
336 irq_hw_number_t hwirq; plic_irq_domain_alloc() local
370 irq_hw_number_t hwirq; plic_handle_irq() local
460 irq_hw_number_t hwirq; __plic_init() local
[all...]
H A Dirq-mvebu-sei.c59 u32 reg_idx = SEI_IRQ_REG_IDX(d->hwirq); in mvebu_sei_ack_irq()
61 writel_relaxed(BIT(SEI_IRQ_REG_BIT(d->hwirq)), in mvebu_sei_ack_irq()
68 u32 reg, reg_idx = SEI_IRQ_REG_IDX(d->hwirq); in mvebu_sei_mask_irq()
74 reg |= BIT(SEI_IRQ_REG_BIT(d->hwirq)); in mvebu_sei_mask_irq()
82 u32 reg, reg_idx = SEI_IRQ_REG_IDX(d->hwirq); in mvebu_sei_unmask_irq()
88 reg &= ~BIT(SEI_IRQ_REG_BIT(d->hwirq)); in mvebu_sei_unmask_irq()
144 msg->data = data->hwirq + sei->caps->cp_range.first; in mvebu_sei_cp_compose_msi_msg()
199 unsigned long *hwirq, in mvebu_sei_ap_translate()
202 *hwirq = fwspec->param[0]; in mvebu_sei_ap_translate()
213 unsigned long hwirq; in mvebu_sei_ap_alloc() local
197 mvebu_sei_ap_translate(struct irq_domain *domain, struct irq_fwspec *fwspec, unsigned long *hwirq, unsigned int *type) mvebu_sei_ap_translate() argument
241 mvebu_sei_cp_release_irq(struct mvebu_sei *sei, unsigned long hwirq) mvebu_sei_cp_release_irq() argument
254 unsigned long hwirq; mvebu_sei_cp_domain_alloc() local
339 unsigned long hwirq; mvebu_sei_handle_cascade_irq() local
[all...]
/kernel/linux/linux-5.10/arch/powerpc/sysdev/
H A Dmpic_u3msi.c61 static u64 find_ht_magic_addr(struct pci_dev *pdev, unsigned int hwirq) in find_ht_magic_addr() argument
75 static u64 find_u4_magic_addr(struct pci_dev *pdev, unsigned int hwirq) in find_u4_magic_addr() argument
97 return 0xf8004000 | (hwirq << 4); in find_u4_magic_addr()
105 irq_hw_number_t hwirq; in u3msi_teardown_msi_irqs() local
111 hwirq = virq_to_hw(entry->irq); in u3msi_teardown_msi_irqs()
114 msi_bitmap_free_hwirqs(&msi_mpic->msi_bitmap, hwirq, 1); in u3msi_teardown_msi_irqs()
126 int hwirq; in u3msi_setup_msi_irqs() local
140 hwirq = msi_bitmap_alloc_hwirqs(&msi_mpic->msi_bitmap, 1); in u3msi_setup_msi_irqs()
141 if (hwirq < 0) { in u3msi_setup_msi_irqs()
142 pr_debug("u3msi: failed allocating hwirq\ in u3msi_setup_msi_irqs()
[all...]
/kernel/linux/linux-6.6/arch/powerpc/sysdev/
H A Dmpic_u3msi.c61 static u64 find_ht_magic_addr(struct pci_dev *pdev, unsigned int hwirq) in find_ht_magic_addr() argument
75 static u64 find_u4_magic_addr(struct pci_dev *pdev, unsigned int hwirq) in find_u4_magic_addr() argument
97 return 0xf8004000 | (hwirq << 4); in find_u4_magic_addr()
105 irq_hw_number_t hwirq; in u3msi_teardown_msi_irqs() local
108 hwirq = virq_to_hw(entry->irq); in u3msi_teardown_msi_irqs()
112 msi_bitmap_free_hwirqs(&msi_mpic->msi_bitmap, hwirq, 1); in u3msi_teardown_msi_irqs()
122 int hwirq; in u3msi_setup_msi_irqs() local
136 hwirq = msi_bitmap_alloc_hwirqs(&msi_mpic->msi_bitmap, 1); in u3msi_setup_msi_irqs()
137 if (hwirq < 0) { in u3msi_setup_msi_irqs()
138 pr_debug("u3msi: failed allocating hwirq\ in u3msi_setup_msi_irqs()
[all...]
/kernel/linux/linux-5.10/drivers/irqchip/
H A Dirq-pruss-intc.c173 * @hwirq: the system event number
178 static void pruss_intc_map(struct pruss_intc *intc, unsigned long hwirq) in pruss_intc_map() argument
186 intc->event_channel[hwirq].ref_count++; in pruss_intc_map()
188 ch = intc->event_channel[hwirq].value; in pruss_intc_map()
191 pruss_intc_update_cmr(intc, hwirq, ch); in pruss_intc_map()
193 reg_idx = hwirq / 32; in pruss_intc_map()
194 val = BIT(hwirq % 32); in pruss_intc_map()
208 hwirq, ch, host); in pruss_intc_map()
216 * @hwirq: the system event number
222 static void pruss_intc_unmap(struct pruss_intc *intc, unsigned long hwirq) in pruss_intc_unmap() argument
293 unsigned int hwirq = data->hwirq; pruss_intc_irq_ack() local
301 unsigned int hwirq = data->hwirq; pruss_intc_irq_mask() local
309 unsigned int hwirq = data->hwirq; pruss_intc_irq_unmask() local
466 unsigned long hwirq = irqd_to_hwirq(irq_get_irq_data(virq)); pruss_intc_irq_domain_unmap() local
492 int hwirq; pruss_intc_irq_handler() local
609 unsigned int hwirq; pruss_intc_remove() local
[all...]
H A Dirq-or1k-pic.c28 mtspr(SPR_PICMR, mfspr(SPR_PICMR) & ~(1UL << data->hwirq)); in or1k_pic_mask()
33 mtspr(SPR_PICMR, mfspr(SPR_PICMR) | (1UL << data->hwirq)); in or1k_pic_unmask()
38 mtspr(SPR_PICSR, (1UL << data->hwirq)); in or1k_pic_ack()
43 mtspr(SPR_PICMR, mfspr(SPR_PICMR) & ~(1UL << data->hwirq)); in or1k_pic_mask_ack()
44 mtspr(SPR_PICSR, (1UL << data->hwirq)); in or1k_pic_mask_ack()
55 mtspr(SPR_PICSR, mfspr(SPR_PICSR) & ~(1UL << data->hwirq)); in or1k_pic_or1200_ack()
60 mtspr(SPR_PICMR, mfspr(SPR_PICMR) & ~(1UL << data->hwirq)); in or1k_pic_or1200_mask_ack()
61 mtspr(SPR_PICSR, mfspr(SPR_PICSR) & ~(1UL << data->hwirq)); in or1k_pic_or1200_mask_ack()
102 int hwirq; in pic_get_irq() local
104 hwirq in pic_get_irq()
[all...]
H A Dirq-ls-extirq.c30 irq_hw_number_t hwirq = data->hwirq; in ls_extirq_set_type() local
34 mask = 1U << (31 - hwirq); in ls_extirq_set_type()
36 mask = 1U << hwirq; in ls_extirq_set_type()
76 irq_hw_number_t hwirq; in ls_extirq_domain_alloc() local
81 hwirq = fwspec->param[0]; in ls_extirq_domain_alloc()
82 if (hwirq >= priv->nirq) in ls_extirq_domain_alloc()
85 irq_domain_set_hwirq_and_chip(domain, virq, hwirq, &ls_extirq_chip, in ls_extirq_domain_alloc()
88 return irq_domain_alloc_irqs_parent(domain, virq, 1, &priv->map[hwirq]); in ls_extirq_domain_alloc()
113 u32 hwirq, intsiz in ls_extirq_parse_map() local
[all...]
H A Dirq-ativic32.c17 __nds32__mtsr_dsb(BIT(data->hwirq), NDS32_SR_INT_PEND2); in ativic32_ack_irq()
23 __nds32__mtsr_dsb(int_mask2 & (~(BIT(data->hwirq))), NDS32_SR_INT_MASK2); in ativic32_mask_irq()
29 __nds32__mtsr_dsb(int_mask2 | (BIT(data->hwirq)), NDS32_SR_INT_MASK2); in ativic32_unmask_irq()
36 u32 bit = 1 << data->hwirq; in nointc_set_wake()
40 __assign_bit(data->hwirq, &irq_orig_bit, true); in nointc_set_wake()
42 __assign_bit(data->hwirq, &irq_orig_bit, false); in nointc_set_wake()
44 __assign_bit(data->hwirq, &int_mask, true); in nointc_set_wake()
45 __assign_bit(data->hwirq, &wake_mask, true); in nointc_set_wake()
49 __assign_bit(data->hwirq, &int_mask, false); in nointc_set_wake()
51 __assign_bit(data->hwirq, in nointc_set_wake()
108 irq_hw_number_t hwirq = get_intr_src(); asm_do_IRQ() local
[all...]
H A Dirq-xilinx-intc.c65 unsigned long mask = BIT(d->hwirq); in intc_enable_or_unmask()
67 pr_debug("irq-xilinx: enable_or_unmask: %ld\n", d->hwirq); in intc_enable_or_unmask()
83 pr_debug("irq-xilinx: disable: %ld\n", d->hwirq); in intc_disable_or_mask()
84 xintc_write(irqc, CIE, BIT(d->hwirq)); in intc_disable_or_mask()
91 pr_debug("irq-xilinx: ack: %ld\n", d->hwirq); in intc_ack()
92 xintc_write(irqc, IAR, BIT(d->hwirq)); in intc_ack()
98 unsigned long mask = BIT(d->hwirq); in intc_mask_ack()
100 pr_debug("irq-xilinx: disable_and_ack: %ld\n", d->hwirq); in intc_mask_ack()
116 u32 hwirq; in xintc_get_irq_local() local
118 hwirq in xintc_get_irq_local()
130 u32 hwirq; xintc_get_irq() local
[all...]
H A Dirq-mvebu-sei.c59 u32 reg_idx = SEI_IRQ_REG_IDX(d->hwirq); in mvebu_sei_ack_irq()
61 writel_relaxed(BIT(SEI_IRQ_REG_BIT(d->hwirq)), in mvebu_sei_ack_irq()
68 u32 reg, reg_idx = SEI_IRQ_REG_IDX(d->hwirq); in mvebu_sei_mask_irq()
74 reg |= BIT(SEI_IRQ_REG_BIT(d->hwirq)); in mvebu_sei_mask_irq()
82 u32 reg, reg_idx = SEI_IRQ_REG_IDX(d->hwirq); in mvebu_sei_unmask_irq()
88 reg &= ~BIT(SEI_IRQ_REG_BIT(d->hwirq)); in mvebu_sei_unmask_irq()
144 msg->data = data->hwirq + sei->caps->cp_range.first; in mvebu_sei_cp_compose_msi_msg()
199 unsigned long *hwirq, in mvebu_sei_ap_translate()
202 *hwirq = fwspec->param[0]; in mvebu_sei_ap_translate()
213 unsigned long hwirq; in mvebu_sei_ap_alloc() local
197 mvebu_sei_ap_translate(struct irq_domain *domain, struct irq_fwspec *fwspec, unsigned long *hwirq, unsigned int *type) mvebu_sei_ap_translate() argument
241 mvebu_sei_cp_release_irq(struct mvebu_sei *sei, unsigned long hwirq) mvebu_sei_cp_release_irq() argument
254 unsigned long hwirq; mvebu_sei_cp_domain_alloc() local
339 unsigned long hwirq; mvebu_sei_handle_cascade_irq() local
[all...]
H A Dirq-sifive-plic.c85 int hwirq, int enable) in plic_toggle()
87 u32 __iomem *reg = handler->enable_base + (hwirq / 32) * sizeof(u32); in plic_toggle()
88 u32 hwirq_mask = 1 << (hwirq % 32); in plic_toggle()
104 writel(enable, priv->regs + PRIORITY_BASE + d->hwirq * PRIORITY_PER_ID); in plic_irq_toggle()
110 plic_toggle(handler, d->hwirq, enable); in plic_irq_toggle()
168 writel(d->hwirq, handler->hart_base + CONTEXT_CLAIM); in plic_irq_eoi()
171 writel(d->hwirq, handler->hart_base + CONTEXT_CLAIM); in plic_irq_eoi()
186 irq_hw_number_t hwirq) in plic_irqdomain_map()
190 irq_domain_set_info(d, irq, hwirq, &plic_chip, d->host_data, in plic_irqdomain_map()
201 irq_hw_number_t hwirq; in plic_irq_domain_alloc() local
84 plic_toggle(struct plic_handler *handler, int hwirq, int enable) plic_toggle() argument
185 plic_irqdomain_map(struct irq_domain *d, unsigned int irq, irq_hw_number_t hwirq) plic_irqdomain_map() argument
235 irq_hw_number_t hwirq; plic_handle_irq() local
317 irq_hw_number_t hwirq; plic_init() local
[all...]
/kernel/linux/linux-5.10/arch/powerpc/platforms/85xx/
H A Dsocrates_fpga_pic.c109 unsigned int irq_line, hwirq = irqd_to_hwirq(d); in socrates_fpga_pic_ack() local
112 irq_line = fpga_irqs[hwirq].irq_line; in socrates_fpga_pic_ack()
116 mask |= (1 << (hwirq + 16)); in socrates_fpga_pic_ack()
124 unsigned int hwirq = irqd_to_hwirq(d); in socrates_fpga_pic_mask() local
128 irq_line = fpga_irqs[hwirq].irq_line; in socrates_fpga_pic_mask()
132 mask &= ~(1 << hwirq); in socrates_fpga_pic_mask()
140 unsigned int hwirq = irqd_to_hwirq(d); in socrates_fpga_pic_mask_ack() local
144 irq_line = fpga_irqs[hwirq].irq_line; in socrates_fpga_pic_mask_ack()
148 mask &= ~(1 << hwirq); in socrates_fpga_pic_mask_ack()
149 mask |= (1 << (hwirq in socrates_fpga_pic_mask_ack()
157 unsigned int hwirq = irqd_to_hwirq(d); socrates_fpga_pic_unmask() local
173 unsigned int hwirq = irqd_to_hwirq(d); socrates_fpga_pic_eoi() local
190 unsigned int hwirq = irqd_to_hwirq(d); socrates_fpga_pic_set_type() local
228 socrates_fpga_pic_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hwirq) socrates_fpga_pic_host_map() argument
[all...]
/kernel/linux/linux-6.6/arch/powerpc/platforms/85xx/
H A Dsocrates_fpga_pic.c108 unsigned int irq_line, hwirq = irqd_to_hwirq(d); in socrates_fpga_pic_ack() local
111 irq_line = fpga_irqs[hwirq].irq_line; in socrates_fpga_pic_ack()
115 mask |= (1 << (hwirq + 16)); in socrates_fpga_pic_ack()
123 unsigned int hwirq = irqd_to_hwirq(d); in socrates_fpga_pic_mask() local
127 irq_line = fpga_irqs[hwirq].irq_line; in socrates_fpga_pic_mask()
131 mask &= ~(1 << hwirq); in socrates_fpga_pic_mask()
139 unsigned int hwirq = irqd_to_hwirq(d); in socrates_fpga_pic_mask_ack() local
143 irq_line = fpga_irqs[hwirq].irq_line; in socrates_fpga_pic_mask_ack()
147 mask &= ~(1 << hwirq); in socrates_fpga_pic_mask_ack()
148 mask |= (1 << (hwirq in socrates_fpga_pic_mask_ack()
156 unsigned int hwirq = irqd_to_hwirq(d); socrates_fpga_pic_unmask() local
172 unsigned int hwirq = irqd_to_hwirq(d); socrates_fpga_pic_eoi() local
189 unsigned int hwirq = irqd_to_hwirq(d); socrates_fpga_pic_set_type() local
227 socrates_fpga_pic_host_map(struct irq_domain *h, unsigned int virq, irq_hw_number_t hwirq) socrates_fpga_pic_host_map() argument
[all...]
/kernel/linux/linux-5.10/arch/powerpc/platforms/powernv/
H A Dpci-cxl.c42 int hwirq = msi_bitmap_alloc_hwirqs(&phb->msi_bmp, num); in pnv_cxl_alloc_hwirqs() local
44 if (hwirq < 0) { in pnv_cxl_alloc_hwirqs()
49 return phb->msi_base + hwirq; in pnv_cxl_alloc_hwirqs()
53 void pnv_cxl_release_hwirqs(struct pci_dev *dev, int hwirq, int num) in pnv_cxl_release_hwirqs() argument
58 msi_bitmap_free_hwirqs(&phb->msi_bmp, hwirq - phb->msi_base, num); in pnv_cxl_release_hwirqs()
67 int i, hwirq; in pnv_cxl_release_hwirq_ranges() local
75 hwirq = irqs->offset[i] - phb->msi_base; in pnv_cxl_release_hwirq_ranges()
76 msi_bitmap_free_hwirqs(&phb->msi_bmp, hwirq, in pnv_cxl_release_hwirq_ranges()
87 int i, hwirq, try; in pnv_cxl_alloc_hwirq_ranges() local
95 hwirq in pnv_cxl_alloc_hwirq_ranges()
128 pnv_cxl_ioda_msi_setup(struct pci_dev *dev, unsigned int hwirq, unsigned int virq) pnv_cxl_ioda_msi_setup() argument
[all...]
/kernel/linux/linux-6.6/arch/powerpc/platforms/powernv/
H A Dpci-cxl.c43 int hwirq = msi_bitmap_alloc_hwirqs(&phb->msi_bmp, num); in pnv_cxl_alloc_hwirqs() local
45 if (hwirq < 0) { in pnv_cxl_alloc_hwirqs()
50 return phb->msi_base + hwirq; in pnv_cxl_alloc_hwirqs()
54 void pnv_cxl_release_hwirqs(struct pci_dev *dev, int hwirq, int num) in pnv_cxl_release_hwirqs() argument
59 msi_bitmap_free_hwirqs(&phb->msi_bmp, hwirq - phb->msi_base, num); in pnv_cxl_release_hwirqs()
68 int i, hwirq; in pnv_cxl_release_hwirq_ranges() local
76 hwirq = irqs->offset[i] - phb->msi_base; in pnv_cxl_release_hwirq_ranges()
77 msi_bitmap_free_hwirqs(&phb->msi_bmp, hwirq, in pnv_cxl_release_hwirq_ranges()
88 int i, hwirq, try; in pnv_cxl_alloc_hwirq_ranges() local
96 hwirq in pnv_cxl_alloc_hwirq_ranges()
129 pnv_cxl_ioda_msi_setup(struct pci_dev *dev, unsigned int hwirq, unsigned int virq) pnv_cxl_ioda_msi_setup() argument
[all...]
/kernel/linux/linux-6.6/kernel/irq/
H A Dirqdomain.c389 * @first_hwirq: first hwirq number to use for the translation. Should normally
509 irq_hw_number_t hwirq) in irq_domain_clear_mapping()
516 if (hwirq < domain->revmap_size) in irq_domain_clear_mapping()
517 rcu_assign_pointer(domain->revmap[hwirq], NULL); in irq_domain_clear_mapping()
519 radix_tree_delete(&domain->revmap_tree, hwirq); in irq_domain_clear_mapping()
523 irq_hw_number_t hwirq, in irq_domain_set_mapping()
535 if (hwirq < domain->revmap_size) in irq_domain_set_mapping()
536 rcu_assign_pointer(domain->revmap[hwirq], irq_data); in irq_domain_set_mapping()
538 radix_tree_insert(&domain->revmap_tree, hwirq, irq_data); in irq_domain_set_mapping()
544 irq_hw_number_t hwirq; in irq_domain_disassociate() local
508 irq_domain_clear_mapping(struct irq_domain *domain, irq_hw_number_t hwirq) irq_domain_clear_mapping() argument
522 irq_domain_set_mapping(struct irq_domain *domain, irq_hw_number_t hwirq, struct irq_data *irq_data) irq_domain_set_mapping() argument
577 irq_domain_associate_locked(struct irq_domain *domain, unsigned int virq, irq_hw_number_t hwirq) irq_domain_associate_locked() argument
619 irq_domain_associate(struct irq_domain *domain, unsigned int virq, irq_hw_number_t hwirq) irq_domain_associate() argument
690 irq_create_mapping_affinity_locked(struct irq_domain *domain, irq_hw_number_t hwirq, const struct irq_affinity_desc *affinity) irq_create_mapping_affinity_locked() argument
729 irq_create_mapping_affinity(struct irq_domain *domain, irq_hw_number_t hwirq, const struct irq_affinity_desc *affinity) irq_create_mapping_affinity() argument
760 irq_domain_translate(struct irq_domain *d, struct irq_fwspec *fwspec, irq_hw_number_t *hwirq, unsigned int *type) irq_domain_translate() argument
795 irq_hw_number_t hwirq; irq_create_fwspec_mapping() local
933 __irq_resolve_mapping(struct irq_domain *domain, irq_hw_number_t hwirq, unsigned int *irq) __irq_resolve_mapping() argument
1082 irq_domain_alloc_descs(int virq, unsigned int cnt, irq_hw_number_t hwirq, int node, const struct irq_affinity_desc *affinity) irq_domain_alloc_descs() argument
1185 irq_hw_number_t hwirq = data->hwirq; irq_domain_remove_irq() local
1362 irq_domain_set_hwirq_and_chip(struct irq_domain *domain, unsigned int virq, irq_hw_number_t hwirq, const struct irq_chip *chip, void *chip_data) irq_domain_set_hwirq_and_chip() argument
1391 irq_domain_set_info(struct irq_domain *domain, unsigned int virq, irq_hw_number_t hwirq, const struct irq_chip *chip, void *chip_data, irq_flow_handler_t handler, void *handler_data, const char *handler_name) irq_domain_set_info() argument
1893 irq_domain_set_info(struct irq_domain *domain, unsigned int virq, irq_hw_number_t hwirq, const struct irq_chip *chip, void *chip_data, irq_flow_handler_t handler, void *handler_data, const char *handler_name) irq_domain_set_info() argument
[all...]
/kernel/linux/linux-5.10/kernel/irq/
H A Dirqdomain.c361 * @first_hwirq: first hwirq number to use for the translation. Should normally
488 irq_hw_number_t hwirq) in irq_domain_clear_mapping()
490 if (hwirq < domain->revmap_size) { in irq_domain_clear_mapping()
491 domain->linear_revmap[hwirq] = 0; in irq_domain_clear_mapping()
494 radix_tree_delete(&domain->revmap_tree, hwirq); in irq_domain_clear_mapping()
500 irq_hw_number_t hwirq, in irq_domain_set_mapping()
503 if (hwirq < domain->revmap_size) { in irq_domain_set_mapping()
504 domain->linear_revmap[hwirq] = irq_data->irq; in irq_domain_set_mapping()
507 radix_tree_insert(&domain->revmap_tree, hwirq, irq_data); in irq_domain_set_mapping()
515 irq_hw_number_t hwirq; in irq_domain_disassociate() local
487 irq_domain_clear_mapping(struct irq_domain *domain, irq_hw_number_t hwirq) irq_domain_clear_mapping() argument
499 irq_domain_set_mapping(struct irq_domain *domain, irq_hw_number_t hwirq, struct irq_data *irq_data) irq_domain_set_mapping() argument
548 irq_domain_associate_locked(struct irq_domain *domain, unsigned int virq, irq_hw_number_t hwirq) irq_domain_associate_locked() argument
594 irq_domain_associate(struct irq_domain *domain, unsigned int virq, irq_hw_number_t hwirq) irq_domain_associate() argument
664 irq_create_mapping_affinity_locked(struct irq_domain *domain, irq_hw_number_t hwirq, const struct irq_affinity_desc *affinity) irq_create_mapping_affinity_locked() argument
703 irq_create_mapping_affinity(struct irq_domain *domain, irq_hw_number_t hwirq, const struct irq_affinity_desc *affinity) irq_create_mapping_affinity() argument
769 irq_domain_translate(struct irq_domain *d, struct irq_fwspec *fwspec, irq_hw_number_t *hwirq, unsigned int *type) irq_domain_translate() argument
804 irq_hw_number_t hwirq; irq_create_fwspec_mapping() local
939 irq_find_mapping(struct irq_domain *domain, irq_hw_number_t hwirq) irq_find_mapping() argument
1073 irq_domain_alloc_descs(int virq, unsigned int cnt, irq_hw_number_t hwirq, int node, const struct irq_affinity_desc *affinity) irq_domain_alloc_descs() argument
1178 irq_hw_number_t hwirq = data->hwirq; irq_domain_remove_irq() local
1354 irq_domain_set_hwirq_and_chip(struct irq_domain *domain, unsigned int virq, irq_hw_number_t hwirq, struct irq_chip *chip, void *chip_data) irq_domain_set_hwirq_and_chip() argument
1382 irq_domain_set_info(struct irq_domain *domain, unsigned int virq, irq_hw_number_t hwirq, struct irq_chip *chip, void *chip_data, irq_flow_handler_t handler, void *handler_data, const char *handler_name) irq_domain_set_info() argument
1894 irq_domain_set_info(struct irq_domain *domain, unsigned int virq, irq_hw_number_t hwirq, struct irq_chip *chip, void *chip_data, irq_flow_handler_t handler, void *handler_data, const char *handler_name) irq_domain_set_info() argument
[all...]
/kernel/linux/linux-5.10/drivers/pinctrl/mediatek/
H A Dmtk-eint.c85 static int mtk_eint_flip_edge(struct mtk_eint *eint, int hwirq) in mtk_eint_flip_edge() argument
89 u32 mask = BIT(hwirq & 0x1f); in mtk_eint_flip_edge()
90 u32 port = (hwirq >> 5) & eint->hw->port_mask; in mtk_eint_flip_edge()
93 curr_level = eint->gpio_xlate->get_gpio_state(eint->pctl, hwirq); in mtk_eint_flip_edge()
104 hwirq); in mtk_eint_flip_edge()
113 u32 mask = BIT(d->hwirq & 0x1f); in mtk_eint_mask()
114 void __iomem *reg = mtk_eint_get_offset(eint, d->hwirq, in mtk_eint_mask()
117 eint->cur_mask[d->hwirq >> 5] &= ~mask; in mtk_eint_mask()
125 u32 mask = BIT(d->hwirq & 0x1f); in mtk_eint_unmask()
126 void __iomem *reg = mtk_eint_get_offset(eint, d->hwirq, in mtk_eint_unmask()
[all...]
/kernel/linux/linux-5.10/arch/powerpc/platforms/pasemi/
H A Dmsi.c61 irq_hw_number_t hwirq; in pasemi_msi_teardown_msi_irqs() local
69 hwirq = virq_to_hw(entry->irq); in pasemi_msi_teardown_msi_irqs()
72 msi_bitmap_free_hwirqs(&msi_mpic->msi_bitmap, hwirq, ALLOC_CHUNK); in pasemi_msi_teardown_msi_irqs()
83 int hwirq; in pasemi_msi_setup_msi_irqs() local
99 hwirq = msi_bitmap_alloc_hwirqs(&msi_mpic->msi_bitmap, in pasemi_msi_setup_msi_irqs()
101 if (hwirq < 0) { in pasemi_msi_setup_msi_irqs()
102 pr_debug("pasemi_msi: failed allocating hwirq\n"); in pasemi_msi_setup_msi_irqs()
103 return hwirq; in pasemi_msi_setup_msi_irqs()
106 virq = irq_create_mapping(msi_mpic->irqhost, hwirq); in pasemi_msi_setup_msi_irqs()
108 pr_debug("pasemi_msi: failed mapping hwirq in pasemi_msi_setup_msi_irqs()
[all...]
/kernel/linux/linux-6.6/arch/powerpc/platforms/pasemi/
H A Dmsi.c61 irq_hw_number_t hwirq; in pasemi_msi_teardown_msi_irqs() local
66 hwirq = virq_to_hw(entry->irq); in pasemi_msi_teardown_msi_irqs()
70 msi_bitmap_free_hwirqs(&msi_mpic->msi_bitmap, hwirq, ALLOC_CHUNK); in pasemi_msi_teardown_msi_irqs()
79 int hwirq; in pasemi_msi_setup_msi_irqs() local
95 hwirq = msi_bitmap_alloc_hwirqs(&msi_mpic->msi_bitmap, in pasemi_msi_setup_msi_irqs()
97 if (hwirq < 0) { in pasemi_msi_setup_msi_irqs()
98 pr_debug("pasemi_msi: failed allocating hwirq\n"); in pasemi_msi_setup_msi_irqs()
99 return hwirq; in pasemi_msi_setup_msi_irqs()
102 virq = irq_create_mapping(msi_mpic->irqhost, hwirq); in pasemi_msi_setup_msi_irqs()
104 pr_debug("pasemi_msi: failed mapping hwirq in pasemi_msi_setup_msi_irqs()
[all...]
/kernel/linux/linux-6.6/drivers/pinctrl/mediatek/
H A Dmtk-eint.c101 static int mtk_eint_flip_edge(struct mtk_eint *eint, int hwirq) in mtk_eint_flip_edge() argument
105 u32 mask = BIT(hwirq & 0x1f); in mtk_eint_flip_edge()
106 u32 port = (hwirq >> 5) & eint->hw->port_mask; in mtk_eint_flip_edge()
109 curr_level = eint->gpio_xlate->get_gpio_state(eint->pctl, hwirq); in mtk_eint_flip_edge()
120 hwirq); in mtk_eint_flip_edge()
129 u32 mask = BIT(d->hwirq & 0x1f); in mtk_eint_mask()
130 void __iomem *reg = mtk_eint_get_offset(eint, d->hwirq, in mtk_eint_mask()
133 eint->cur_mask[d->hwirq >> 5] &= ~mask; in mtk_eint_mask()
141 u32 mask = BIT(d->hwirq & 0x1f); in mtk_eint_unmask()
142 void __iomem *reg = mtk_eint_get_offset(eint, d->hwirq, in mtk_eint_unmask()
[all...]

Completed in 16 milliseconds

12345678910>>...29