mmc: Fix mmc_switch excessive timeout
authorKirill Kapranov <kirill.kapranov@compulab.co.il>
Sat, 9 Oct 2021 20:49:59 +0000 (23:49 +0300)
committerJaehoon Chung <jh80.chung@samsung.com>
Fri, 29 Oct 2021 09:22:32 +0000 (18:22 +0900)
Fix branching to avoid premature falling back on a long timeout instead
of continuation of the initialization attempt.

Clear of the comment to avoid the ambiguity.

Signed-off-by: Kirill Kapranov <kirill.kapranov@compulab.co.il>
Cc: Pantelis Antoniou <panto@antoniou-consulting.com>
Cc: Ye Li <ye.li@nxp.com>
Reviewed-by: Marek BehĂșn <marek.behun@nic.cz>
Tested-by: Marek BehĂșn <marek.behun@nic.cz>
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
drivers/mmc/mmc.c

index ba54b19..4d9871d 100644 (file)
@@ -819,11 +819,11 @@ static int __mmc_switch(struct mmc *mmc, u8 set, u8 index, u8 value,
                return ret;
 
        /*
-        * In cases when not allowed to poll by using CMD13 or because we aren't
+        * In cases when neiter allowed to poll by using CMD13 nor we are
         * capable of polling by using mmc_wait_dat0, then rely on waiting the
         * stated timeout to be sufficient.
         */
-       if (ret == -ENOSYS || !send_status) {
+       if (ret == -ENOSYS && !send_status) {
                mdelay(timeout_ms);
                return 0;
        }