aboutsummaryrefslogtreecommitdiffstats
path: root/os/hal/boards/ATSAMA5D2_XULT_NSEC/board.c
diff options
context:
space:
mode:
Diffstat (limited to 'os/hal/boards/ATSAMA5D2_XULT_NSEC/board.c')
-rw-r--r--os/hal/boards/ATSAMA5D2_XULT_NSEC/board.c56
1 files changed, 55 insertions, 1 deletions
diff --git a/os/hal/boards/ATSAMA5D2_XULT_NSEC/board.c b/os/hal/boards/ATSAMA5D2_XULT_NSEC/board.c
index b548ad608..856a70a80 100644
--- a/os/hal/boards/ATSAMA5D2_XULT_NSEC/board.c
+++ b/os/hal/boards/ATSAMA5D2_XULT_NSEC/board.c
@@ -73,7 +73,54 @@ typedef struct {
* @note The list is terminated by a {-1, 0, 0, 0}
*/
static const sama_pio_init_t sama_inits[] = {
- /* RGB Led */
+ /* CLASSD */
+ {SAMA_PIOB,
+ SAMA_PIN_N(PIOB_CLASSD_R0) | SAMA_PIN_N(PIOB_CLASSD_R1) |
+ SAMA_PIN_N(PIOB_CLASSD_R2) | SAMA_PIN_N(PIOB_CLASSD_R3),
+ SAMA_PIO_FUNC_PERIPH_F,
+ SAMA_PIO_HIGH},
+ /* User Button */
+ {SAMA_PIOB,
+ SAMA_PIN_N(PIOB_USER_PB),
+ SAMA_PIO_FUNC_GPIO | SAMA_PIO_DIR_INPUT | SAMA_PIO_PUEN | SAMA_PIO_SCHMITT,
+ SAMA_PIO_HIGH},
+ /* UART0 */
+ {SAMA_PIOB,
+ SAMA_PIN_N(PIOB_URXD0) | SAMA_PIN_N(PIOB_UTXD0),
+ SAMA_PIO_FUNC_PERIPH_C,
+ SAMA_PIO_HIGH},
+ /* UART1 */
+ {SAMA_PIOD,
+ SAMA_PIN_N(PIOD_URXD1) | SAMA_PIN_N(PIOD_UTXD1),
+ SAMA_PIO_FUNC_PERIPH_A,
+ SAMA_PIO_HIGH},
+ /* UART2 */
+ {SAMA_PIOD,
+ SAMA_PIN_N(PIOD_URXD2) | SAMA_PIN_N(PIOD_UTXD2),
+ SAMA_PIO_FUNC_PERIPH_B,
+ SAMA_PIO_HIGH},
+ /* FLEXUART0 */
+ {SAMA_PIOB,
+ SAMA_PIN_N(PIOB_UART_FLEXCOM0_IO0) |
+ SAMA_PIN_N(PIOB_UART_FLEXCOM0_IO1),
+ SAMA_PIO_FUNC_PERIPH_C,
+ SAMA_PIO_HIGH},
+ /* FLEXUART4 */
+ {SAMA_PIOD,
+ SAMA_PIN_N(PIOD_UART_FLEXCOM4_IO0) |
+ SAMA_PIN_N(PIOD_UART_FLEXCOM4_IO1) |
+ SAMA_PIN_N(PIOD_UART_FLEXCOM4_IO3) |
+ SAMA_PIN_N(PIOD_UART_FLEXCOM4_IO4),
+ SAMA_PIO_FUNC_PERIPH_C,
+ SAMA_PIO_HIGH},
+ /* Keyboard Backlight Led */
+ {SAMA_PIOD,
+ SAMA_PIN_N(PIOD_KEYBACK_LED_RED) |
+ SAMA_PIN_N(PIOD_KEYBACK_LED_GREEN) |
+ SAMA_PIN_N(PIOD_KEYBACK_LED_BLUE),
+ SAMA_PIO_FUNC_GPIO | SAMA_PIO_DIR_OUTPUT | SAMA_PIO_DRVSTR_HI,
+ SAMA_PIO_LOW},
+ /* Red Led */
{SAMA_PIOB,
SAMA_PIN_N(PIOB_LED_RED),
SAMA_PIO_FUNC_GPIO | SAMA_PIO_DIR_OUTPUT | SAMA_PIO_DRVSTR_HI,
@@ -90,6 +137,13 @@ static const sama_pio_init_t sama_inits[] = {
void __early_init(void) {
sama_clock_init();
+ /* Configures ETH's pins */
+ palSetGroupMode(PIOB, PAL_PORT_BIT(PIOB_ETH_GTXCK) | PAL_PORT_BIT(PIOB_ETH_GTXEN) |
+ PAL_PORT_BIT(PIOB_ETH_GRXDV) | PAL_PORT_BIT(PIOB_ETH_GRXER) |
+ PAL_PORT_BIT(PIOB_ETH_GRX0) | PAL_PORT_BIT(PIOB_ETH_GRX1) |
+ PAL_PORT_BIT(PIOB_ETH_GTX0) | PAL_PORT_BIT(PIOB_ETH_GTX1) |
+ PAL_PORT_BIT(PIOB_ETH_GMDC) | PAL_PORT_BIT(PIOB_ETH_GMDIO),
+ 0U, PAL_SAMA_FUNC_PERIPH_F);
}
/**