boards: gd32f450i_eval: use pinctrl

Enable usage of the pinctrl driver.

Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
This commit is contained in:
Gerard Marull-Paretas 2021-11-01 21:40:37 +01:00 committed by Anas Nashif
commit 37c855f3c8
4 changed files with 17 additions and 32 deletions

View file

@ -1,5 +0,0 @@
# Copyright (c) 2021, Teslabs Engineering S.L.
# SPDX-License-Identifier: Apache-2.0
zephyr_library()
zephyr_library_sources(board.c)

View file

@ -1,27 +0,0 @@
/*
* Copyright (c) 2021, Teslabs Engineering S.L.
* SPDX-License-Identifier: Apache-2.0
*/
#include <init.h>
static int board_init(const struct device *dev)
{
rcu_periph_clock_enable(RCU_GPIOA);
/* PA9: USART0 TX */
gpio_af_set(GPIOA, GPIO_AF_7, GPIO_PIN_9);
gpio_mode_set(GPIOA, GPIO_MODE_AF, GPIO_PUPD_NONE, GPIO_PIN_9);
gpio_output_options_set(GPIOA, GPIO_OTYPE_PP, GPIO_OSPEED_2MHZ, GPIO_PIN_9);
/* PA10: USART0 RX */
gpio_af_set(GPIOA, GPIO_AF_7, GPIO_PIN_10);
gpio_mode_set(GPIOA, GPIO_MODE_AF, GPIO_PUPD_NONE, GPIO_PIN_10);
gpio_output_options_set(GPIOA, GPIO_OTYPE_PP, GPIO_OSPEED_2MHZ, GPIO_PIN_10);
rcu_periph_clock_disable(RCU_GPIOA);
return 0;
}
SYS_INIT(board_init, PRE_KERNEL_1, CONFIG_BOARD_INIT_PRIORITY);

View file

@ -0,0 +1,14 @@
/*
* Copyright (c) 2021, Teslabs Engineering S.L.
* SPDX-License-Identifier: Apache-2.0
*/
#include <dt-bindings/pinctrl/gd32f450i(g-i-k)xx-pinctrl.h>
&pinctrl {
usart0_default: usart0_default {
group1 {
pinmux = <USART0_TX_PA9>, <USART0_RX_PA10>;
};
};
};

View file

@ -6,6 +6,7 @@
/dts-v1/;
#include <gigadevice/gd32f4xx/gd32f450ik.dtsi>
#include "gd32f450i_eval-pinctrl.dtsi"
/ {
model = "GigaDevice GD32F450I-EVAL";
@ -22,4 +23,6 @@
&usart0 {
status = "okay";
current-speed = <115200>;
pinctrl-0 = <&usart0_default>;
pinctrl-names = "default";
};