Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit db601f3a authored by Antonio Borneo's avatar Antonio Borneo Committed by Boris Brezillon
Browse files

mtd: mchp23k256: propagate return value of spi_sync()



The call to spi_sync() can fail.
Check the return value and propagate it.

Signed-off-by: default avatarAntonio Borneo <borneo.antonio@gmail.com>
Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
Signed-off-by: default avatarBoris Brezillon <boris.brezillon@free-electrons.com>
parent bf657105
Loading
Loading
Loading
Loading
+14 −4
Original line number Diff line number Diff line
@@ -68,6 +68,7 @@ static int mchp23k256_write(struct mtd_info *mtd, loff_t to, size_t len,
	struct spi_transfer transfer[2] = {};
	struct spi_message message;
	unsigned char command[MAX_CMD_SIZE];
	int ret;

	spi_message_init(&message);

@@ -84,12 +85,16 @@ static int mchp23k256_write(struct mtd_info *mtd, loff_t to, size_t len,

	mutex_lock(&flash->lock);

	spi_sync(flash->spi, &message);
	ret = spi_sync(flash->spi, &message);

	mutex_unlock(&flash->lock);

	if (ret)
		return ret;

	if (retlen && message.actual_length > sizeof(command))
		*retlen += message.actual_length - sizeof(command);

	mutex_unlock(&flash->lock);
	return 0;
}

@@ -100,6 +105,7 @@ static int mchp23k256_read(struct mtd_info *mtd, loff_t from, size_t len,
	struct spi_transfer transfer[2] = {};
	struct spi_message message;
	unsigned char command[MAX_CMD_SIZE];
	int ret;

	spi_message_init(&message);

@@ -117,12 +123,16 @@ static int mchp23k256_read(struct mtd_info *mtd, loff_t from, size_t len,

	mutex_lock(&flash->lock);

	spi_sync(flash->spi, &message);
	ret = spi_sync(flash->spi, &message);

	mutex_unlock(&flash->lock);

	if (ret)
		return ret;

	if (retlen && message.actual_length > sizeof(command))
		*retlen += message.actual_length - sizeof(command);

	mutex_unlock(&flash->lock);
	return 0;
}