mirror of
https://git.codelinaro.org/clo/qsdk/oss/boot/u-boot-2016.git
synced 2026-02-23 20:49:56 +01:00
sf: Read back and check once macronix quad bit set
One macronix quad bit set using SR, it's good to read back and check the written bit and also if it's already been set check for the bit and return. Cc: Vignesh R <vigneshr@ti.com> Cc: Simon Glass <sjg@chromium.org> Cc: Bin Meng <bmeng.cn@gmail.com> Tested-by: Mugunthan V N <mugunthanvnm@ti.com> Signed-off-by: Jagan Teki <jteki@openedev.com>
This commit is contained in:
parent
ffecb0fc84
commit
bfcdc3956d
1 changed files with 12 additions and 6 deletions
|
|
@ -840,12 +840,18 @@ static int macronix_quad_enable(struct spi_flash *flash)
|
|||
if (ret < 0)
|
||||
return ret;
|
||||
|
||||
if (qeb_status & STATUS_QEB_MXIC) {
|
||||
debug("SF: mxic: QEB is already set\n");
|
||||
} else {
|
||||
ret = write_sr(flash, STATUS_QEB_MXIC);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
if (qeb_status & STATUS_QEB_MXIC)
|
||||
return 0;
|
||||
|
||||
ret = write_sr(flash, STATUS_QEB_MXIC);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
|
||||
/* read SR and check it */
|
||||
ret = read_sr(flash, &qeb_status);
|
||||
if (!(ret >= 0 && (qeb_status & STATUS_QEB_MXIC))) {
|
||||
printf("SF: Macronix SR Quad bit not clear\n");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
return ret;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue