mtd: rawnand: brcmnand: exec_op helper functions return type fixes
authorDavid Regan <dregan@broadcom.com>
Fri, 23 Feb 2024 03:47:46 +0000 (19:47 -0800)
committerMiquel Raynal <miquel.raynal@bootlin.com>
Mon, 26 Feb 2024 10:36:29 +0000 (11:36 +0100)
Fix return types for exec_op reset and status helper functions.

Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
Closes: http://lists.infradead.org/pipermail/linux-mtd/2023-December/102423.html
Fixes: 3c8260ce7663 ("mtd: rawnand: brcmnand: exec_op implementation")
Signed-off-by: David Regan <dregan@broadcom.com>
Signed-off-by: William Zhang <william.zhang@broadcom.com>
Reviewed-by: William Zhang <william.zhang@broadcom.com>
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/linux-mtd/20240223034758.13753-2-william.zhang@broadcom.com
drivers/mtd/nand/raw/brcmnand/brcmnand.c

index 8faca43ae1ff9c51a98297f77e90a14e04ea9f34..b8e70fc64348e6fff2114b72180ec622cf72a81c 100644 (file)
@@ -625,7 +625,7 @@ enum {
 /* Only for v7.2 */
 #define        ACC_CONTROL_ECC_EXT_SHIFT               13
 
-static u8 brcmnand_status(struct brcmnand_host *host);
+static int brcmnand_status(struct brcmnand_host *host);
 
 static inline bool brcmnand_non_mmio_ops(struct brcmnand_controller *ctrl)
 {
@@ -1690,7 +1690,7 @@ static int brcmnand_waitfunc(struct nand_chip *chip)
                                 INTFC_FLASH_STATUS;
 }
 
-static u8 brcmnand_status(struct brcmnand_host *host)
+static int brcmnand_status(struct brcmnand_host *host)
 {
        struct nand_chip *chip = &host->chip;
        struct mtd_info *mtd = nand_to_mtd(chip);
@@ -1701,7 +1701,7 @@ static u8 brcmnand_status(struct brcmnand_host *host)
        return brcmnand_waitfunc(chip);
 }
 
-static u8 brcmnand_reset(struct brcmnand_host *host)
+static int brcmnand_reset(struct brcmnand_host *host)
 {
        struct nand_chip *chip = &host->chip;
 
@@ -2433,7 +2433,11 @@ static int brcmnand_exec_op(struct nand_chip *chip,
 
        if (brcmnand_op_is_status(op)) {
                status = op->instrs[1].ctx.data.buf.in;
-               *status = brcmnand_status(host);
+               ret = brcmnand_status(host);
+               if (ret < 0)
+                       return ret;
+
+               *status = ret & 0xFF;
 
                return 0;
        }