Avoid excessive SPI re-configuration in run-time of SPI flash.
This commit is contained in:
parent
f610b6b190
commit
2a1f586634
|
@ -105,7 +105,6 @@ bool spi_flash_sector_command(uint8_t command, uint32_t address) {
|
|||
|
||||
bool spi_flash_write_data(uint32_t address, uint8_t *data, uint32_t data_length) {
|
||||
uint8_t request[4] = {CMD_PAGE_PROGRAM, 0x00, 0x00, 0x00};
|
||||
common_hal_busio_spi_configure(&supervisor_flash_spi_bus, spi_flash_baudrate, 0, 0, 8);
|
||||
// Write the SPI flash write address into the bytes following the command byte.
|
||||
address_to_bytes(address, request + 1);
|
||||
if (!flash_enable()) {
|
||||
|
@ -126,7 +125,6 @@ bool spi_flash_read_data(uint32_t address, uint8_t *data, uint32_t data_length)
|
|||
request[0] = CMD_FAST_READ_DATA;
|
||||
command_length = 5;
|
||||
}
|
||||
common_hal_busio_spi_configure(&supervisor_flash_spi_bus, spi_flash_baudrate, 0, 0, 8);
|
||||
// Write the SPI flash read address into the bytes following the command byte.
|
||||
address_to_bytes(address, request + 1);
|
||||
if (!flash_enable()) {
|
||||
|
@ -144,7 +142,6 @@ void spi_flash_init(void) {
|
|||
cs_pin.base.type = &digitalio_digitalinout_type;
|
||||
common_hal_digitalio_digitalinout_construct(&cs_pin, SPI_FLASH_CS_PIN);
|
||||
|
||||
|
||||
// Set CS high (disabled).
|
||||
common_hal_digitalio_digitalinout_switch_to_output(&cs_pin, true, DRIVE_MODE_PUSH_PULL);
|
||||
common_hal_digitalio_digitalinout_never_reset(&cs_pin);
|
||||
|
@ -152,6 +149,8 @@ void spi_flash_init(void) {
|
|||
supervisor_flash_spi_bus.base.type = &busio_spi_type;
|
||||
common_hal_busio_spi_construct(&supervisor_flash_spi_bus, SPI_FLASH_SCK_PIN, SPI_FLASH_MOSI_PIN, SPI_FLASH_MISO_PIN);
|
||||
common_hal_busio_spi_never_reset(&supervisor_flash_spi_bus);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
void spi_flash_init_device(const external_flash_device *device) {
|
||||
|
@ -160,4 +159,6 @@ void spi_flash_init_device(const external_flash_device *device) {
|
|||
if (spi_flash_baudrate > SPI_FLASH_MAX_BAUDRATE) {
|
||||
spi_flash_baudrate = SPI_FLASH_MAX_BAUDRATE;
|
||||
}
|
||||
common_hal_busio_spi_configure(&supervisor_flash_spi_bus, spi_flash_baudrate, 0, 0, 8);
|
||||
return;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue