|
@@ -407,12 +407,13 @@ static int pata_at91_probe(struct platform_device *pdev)
|
|
|
|
|
|
host->private_data = info;
|
|
host->private_data = info;
|
|
|
|
|
|
- return ata_host_activate(host, gpio_is_valid(irq) ? gpio_to_irq(irq) : 0,
|
|
|
|
- gpio_is_valid(irq) ? ata_sff_interrupt : NULL,
|
|
|
|
- irq_flags, &pata_at91_sht);
|
|
|
|
|
|
+ ret = ata_host_activate(host, gpio_is_valid(irq) ? gpio_to_irq(irq) : 0,
|
|
|
|
+ gpio_is_valid(irq) ? ata_sff_interrupt : NULL,
|
|
|
|
+ irq_flags, &pata_at91_sht);
|
|
|
|
+ if (ret)
|
|
|
|
+ goto err_put;
|
|
|
|
|
|
- if (!ret)
|
|
|
|
- return 0;
|
|
|
|
|
|
+ return 0;
|
|
|
|
|
|
err_put:
|
|
err_put:
|
|
clk_put(info->mck);
|
|
clk_put(info->mck);
|