|
@@ -176,8 +176,10 @@ static int sdv_register_irqsupport(struct sdv_gpio_chip_data *sd,
|
|
|
|
|
|
sd->id = irq_domain_add_legacy(pdev->dev.of_node, SDV_NUM_PUB_GPIOS,
|
|
|
sd->irq_base, 0, &irq_domain_sdv_ops, sd);
|
|
|
- if (!sd->id)
|
|
|
+ if (!sd->id) {
|
|
|
+ ret = -ENODEV;
|
|
|
goto out_free_irq;
|
|
|
+ }
|
|
|
return 0;
|
|
|
out_free_irq:
|
|
|
free_irq(pdev->irq, sd);
|
|
@@ -212,8 +214,10 @@ static int sdv_gpio_probe(struct pci_dev *pdev,
|
|
|
}
|
|
|
|
|
|
addr = pci_resource_start(pdev, GPIO_BAR);
|
|
|
- if (!addr)
|
|
|
+ if (!addr) {
|
|
|
+ ret = -ENODEV;
|
|
|
goto release_reg;
|
|
|
+ }
|
|
|
sd->gpio_pub_base = ioremap(addr, pci_resource_len(pdev, GPIO_BAR));
|
|
|
|
|
|
prop = of_get_property(pdev->dev.of_node, "intel,muxctl", &len);
|