Commit 315c1a8e authored by Linus Walleij's avatar Linus Walleij
Browse files

gpio: ixp4xx: Use irq_domain_translate_twocell()



Use standard functions. Eventually we will be able to drop all
checks and just assign irq_domain_translate_twocell() to this
callback.

Cc: Brian Masney <masneyb@onstation.org>
Signed-off-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent 4b3d5006
Loading
Loading
Loading
Loading
+7 −7
Original line number Diff line number Diff line
@@ -205,20 +205,20 @@ static int ixp4xx_gpio_irq_domain_translate(struct irq_domain *domain,
					    unsigned long *hwirq,
					    unsigned int *type)
{
	int ret;

	/* We support standard DT translation */
	if (is_of_node(fwspec->fwnode) && fwspec->param_count == 2) {
		*hwirq = fwspec->param[0];
		*type = fwspec->param[1];
		return 0;
		return irq_domain_translate_twocell(domain, fwspec,
						    hwirq, type);
	}

	/* This goes away when we transition to DT */
	if (is_fwnode_irqchip(fwspec->fwnode)) {
		if (fwspec->param_count != 2)
			return -EINVAL;
		*hwirq = fwspec->param[0];
		*type = fwspec->param[1];
		ret = irq_domain_translate_twocell(domain, fwspec,
						   hwirq, type);
		if (ret)
			return ret;
		WARN_ON(*type == IRQ_TYPE_NONE);
		return 0;
	}