/*
 * Copyright (c) 2022 Espressif Systems (Shanghai) Co., Ltd.
 *
 * SPDX-License-Identifier: Apache-2.0
 */

#include <zephyr/dt-bindings/pinctrl/esp-pinctrl-common.h>
#include <dt-bindings/pinctrl/esp32-pinctrl.h>
#include <zephyr/dt-bindings/pinctrl/esp32-gpio-sigmap.h>

&pinctrl {

	uart0_tx_gpio1: uart0_tx_gpio1 {
		pinmux = <UART0_TX_GPIO1>;
	};

	uart0_rx_gpio3: uart0_rx_gpio3 {
		pinmux = <UART0_RX_GPIO3>;
		bias-pull-up;
	};

	spim3_miso_gpio19: spim3_miso_gpio19 {
		pinmux = <SPIM3_MISO_GPIO19>;
	};

	spim3_mosi_gpio23: spim3_mosi_gpio23 {
		pinmux = <SPIM3_MOSI_GPIO23>;
		output-low;
	};

	spim3_sclk_gpio18: spim3_sclk_gpio18 {
		pinmux = <SPIM3_SCLK_GPIO18>;
	};

	spim3_csel_gpio5: spim3_csel_gpio5 {
		pinmux = <SPIM3_CSEL_GPIO5>;
	};

	i2c0_sda_gpio4: i2c0_sda_gpio4 {
		pinmux = <I2C0_SDA_GPIO4>;
		bias-pull-up;
		drive-open-drain;
		output-high;
	};

	i2c0_scl_gpio15: i2c0_scl_gpio15 {
		pinmux = <I2C0_SCL_GPIO15>;
		bias-pull-up;
		drive-open-drain;
		output-high;
	};

};
