Lines Matching refs:map
28 struct regmap *map; member
63 struct regmap *map = d->map; in regmap_irq_sync_unlock() local
68 ret = pm_runtime_get_sync(map->dev); in regmap_irq_sync_unlock()
70 dev_err(map->dev, "IRQ sync failed to resume: %d\n", in regmap_irq_sync_unlock()
81 (i * map->reg_stride * d->irq_reg_stride); in regmap_irq_sync_unlock()
83 ret = regmap_update_bits(d->map, reg, in regmap_irq_sync_unlock()
86 ret = regmap_update_bits(d->map, reg, in regmap_irq_sync_unlock()
89 dev_err(d->map->dev, "Failed to sync masks in %x\n", in regmap_irq_sync_unlock()
93 (i * map->reg_stride * d->irq_reg_stride); in regmap_irq_sync_unlock()
96 ret = regmap_update_bits(d->map, reg, in regmap_irq_sync_unlock()
100 ret = regmap_update_bits(d->map, reg, in regmap_irq_sync_unlock()
104 dev_err(d->map->dev, in regmap_irq_sync_unlock()
118 (i * map->reg_stride * d->irq_reg_stride); in regmap_irq_sync_unlock()
119 ret = regmap_write(map, reg, d->mask_buf[i]); in regmap_irq_sync_unlock()
121 dev_err(d->map->dev, "Failed to ack 0x%x: %d\n", in regmap_irq_sync_unlock()
127 pm_runtime_put(map->dev); in regmap_irq_sync_unlock()
145 struct regmap *map = d->map; in regmap_irq_enable() local
148 d->mask_buf[irq_data->reg_offset / map->reg_stride] &= ~irq_data->mask; in regmap_irq_enable()
154 struct regmap *map = d->map; in regmap_irq_disable() local
157 d->mask_buf[irq_data->reg_offset / map->reg_stride] |= irq_data->mask; in regmap_irq_disable()
163 struct regmap *map = d->map; in regmap_irq_set_wake() local
168 d->wake_buf[irq_data->reg_offset / map->reg_stride] in regmap_irq_set_wake()
173 d->wake_buf[irq_data->reg_offset / map->reg_stride] in regmap_irq_set_wake()
193 struct regmap *map = data->map; in regmap_irq_thread() local
199 ret = pm_runtime_get_sync(map->dev); in regmap_irq_thread()
201 dev_err(map->dev, "IRQ thread failed to resume: %d\n", in regmap_irq_thread()
203 pm_runtime_put(map->dev); in regmap_irq_thread()
212 if (!map->use_single_rw && map->reg_stride == 1 && in regmap_irq_thread()
220 ret = regmap_bulk_read(map, chip->status_base, in regmap_irq_thread()
224 dev_err(map->dev, "Failed to read IRQ status: %d\n", in regmap_irq_thread()
230 switch (map->format.val_bytes) { in regmap_irq_thread()
248 ret = regmap_read(map, chip->status_base + in regmap_irq_thread()
249 (i * map->reg_stride in regmap_irq_thread()
254 dev_err(map->dev, in regmap_irq_thread()
258 pm_runtime_put(map->dev); in regmap_irq_thread()
276 (i * map->reg_stride * data->irq_reg_stride); in regmap_irq_thread()
277 ret = regmap_write(map, reg, data->status_buf[i]); in regmap_irq_thread()
279 dev_err(map->dev, "Failed to ack 0x%x: %d\n", in regmap_irq_thread()
286 map->reg_stride] & chip->irqs[i].mask) { in regmap_irq_thread()
293 pm_runtime_put(map->dev); in regmap_irq_thread()
322 .map = regmap_irq_map,
341 int regmap_add_irq_chip(struct regmap *map, int irq, int irq_flags, in regmap_add_irq_chip() argument
354 if (chip->irqs[i].reg_offset % map->reg_stride) in regmap_add_irq_chip()
356 if (chip->irqs[i].reg_offset / map->reg_stride >= in regmap_add_irq_chip()
364 dev_warn(map->dev, "Failed to allocate IRQs: %d\n", in regmap_add_irq_chip()
399 d->map = map; in regmap_add_irq_chip()
408 if (!map->use_single_rw && map->reg_stride == 1 && in regmap_add_irq_chip()
410 d->status_reg_buf = kmalloc(map->format.val_bytes * in regmap_add_irq_chip()
419 d->mask_buf_def[chip->irqs[i].reg_offset / map->reg_stride] in regmap_add_irq_chip()
426 (i * map->reg_stride * d->irq_reg_stride); in regmap_add_irq_chip()
428 ret = regmap_update_bits(map, reg, in regmap_add_irq_chip()
431 ret = regmap_update_bits(map, reg, in regmap_add_irq_chip()
434 dev_err(map->dev, "Failed to set masks in 0x%x: %d\n", in regmap_add_irq_chip()
444 (i * map->reg_stride * d->irq_reg_stride); in regmap_add_irq_chip()
445 ret = regmap_read(map, reg, &d->status_buf[i]); in regmap_add_irq_chip()
447 dev_err(map->dev, "Failed to read IRQ status: %d\n", in regmap_add_irq_chip()
454 (i * map->reg_stride * d->irq_reg_stride); in regmap_add_irq_chip()
455 ret = regmap_write(map, reg, in regmap_add_irq_chip()
458 dev_err(map->dev, "Failed to ack 0x%x: %d\n", in regmap_add_irq_chip()
470 (i * map->reg_stride * d->irq_reg_stride); in regmap_add_irq_chip()
473 ret = regmap_update_bits(map, reg, in regmap_add_irq_chip()
477 ret = regmap_update_bits(map, reg, in regmap_add_irq_chip()
481 dev_err(map->dev, "Failed to set masks in 0x%x: %d\n", in regmap_add_irq_chip()
489 d->domain = irq_domain_add_legacy(map->dev->of_node, in regmap_add_irq_chip()
493 d->domain = irq_domain_add_linear(map->dev->of_node, in regmap_add_irq_chip()
497 dev_err(map->dev, "Failed to create IRQ domain\n"); in regmap_add_irq_chip()
506 dev_err(map->dev, "Failed to request IRQ %d for %s: %d\n", in regmap_add_irq_chip()