When registering devices if any of it fail, just cleanup and release spi
master.
Signed-off-by: Rui Miguel Silva <rui.silva@linaro.org>
Reported-by: Johan Hovold <johan@hovoldconsulting.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
        /* now, fetch the devices configuration */
        for (i = 0; i < spi->num_chipselect; i++) {
                ret = gb_spi_setup_device(spi, i);
-               if (ret < 0)
+               if (ret < 0) {
+                       dev_err(&connection->bundle->dev,
+                               "failed to allocated spi device: %d\n", ret);
+                       spi_unregister_master(master);
                        break;
+               }
        }
 
        return ret;