The error path deletes the device by calling mmc_sdio_remove() which must
be called without the host claimed. Simplify the error path so it does just
that and add a comment about why we don't disable runtime PM.
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
        return 0;
 
 
-remove_added:
-       /* Remove without lock if the device has been added. */
-       mmc_sdio_remove(host);
-       mmc_claim_host(host);
 remove:
-       /* And with lock if it hasn't been added. */
        mmc_release_host(host);
-       if (host->card)
-               mmc_sdio_remove(host);
+remove_added:
+       /*
+        * The devices are being deleted so it is not necessary to disable
+        * runtime PM.
+        */
+       mmc_sdio_remove(host);
        mmc_claim_host(host);
 err:
        mmc_detach_bus(host);