|
|
|
@ -80,9 +80,7 @@ static size_t spi_flash_read(struct flash_dev *dev, uint32_t addr, void *data, |
|
|
|
|
|
|
|
|
|
spi_flash_addr(cmd, addr); |
|
|
|
|
|
|
|
|
|
spi_set_cs_level(spi_dev, 0); |
|
|
|
|
spi_tx_rx(spi_dev, data, len, cmd, sizeof cmd); |
|
|
|
|
spi_set_cs_level(spi_dev, 1); |
|
|
|
|
|
|
|
|
|
return len; |
|
|
|
|
} |
|
|
|
@ -99,9 +97,7 @@ static size_t spi_flash_write(struct flash_dev *dev, uint32_t addr, |
|
|
|
|
spi_flash_addr(cmd, addr); |
|
|
|
|
memcpy(cmd + 4, data, len); |
|
|
|
|
|
|
|
|
|
spi_set_cs_level(spi_dev, 0); |
|
|
|
|
spi_tx_rx(spi_dev, NULL, 0, cmd, sizeof cmd); |
|
|
|
|
spi_set_cs_level(spi_dev, 1); |
|
|
|
|
|
|
|
|
|
spi_flash_write_disable(dev); |
|
|
|
|
|
|
|
|
@ -118,9 +114,7 @@ static int spi_flash_erase(struct flash_dev *dev, uint32_t addr) |
|
|
|
|
cmd[0] = SPI_FLASH_ERASE_4K; |
|
|
|
|
spi_flash_addr(cmd, addr << dev->log2_block_size); |
|
|
|
|
|
|
|
|
|
spi_set_cs_level(spi_dev, 0); |
|
|
|
|
spi_tx_rx(spi_dev, NULL, 0, cmd, sizeof cmd); |
|
|
|
|
spi_set_cs_level(spi_dev, 1); |
|
|
|
|
|
|
|
|
|
spi_flash_write_disable(dev); |
|
|
|
|
|
|
|
|
|