Lines Matching refs:irqd
64 struct lp8788_irq_data *irqd = irq_data_get_irq_chip_data(data); in lp8788_irq_enable() local
66 irqd->enabled[data->hwirq] = 1; in lp8788_irq_enable()
71 struct lp8788_irq_data *irqd = irq_data_get_irq_chip_data(data); in lp8788_irq_disable() local
73 irqd->enabled[data->hwirq] = 0; in lp8788_irq_disable()
78 struct lp8788_irq_data *irqd = irq_data_get_irq_chip_data(data); in lp8788_irq_bus_lock() local
80 mutex_lock(&irqd->irq_lock); in lp8788_irq_bus_lock()
85 struct lp8788_irq_data *irqd = irq_data_get_irq_chip_data(data); in lp8788_irq_bus_sync_unlock() local
91 val = _irq_to_val(irq, irqd->enabled[irq]); in lp8788_irq_bus_sync_unlock()
93 lp8788_update_bits(irqd->lp, addr, mask, val); in lp8788_irq_bus_sync_unlock()
95 mutex_unlock(&irqd->irq_lock); in lp8788_irq_bus_sync_unlock()
108 struct lp8788_irq_data *irqd = ptr; in lp8788_irq_handler() local
109 struct lp8788 *lp = irqd->lp; in lp8788_irq_handler()
123 handle_nested_irq(irq_find_mapping(irqd->domain, i)); in lp8788_irq_handler()
134 struct lp8788_irq_data *irqd = d->host_data; in lp8788_irq_map() local
137 irq_set_chip_data(virq, irqd); in lp8788_irq_map()
151 struct lp8788_irq_data *irqd; in lp8788_irq_init() local
159 irqd = devm_kzalloc(lp->dev, sizeof(*irqd), GFP_KERNEL); in lp8788_irq_init()
160 if (!irqd) in lp8788_irq_init()
163 irqd->lp = lp; in lp8788_irq_init()
164 irqd->domain = irq_domain_add_linear(lp->dev->of_node, LP8788_INT_MAX, in lp8788_irq_init()
165 &lp8788_domain_ops, irqd); in lp8788_irq_init()
166 if (!irqd->domain) { in lp8788_irq_init()
171 lp->irqdm = irqd->domain; in lp8788_irq_init()
172 mutex_init(&irqd->irq_lock); in lp8788_irq_init()
176 "lp8788-irq", irqd); in lp8788_irq_init()