common: avb_verify: don't call mmc_switch_part for SD
authorIgor Opaniuk <igor.opaniuk@gmail.com>
Fri, 9 Feb 2024 19:20:39 +0000 (20:20 +0100)
committerMattijs Korpershoek <mkorpershoek@baylibre.com>
Thu, 15 Feb 2024 09:38:34 +0000 (10:38 +0100)
mmc_switch_part() is used for switching between hw partitions
on eMMC (boot0, boot1, user, rpmb).
There is no need to do that for SD card.

This fixes the avb command usage on SD cards.

Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
Signed-off-by: Igor Opaniuk <igor.opaniuk@gmail.com>
Reviewed-by: Dragan Simic <dsimic@manjaro.org>
Link: https://lore.kernel.org/r/20240209192045.3961832-2-igor.opaniuk@foundries.io
Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
common/avb_verify.c

index 48ba8db..59f2c25 100644 (file)
@@ -358,9 +358,11 @@ static struct mmc_part *get_partition(AvbOps *ops, const char *partition)
                goto err;
        }
 
-       ret = mmc_switch_part(part->mmc, part_num);
-       if (ret)
-               goto err;
+       if (IS_MMC(part->mmc)) {
+               ret = mmc_switch_part(part->mmc, part_num);
+               if (ret)
+                       goto err;
+       }
 
        mmc_blk = mmc_get_blk_desc(part->mmc);
        if (!mmc_blk) {