Linux Audio

Check our new training course

Loading...
Note: File does not exist in v6.8.
  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};