This started while adding USB MIDI support (and descriptor support is in this change.) When seeing that I'd have to implement the MIDI class logic twice, once for atmel-samd and once for nrf, I decided to refactor the USB stack so its shared across ports. This has led to a number of changes that remove items from the ports folder and move them into supervisor. Furthermore, we had external SPI flash support for nrf pending so I factored out the connection between the usb stack and the flash API as well. This PR also includes the QSPI support for nRF.
41 lines
1.2 KiB
C
41 lines
1.2 KiB
C
#define MICROPY_HW_BOARD_NAME "Adafruit ItsyBitsy M4 Express"
|
|
#define MICROPY_HW_MCU_NAME "samd51g19"
|
|
|
|
#define CIRCUITPY_MCU_FAMILY samd51
|
|
|
|
// This is for Rev B
|
|
#define MICROPY_HW_APA102_MOSI (&pin_PB03)
|
|
#define MICROPY_HW_APA102_SCK (&pin_PB02)
|
|
|
|
#define CIRCUITPY_BITBANG_APA102
|
|
|
|
// These are pins not to reset.
|
|
// QSPI Data pins
|
|
#define MICROPY_PORT_A (PORT_PA08 | PORT_PA09 | PORT_PA10 | PORT_PA11)
|
|
// DotStar pins, QSPI CS, and QSPI SCK
|
|
#define MICROPY_PORT_B (PORT_PB02 | PORT_PB03 | PORT_PB10 | PORT_PB11)
|
|
#define MICROPY_PORT_C (0)
|
|
#define MICROPY_PORT_D (0)
|
|
|
|
#define AUTORESET_DELAY_MS 500
|
|
|
|
// If you change this, then make sure to update the linker scripts as well to
|
|
// make sure you don't overwrite code
|
|
#define CIRCUITPY_INTERNAL_NVM_SIZE 8192
|
|
|
|
#define BOARD_FLASH_SIZE (FLASH_SIZE - 0x4000 - CIRCUITPY_INTERNAL_NVM_SIZE)
|
|
|
|
#define DEFAULT_I2C_BUS_SCL (&pin_PA13)
|
|
#define DEFAULT_I2C_BUS_SDA (&pin_PA12)
|
|
|
|
#define DEFAULT_SPI_BUS_SCK (&pin_PA01)
|
|
#define DEFAULT_SPI_BUS_MOSI (&pin_PA00)
|
|
#define DEFAULT_SPI_BUS_MISO (&pin_PB23)
|
|
|
|
#define DEFAULT_UART_BUS_RX (&pin_PA16)
|
|
#define DEFAULT_UART_BUS_TX (&pin_PA17)
|
|
|
|
// USB is always used internally so skip the pin objects for it.
|
|
#define IGNORE_PIN_PA24 1
|
|
#define IGNORE_PIN_PA25 1
|