Lines Matching refs:irq_data
80 static void s3c_irq_mask(struct irq_data *data) in s3c_irq_mask()
82 struct s3c_irq_data *irq_data = irq_data_get_irq_chip_data(data); in s3c_irq_mask() local
83 struct s3c_irq_intc *intc = irq_data->intc; in s3c_irq_mask()
90 mask |= (1UL << irq_data->offset); in s3c_irq_mask()
94 parent_data = &parent_intc->irqs[irq_data->parent_irq]; in s3c_irq_mask()
102 irq_data->parent_irq); in s3c_irq_mask()
108 static void s3c_irq_unmask(struct irq_data *data) in s3c_irq_unmask()
110 struct s3c_irq_data *irq_data = irq_data_get_irq_chip_data(data); in s3c_irq_unmask() local
111 struct s3c_irq_intc *intc = irq_data->intc; in s3c_irq_unmask()
117 mask &= ~(1UL << irq_data->offset); in s3c_irq_unmask()
122 irq_data->parent_irq); in s3c_irq_unmask()
127 static inline void s3c_irq_ack(struct irq_data *data) in s3c_irq_ack()
129 struct s3c_irq_data *irq_data = irq_data_get_irq_chip_data(data); in s3c_irq_ack() local
130 struct s3c_irq_intc *intc = irq_data->intc; in s3c_irq_ack()
131 unsigned long bitval = 1UL << irq_data->offset; in s3c_irq_ack()
138 static int s3c_irq_type(struct irq_data *data, unsigned int type) in s3c_irq_type()
212 static int s3c_irqext_type(struct irq_data *data, unsigned int type) in s3c_irqext_type()
241 static int s3c_irqext0_type(struct irq_data *data, unsigned int type) in s3c_irqext0_type()
298 struct s3c_irq_data *irq_data = irq_desc_get_chip_data(desc); in s3c_irq_demux() local
299 struct s3c_irq_intc *intc = irq_data->intc; in s3c_irq_demux()
300 struct s3c_irq_intc *sub_intc = irq_data->sub_intc; in s3c_irq_demux()
316 src &= irq_data->sub_bits; in s3c_irq_demux()
433 struct s3c_irq_data *irq_data = &intc->irqs[hw]; in s3c24xx_irq_map() local
439 irq_data->intc = intc; in s3c24xx_irq_map()
440 irq_data->offset = hw; in s3c24xx_irq_map()
445 switch (irq_data->type) { in s3c24xx_irq_map()
476 pr_err("irq-s3c24xx: unsupported irqtype %d\n", irq_data->type); in s3c24xx_irq_map()
480 irq_set_chip_data(virq, irq_data); in s3c24xx_irq_map()
482 if (parent_intc && irq_data->type != S3C_IRQTYPE_NONE) { in s3c24xx_irq_map()
483 if (irq_data->parent_irq > 31) { in s3c24xx_irq_map()
485 irq_data->parent_irq); in s3c24xx_irq_map()
489 parent_irq_data = &parent_intc->irqs[irq_data->parent_irq]; in s3c24xx_irq_map()
495 irq_data->parent_irq); in s3c24xx_irq_map()
498 irq_data->parent_irq); in s3c24xx_irq_map()
539 struct s3c_irq_data *irq_data, in s3c24xx_init_intc() argument
553 intc->irqs = irq_data; in s3c24xx_init_intc()
1168 struct s3c_irq_data *irq_data = &intc->irqs[intc_hw]; in s3c24xx_irq_map_of() local
1171 irq_data->intc = intc; in s3c24xx_irq_map_of()
1172 irq_data->offset = intc_hw; in s3c24xx_irq_map_of()
1180 irq_set_chip_data(virq, irq_data); in s3c24xx_irq_map_of()
1194 struct s3c_irq_data *irq_data; in s3c24xx_irq_xlate_of() local
1212 irq_data = &intc->irqs[intspec[2]]; in s3c24xx_irq_xlate_of()
1213 irq_data->parent_irq = intspec[1]; in s3c24xx_irq_xlate_of()
1214 parent_irq_data = &parent_intc->irqs[irq_data->parent_irq]; in s3c24xx_irq_xlate_of()