enable internal SPI intercepts. can brick USB

This commit is contained in:
Hierophect 2019-12-18 15:40:08 -05:00
parent 3a5de7effd
commit 5b70fa0a64
4 changed files with 17 additions and 11 deletions

View File

@ -39,7 +39,7 @@
#define BOARD_NO_VBUS
// On-board flash
// #define SPI_FLASH_MOSI_PIN (&pin_PB15)
// #define SPI_FLASH_MISO_PIN (&pin_PB14)
// #define SPI_FLASH_SCK_PIN (&pin_PB13)
// #define SPI_FLASH_CS_PIN (&pin_PB01)
#define SPI_FLASH_MOSI_PIN (&pin_PB15)
#define SPI_FLASH_MISO_PIN (&pin_PB14)
#define SPI_FLASH_SCK_PIN (&pin_PB13)
#define SPI_FLASH_CS_PIN (&pin_PB01)

View File

@ -4,19 +4,19 @@ USB_PRODUCT = "Meowbit"
USB_MANUFACTURER = "Kittenbot"
USB_DEVICES = "CDC,MSC"
# SPI_FLASH_FILESYSTEM = 1
# EXTERNAL_FLASH_DEVICE_COUNT = 1
# EXTERNAL_FLASH_DEVICES = W25Q16JV_IQ
# LONGINT_IMPL = MPZ
SPI_FLASH_FILESYSTEM = 1
EXTERNAL_FLASH_DEVICE_COUNT = 1
EXTERNAL_FLASH_DEVICES = W25Q16JV_IQ
LONGINT_IMPL = MPZ
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
# INTERNAL_FLASH_FILESYSTEM = 1
# LONGINT_IMPL = NONE
MCU_SERIES = m4
MCU_VARIANT = stm32f4
MCU_SUB_VARIANT = stm32f401xe
MCU_PACKAGE = 64
CMSIS_MCU = STM32F401xE
LD_FILE = boards/STM32F401_fs.ld
LD_FILE = boards/STM32F401.ld
TEXT0_ADDR = 0x08010000
TEXT1_ADDR = 0x08020000

View File

@ -1,4 +1,5 @@
#include "shared-bindings/board/__init__.h"
#include "supervisor/spi_flash_api.h"
STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
{ MP_ROM_QSTR(MP_QSTR_LED_RED), MP_ROM_PTR(&pin_PB04) },
@ -59,5 +60,6 @@ STATIC const mp_rom_map_elem_t board_module_globals_table[] = {
{ MP_ROM_QSTR(MP_QSTR_P0), MP_ROM_PTR(&pin_PA00) },
{ MP_ROM_QSTR(MP_QSTR_P3), MP_ROM_PTR(&pin_PB00) },
{ MP_ROM_QSTR(MP_QSTR_INTERNAL_SPI), MP_ROM_PTR(&spi) },
};
MP_DEFINE_CONST_DICT(board_module_globals, board_module_globals_table);

View File

@ -31,6 +31,10 @@
#include "supervisor/shared/external_flash/devices.h"
#include "shared-bindings/busio/SPI.h"
extern busio_spi_obj_t spi; //Used to share SPI bus on some boards
// This API is implemented for both normal SPI peripherals and QSPI peripherals.
bool spi_flash_command(uint8_t command);