Linux preempt-rt

Check our new training course

Real-Time Linux with PREEMPT_RT

Check our new training course
with Creative Commons CC-BY-SA
lecture and lab materials

Bootlin logo

Elixir Cross Referencer

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

/dts-v1/;
#include <st/l4/stm32l496Xg.dtsi>
#include <st/l4/stm32l496a(e-g)ix-pinctrl.dtsi>
#include "arduino_r3_connector.dtsi"

/ {
	model = "STMicroelectronics STM32L496G-DISCO board";
	compatible = "st,stm32l496g-disco";

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

	leds {
		compatible = "gpio-leds";
		green_led_2: led_2 {
			gpios = <&gpiob 13 GPIO_ACTIVE_HIGH>;
			label = "User LD2";
		};
	};

	gpio_keys {
		compatible = "gpio-keys";
		joy_sel: joystick_select {
			label = "joystick select";
			gpios = <&gpioc 13 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>;
		};
		joy_down: joystick_down {
			label = "joystick down";
			gpios = <&gpioi 10 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>;
		};
		joy_up: joystick_up {
			label = "joystick up";
			gpios = <&gpioi 8 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>;
		};
		joy_left: joystick_left {
			label = "joystick left";
			gpios = <&gpioi 9 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>;
		};
		joy_right: joystick_right {
			label = "joystick right";
			gpios = <&gpiof 11 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>;
		};
	};

	aliases {
		led0 = &green_led_2;
		sw0 = &joy_sel;
		sw1 = &joy_down;
		sw2 = &joy_right;
		sw3 = &joy_up;
		sw4 = &joy_left;
	};

};

&clk_hsi {
	status = "okay";
};

&pll {
	div-m = <1>;
	mul-n = <20>;
	div-p = <7>;
	div-q = <2>;
	div-r = <4>;
	clocks = <&clk_hsi>;
	status = "okay";
};

&rcc {
	clocks = <&pll>;
	clock-frequency = <DT_FREQ_M(80)>;
	ahb-prescaler = <1>;
	apb1-prescaler = <1>;
	apb2-prescaler = <1>;
};

&usart1 {
	pinctrl-0 = <&usart1_tx_pb6 &usart1_rx_pg10>;
	current-speed = <115200>;
	status = "okay";
};

&usart2 {
	pinctrl-0 = <&usart2_tx_pa2 &usart2_rx_pd6>;
	current-speed = <115200>;
	status = "okay";
};

&lpuart1 {
	pinctrl-0 = <&lpuart1_tx_pg7 &lpuart1_rx_pg8>;
	current-speed = <115200>;
	status = "okay";
};

&timers2 {
	status = "okay";

	pwm2: pwm {
		status = "okay";
		pinctrl-0 = <&tim2_ch1_pa0>;
	};
};

&i2c1 {
	pinctrl-0 = <&i2c1_scl_pb8 &i2c1_sda_pb7>;
	status = "okay";
	clock-frequency = <I2C_BITRATE_FAST>;
};

&spi1 {
	pinctrl-0 = <&spi1_sck_pa5 &spi1_miso_pb4 &spi1_mosi_pb5>;
	cs-gpios = <&gpioa 15 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
	status = "okay";
};

&rtc {
	status = "okay";
};

&sdmmc1 {
	pinctrl-0 = <&sdmmc1_d0_pc8 &sdmmc1_d1_pc9
		     &sdmmc1_d2_pc10 &sdmmc1_d3_pc11
		     &sdmmc1_ck_pc12 &sdmmc1_cmd_pd2>;
	status = "okay";
};

&adc1 {
	pinctrl-0 = < &adc1_in2_pc1>;
	status = "okay";
};