complete(mrq->done_data);
 }
 
-int mmc_wait_for_req(struct mmc_host *host, struct mmc_request *mrq)
+/**
+ *     mmc_wait_for_req - start a request and wait for completion
+ *     @host: MMC host to start command
+ *     @mrq: MMC request to start
+ *
+ *     Start a new MMC custom command request for a host, and wait
+ *     for the command to complete. Does not attempt to parse the
+ *     response.
+ */
+void mmc_wait_for_req(struct mmc_host *host, struct mmc_request *mrq)
 {
        DECLARE_COMPLETION_ONSTACK(complete);
 
        mmc_start_request(host, mrq);
 
        wait_for_completion(&complete);
-
-       return 0;
 }
 
 EXPORT_SYMBOL(mmc_wait_for_req);
  *     @data: data phase for command
  *     @card: the MMC card associated with the data transfer
  *     @write: flag to differentiate reads from writes
+ *
+ *     Computes the data timeout parameters according to the
+ *     correct algorithm given the card type.
  */
 void mmc_set_data_timeout(struct mmc_data *data, const struct mmc_card *card,
                          int write)
 EXPORT_SYMBOL(mmc_set_data_timeout);
 
 /**
- *     __mmc_claim_host - exclusively claim a host
+ *     mmc_claim_host - exclusively claim a host
  *     @host: mmc host to claim
- *     @card: mmc card to claim host for
- *
- *     Claim a host for a set of operations.  If a valid card
- *     is passed and this wasn't the last card selected, select
- *     the card before returning.
  *
- *     Note: you should use mmc_card_claim_host or mmc_claim_host.
+ *     Claim a host for a set of operations.
  */
 void mmc_claim_host(struct mmc_host *host)
 {
  *     @host: host which changed state.
  *     @delay: optional delay to wait before detection (jiffies)
  *
- *     All we know is that card(s) have been inserted or removed
- *     from the socket(s).  We don't know which socket or cards.
+ *     MMC drivers should call this when they detect a card has been
+ *     inserted or removed. The MMC layer will confirm that any
+ *     present card is still functional, and initialize any newly
+ *     inserted.
  */
 void mmc_detect_change(struct mmc_host *host, unsigned long delay)
 {
 
 /**
  *     mmc_add_host - initialise host hardware
  *     @host: mmc host
+ *
+ *     Register the host with the driver model. The host must be
+ *     prepared to start servicing requests before this function
+ *     completes.
  */
 int mmc_add_host(struct mmc_host *host)
 {
  *     @host: mmc host
  *
  *     Unregister and remove all cards associated with this host,
- *     and power down the MMC bus.
+ *     and power down the MMC bus. No new requests will be issued
+ *     after this function has returned.
  */
 void mmc_remove_host(struct mmc_host *host)
 {
 
 struct mmc_host;
 struct mmc_card;
 
-extern int mmc_wait_for_req(struct mmc_host *, struct mmc_request *);
+extern void mmc_wait_for_req(struct mmc_host *, struct mmc_request *);
 extern int mmc_wait_for_cmd(struct mmc_host *, struct mmc_command *, int);
 extern int mmc_wait_for_app_cmd(struct mmc_host *, struct mmc_card *,
        struct mmc_command *, int);