1/* 2 * Copyright (c) 2017 Arthur Sfez 3 * 4 * Based on stm32l496g_disco: 5 * 6 * Copyright (c) 2017 Linaro Limited 7 * 8 * SPDX-License-Identifier: Apache-2.0 9 */ 10 11/dts-v1/; 12#include <st/l4/stm32l476Xg.dtsi> 13#include <st/l4/stm32l476v(c-e-g)tx-pinctrl.dtsi> 14#include <zephyr/dt-bindings/input/input-event-codes.h> 15 16/ { 17 model = "STMicroelectronics STM32L476G-DISCO board"; 18 compatible = "st,stm32l476g-disco"; 19 20 chosen { 21 zephyr,console = &usart2; 22 zephyr,shell-uart = &usart2; 23 zephyr,sram = &sram0; 24 zephyr,flash = &flash0; 25 }; 26 27 leds { 28 compatible = "gpio-leds"; 29 green_led_4: led_4 { 30 gpios = <&gpiob 2 GPIO_ACTIVE_HIGH>; 31 label = "User LD4"; 32 }; 33 green_led_5: led_5 { 34 gpios = <&gpioe 8 GPIO_ACTIVE_HIGH>; 35 label = "User LD5"; 36 }; 37 }; 38 39 gpio_keys { 40 compatible = "gpio-keys"; 41 joy_center: joystick_center { 42 label = "joystick center"; 43 gpios = <&gpioa 0 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>; 44 zephyr,code = <INPUT_KEY_ENTER>; 45 }; 46 joy_down: joystick_down { 47 label = "joystick down"; 48 gpios = <&gpioa 5 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>; 49 zephyr,code = <INPUT_KEY_DOWN>; 50 }; 51 joy_up: joystick_up { 52 label = "joystick up"; 53 gpios = <&gpioa 3 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>; 54 zephyr,code = <INPUT_KEY_UP>; 55 }; 56 joy_left: joystick_left { 57 label = "joystick left"; 58 gpios = <&gpioa 1 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>; 59 zephyr,code = <INPUT_KEY_LEFT>; 60 }; 61 joy_right: joystick_right { 62 label = "joystick right"; 63 gpios = <&gpioa 2 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>; 64 zephyr,code = <INPUT_KEY_RIGHT>; 65 }; 66 }; 67 68 aliases { 69 led0 = &green_led_4; 70 sw0 = &joy_center; 71 }; 72}; 73 74&clk_lsi { 75 status = "okay"; 76}; 77 78&clk_hsi { 79 status = "okay"; 80}; 81 82&pll { 83 div-m = <1>; 84 mul-n = <20>; 85 div-p = <7>; 86 div-q = <2>; 87 div-r = <4>; 88 clocks = <&clk_hsi>; 89 status = "okay"; 90}; 91 92&rcc { 93 clocks = <&pll>; 94 clock-frequency = <DT_FREQ_M(80)>; 95 ahb-prescaler = <1>; 96 apb1-prescaler = <1>; 97 apb2-prescaler = <1>; 98}; 99 100&usart2 { 101 pinctrl-0 = <&usart2_tx_pd5 &usart2_rx_pd6>; 102 pinctrl-names = "default"; 103 current-speed = <115200>; 104 status = "okay"; 105}; 106 107&rtc { 108 clocks = <&rcc STM32_CLOCK_BUS_APB1 0x10000000>, 109 <&rcc STM32_SRC_LSI RTC_SEL(2)>; 110 status = "okay"; 111 112 backup_regs { 113 status = "okay"; 114 }; 115}; 116