]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
mmc: core: Trim trailing whitespace from card product names
authorDragan Simic <dsimic@manjaro.org>
Wed, 26 Feb 2025 19:26:18 +0000 (20:26 +0100)
committerUlf Hansson <ulf.hansson@linaro.org>
Wed, 12 Mar 2025 10:30:22 +0000 (11:30 +0100)
Product names for some eMMC chips can include trailing whitespace, which
seems to be rather uncommon, but makes emitted messages and /sys properties
somewhat unsightly.  Here's such an example from a Pine64 PineNote, in which
"Biwin ", as the eMMC product name, contains trailing whitespace:

  mmc0: new HS200 MMC card at address 0001
  mmcblk0: mmc0:0001 Biwin  115 GiB
  mmcblk0: p1 p2 p3 p4 p5 p6 p7
  mmcblk0boot0: mmc0:0001 Biwin  4.00 MiB
  mmcblk0boot1: mmc0:0001 Biwin  4.00 MiB
  mmcblk0rpmb: mmc0:0001 Biwin  4.00 MiB, chardev (249:0)

Trailing whitespace in /sys properties may even cause some unforeseen issues
with some scripts, so let's have the trailing whitespace trimmed in product
names for eMMC chips.  Although not observed yet by the author of these
changes, the same trailing whitespace may appear in SD card product names,
so let's trim them as well, which can't hurt.

Touch-up one comment as well, by using proper capitalization.

Signed-off-by: Dragan Simic <dsimic@manjaro.org>
Acked-by: Avri Altman <avri.altman@sandisk.com>
Link: https://lore.kernel.org/r/fb7fcecae737f3e8b279854d7c853000527cba9a.1740597891.git.dsimic@manjaro.org
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/core/mmc.c
drivers/mmc/core/sd.c

index 6a23be214543db1189722e2ca2f1f1a7d1bdc9a9..1522fd2b517dd0624c748a98418ba8cc8cef88e9 100644 (file)
@@ -11,6 +11,7 @@
 #include <linux/of.h>
 #include <linux/slab.h>
 #include <linux/stat.h>
+#include <linux/string.h>
 #include <linux/pm_runtime.h>
 #include <linux/random.h>
 #include <linux/sysfs.h>
@@ -66,7 +67,7 @@ static int mmc_decode_cid(struct mmc_card *card)
 
        /*
         * The selection of the format here is based upon published
-        * specs from sandisk and from what people have reported.
+        * specs from SanDisk and from what people have reported.
         */
        switch (card->csd.mmca_vsn) {
        case 0: /* MMC v1.0 - v1.2 */
@@ -109,6 +110,9 @@ static int mmc_decode_cid(struct mmc_card *card)
                return -EINVAL;
        }
 
+       /* some product names include trailing whitespace */
+       strim(card->cid.prod_name);
+
        return 0;
 }
 
index cc757b850e798b2ef9260b834d905f43959b6c62..8eba697d3d8671c62ab3cff78c11552027fea365 100644 (file)
@@ -11,6 +11,7 @@
 #include <linux/sizes.h>
 #include <linux/slab.h>
 #include <linux/stat.h>
+#include <linux/string.h>
 #include <linux/pm_runtime.h>
 #include <linux/random.h>
 #include <linux/scatterlist.h>
@@ -95,6 +96,9 @@ void mmc_decode_cid(struct mmc_card *card)
        card->cid.month                 = unstuff_bits(resp, 8, 4);
 
        card->cid.year += 2000; /* SD cards year offset */
+
+       /* some product names may include trailing whitespace */
+       strim(card->cid.prod_name);
 }
 
 /*