/* ipu_irq_status() - returns the current interrupt status of the specified IRQ. @irq: interrupt line to get status for.  */
bool ipu_irq_status(unsigned int irq)
/* ipu_irq_status() - returns the current interrupt status of the specified IRQ. @irq: interrupt line to get status for.  */
bool ipu_irq_status(unsigned int irq)
{
	struct ipu_irq_map *map = get_irq_chip_data(irq);
	struct ipu_irq_bank *bank;
	unsigned long lock_flags;
	bool ret;
	spin_lock_irqsave(&bank_lock, lock_flags);
	bank = map->bank;
	ret = bank && ipu_read_reg(bank->ipu, bank->status) &
		(1UL << (map->source & 31));
	spin_unlock_irqrestore(&bank_lock, lock_flags);
	return ret;
}