/*
 * Copyright (c) 2017 Linaro Limited
 *
 * SPDX-License-Identifier: Apache-2.0
 */

/dts-v1/;
#include <st/f1/stm32f103Xb.dtsi>
#include "arduino_r3_connector.dtsi"

/ {
	model = "STMicroelectronics STM32F103RB-NUCLEO board";
	compatible = "st,stm32f103rb-nucleo", "st,stm32f103rb";

	chosen {
		zephyr,console = &usart2;
		zephyr,shell-uart = &usart2;
		zephyr,sram = &sram0;
		zephyr,flash = &flash0;
	};

	leds {
		compatible = "gpio-leds";
		green_led_2: led_2 {
			gpios = <&gpioa 5 GPIO_INT_ACTIVE_HIGH>;
			label = "User LD2";
		};
	};

	gpio_keys {
		compatible = "gpio-keys";
		user_button: button {
			label = "User";
			gpios = <&gpioc 13 GPIO_INT_ACTIVE_LOW>;
		};
	};

	aliases {
		led0 = &green_led_2;
		sw0 = &user_button;
	};
};

&usart1 {
	current-speed = <115200>;
	pinctrl-0 = <&usart1_pins_a>;
	pinctrl-names = "default";
};

&usart2 {
	current-speed = <115200>;
	pinctrl-0 = <&usart2_pins_a>;
	pinctrl-names = "default";
	status = "okay";
};

&usart3 {
	current-speed = <115200>;
	pinctrl-0 = <&usart3_pins_a>;
	pinctrl-names = "default";
};

&spi1 {
	status = "okay";
};

&spi2 {
      status = "okay";
};

&timers1 {
	status = "okay";

	pwm {
		status = "okay";
	};
};

&iwdg {
	status = "okay";
};

&adc1 {
	status = "okay";
};
