Home
last modified time | relevance | path

Searched refs:irqd (Results 1 – 3 of 3) sorted by relevance

/xen/xen/include/asm-arm/
A Dgic.h341 void (*eoi_irq)(struct irq_desc *irqd);
343 void (*deactivate_irq)(struct irq_desc *irqd);
347 void (*set_active_state)(struct irq_desc *irqd, bool state);
349 void (*set_pending_state)(struct irq_desc *irqd, bool state);
375 bool (*read_pending_state)(struct irq_desc *irqd);
409 static inline void gic_set_active_state(struct irq_desc *irqd, bool state) in gic_set_active_state() argument
411 ASSERT(test_bit(_IRQ_GUEST, &irqd->status)); in gic_set_active_state()
412 gic_hw_ops->set_active_state(irqd, state); in gic_set_active_state()
422 gic_hw_ops->set_pending_state(irqd, state); in gic_set_pending_state()
429 static inline bool gic_read_pending_state(struct irq_desc *irqd) in gic_read_pending_state() argument
[all …]
/xen/xen/arch/arm/
A Dgic-v2.c225 int irq = irqd->irq; in gicv2_eoi_irq()
233 writel_gicc(irqd->irq, GICC_DIR); in gicv2_dir_irq()
243 writel_gicd(1U << (irqd->irq % 32), offset + (irqd->irq / 32) * 4); in gicv2_poke_irq()
250 reg = readl_gicd(offset + (irqd->irq / 32) * 4) & (1U << (irqd->irq % 32)); in gicv2_peek_irq()
264 ASSERT(spin_is_locked(&irqd->lock)); in gicv2_set_active_state()
269 gicv2_poke_irq(irqd, GICD_ISACTIVER); in gicv2_set_active_state()
274 gicv2_poke_irq(irqd, GICD_ICACTIVER); in gicv2_set_active_state()
280 ASSERT(spin_is_locked(&irqd->lock)); in gicv2_set_pending_state()
285 gicv2_poke_irq(irqd, GICD_ISPENDR); in gicv2_set_pending_state()
290 gicv2_poke_irq(irqd, GICD_ICPENDR); in gicv2_set_pending_state()
[all …]
A Dgic-v3.c431 u32 mask = 1U << (irqd->irq % 32); in gicv3_poke_irq()
434 if ( irqd->irq < NR_GIC_LOCAL_IRQS ) in gicv3_poke_irq()
442 gicv3_wait_for_rwp(irqd->irq); in gicv3_poke_irq()
448 unsigned int irq = irqd->irq; in gicv3_peek_irq()
460 gicv3_poke_irq(irqd, GICD_ISENABLER, false); in gicv3_unmask_irq()
465 gicv3_poke_irq(irqd, GICD_ICENABLER, true); in gicv3_mask_irq()
471 WRITE_SYSREG32(irqd->irq, ICC_EOIR1_EL1); in gicv3_eoi_irq()
478 WRITE_SYSREG32(irqd->irq, ICC_DIR_EL1); in gicv3_dir_irq()
500 ASSERT(spin_is_locked(&irqd->lock)); in gicv3_set_active_state()
516 ASSERT(spin_is_locked(&irqd->lock)); in gicv3_set_pending_state()
[all …]

Completed in 10 milliseconds