summaryrefslogtreecommitdiff
path: root/ports/stm32/boards/STM32L476DISC/bdev.c
diff options
context:
space:
mode:
Diffstat (limited to 'ports/stm32/boards/STM32L476DISC/bdev.c')
-rw-r--r--ports/stm32/boards/STM32L476DISC/bdev.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/ports/stm32/boards/STM32L476DISC/bdev.c b/ports/stm32/boards/STM32L476DISC/bdev.c
new file mode 100644
index 000000000..01f06b8b1
--- /dev/null
+++ b/ports/stm32/boards/STM32L476DISC/bdev.c
@@ -0,0 +1,24 @@
+#include "storage.h"
+
+// External SPI flash uses standard SPI interface
+
+STATIC const mp_soft_spi_obj_t soft_spi_bus = {
+ .delay_half = MICROPY_HW_SOFTSPI_MIN_DELAY,
+ .polarity = 0,
+ .phase = 0,
+ .sck = MICROPY_HW_SPIFLASH_SCK,
+ .mosi = MICROPY_HW_SPIFLASH_MOSI,
+ .miso = MICROPY_HW_SPIFLASH_MISO,
+};
+
+STATIC mp_spiflash_cache_t spi_bdev_cache;
+
+const mp_spiflash_config_t spiflash_config = {
+ .bus_kind = MP_SPIFLASH_BUS_SPI,
+ .bus.u_spi.cs = MICROPY_HW_SPIFLASH_CS,
+ .bus.u_spi.data = (void*)&soft_spi_bus,
+ .bus.u_spi.proto = &mp_soft_spi_proto,
+ .cache = &spi_bdev_cache,
+};
+
+spi_bdev_t spi_bdev;