Home
last modified time | relevance | path

Searched refs:hwirq (Results 1 – 25 of 39) sorted by relevance

12

/linux-3.4.99/kernel/irq/
Dirqdomain.c69 irq_hw_number_t hwirq) in irq_domain_legacy_revmap() argument
74 if (WARN_ON(hwirq < first_hwirq || hwirq >= first_hwirq + size)) in irq_domain_legacy_revmap()
76 return hwirq - first_hwirq + domain->revmap_data.legacy.first_irq; in irq_domain_legacy_revmap()
129 irq_data->hwirq = first_hwirq + i; in irq_domain_add_legacy()
136 int hwirq = first_hwirq + i; in irq_domain_add_legacy() local
146 ops->map(domain, irq, hwirq); in irq_domain_add_legacy()
268 irq_hw_number_t hwirq) in irq_setup_virq() argument
272 irq_data->hwirq = hwirq; in irq_setup_virq()
274 if (domain->ops->map(domain, virq, hwirq)) { in irq_setup_virq()
277 irq_data->hwirq = 0; in irq_setup_virq()
[all …]
/linux-3.4.99/arch/powerpc/sysdev/
Dmpic_u3msi.c67 static u64 find_ht_magic_addr(struct pci_dev *pdev, unsigned int hwirq) in find_ht_magic_addr() argument
81 static u64 find_u4_magic_addr(struct pci_dev *pdev, unsigned int hwirq) in find_u4_magic_addr() argument
103 return 0xf8004000 | (hwirq << 4); in find_u4_magic_addr()
147 int hwirq; in u3msi_setup_msi_irqs() local
150 hwirq = msi_bitmap_alloc_hwirqs(&msi_mpic->msi_bitmap, 1); in u3msi_setup_msi_irqs()
151 if (hwirq < 0) { in u3msi_setup_msi_irqs()
153 return hwirq; in u3msi_setup_msi_irqs()
156 addr = find_ht_magic_addr(pdev, hwirq); in u3msi_setup_msi_irqs()
158 addr = find_u4_magic_addr(pdev, hwirq); in u3msi_setup_msi_irqs()
162 virq = irq_create_mapping(msi_mpic->irqhost, hwirq); in u3msi_setup_msi_irqs()
[all …]
Dmpic_pasemi_msi.c98 int hwirq; in pasemi_msi_setup_msi_irqs() local
112 hwirq = msi_bitmap_alloc_hwirqs(&msi_mpic->msi_bitmap, in pasemi_msi_setup_msi_irqs()
114 if (hwirq < 0) { in pasemi_msi_setup_msi_irqs()
116 return hwirq; in pasemi_msi_setup_msi_irqs()
119 virq = irq_create_mapping(msi_mpic->irqhost, hwirq); in pasemi_msi_setup_msi_irqs()
122 hwirq); in pasemi_msi_setup_msi_irqs()
123 msi_bitmap_free_hwirqs(&msi_mpic->msi_bitmap, hwirq, in pasemi_msi_setup_msi_irqs()
139 "addr 0x%x\n", virq, hwirq, msg.address_lo); in pasemi_msi_setup_msi_irqs()
144 msg.data = hwirq-0x200; in pasemi_msi_setup_msi_irqs()
Dmpic_msi.c22 void mpic_msi_reserve_hwirq(struct mpic *mpic, irq_hw_number_t hwirq) in mpic_msi_reserve_hwirq() argument
28 msi_bitmap_reserve_hwirq(&mpic->msi_bitmap, hwirq); in mpic_msi_reserve_hwirq()
34 irq_hw_number_t hwirq; in mpic_msi_reserve_u3_hwirqs() local
68 oirq.size, &hwirq, &flags); in mpic_msi_reserve_u3_hwirqs()
69 msi_bitmap_reserve_hwirq(&mpic->msi_bitmap, hwirq); in mpic_msi_reserve_u3_hwirqs()
Dfsl_msi.c125 static void fsl_compose_msi_msg(struct pci_dev *pdev, int hwirq, in fsl_compose_msi_msg() argument
145 msg->data = hwirq; in fsl_compose_msi_msg()
148 __func__, hwirq / IRQS_PER_MSI_REG, hwirq % IRQS_PER_MSI_REG); in fsl_compose_msi_msg()
156 int rc, hwirq = -ENOMEM; in fsl_setup_msi_irqs() local
196 hwirq = msi_bitmap_alloc_hwirqs(&msi_data->bitmap, 1); in fsl_setup_msi_irqs()
197 if (hwirq >= 0) in fsl_setup_msi_irqs()
201 if (hwirq < 0) { in fsl_setup_msi_irqs()
202 rc = hwirq; in fsl_setup_msi_irqs()
207 virq = irq_create_mapping(msi_data->irqhost, hwirq); in fsl_setup_msi_irqs()
210 dev_err(&pdev->dev, "fail mapping hwirq %i\n", hwirq); in fsl_setup_msi_irqs()
[all …]
Dmv64x60_pic.c212 irq_hw_number_t hwirq) in mv64x60_host_map() argument
218 level1 = (hwirq & MV64x60_LEVEL1_MASK) >> MV64x60_LEVEL1_OFFSET; in mv64x60_host_map()
274 irq_hw_number_t hwirq; in mv64x60_get_irq() local
292 hwirq = (level1 << MV64x60_LEVEL1_OFFSET) | __ilog2(cause); in mv64x60_get_irq()
293 virq = irq_linear_revmap(mv64x60_irq_host, hwirq); in mv64x60_get_irq()
Dmpic.h15 extern void mpic_msi_reserve_hwirq(struct mpic *mpic, irq_hw_number_t hwirq);
21 irq_hw_number_t hwirq) in mpic_msi_reserve_hwirq() argument
Dmsi_bitmap.c50 void msi_bitmap_reserve_hwirq(struct msi_bitmap *bmp, unsigned int hwirq) in msi_bitmap_reserve_hwirq() argument
54 pr_debug("msi_bitmap: reserving hwirq 0x%x\n", hwirq); in msi_bitmap_reserve_hwirq()
57 bitmap_allocate_region(bmp->bitmap, hwirq, 0); in msi_bitmap_reserve_hwirq()
/linux-3.4.99/arch/powerpc/platforms/85xx/
Dsocrates_fpga_pic.c111 unsigned int irq_line, hwirq = irqd_to_hwirq(d); in socrates_fpga_pic_ack() local
114 irq_line = fpga_irqs[hwirq].irq_line; in socrates_fpga_pic_ack()
118 mask |= (1 << (hwirq + 16)); in socrates_fpga_pic_ack()
126 unsigned int hwirq = irqd_to_hwirq(d); in socrates_fpga_pic_mask() local
130 irq_line = fpga_irqs[hwirq].irq_line; in socrates_fpga_pic_mask()
134 mask &= ~(1 << hwirq); in socrates_fpga_pic_mask()
142 unsigned int hwirq = irqd_to_hwirq(d); in socrates_fpga_pic_mask_ack() local
146 irq_line = fpga_irqs[hwirq].irq_line; in socrates_fpga_pic_mask_ack()
150 mask &= ~(1 << hwirq); in socrates_fpga_pic_mask_ack()
151 mask |= (1 << (hwirq + 16)); in socrates_fpga_pic_mask_ack()
[all …]
/linux-3.4.99/arch/microblaze/kernel/
Dintc.c44 unsigned long mask = 1 << d->hwirq; in intc_enable_or_unmask()
46 pr_debug("enable_or_unmask: %ld\n", d->hwirq); in intc_enable_or_unmask()
59 pr_debug("disable: %ld\n", d->hwirq); in intc_disable_or_mask()
60 out_be32(INTC_BASE + CIE, 1 << d->hwirq); in intc_disable_or_mask()
65 pr_debug("ack: %ld\n", d->hwirq); in intc_ack()
66 out_be32(INTC_BASE + IAR, 1 << d->hwirq); in intc_ack()
71 unsigned long mask = 1 << d->hwirq; in intc_mask_ack()
73 pr_debug("disable_and_ack: %ld\n", d->hwirq); in intc_mask_ack()
90 unsigned int hwirq, irq = -1; in get_irq() local
92 hwirq = in_be32(INTC_BASE + IVR); in get_irq()
[all …]
/linux-3.4.99/arch/arm/mach-at91/
Dirq.c49 at91_aic_write(AT91_AIC_IDCR, 1 << d->hwirq); in at91_aic_mask_irq()
55 at91_aic_write(AT91_AIC_IECR, 1 << d->hwirq); in at91_aic_unmask_irq()
60 #define is_extern_irq(hwirq) ((1 << (hwirq)) & at91_extern_irq) argument
74 …if ((d->hwirq == AT91_ID_FIQ) || is_extern_irq(d->hwirq)) /* only supported on external interrupt… in at91_aic_set_type()
80 …if ((d->hwirq == AT91_ID_FIQ) || is_extern_irq(d->hwirq)) /* only supported on external interrupt… in at91_aic_set_type()
89 smr = at91_aic_read(AT91_AIC_SMR(d->hwirq)) & ~AT91_AIC_SRCTYPE; in at91_aic_set_type()
90 at91_aic_write(AT91_AIC_SMR(d->hwirq), smr | srctype); in at91_aic_set_type()
101 if (unlikely(d->hwirq >= NR_AIC_IRQS)) in at91_aic_set_wake()
105 wakeups |= (1 << d->hwirq); in at91_aic_set_wake()
107 wakeups &= ~(1 << d->hwirq); in at91_aic_set_wake()
/linux-3.4.99/arch/powerpc/platforms/wsp/
Dmsi.c30 int hwirq; in wsp_setup_msi_irqs() local
46 hwirq = wsp_ics_alloc_irq(phb->dn, 1); in wsp_setup_msi_irqs()
47 if (hwirq < 0) { in wsp_setup_msi_irqs()
49 return hwirq; in wsp_setup_msi_irqs()
52 virq = irq_create_mapping(NULL, hwirq); in wsp_setup_msi_irqs()
59 hwirq, virq); in wsp_setup_msi_irqs()
63 msg.data = hwirq & XIVE_ADDR_MASK; in wsp_setup_msi_irqs()
74 int hwirq; in wsp_teardown_msi_irqs() local
87 hwirq = virq_to_hw(entry->irq); in wsp_teardown_msi_irqs()
90 wsp_ics_free_irq(phb->dn, hwirq); in wsp_teardown_msi_irqs()
Dics.c162 static int cache_hwirq_map(struct wsp_ics *ics, unsigned int hwirq, in cache_hwirq_map() argument
167 int index = hwirq - ics->hwirq_start; in cache_hwirq_map()
176 ics->hwirq_cpu_map[hwirq - ics->hwirq_start] = xics_default_server; in cache_hwirq_map()
187 nodeid = (hwirq >> WSP_ICS_CHIP_SHIFT) & 0x3; /* 12:14 */ in cache_hwirq_map()
208 target = hwirq % cpumask_weight(newmask); in cache_hwirq_map()
228 hwirq, ics->hwirq_cpu_map[index]); in cache_hwirq_map()
248 static int get_irq_server(struct wsp_ics *ics, unsigned int hwirq) in get_irq_server() argument
250 int index = hwirq - ics->hwirq_start; in get_irq_server()
260 static int cache_hwirq_map(struct wsp_ics *ics, unsigned int hwirq, in cache_hwirq_map() argument
266 static int get_irq_server(struct wsp_ics *ics, unsigned int hwirq) in get_irq_server() argument
[all …]
/linux-3.4.99/arch/powerpc/sysdev/ge/
Dge_pic.c114 unsigned int hwirq = irqd_to_hwirq(d); in gef_pic_mask() local
119 mask &= ~(1 << hwirq); in gef_pic_mask()
135 unsigned int hwirq = irqd_to_hwirq(d); in gef_pic_unmask() local
140 mask |= (1 << hwirq); in gef_pic_unmask()
157 irq_hw_number_t hwirq) in gef_pic_host_map() argument
232 int hwirq; in gef_pic_get_irq() local
241 for (hwirq = GEF_PIC_NUM_IRQS - 1; hwirq > -1; hwirq--) { in gef_pic_get_irq()
242 if (active & (0x1 << hwirq)) in gef_pic_get_irq()
246 (irq_hw_number_t)hwirq); in gef_pic_get_irq()
/linux-3.4.99/Documentation/
DIRQ-domain.txt12 the controller-local IRQ (hwirq) number into the Linux IRQ number
15 The irq_domain library adds mapping between hwirq and IRQ numbers on
21 specifiers to hwirq numbers, and can be easily extended to support
33 between hwirq and IRQ numbers. Mappings are added to the irq_domain
35 hwirq number as arguments. If a mapping for the hwirq doesn't already
37 the hwirq, and call the .map() callback so the driver can perform any
41 be used to find the Linux IRQ number from the hwirq number.
44 needs to know the associated hwirq number (such as in the irq_chip
45 callbacks) then it can be directly obtained from irq_data->hwirq.
48 There are several mechanisms available for reverse mapping from hwirq
[all …]
/linux-3.4.99/include/linux/
Dirqdomain.h149 irq_hw_number_t hwirq);
152 irq_hw_number_t hwirq);
155 irq_hw_number_t hwirq);
157 irq_hw_number_t hwirq);
159 irq_hw_number_t hwirq);
/linux-3.4.99/arch/powerpc/platforms/powernv/
Dpci.c75 static void pnv_put_msi(struct pnv_phb *phb, unsigned int hwirq) in pnv_put_msi() argument
80 if (WARN_ON(hwirq < phb->msi_base || in pnv_put_msi()
81 hwirq >= (phb->msi_base + phb->msi_count))) in pnv_put_msi()
83 id = hwirq - phb->msi_base; in pnv_put_msi()
96 unsigned int hwirq, virq; in pnv_setup_msi_irqs() local
108 hwirq = pnv_get_one_msi(phb); in pnv_setup_msi_irqs()
109 if (!hwirq) { in pnv_setup_msi_irqs()
114 virq = irq_create_mapping(NULL, hwirq); in pnv_setup_msi_irqs()
118 pnv_put_msi(phb, hwirq); in pnv_setup_msi_irqs()
121 rc = phb->msi_setup(phb, pdev, hwirq, entry->msi_attrib.is_64, in pnv_setup_msi_irqs()
[all …]
Dopal.c309 unsigned int hwirq = be32_to_cpup(irqs); in opal_init() local
310 unsigned int irq = irq_create_mapping(NULL, hwirq); in opal_init()
312 pr_warning("opal: Failed to map irq 0x%x\n", hwirq); in opal_init()
318 " (0x%x)\n", rc, irq, hwirq); in opal_init()
Dpci-p5ioc2.c45 unsigned int hwirq, unsigned int is_64, in pnv_pci_p5ioc2_msi_setup() argument
50 msg->data = hwirq - phb->msi_base; in pnv_pci_p5ioc2_msi_setup()
/linux-3.4.99/arch/powerpc/platforms/pseries/
Dmsi.c393 int hwirq, virq, i, rc; in rtas_setup_msi_irqs() local
426 hwirq = rtas_query_irq_number(pdn, i++); in rtas_setup_msi_irqs()
427 if (hwirq < 0) { in rtas_setup_msi_irqs()
429 return hwirq; in rtas_setup_msi_irqs()
432 virq = irq_create_mapping(NULL, hwirq); in rtas_setup_msi_irqs()
435 pr_debug("rtas_msi: Failed mapping hwirq %d\n", hwirq); in rtas_setup_msi_irqs()
/linux-3.4.99/drivers/gpio/
Dgpio-mpc8xxx.c325 unsigned hwirq; in mpc8xxx_add_controller() local
353 hwirq = irq_of_parse_and_map(np, 0); in mpc8xxx_add_controller()
354 if (hwirq == NO_IRQ) in mpc8xxx_add_controller()
370 irq_set_handler_data(hwirq, mpc8xxx_gc); in mpc8xxx_add_controller()
371 irq_set_chained_handler(hwirq, mpc8xxx_gpio_irq_cascade); in mpc8xxx_add_controller()
Dgpio-sodaville.c56 if (d->hwirq < 8) in sdv_gpio_pub_set_type()
65 reg &= ~BIT(4 * (d->hwirq % 8)); in sdv_gpio_pub_set_type()
69 reg |= BIT(4 * (d->hwirq % 8)); in sdv_gpio_pub_set_type()
/linux-3.4.99/drivers/pcmcia/
Dm8xx_pcmcia.c220 int hwirq; member
886 mk_int_int_mask(s->hwirq) << 24); in m8xx_set_socket()
1153 unsigned int i, m, hwirq; in m8xx_probe() local
1165 hwirq = irq_map[pcmcia_schlvl].hwirq; in m8xx_probe()
1175 " with IRQ %u (%d). \n", pcmcia_schlvl, hwirq); in m8xx_probe()
1195 M8XX_PGCRX_CXOE | (mk_int_int_mask(hwirq) << 16)); in m8xx_probe()
1197 M8XX_PGCRX_CXOE | (mk_int_int_mask(hwirq) << 16)); in m8xx_probe()
1236 socket[i].hwirq = hwirq; in m8xx_probe()
/linux-3.4.99/arch/arm/common/
Dvic.c202 unsigned int irq = d->hwirq; in vic_ack_irq()
211 unsigned int irq = d->hwirq; in vic_mask_irq()
218 unsigned int irq = d->hwirq; in vic_unmask_irq()
240 unsigned int off = d->hwirq; in vic_set_wake()
/linux-3.4.99/arch/powerpc/include/asm/
Dmsi_bitmap.h27 void msi_bitmap_reserve_hwirq(struct msi_bitmap *bmp, unsigned int hwirq);

12