1/*
2 * Copyright (c) 2019, embedjournal.com
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
7/dts-v1/;
8#include <st/f1/stm32f103X8.dtsi>
9#include <st/f1/stm32f103r(8-b)tx-pinctrl.dtsi>
10
11/ {
12	model = "STM32 Minimum Development Board";
13	compatible = "st,stm32f103c8";
14
15	chosen {
16		zephyr,console = &usart1;
17		zephyr,shell-uart = &usart1;
18		zephyr,osdp-uart = &usart2;
19		zephyr,sram = &sram0;
20		zephyr,flash = &flash0;
21	};
22
23	leds {
24		compatible = "gpio-leds";
25		led: led {
26			gpios = <&gpiob 12 GPIO_ACTIVE_HIGH>;
27			label = "LD";
28		};
29	};
30
31	aliases {
32		led0 = &led;
33	};
34};
35
36&clk_hse {
37	clock-frequency = <DT_FREQ_M(8)>;
38	status = "okay";
39};
40
41&pll {
42	mul = <9>;
43	clocks = <&clk_hse>;
44	status = "okay";
45};
46
47&rcc {
48	clocks = <&pll>;
49	clock-frequency = <DT_FREQ_M(72)>;
50	ahb-prescaler = <1>;
51	apb1-prescaler = <2>;
52	apb2-prescaler = <1>;
53	/* usbpre not set: USB clock = 72 / 1.5: 48MHz */
54};
55
56&usart1 {
57	pinctrl-0 = <&usart1_tx_pa9 &usart1_rx_pa10>;
58	current-speed = <115200>;
59	pinctrl-names = "default";
60	status = "okay";
61};
62
63&usart2 {
64	pinctrl-0 = <&usart2_tx_pa2 &usart2_rx_pa3>;
65	current-speed = <115200>;
66	pinctrl-names = "default";
67	status = "okay";
68};
69
70&usart3 {
71	pinctrl-0 = <&usart3_tx_pb10 &usart3_rx_pb11>;
72	current-speed = <115200>;
73	pinctrl-names = "default";
74	status = "okay";
75};
76
77&i2c1 {
78	pinctrl-0 = < &i2c1_scl_pb6 &i2c1_sda_pb7 >;
79	status = "okay";
80	pinctrl-names = "default";
81	clock-frequency = <I2C_BITRATE_FAST>;
82};
83
84&i2c2 {
85	pinctrl-0 = < &i2c2_scl_pb10 &i2c2_sda_pb11 >;
86	pinctrl-names = "default";
87	status = "okay";
88	clock-frequency = <I2C_BITRATE_FAST>;
89};
90
91&spi1 {
92	pinctrl-0 = <&spi1_nss_master_pa4 &spi1_sck_master_pa5
93		     &spi1_miso_master_pa6 &spi1_mosi_master_pa7>;
94	pinctrl-names = "default";
95	status = "okay";
96};
97
98&spi2 {
99	pinctrl-0 = <&spi2_nss_master_pb12 &spi2_sck_master_pb13
100		     &spi2_miso_master_pb14 &spi2_mosi_master_pb15>;
101	pinctrl-names = "default";
102	status = "okay";
103};
104
105&timers1 {
106	status = "okay";
107
108	pwm1: pwm {
109		status = "okay";
110		pinctrl-0 = <&tim1_ch1_pwm_out_pa8>;
111		pinctrl-names = "default";
112	};
113};
114
115zephyr_udc0: &usb {
116	pinctrl-0 = <&usb_dm_pa11 &usb_dp_pa12>;
117	pinctrl-names = "default";
118	status = "okay";
119};
120
121&adc1 {
122	pinctrl-0 = <&adc1_in0_pa0>;
123	pinctrl-names = "default";
124	status = "okay";
125};
126