]> git.itanic.dy.fi Git - linux-stable/commitdiff
mtd: core: fix nvmem error reporting
authorMichael Walle <michael@walle.cc>
Wed, 8 Mar 2023 08:20:19 +0000 (09:20 +0100)
committerMiquel Raynal <miquel.raynal@bootlin.com>
Wed, 8 Mar 2023 13:31:36 +0000 (14:31 +0100)
The master MTD will only have an associated device if
CONFIG_MTD_PARTITIONED_MASTER is set, thus we cannot use dev_err() on
mtd->dev. Instead use the parent device which is the physical flash
memory.

Fixes: 4b361cfa8624 ("mtd: core: add OTP nvmem provider support")
Cc: stable@vger.kernel.org
Signed-off-by: Michael Walle <michael@walle.cc>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/linux-mtd/20230308082021.870459-2-michael@walle.cc
drivers/mtd/mtdcore.c

index 8fc66cda4a0994e85d08e5dcb7013e253f4c4df1..c38a13cb8d5e684d4c37a3b1fa2c27eb3d83570a 100644 (file)
@@ -939,6 +939,7 @@ static int mtd_nvmem_fact_otp_reg_read(void *priv, unsigned int offset,
 
 static int mtd_otp_nvmem_add(struct mtd_info *mtd)
 {
+       struct device *dev = mtd->dev.parent;
        struct nvmem_device *nvmem;
        ssize_t size;
        int err;
@@ -952,7 +953,7 @@ static int mtd_otp_nvmem_add(struct mtd_info *mtd)
                        nvmem = mtd_otp_nvmem_register(mtd, "user-otp", size,
                                                       mtd_nvmem_user_otp_reg_read);
                        if (IS_ERR(nvmem)) {
-                               dev_err(&mtd->dev, "Failed to register OTP NVMEM device\n");
+                               dev_err(dev, "Failed to register OTP NVMEM device\n");
                                return PTR_ERR(nvmem);
                        }
                        mtd->otp_user_nvmem = nvmem;
@@ -970,7 +971,7 @@ static int mtd_otp_nvmem_add(struct mtd_info *mtd)
                        nvmem = mtd_otp_nvmem_register(mtd, "factory-otp", size,
                                                       mtd_nvmem_fact_otp_reg_read);
                        if (IS_ERR(nvmem)) {
-                               dev_err(&mtd->dev, "Failed to register OTP NVMEM device\n");
+                               dev_err(dev, "Failed to register OTP NVMEM device\n");
                                err = PTR_ERR(nvmem);
                                goto err;
                        }