Skip to contentSkip to conversation

omap-mcspi: When overriding SPI settings do not clobber status return value

PATCH New David Bender 1 participant 1 message Mar 4, 2015 SPI

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 omap-mcspi: When overriding SPI settings do not clobber status return value

The call to omap2_mcspi_setup_transfer(spi, NULL) clobbers the previous status value, possibly masking hardware transfer errors. Instead record a separate status for this call. Give preference to reporting a hardware transfer error over any error returned by omap2_mcspi_setup_transfer()

---
 drivers/spi/spi-omap2-mcspi.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)
drivers/spi/spi-omap2-mcspi.c +3 -1
index 4df8942..6a4bd08 100644
@@ -1180,8 +1180,10 @@ static void omap2_mcspi_work(struct omap2_mcspi *mcspi, struct spi_message *m)
 	}
 	/* Restore defaults if they were overriden */
 	if (par_override) {
+		int status_transfer;
 		par_override = 0;
-		status = omap2_mcspi_setup_transfer(spi, NULL);
+		status_transfer = omap2_mcspi_setup_transfer(spi, NULL);
+		status = status ? status : status_transfer;
 	}
 
 	if (cs_active)
Signature · 1 line
1.7.8.6