SAMD20: SPI driver is code-complete, but untested
This commit is contained in:
parent
759724e815
commit
51b484adb8
@ -355,7 +355,65 @@
|
||||
#endif
|
||||
|
||||
/* SERCOM definitions ***************************************************************/
|
||||
/* SERCOM4 is available on connectors EXT1, EXT2, and EXT3
|
||||
/* This is the source clock generator for the GCLK_SERCOM_SLOW clock that is common
|
||||
* to all SERCOM modules.
|
||||
*/
|
||||
|
||||
#define BOARD_SERCOM_SLOW_GCLKGEN (GCLK_CLKCTRL_GEN0 >> GCLK_CLKCTRL_GEN_SHIFT)
|
||||
|
||||
/* SERCOM0 SPI is available on EXT1
|
||||
*
|
||||
* PIN PORT SERCOM FUNCTION
|
||||
* --- ------------------ -----------
|
||||
* 15 PA5 SERCOM0 PAD1 SPI SS
|
||||
* 16 PA6 SERCOM0 PAD2 SPI MOSI
|
||||
* 17 PA4 SERCOM0 PAD0 SPI MISO
|
||||
* 18 PA7 SERCOM0 PAD3 SPI SCK
|
||||
*/
|
||||
|
||||
#define BOARD_SERCOM0_CLKGEN GCLK_CLKCTRL_GEN0
|
||||
#define BOARD_SERCOM0_MUX_SETTING (SPI_CTRLA_DOPO_DOPAD231 | SPI_CTRLA_DIPAD0)
|
||||
#define BOARD_SERCOM0_PINMUX_PAD0 PINMUX_PA04D_SERCOM0_PAD0 /* SPI_MISO */
|
||||
#define BOARD_SERCOM0_PINMUX_PAD1 0 /* microSD_SS */
|
||||
#define BOARD_SERCOM0_PINMUX_PAD2 PINMUX_PA06D_SERCOM0_PAD2 /* SPI_MOSI */
|
||||
#define BOARD_SERCOM0_PINMUX_PAD3 PINMUX_PA07D_SERCOM0_PAD3 /* SPI_SCK */
|
||||
|
||||
/* SERCOM1 SPI is available on EXT2
|
||||
*
|
||||
* PIN PORT SERCOM FUNCTION
|
||||
* --- ------------------ -----------
|
||||
* 15 PA17 SERCOM1 PAD1 SPI SS
|
||||
* 16 PA18 SERCOM1 PAD2 SPI MOSI
|
||||
* 17 PA16 SERCOM1 PAD0 SPI MISO
|
||||
* 18 PA19 SERCOM1 PAD3 SPI SCK
|
||||
*/
|
||||
|
||||
#define BOARD_SERCOM1_CLKGEN GCLK_CLKCTRL_GEN0
|
||||
#define BOARD_SERCOM1_MUX_SETTING (SPI_CTRLA_DOPO_DOPAD231 | SPI_CTRLA_DIPAD0)
|
||||
#define BOARD_SERCOM1_PINMUX_PAD0 PINMUX_PA16C_SERCOM1_PAD0 /* SPI_MISO */
|
||||
#define BOARD_SERCOM1_PINMUX_PAD1 0 /* microSD_SS */
|
||||
#define BOARD_SERCOM1_PINMUX_PAD2 PINMUX_PA18C_SERCOM1_PAD2 /* SPI_MOSI */
|
||||
#define BOARD_SERCOM1_PINMUX_PAD3 PINMUX_PA19C_SERCOM1_PAD3 /* SPI_SCK */
|
||||
|
||||
/* The SAMD20 Xplained Pro contains an Embedded Debugger (EDBG) that can be
|
||||
* used to program and debug the ATSAMD20J18A using Serial Wire Debug (SWD).
|
||||
* The Embedded debugger also include a Virtual COM port interface over
|
||||
* SERCOM3. Virtual COM port connections:
|
||||
*
|
||||
* PA24 SERCOM3 / USART TXD
|
||||
* PA25 SERCOM3 / USART RXD
|
||||
*/
|
||||
|
||||
#define BOARD_SERCOM3_GCLKGEN GCLK_CLKCTRL_GEN0
|
||||
#define BOARD_SERCOM3_MUXCONFIG (USART_CTRLA_RXPAD3 | USART_CTRLA_TXPAD2)
|
||||
#define BOARD_SERCOM3_PINMAP_PAD0 0
|
||||
#define BOARD_SERCOM3_PINMAP_PAD1 0
|
||||
#define BOARD_SERCOM3_PINMAP_PAD2 PORT_SERCOM3_PAD2_1 /* USART TX */
|
||||
#define BOARD_SERCOM3_PINMAP_PAD3 PORT_SERCOM3_PAD3_1 /* USART RX */
|
||||
|
||||
#define BOARD_SERCOM3_FREQUENCY BOARD_GCLK0_FREQUENCY
|
||||
|
||||
/* The SERCOM4 USART is available on connectors EXT1, EXT2, and EXT3
|
||||
*
|
||||
* PIN EXT1 EXT2 EXT3 GPIO Function
|
||||
* ---- ---- ---- ---- ------------------
|
||||
@ -374,43 +432,42 @@
|
||||
|
||||
#if defined(CONFIG_SAMD20_XPLAINED_USART4_EXT1)
|
||||
# define BOARD_SERCOM4_MUXCONFIG (USART_CTRLA_RXPAD1 | USART_CTRLA_TXPAD0)
|
||||
# define BOARD_SERCOM4_PINMAP_PAD0 PORT_SERCOM4_PAD0_3
|
||||
# define BOARD_SERCOM4_PINMAP_PAD1 PORT_SERCOM4_PAD1_3
|
||||
# define BOARD_SERCOM4_PINMAP_PAD0 PORT_SERCOM4_PAD0_3 /* USART TX */
|
||||
# define BOARD_SERCOM4_PINMAP_PAD1 PORT_SERCOM4_PAD1_3 /* USART RX */
|
||||
# define BOARD_SERCOM4_PINMAP_PAD2 0
|
||||
# define BOARD_SERCOM4_PINMAP_PAD3 0
|
||||
#elif defined(CONFIG_SAMD20_XPLAINED_USART4_EXT2)
|
||||
# define BOARD_SERCOM4_MUXCONFIG (USART_CTRLA_RXPAD1 | USART_CTRLA_TXPAD0)
|
||||
# define BOARD_SERCOM4_PINMAP_PAD0 PORT_SERCOM4_PAD0_1
|
||||
# define BOARD_SERCOM4_PINMAP_PAD1 PORT_SERCOM4_PAD1_1
|
||||
# define BOARD_SERCOM4_PINMAP_PAD0 PORT_SERCOM4_PAD0_1 /* USART TX */
|
||||
# define BOARD_SERCOM4_PINMAP_PAD1 PORT_SERCOM4_PAD1_1 /* USART RX */
|
||||
# define BOARD_SERCOM4_PINMAP_PAD2 0
|
||||
# define BOARD_SERCOM4_PINMAP_PAD3 0
|
||||
#else /* if defined(CONFIG_SAMD20_XPLAINED_USART4_EXT3) */
|
||||
# define BOARD_SERCOM4_MUXCONFIG (USART_CTRLA_RXPAD3 | USART_CTRLA_TXPAD2)
|
||||
# define BOARD_SERCOM4_PINMAP_PAD0 0
|
||||
# define BOARD_SERCOM4_PINMAP_PAD1 0
|
||||
# define BOARD_SERCOM4_PINMAP_PAD2 PORT_SERCOM4_PAD2_3
|
||||
# define BOARD_SERCOM4_PINMAP_PAD3 PORT_SERCOM4_PAD3_3
|
||||
# define BOARD_SERCOM4_PINMAP_PAD2 PORT_SERCOM4_PAD2_3 /* USART TX */
|
||||
# define BOARD_SERCOM4_PINMAP_PAD3 PORT_SERCOM4_PAD3_3 /* USART RX */
|
||||
#endif
|
||||
|
||||
#define BOARD_SERCOM4_FREQUENCY BOARD_GCLK0_FREQUENCY
|
||||
|
||||
/* The SAMD20 Xplained Pro contains an Embedded Debugger (EDBG) that can be
|
||||
* used to program and debug the ATSAMD20J18A using Serial Wire Debug (SWD).
|
||||
* The Embedded debugger also include a Virtual COM port interface over
|
||||
* SERCOM3. Virtual COM port connections:
|
||||
/* SERCOM5 SPI is available on EXT3
|
||||
*
|
||||
* PA24 SERCOM3 / USART TXD
|
||||
* PA25 SERCOM3 / USART RXD
|
||||
* PIN PORT SERCOM FUNCTION
|
||||
* --- ------------------ -----------
|
||||
* 15 PB17 SERCOM5 PAD1 SPI SS
|
||||
* 16 PB22 SERCOM5 PAD2 SPI MOSI
|
||||
* 17 PB16 SERCOM5 PAD0 SPI MISO
|
||||
* 18 PB23 SERCOM5 PAD3 SPI SCK
|
||||
*/
|
||||
|
||||
#define BOARD_SERCOM3_GCLKGEN GCLK_CLKCTRL_GEN0
|
||||
#define BOARD_SERCOM3_MUXCONFIG (USART_CTRLA_RXPAD3 | USART_CTRLA_TXPAD2)
|
||||
#define BOARD_SERCOM3_PINMAP_PAD0 0
|
||||
#define BOARD_SERCOM3_PINMAP_PAD1 0
|
||||
#define BOARD_SERCOM3_PINMAP_PAD2 PORT_SERCOM3_PAD2_1
|
||||
#define BOARD_SERCOM3_PINMAP_PAD3 PORT_SERCOM3_PAD3_1
|
||||
|
||||
#define BOARD_SERCOM3_FREQUENCY BOARD_GCLK0_FREQUENCY
|
||||
#define BOARD_SERCOM5_CLKGEN GCLK_CLKCTRL_GEN0
|
||||
#define BOARD_SERCOM5_MUX_SETTING (SPI_CTRLA_DOPO_DOPAD231 | SPI_CTRLA_DIPAD0)
|
||||
#define BOARD_SERCOM5_PINMUX_PAD0 PINMUX_PB16C_SERCOM5_PAD0 /* SPI_MISO */
|
||||
#define BOARD_SERCOM5_PINMUX_PAD1 0 /* microSD_SS */
|
||||
#define BOARD_SERCOM5_PINMUX_PAD2 PINMUX_PB22D_SERCOM5_PAD2 /* SPI_MOSI */
|
||||
#define BOARD_SERCOM5_PINMUX_PAD3 PINMUX_PB23D_SERCOM5_PAD3 /* SPI_SCK */
|
||||
|
||||
/* LED definitions ******************************************************************/
|
||||
/* There are three LEDs on board the SAMD20 Xplained Pro board: The EDBG
|
||||
|
Loading…
x
Reference in New Issue
Block a user