]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blob - arch/arm/boot/dts/efm32gg.dtsi
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
[mirror_ubuntu-bionic-kernel.git] / arch / arm / boot / dts / efm32gg.dtsi
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3 * Device tree for Energy Micro EFM32 Giant Gecko SoC.
4 *
5 * Documentation available from
6 * http://www.silabs.com/Support%20Documents/TechnicalDocs/EFM32GG-RM.pdf
7 */
8
9 #include "armv7-m.dtsi"
10 #include "dt-bindings/clock/efm32-cmu.h"
11
12 / {
13 #address-cells = <1>;
14 #size-cells = <1>;
15
16 aliases {
17 i2c0 = &i2c0;
18 i2c1 = &i2c1;
19 serial0 = &uart0;
20 serial1 = &uart1;
21 serial2 = &uart2;
22 serial3 = &uart3;
23 serial4 = &uart4;
24 spi0 = &spi0;
25 spi1 = &spi1;
26 spi2 = &spi2;
27 };
28
29 soc {
30 adc: adc@40002000 {
31 compatible = "energymicro,efm32-adc";
32 reg = <0x40002000 0x400>;
33 interrupts = <7>;
34 clocks = <&cmu clk_HFPERCLKADC0>;
35 status = "disabled";
36 };
37
38 gpio: gpio@40006000 {
39 compatible = "energymicro,efm32-gpio";
40 reg = <0x40006000 0x1000>;
41 interrupts = <1 11>;
42 gpio-controller;
43 #gpio-cells = <2>;
44 interrupt-controller;
45 #interrupt-cells = <1>;
46 clocks = <&cmu clk_HFPERCLKGPIO>;
47 status = "ok";
48 };
49
50 i2c0: i2c@4000a000 {
51 #address-cells = <1>;
52 #size-cells = <0>;
53 compatible = "energymicro,efm32-i2c";
54 reg = <0x4000a000 0x400>;
55 interrupts = <9>;
56 clocks = <&cmu clk_HFPERCLKI2C0>;
57 clock-frequency = <100000>;
58 status = "disabled";
59 };
60
61 i2c1: i2c@4000a400 {
62 #address-cells = <1>;
63 #size-cells = <0>;
64 compatible = "energymicro,efm32-i2c";
65 reg = <0x4000a400 0x400>;
66 interrupts = <10>;
67 clocks = <&cmu clk_HFPERCLKI2C1>;
68 clock-frequency = <100000>;
69 status = "disabled";
70 };
71
72 spi0: spi@4000c000 { /* USART0 */
73 #address-cells = <1>;
74 #size-cells = <0>;
75 compatible = "energymicro,efm32-spi";
76 reg = <0x4000c000 0x400>;
77 interrupts = <3 4>;
78 clocks = <&cmu clk_HFPERCLKUSART0>;
79 status = "disabled";
80 };
81
82 spi1: spi@4000c400 { /* USART1 */
83 #address-cells = <1>;
84 #size-cells = <0>;
85 compatible = "energymicro,efm32-spi";
86 reg = <0x4000c400 0x400>;
87 interrupts = <15 16>;
88 clocks = <&cmu clk_HFPERCLKUSART1>;
89 status = "disabled";
90 };
91
92 spi2: spi@4000c800 { /* USART2 */
93 #address-cells = <1>;
94 #size-cells = <0>;
95 compatible = "energymicro,efm32-spi";
96 reg = <0x4000c800 0x400>;
97 interrupts = <18 19>;
98 clocks = <&cmu clk_HFPERCLKUSART2>;
99 status = "disabled";
100 };
101
102 uart0: uart@4000c000 { /* USART0 */
103 compatible = "energymicro,efm32-uart";
104 reg = <0x4000c000 0x400>;
105 interrupts = <3 4>;
106 clocks = <&cmu clk_HFPERCLKUSART0>;
107 status = "disabled";
108 };
109
110 uart1: uart@4000c400 { /* USART1 */
111 compatible = "energymicro,efm32-uart";
112 reg = <0x4000c400 0x400>;
113 interrupts = <15 16>;
114 clocks = <&cmu clk_HFPERCLKUSART1>;
115 status = "disabled";
116 };
117
118 uart2: uart@4000c800 { /* USART2 */
119 compatible = "energymicro,efm32-uart";
120 reg = <0x4000c800 0x400>;
121 interrupts = <18 19>;
122 clocks = <&cmu clk_HFPERCLKUSART2>;
123 status = "disabled";
124 };
125
126 uart3: uart@4000e000 { /* UART0 */
127 compatible = "energymicro,efm32-uart";
128 reg = <0x4000e000 0x400>;
129 interrupts = <20 21>;
130 clocks = <&cmu clk_HFPERCLKUART0>;
131 status = "disabled";
132 };
133
134 uart4: uart@4000e400 { /* UART1 */
135 compatible = "energymicro,efm32-uart";
136 reg = <0x4000e400 0x400>;
137 interrupts = <22 23>;
138 clocks = <&cmu clk_HFPERCLKUART1>;
139 status = "disabled";
140 };
141
142 timer0: timer@40010000 {
143 compatible = "energymicro,efm32-timer";
144 reg = <0x40010000 0x400>;
145 interrupts = <2>;
146 clocks = <&cmu clk_HFPERCLKTIMER0>;
147 };
148
149 timer1: timer@40010400 {
150 compatible = "energymicro,efm32-timer";
151 reg = <0x40010400 0x400>;
152 interrupts = <12>;
153 clocks = <&cmu clk_HFPERCLKTIMER1>;
154 };
155
156 timer2: timer@40010800 {
157 compatible = "energymicro,efm32-timer";
158 reg = <0x40010800 0x400>;
159 interrupts = <13>;
160 clocks = <&cmu clk_HFPERCLKTIMER2>;
161 };
162
163 timer3: timer@40010c00 {
164 compatible = "energymicro,efm32-timer";
165 reg = <0x40010c00 0x400>;
166 interrupts = <14>;
167 clocks = <&cmu clk_HFPERCLKTIMER3>;
168 };
169
170 cmu: cmu@400c8000 {
171 compatible = "efm32gg,cmu";
172 reg = <0x400c8000 0x400>;
173 interrupts = <32>;
174 #clock-cells = <1>;
175 };
176 };
177 };