|
@@ -286,11 +286,6 @@ static int pl061_probe(struct amba_device *adev, const struct amba_id *id)
|
|
|
if (!chip->base)
|
|
|
return -ENOMEM;
|
|
|
|
|
|
- chip->domain = irq_domain_add_simple(adev->dev.of_node, PL061_GPIO_NR,
|
|
|
- irq_base, &pl061_domain_ops, chip);
|
|
|
- if (!chip->domain)
|
|
|
- return -ENODEV;
|
|
|
-
|
|
|
spin_lock_init(&chip->lock);
|
|
|
|
|
|
chip->gc.request = pl061_gpio_request;
|
|
@@ -320,6 +315,11 @@ static int pl061_probe(struct amba_device *adev, const struct amba_id *id)
|
|
|
irq_set_chained_handler(irq, pl061_irq_handler);
|
|
|
irq_set_handler_data(irq, chip);
|
|
|
|
|
|
+ chip->domain = irq_domain_add_simple(adev->dev.of_node, PL061_GPIO_NR,
|
|
|
+ irq_base, &pl061_domain_ops, chip);
|
|
|
+ if (!chip->domain)
|
|
|
+ return -ENODEV;
|
|
|
+
|
|
|
for (i = 0; i < PL061_GPIO_NR; i++) {
|
|
|
if (pdata) {
|
|
|
if (pdata->directions & (1 << i))
|