Skip to content

Commit 89f4a55

Browse files
committed
atmel-samd: New revs which isolate the SPI for the external flash.
1 parent e52fbf2 commit 89f4a55

File tree

2 files changed

+39
-27
lines changed

2 files changed

+39
-27
lines changed

atmel-samd/boards/cplay_m0_flash/mpconfigboard.h

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,27 @@
99

1010
// On-board flash
1111
#define SPI_FLASH_MUX_SETTING SPI_SIGNAL_MUX_SETTING_E
12-
#define SPI_FLASH_PAD0_PINMUX PINMUX_PA12D_SERCOM4_PAD0 // MISO
1312
// Use default pinmux for the chip select since we manage it ourselves.
13+
14+
// Rev B:
15+
// #define SPI_FLASH_PAD0_PINMUX PINMUX_PA12D_SERCOM4_PAD0 // MISO
16+
// #define SPI_FLASH_PAD1_PINMUX PINMUX_DEFAULT // CS
17+
// #define SPI_FLASH_PAD2_PINMUX PINMUX_PB10D_SERCOM4_PAD2 // MOSI
18+
// #define SPI_FLASH_PAD3_PINMUX PINMUX_PB11D_SERCOM4_PAD3 // SCK
19+
20+
// Rev C:
21+
#define SPI_FLASH_PAD0_PINMUX PINMUX_PA16D_SERCOM3_PAD0 // MISO
1422
#define SPI_FLASH_PAD1_PINMUX PINMUX_DEFAULT // CS
15-
#define SPI_FLASH_PAD2_PINMUX PINMUX_PB10D_SERCOM4_PAD2 // MOSI
16-
#define SPI_FLASH_PAD3_PINMUX PINMUX_PB11D_SERCOM4_PAD3 // SCK
23+
#define SPI_FLASH_PAD2_PINMUX PINMUX_PA20D_SERCOM3_PAD2 // MOSI
24+
#define SPI_FLASH_PAD3_PINMUX PINMUX_PA21D_SERCOM3_PAD3 // SCK
25+
1726
#define SPI_FLASH_CS PIN_PB22
18-
#define SPI_FLASH_SERCOM SERCOM4
27+
// rev B: #define SPI_FLASH_SERCOM SERCOM4
28+
#define SPI_FLASH_SERCOM SERCOM3
1929

20-
#define MICROPY_PORT_A (PORT_PA12 | PORT_PA24 | PORT_PA25)
21-
#define MICROPY_PORT_B (PORT_PB10 | PORT_PB11 | PORT_PB22)
30+
// PA24 and PA25 are USB.
31+
#define MICROPY_PORT_A (PORT_PA16 | PORT_PA20 | PORT_PA21 | PORT_PA24 | PORT_PA25)
32+
#define MICROPY_PORT_B (PORT_PB22)
2233

2334
#define AUTORESET_DELAY_MS 500
2435

atmel-samd/boards/metro_m0_flash/mpconfigboard.h

Lines changed: 22 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,40 @@
1-
// #define UART_REPL
21
#define USB_REPL
32

43
#define MICROPY_HW_BOARD_NAME "Adafruit Metro M0 with Flash (Experimental)"
54
#define MICROPY_HW_MCU_NAME "samd21g18"
65

7-
//#define MICROPY_HW_LED_MSC PIN_PA17
86
#define MICROPY_HW_LED_TX PIN_PA27
9-
#define MICROPY_HW_LED_RX PIN_PB03
7+
#define MICROPY_HW_LED_RX PIN_PA31
108

119
#define MICROPY_HW_NEOPIXEL &pin_PA30
1210

1311
#define SPI_FLASH_BAUDRATE (1000000)
1412

