lkml.org 
[lkml]   [2019]   [Nov]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH v4 15/20] mtd: spi-nor: Extend the QE Read Back test to both SR1 and SR2
    From
    Date


    On 02/11/19 4:53 PM, Tudor.Ambarus@microchip.com wrote:
    > From: Tudor Ambarus <tudor.ambarus@microchip.com>
    >
    > In case of 16-bit Write Status Register, check that both SR1 and
    > SR2 were written correctly.
    >
    > Signed-off-by: Tudor Ambarus <tudor.ambarus@microchip.com>
    > ---

    This can be merged with previous patch as changes are quite similar

    Regards
    Vignesh

    > drivers/mtd/spi-nor/spi-nor.c | 29 ++++++++++++++++++++++++++++-
    > 1 file changed, 28 insertions(+), 1 deletion(-)
    >
    > diff --git a/drivers/mtd/spi-nor/spi-nor.c b/drivers/mtd/spi-nor/spi-nor.c
    > index 08fd2c97897d..8f11c00e8ae5 100644
    > --- a/drivers/mtd/spi-nor/spi-nor.c
    > +++ b/drivers/mtd/spi-nor/spi-nor.c
    > @@ -2067,6 +2067,7 @@ static int spansion_no_read_cr_quad_enable(struct spi_nor *nor)
    > {
    > u8 *sr_cr = nor->bouncebuf;
    > int ret;
    > + u8 sr_written;
    >
    > /* Keep the current value of the Status Register. */
    > ret = spi_nor_read_sr(nor, sr_cr);
    > @@ -2075,7 +2076,22 @@ static int spansion_no_read_cr_quad_enable(struct spi_nor *nor)
    >
    > sr_cr[1] = CR_QUAD_EN_SPAN;
    >
    > - return spi_nor_write_sr(nor, sr_cr, 2);
    > + ret = spi_nor_write_sr(nor, sr_cr, 2);
    > + if (ret)
    > + return ret;
    > +
    > + sr_written = sr_cr[0];
    > +
    > + ret = spi_nor_read_sr(nor, sr_cr);
    > + if (ret)
    > + return ret;
    > +
    > + if (sr_cr[0] != sr_written) {
    > + dev_err(nor->dev, "SR: Read back test failed\n");
    > + return -EIO;
    > + }
    > +
    > + return 0;
    > }
    >
    > /**
    > @@ -2116,6 +2132,17 @@ static int spansion_read_cr_quad_enable(struct spi_nor *nor)
    > if (ret)
    > return ret;
    >
    > + sr_written = sr_cr[0];
    > +
    > + ret = spi_nor_read_sr(nor, sr_cr);
    > + if (ret)
    > + return ret;
    > +
    > + if (sr_written != sr_cr[0]) {
    > + dev_err(nor->dev, "SR: Read back test failed\n");
    > + return -EIO;
    > + }
    > +
    > sr_written = sr_cr[1];
    >
    > /* Read back and check it. */
    >

    --
    Regards
    Vignesh

    \
     
     \ /
      Last update: 2019-11-05 17:07    [W:4.098 / U:0.044 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site