This addresses a FIXME in the driver.
Signed-off-by: Mohammed Shafi Shajakhan <mohammed@qca.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
                goto err_power_off;
 
        /* Do we need to finish the BMI phase */
-       /* FIXME: return error from ath6kl_bmi_done() */
-       if (ath6kl_bmi_done(ar)) {
-               ret = -EIO;
+       ret = ath6kl_bmi_done(ar);
+       if (ret)
                goto err_power_off;
-       }
 
        /*
         * The reason we have to wait for the target here is that the
 
 
        ret = ath6kl_sdio_read_write_sync(ar, addr, buf, len,
                                          HIF_WR_SYNC_BYTE_INC);
-       if (ret)
+       if (ret) {
                ath6kl_err("unable to send the bmi data to the device\n");
+               return ret;
+       }
 
-       return ret;
+       return 0;
 }
 
 static int ath6kl_sdio_bmi_read(struct ath6kl *ar, u8 *buf, u32 len)