diff options
author | Cyrille Pitchen <cyrille.pitchen@atmel.com> | 2016-12-06 16:01:41 (GMT) |
---|---|---|
committer | Xie Xiaobo <xiaobo.xie@nxp.com> | 2017-09-25 07:25:32 (GMT) |
commit | 850308e20b3e8b9ab2dae433e460ddfa144b2438 (patch) | |
tree | 4a846f7dd2054215d25ad2d061ab2a875597369c /drivers/mtd | |
parent | 8b3563b6563d1c9bc7f2d78cc0564d14d88cff85 (diff) | |
download | linux-850308e20b3e8b9ab2dae433e460ddfa144b2438.tar.xz |
mtd: spi-nor: improve macronix_quad_enable()
The patch checks whether the Quad Enable bit is already set in the Status
Register. If so, the function exits immediately with a successful return
code.
Signed-off-by: Cyrille Pitchen <cyrille.pitchen@atmel.com>
Reviewed-by: Jagan Teki <jagan@openedev.com>
Acked-by: Marek Vasut <marek.vasut@gmail.com>
Diffstat (limited to 'drivers/mtd')
-rw-r--r-- | drivers/mtd/spi-nor/spi-nor.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/mtd/spi-nor/spi-nor.c b/drivers/mtd/spi-nor/spi-nor.c index b513375..069bae6 100644 --- a/drivers/mtd/spi-nor/spi-nor.c +++ b/drivers/mtd/spi-nor/spi-nor.c @@ -1306,6 +1306,9 @@ static int macronix_quad_enable(struct spi_nor *nor) val = read_sr(nor); if (val < 0) return val; + if (val & SR_QUAD_EN_MX) + return 0; + write_enable(nor); write_sr(nor, val | SR_QUAD_EN_MX); |