Merge https://source.denx.de/u-boot/custodians/u-boot-usb
[platform/kernel/u-boot.git] / cmd / mmc.c
index 503dbb6..63bf69b 100644 (file)
--- a/cmd/mmc.c
+++ b/cmd/mmc.c
@@ -22,10 +22,18 @@ static void print_mmcinfo(struct mmc *mmc)
 
        printf("Device: %s\n", mmc->cfg->name);
        printf("Manufacturer ID: %x\n", mmc->cid[0] >> 24);
-       printf("OEM: %x\n", (mmc->cid[0] >> 8) & 0xffff);
-       printf("Name: %c%c%c%c%c \n", mmc->cid[0] & 0xff,
-                       (mmc->cid[1] >> 24), (mmc->cid[1] >> 16) & 0xff,
-                       (mmc->cid[1] >> 8) & 0xff, mmc->cid[1] & 0xff);
+       if (IS_SD(mmc)) {
+               printf("OEM: %x\n", (mmc->cid[0] >> 8) & 0xffff);
+               printf("Name: %c%c%c%c%c \n", mmc->cid[0] & 0xff,
+               (mmc->cid[1] >> 24), (mmc->cid[1] >> 16) & 0xff,
+               (mmc->cid[1] >> 8) & 0xff, mmc->cid[1] & 0xff);
+       } else {
+               printf("OEM: %x\n", (mmc->cid[0] >> 8) & 0xff);
+               printf("Name: %c%c%c%c%c%c \n", mmc->cid[0] & 0xff,
+               (mmc->cid[1] >> 24), (mmc->cid[1] >> 16) & 0xff,
+               (mmc->cid[1] >> 8) & 0xff, mmc->cid[1] & 0xff,
+               (mmc->cid[2] >> 24));
+       }
 
        printf("Bus Speed: %d\n", mmc->clock);
 #if CONFIG_IS_ENABLED(MMC_VERBOSE)
@@ -493,11 +501,12 @@ static int do_mmc_rescan(struct cmd_tbl *cmdtp, int flag,
                         int argc, char *const argv[])
 {
        struct mmc *mmc;
-       enum bus_mode speed_mode = MMC_MODES_END;
 
        if (argc == 1) {
                mmc = init_mmc_device(curr_device, true);
        } else if (argc == 2) {
+               enum bus_mode speed_mode;
+
                speed_mode = (int)dectoul(argv[1], NULL);
                mmc = __init_mmc_device(curr_device, true, speed_mode);
        } else {
@@ -535,7 +544,6 @@ static int do_mmc_dev(struct cmd_tbl *cmdtp, int flag,
 {
        int dev, part = 0, ret;
        struct mmc *mmc;
-       enum bus_mode speed_mode = MMC_MODES_END;
 
        if (argc == 1) {
                dev = curr_device;
@@ -553,6 +561,8 @@ static int do_mmc_dev(struct cmd_tbl *cmdtp, int flag,
                }
                mmc = init_mmc_device(dev, true);
        } else if (argc == 4) {
+               enum bus_mode speed_mode;
+
                dev = (int)dectoul(argv[1], NULL);
                part = (int)dectoul(argv[2], NULL);
                if (part > PART_ACCESS_MASK) {