Lines Matching refs:ic
317 static u32 aic_ic_read(struct aic_irq_chip *ic, u32 reg) in aic_ic_read() argument
319 return readl_relaxed(ic->base + reg); in aic_ic_read()
322 static void aic_ic_write(struct aic_irq_chip *ic, u32 reg, u32 val) in aic_ic_write() argument
324 writel_relaxed(val, ic->base + reg); in aic_ic_write()
334 struct aic_irq_chip *ic = irq_data_get_irq_chip_data(d); in aic_irq_mask() local
336 u32 off = AIC_HWIRQ_DIE(hwirq) * ic->info.die_stride; in aic_irq_mask()
339 aic_ic_write(ic, ic->info.mask_set + off + MASK_REG(irq), MASK_BIT(irq)); in aic_irq_mask()
345 struct aic_irq_chip *ic = irq_data_get_irq_chip_data(d); in aic_irq_unmask() local
347 u32 off = AIC_HWIRQ_DIE(hwirq) * ic->info.die_stride; in aic_irq_unmask()
350 aic_ic_write(ic, ic->info.mask_clr + off + MASK_REG(irq), MASK_BIT(irq)); in aic_irq_unmask()
365 struct aic_irq_chip *ic = aic_irqc; in aic_handle_irq() local
373 event = readl(ic->event + ic->info.event); in aic_handle_irq()
402 struct aic_irq_chip *ic = irq_data_get_irq_chip_data(d); in aic_irq_set_affinity() local
405 BUG_ON(!ic->info.target_cpu); in aic_irq_set_affinity()
412 aic_ic_write(ic, ic->info.target_cpu + AIC_HWIRQ_IRQ(hwirq) * 4, BIT(cpu)); in aic_irq_set_affinity()
599 struct aic_irq_chip *ic = id->host_data; in aic_irq_domain_map() local
603 if (ic->info.version == 2) in aic_irq_domain_map()
616 irq_set_percpu_devid_partition(irq, &ic->fiq_aff[fiq]->aff); in aic_irq_domain_map()
635 struct aic_irq_chip *ic = id->host_data; in aic_irq_domain_translate() local
652 if (die >= ic->nr_die) in aic_irq_domain_translate()
654 if (args[0] >= ic->nr_irq) in aic_irq_domain_translate()
764 struct aic_irq_chip *ic = irq_data_get_irq_chip_data(d); in aic_ipi_unmask() local
783 aic_ic_write(ic, AIC_IPI_SEND, AIC_IPI_SEND_CPU(smp_processor_id())); in aic_ipi_unmask()
789 struct aic_irq_chip *ic = irq_data_get_irq_chip_data(d); in aic_ipi_send_mask() local
827 aic_ic_write(ic, AIC_IPI_SEND, send); in aic_ipi_send_mask()
1008 static void build_fiq_affinity(struct aic_irq_chip *ic, struct device_node *aff) in build_fiq_affinity() argument
1014 WARN_ON(fiq >= AIC_NR_FIQ) || ic->fiq_aff[fiq]) in build_fiq_affinity()
1021 ic->fiq_aff[fiq] = kzalloc(sizeof(*ic->fiq_aff[fiq]), GFP_KERNEL); in build_fiq_affinity()
1022 if (!ic->fiq_aff[fiq]) in build_fiq_affinity()
1042 cpumask_set_cpu(cpu, &ic->fiq_aff[fiq]->aff); in build_fiq_affinity()