mfd: Simplify IRQ domain registration code in STMPE

Historically, a driver would have to decide whether it required
a Linear or Legacy IRQ domain when registering one. This can end
up as quite a lot of code. A new Simple call now exists which
simplifies this process. Let's make use of it here.

Reviewed-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
This commit is contained in:
Lee Jones 2012-11-23 15:19:29 +00:00 committed by Samuel Ortiz
parent 3f9be35bd9
commit b20a43715e

View File

@ -888,18 +888,14 @@ static struct irq_domain_ops stmpe_irq_ops = {
static int __devinit stmpe_irq_init(struct stmpe *stmpe,
struct device_node *np)
{
int base = stmpe->irq_base;
int base = 0;
int num_irqs = stmpe->variant->num_irqs;
if (base) {
stmpe->domain = irq_domain_add_legacy(
np, num_irqs, base, 0, &stmpe_irq_ops, stmpe);
}
else {
stmpe->domain = irq_domain_add_linear(
np, num_irqs, &stmpe_irq_ops, stmpe);
}
if (!np)
base = stmpe->irq_base;
stmpe->domain = irq_domain_add_simple(np, num_irqs, base,
&stmpe_irq_ops, stmpe);
if (!stmpe->domain) {
dev_err(stmpe->dev, "Failed to create irqdomain\n");
return -ENOSYS;