summaryrefslogtreecommitdiffstats
path: root/sys/dev/flash/mx25l.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/flash/mx25l.c')
-rw-r--r--sys/dev/flash/mx25l.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/dev/flash/mx25l.c b/sys/dev/flash/mx25l.c
index 0ff7186..06d5081 100644
--- a/sys/dev/flash/mx25l.c
+++ b/sys/dev/flash/mx25l.c
@@ -184,7 +184,7 @@ mx25l_set_writable(device_t dev, int writable)
}
static void
-mx25l_erase_sector(device_t dev, off_t sector)
+mx25l_erase_cmd(device_t dev, off_t sector, uint8_t ecmd)
{
uint8_t txBuf[4], rxBuf[4];
struct spi_command cmd;
@@ -197,7 +197,7 @@ mx25l_erase_sector(device_t dev, off_t sector)
memset(txBuf, 0, sizeof(txBuf));
memset(rxBuf, 0, sizeof(rxBuf));
- txBuf[0] = CMD_SECTOR_ERASE;
+ txBuf[0] = ecmd;
cmd.tx_cmd = txBuf;
cmd.rx_cmd = rxBuf;
cmd.rx_cmd_sz = 4;
@@ -258,7 +258,7 @@ mx25l_write(device_t dev, off_t offset, caddr_t data, off_t count)
* If we crossed sector boundary - erase next sector
*/
if (((offset + bytes_writen) % sc->sc_sectorsize) == 0)
- mx25l_erase_sector(dev, offset + bytes_writen);
+ mx25l_erase_cmd(dev, offset + bytes_writen, CMD_SECTOR_ERASE);
txBuf[0] = CMD_PAGE_PROGRAM;
txBuf[1] = ((write_offset >> 16) & 0xff);
OpenPOWER on IntegriCloud