&qspi->dev_ids[val]);
                        if (ret < 0) {
                                dev_err(&pdev->dev, "IRQ %s not found\n", name);
-                               goto qspi_probe_err;
+                               goto qspi_unprepare_err;
                        }
 
                        qspi->dev_ids[val].dev = qspi;
        if (!num_ints) {
                dev_err(&pdev->dev, "no IRQs registered, cannot init driver\n");
                ret = -EINVAL;
-               goto qspi_probe_err;
+               goto qspi_unprepare_err;
        }
 
        bcm_qspi_hw_init(qspi);
 
 qspi_reg_err:
        bcm_qspi_hw_uninit(qspi);
+qspi_unprepare_err:
        clk_disable_unprepare(qspi->clk);
 qspi_probe_err:
        kfree(qspi->dev_ids);