mirror of
https://github.com/Stichting-MINIX-Research-Foundation/u-boot.git
synced 2025-09-10 12:39:22 -04:00
sf: stmicro: dont send 4 bytes when reading status register
I can't find anywhere in the datasheet that says the status register needs 3 dummy bytes sent to it before being able to read back the first real result. Tests on a Blackfin board show that after writing the opcode, the status register starts coming back immediately. So only write out the read status register opcode before polling the result. Signed-off-by: Mike Frysinger <vapier@gentoo.org> CC: Jason McMullan <mcmullan@netapp.com> CC: TsiChung Liew <Tsi-Chung.Liew@freescale.com>
This commit is contained in:
parent
1abe365ffc
commit
d9596ffbdc
@ -133,12 +133,12 @@ static int stmicro_wait_ready(struct spi_flash *flash, unsigned long timeout)
|
|||||||
struct spi_slave *spi = flash->spi;
|
struct spi_slave *spi = flash->spi;
|
||||||
unsigned long timebase;
|
unsigned long timebase;
|
||||||
int ret;
|
int ret;
|
||||||
|
u8 cmd = CMD_M25PXX_RDSR;
|
||||||
u8 status;
|
u8 status;
|
||||||
u8 cmd[4] = { CMD_M25PXX_RDSR, 0xff, 0xff, 0xff };
|
|
||||||
|
|
||||||
ret = spi_xfer(spi, 32, &cmd[0], NULL, SPI_XFER_BEGIN);
|
ret = spi_xfer(spi, 8, &cmd, NULL, SPI_XFER_BEGIN);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
debug("SF: Failed to send command %02x: %d\n", cmd[0], ret);
|
debug("SF: Failed to send command %02x: %d\n", cmd, ret);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user