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

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

/ {
	model = "STMicroelectronics STM32F469I-DISCO board";
	compatible = "st,stm32f469i-disco", "st,stm32f469";

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

	leds {
		compatible = "gpio-leds";
		green_led_1: led_1 {
			gpios = <&gpiog 6 GPIO_INT_ACTIVE_HIGH>;
			label = "User LD1";
		};
		orange_led_2: led_2 {
			gpios = <&gpiod 4 GPIO_INT_ACTIVE_HIGH>;
			label = "User LD2";
		};
		red_led_3: led_3 {
			gpios = <&gpiod 5 GPIO_INT_ACTIVE_HIGH>;
			label = "User LD3";
		};
		blue_led_4: led_4 {
			gpios = <&gpiok 3 GPIO_INT_ACTIVE_HIGH>;
			label = "User LD4";
		};
	};

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

	aliases {
		led0 = &green_led_1;
		led1 = &orange_led_2;
		led2 = &red_led_3;
		led3 = &blue_led_4;
		sw0 = &user_button;
	};
};

arduino_i2c: &i2c1 {};
arduino_spi: &spi2 {};
arduino_serial: &usart6 {};

&usart3 {
	current-speed = <115200>;
	status = "okay";
};

&usart6 {
	current-speed = <115200>;
	status = "okay";
};

&i2c1 {
	status = "okay";
};

&spi2 {
	status = "okay";
};

&usbotg_fs {
	status = "okay";
};

&rtc {
	status = "okay";
};
