1/*
2 * Copyright (c) 2024 Arrow Electronics.
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
7/dts-v1/;
8#include <st/h5/stm32h503Xb.dtsi>
9#include <st/h5/stm32h503rbtx-pinctrl.dtsi>
10#include "arduino_r3_connector.dtsi"
11#include "st_morpho_connector.dtsi"
12#include <zephyr/dt-bindings/input/input-event-codes.h>
13
14
15/ {
16	model = "STMicroelectronics STM32H503RB-NUCLEO board";
17	compatible = "st,stm32h503rb-nucleo";
18
19	#address-cells = <1>;
20	#size-cells = <1>;
21
22	chosen {
23		zephyr,console = &usart3;
24		zephyr,shell-uart = &usart3;
25		zephyr,sram = &sram0;
26		zephyr,flash = &flash0;
27	};
28
29	leds: leds {
30		compatible = "gpio-leds";
31		green_led_2: led_2 {
32			gpios = <&gpioa 5 GPIO_ACTIVE_HIGH>;
33			label = "User LD2";
34		};
35	};
36
37	gpio_keys {
38		compatible = "gpio-keys";
39		user_button: button {
40			label = "User";
41			gpios = <&gpioc 13 GPIO_ACTIVE_HIGH>;
42			zephyr,code = <INPUT_KEY_0>;
43		};
44	};
45
46	aliases {
47		led0 = &green_led_2;
48		sw0 = &user_button;
49		watchdog0 = &iwdg;
50	};
51};
52
53&clk_csi {
54	status = "okay";
55};
56
57&clk_hsi {
58	status = "okay";
59};
60
61&clk_hsi48 {
62	status = "okay";
63};
64
65&clk_hse {
66	clock-frequency = <DT_FREQ_M(24)>;
67	status = "okay";
68};
69
70&pll {
71	div-m = <2>;
72	mul-n = <40>;
73	div-p = <2>;
74	div-q = <2>;
75	div-r = <2>;
76	clocks = <&clk_hse>;
77	status = "okay";
78};
79
80&rcc {
81	clocks = <&pll>;
82	clock-frequency = <DT_FREQ_M(240)>;
83	ahb-prescaler = <1>;
84	apb1-prescaler = <1>;
85	apb2-prescaler = <1>;
86	apb3-prescaler = <1>;
87};
88
89&usart1 {
90	pinctrl-0 = <&usart1_tx_pb14 &usart1_rx_pb15>;
91	pinctrl-names = "default";
92	current-speed = <115200>;
93	status = "okay";
94};
95
96&usart3 {
97	pinctrl-0 = <&usart3_tx_pa4 &usart3_rx_pa3>;
98	pinctrl-names = "default";
99	current-speed = <115200>;
100	status = "okay";
101};
102
103&rng {
104	status = "okay";
105};
106
107&iwdg {
108	status = "okay";
109};
110
111&i2c1 {
112	pinctrl-0 = <&i2c1_scl_pb6 &i2c1_sda_pb7>;
113	pinctrl-names = "default";
114	clock-frequency = <I2C_BITRATE_FAST>;
115	status = "okay";
116};
117