/*
 * Copyright (c) 2017 Fenix Engineering Solutions
 *
 * SPDX-License-Identifier: Apache-2.0
 */

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

/ {
	model = "STMicroelectronics STM32F411E-DISCO board";
	compatible = "st,stm32f411e-disco", "st,stm32f411";

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

	leds {
		compatible = "gpio-leds";
		orange_led_3: led@0 {
			gpios = <&gpiod 13 GPIO_INT_ACTIVE_HIGH>;
			label = "User LD3";
		};
		green_led_4: led@1 {
			gpios = <&gpiod 12 GPIO_INT_ACTIVE_HIGH>;
			label = "User LD4";
		};
		red_led_5: led@2 {
			gpios = <&gpiod 14 GPIO_INT_ACTIVE_HIGH>;
			label = "User LD5";
		};
		blue_led_6: led@3 {
			gpios = <&gpiod 15 GPIO_INT_ACTIVE_HIGH>;
			label = "User LD6";
		};
	};

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

	aliases {
		led0 = &orange_led_3;
		led1 = &green_led_4;
		led2 = &red_led_5;
		led3 = &blue_led_6;
		sw0 = &user_button;
	};
};

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