15-
// Off-board flash
13+
// Rev E
1614
// #define SPI_FLASH_MUX_SETTING SPI_SIGNAL_MUX_SETTING_E
17-
// #define SPI_FLASH_PAD0_PINMUX PINMUX_PA16C_SERCOM1_PAD0 // MISO D11
15+
// #define SPI_FLASH_PAD0_PINMUX PINMUX_PA12D_SERCOM4_PAD0 // MISO
16+
// // Use default pinmux for the chip select since we manage it ourselves.
17+
// #define SPI_FLASH_PAD1_PINMUX PINMUX_DEFAULT // CS
18+
// #define SPI_FLASH_PAD2_PINMUX PINMUX_PB10D_SERCOM4_PAD2 // MOSI
19+
// #define SPI_FLASH_PAD3_PINMUX PINMUX_PB11D_SERCOM4_PAD3 // SCK
20+
// #define SPI_FLASH_CS PIN_PA13
21+
// #define SPI_FLASH_SERCOM SERCOM4
22+
//
23+
// #define MICROPY_PORT_A (PORT_PA12 | PORT_PA13 |PORT_PA24 | PORT_PA25 | PORT_PA27 | PORT_PA30)
24+
// #define MICROPY_PORT_B (PORT_PB03 | PORT_PB10 | PORT_PB11)
25+
26+
// Rev F
27+
#define SPI_FLASH_MUX_SETTING SPI_SIGNAL_MUX_SETTING_F
28+
#define SPI_FLASH_PAD0_PINMUX PINMUX_DEFAULT // CS
1829
// Use default pinmux for the chip select since we manage it ourselves.
19-
// #define SPI_FLASH_PAD1_PINMUX PINMUX_DEFAULT
20-
// #define SPI_FLASH_PAD2_PINMUX PINMUX_PA18C_SERCOM1_PAD2 // MOSI D10
21-
// #define SPI_FLASH_PAD3_PINMUX PINMUX_PA19C_SERCOM1_PAD3 // SCK D12
22-
// #define SPI_FLASH_CS PIN_PA17
23-
// #define SPI_FLASH_SERCOM SERCOM1
24-
25-
// On-board flash
26-
#define SPI_FLASH_MUX_SETTING SPI_SIGNAL_MUX_SETTING_E
27-
#define SPI_FLASH_PAD0_PINMUX PINMUX_PA12D_SERCOM4_PAD0 // MISO
28-
// Use default pinmux for the chip select since we manage it ourselves.
29-
#define SPI_FLASH_PAD1_PINMUX PINMUX_DEFAULT // CS
30-
#define SPI_FLASH_PAD2_PINMUX PINMUX_PB10D_SERCOM4_PAD2 // MOSI
31-
#define SPI_FLASH_PAD3_PINMUX PINMUX_PB11D_SERCOM4_PAD3 // SCK
30+
#define SPI_FLASH_PAD1_PINMUX PINMUX_PB03D_SERCOM5_PAD1 // MISO
31+
#define SPI_FLASH_PAD2_PINMUX PINMUX_PB22D_SERCOM5_PAD2 // MOSI
32+
#define SPI_FLASH_PAD3_PINMUX PINMUX_PB23D_SERCOM5_PAD3 // SCK
3233
#define SPI_FLASH_CS PIN_PA13
33-
#define SPI_FLASH_SERCOM SERCOM4
34+
#define SPI_FLASH_SERCOM SERCOM5
3435

35-
#define MICROPY_PORT_A (PORT_PA12 | PORT_PA13 |PORT_PA24 | PORT_PA25 | PORT_PA27 | PORT_PA30)
36-
#define MICROPY_PORT_B (PORT_PB03 | PORT_PB10 | PORT_PB11)
36+
#define MICROPY_PORT_A (PORT_PA13 |PORT_PA24 | PORT_PA25 | PORT_PA27 | PORT_PA30 | PORT_PA31)
37+
#define MICROPY_PORT_B (PORT_PB03 | PORT_PB22 | PORT_PB23)
3738

3839
#define AUTORESET_DELAY_MS 500
3940

0 commit comments

Comments
 (0)