Lines Matching full:source
71 int source; member
87 if (irq_map[i].source == src) in src2map()
110 reg |= (1UL << (map->source & 31)); in ipu_irq_unmask()
133 reg &= ~(1UL << (map->source & 31)); in ipu_irq_mask()
154 ipu_write_reg(bank->ipu, 1UL << (map->source & 31), bank->status); in ipu_irq_ack()
174 (1UL << (map->source & 31)); in ipu_irq_status()
181 * ipu_irq_map() - map an IPU interrupt source to an IRQ number
182 * @source: interrupt source bit position (see below)
185 * The source parameter has to be explained further. On i.MX31 IPU has 137 IRQ
187 * However, the source argument of this function is not the sequence number of
189 * register has source number 96, and not 88. This makes calculations easier,
193 int ipu_irq_map(unsigned int source) in ipu_irq_map() argument
201 map = src2map(source); in ipu_irq_map()
203 pr_err("IPU: Source %u already mapped to IRQ %u\n", source, map->irq); in ipu_irq_map()
209 if (irq_map[i].source < 0) { in ipu_irq_map()
213 irq_map[i].source = source; in ipu_irq_map()
214 irq_map[i].bank = irq_bank + source / 32; in ipu_irq_map()
218 pr_debug("IPU: mapped source %u to IRQ %u\n", in ipu_irq_map()
219 source, ret); in ipu_irq_map()
227 pr_err("IPU: couldn't map source %u: %d\n", source, ret); in ipu_irq_map()
233 * ipu_irq_map() - map an IPU interrupt source to an IRQ number
234 * @source: interrupt source bit position (see ipu_irq_map())
237 int ipu_irq_unmap(unsigned int source) in ipu_irq_unmap() argument
245 if (irq_map[i].source == source) { in ipu_irq_unmap()
248 pr_debug("IPU: unmapped source %u from IRQ %u\n", in ipu_irq_unmap()
249 source, irq_map[i].irq); in ipu_irq_unmap()
252 irq_map[i].source = -EINVAL; in ipu_irq_unmap()
295 pr_err("IPU: Interrupt on unmapped source %u bank %d\n", in ipu_irq_handler()
338 irq_map[i].source = -EINVAL; in ipu_irq_attach_irq()