boards: esp32c3_devkitm: dts: default pinctrl states

Add default pinctrl states to UART, SPI and I2C
peripherals.

I2C's pin information information is kept to
trigger the bus recovery mechanism in case of
failure.

I2C_0's default SDA pin is changed to no conflict
with SPI2's MISO pin.

Signed-off-by: Glauber Maroto Ferreira <glauber.ferreira@espressif.com>
This commit is contained in:
Glauber Maroto Ferreira 2022-02-15 08:44:23 -03:00 committed by Carles Cufí
commit 7e0ad40d3f
2 changed files with 62 additions and 7 deletions

View file

@ -0,0 +1,53 @@
/*
* Copyright (c) 2022 Espressif Systems (Shanghai) Co., Ltd.
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <dt-bindings/pinctrl/esp-pinctrl-common.h>
#include <dt-bindings/pinctrl/esp32c3-pinctrl.h>
#include <dt-bindings/pinctrl/esp32c3-gpio-sigmap.h>
&pinctrl {
uart0_tx_gpio21: uart0_tx_gpio21 {
pinmux = <UART0_TX_GPIO21>;
};
uart0_rx_gpio20: uart0_rx_gpio20 {
pinmux = <UART0_RX_GPIO20>;
bias-pull-up;
};
spim2_miso_gpio2: spim2_miso_gpio2 {
pinmux = <SPIM2_MISO_GPIO2>;
};
spim2_mosi_gpio7: spim2_mosi_gpio7 {
pinmux = <SPIM2_MOSI_GPIO7>;
output-low;
};
spim2_sclk_gpio6: spim2_sclk_gpio6 {
pinmux = <SPIM2_SCLK_GPIO6>;
};
spim2_csel_gpio10: spim2_csel_gpio10 {
pinmux = <SPIM2_CSEL_GPIO10>;
};
i2c0_sda_gpio1: i2c0_sda_gpio1 {
pinmux = <I2C0_SDA_GPIO1>;
bias-pull-up;
drive-open-drain;
output-high;
};
i2c0_scl_gpio3: i2c0_scl_gpio3 {
pinmux = <I2C0_SCL_GPIO3>;
bias-pull-up;
drive-open-drain;
output-high;
};
};

View file

@ -7,6 +7,7 @@
/dts-v1/; /dts-v1/;
#include <espressif/esp32c3.dtsi> #include <espressif/esp32c3.dtsi>
#include "esp32c3_devkitm-pinctrl.dtsi"
/ { / {
model = "esp32c3_devkitm"; model = "esp32c3_devkitm";
@ -40,15 +41,17 @@
&uart0 { &uart0 {
status = "okay"; status = "okay";
current-speed = <115200>; current-speed = <115200>;
tx-pin = <21>; pinctrl-0 = <&uart0_tx_gpio21 &uart0_rx_gpio20>;
rx-pin = <20>; pinctrl-names = "default";
}; };
&i2c0 { &i2c0 {
status = "okay"; status = "okay";
clock-frequency = <I2C_BITRATE_STANDARD>; clock-frequency = <I2C_BITRATE_STANDARD>;
sda-pin = <2>; sda-pin = <1>;
scl-pin = <3>; scl-pin = <3>;
pinctrl-0 = <&i2c0_sda_gpio1 &i2c0_scl_gpio3>;
pinctrl-names = "default";
}; };
&trng0 { &trng0 {
@ -59,10 +62,9 @@
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
status = "okay"; status = "okay";
miso-pin = <2>; pinctrl-0 = <&spim2_miso_gpio2 &spim2_mosi_gpio7
mosi-pin = <7>; &spim2_sclk_gpio6 &spim2_csel_gpio10>;
sclk-pin = <6>; pinctrl-names = "default";
csel-pin = <10>;
}; };
&gpio0 { &gpio0 {