Lines Matching refs:irqd
68 struct lp8788_irq_data *irqd = irq_data_get_irq_chip_data(data); in lp8788_irq_enable() local
70 irqd->enabled[data->hwirq] = 1; in lp8788_irq_enable()
75 struct lp8788_irq_data *irqd = irq_data_get_irq_chip_data(data); in lp8788_irq_disable() local
77 irqd->enabled[data->hwirq] = 0; in lp8788_irq_disable()
82 struct lp8788_irq_data *irqd = irq_data_get_irq_chip_data(data); in lp8788_irq_bus_lock() local
84 mutex_lock(&irqd->irq_lock); in lp8788_irq_bus_lock()
89 struct lp8788_irq_data *irqd = irq_data_get_irq_chip_data(data); in lp8788_irq_bus_sync_unlock() local
95 val = _irq_to_val(irq, irqd->enabled[irq]); in lp8788_irq_bus_sync_unlock()
97 lp8788_update_bits(irqd->lp, addr, mask, val); in lp8788_irq_bus_sync_unlock()
99 mutex_unlock(&irqd->irq_lock); in lp8788_irq_bus_sync_unlock()
112 struct lp8788_irq_data *irqd = ptr; in lp8788_irq_handler() local
113 struct lp8788 *lp = irqd->lp; in lp8788_irq_handler()
127 handle_nested_irq(irq_find_mapping(irqd->domain, i)); in lp8788_irq_handler()
138 struct lp8788_irq_data *irqd = d->host_data; in lp8788_irq_map() local
141 irq_set_chip_data(virq, irqd); in lp8788_irq_map()
155 struct lp8788_irq_data *irqd; in lp8788_irq_init() local
163 irqd = devm_kzalloc(lp->dev, sizeof(*irqd), GFP_KERNEL); in lp8788_irq_init()
164 if (!irqd) in lp8788_irq_init()
167 irqd->lp = lp; in lp8788_irq_init()
168 irqd->domain = irq_domain_add_linear(lp->dev->of_node, LP8788_INT_MAX, in lp8788_irq_init()
169 &lp8788_domain_ops, irqd); in lp8788_irq_init()
170 if (!irqd->domain) { in lp8788_irq_init()
175 lp->irqdm = irqd->domain; in lp8788_irq_init()
176 mutex_init(&irqd->irq_lock); in lp8788_irq_init()
180 "lp8788-irq", irqd); in lp8788_irq_init()