mmc: improve API to make clear hw_reset callback is for cards
[sfrench/cifs-2.6.git] / drivers / mmc / core / core.c
index 368f10405e132ceedfb722278271bf99e422afeb..4b70cbfc6d5de0cb81d13d16a879f80b0d617a2b 100644 (file)
@@ -1988,14 +1988,14 @@ static void mmc_hw_reset_for_init(struct mmc_host *host)
 {
        mmc_pwrseq_reset(host);
 
-       if (!(host->caps & MMC_CAP_HW_RESET) || !host->ops->hw_reset)
+       if (!(host->caps & MMC_CAP_HW_RESET) || !host->ops->card_hw_reset)
                return;
-       host->ops->hw_reset(host);
+       host->ops->card_hw_reset(host);
 }
 
 /**
  * mmc_hw_reset - reset the card in hardware
- * @host: MMC host to which the card is attached
+ * @card: card to be reset
  *
  * Hard reset the card. This function is only for upper layers, like the
  * block layer or card drivers. You cannot use it in host drivers (struct
@@ -2003,8 +2003,9 @@ static void mmc_hw_reset_for_init(struct mmc_host *host)
  *
  * Return: 0 on success, -errno on failure
  */
-int mmc_hw_reset(struct mmc_host *host)
+int mmc_hw_reset(struct mmc_card *card)
 {
+       struct mmc_host *host = card->host;
        int ret;
 
        ret = host->bus_ops->hw_reset(host);
@@ -2016,8 +2017,9 @@ int mmc_hw_reset(struct mmc_host *host)
 }
 EXPORT_SYMBOL(mmc_hw_reset);
 
-int mmc_sw_reset(struct mmc_host *host)
+int mmc_sw_reset(struct mmc_card *card)
 {
+       struct mmc_host *host = card->host;
        int ret;
 
        if (!host->bus_ops->sw_reset)