/*
 * Copyright (c) 2017 I-SENSE group of ICCS
 *
 * SPDX-License-Identifier: Apache-2.0
 */

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

/ {
	model = "Olimex OLIMEXINO-STM32 board";
	compatible = "st,olimexino_stm32", "st,stm32f103rb";

	chosen {
		zephyr,console = &usart1;
		zephyr,sram = &sram0;
		zephyr,flash = &flash0;
	};

	leds {
		compatible = "gpio-leds";
		green_led_1: led@0 {
			gpios = <&gpioa 5 GPIO_INT_ACTIVE_HIGH>;
			label = "LED1";
		};
		yellow_led_2: led@1 {
			gpios = <&gpioa 1 GPIO_INT_ACTIVE_HIGH>;
			label = "LED2";
		};
	};

	gpio_keys {
		compatible = "gpio-keys";
		user_button: button@0 {
			label = "Key";
			gpios = <&gpioc 9 GPIO_INT_ACTIVE_LOW>;
		};
	};

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

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

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

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

&i2c2 {
	status = "ok";
	clock-frequency = <I2C_BITRATE_FAST>;
};

&spi1 {
	status = "ok";
};

&spi2 {
	status = "ok";
};

&usb {
	status = "ok";
	disconnect-gpios = <&gpioc 12 0>;
};
