blob: 57bdad2c199478d63bcfd38bab80d81f4bb196d7 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: GPL-2.0-or-later
2
3/dts-v1/;
4
5#include <dt-bindings/clock/clps711x-clock.h>
6
7/ {
8 #address-cells = <1>;
9 #size-cells = <1>;
10 model = "Cirrus Logic EP7209";
11 compatible = "cirrus,ep7209";
12
13 chosen { };
14
15 aliases {
16 gpio0 = &porta;
17 gpio1 = &portb;
18 gpio3 = &portd;
19 gpio4 = &porte;
20 serial0 = &uart1;
21 serial1 = &uart2;
22 spi0 = &spi;
23 timer0 = &timer1;
24 timer1 = &timer2;
25 };
26
27 cpus {
28 #address-cells = <0>;
29 #size-cells = <0>;
30
31 cpu {
32 device_type = "cpu";
33 compatible = "arm,arm720t";
34 };
35 };
36
37 soc {
38 #address-cells = <1>;
39 #size-cells = <1>;
40 compatible = "simple-bus";
41 interrupt-parent = <&intc>;
42 ranges;
43
44 clks: clks@80000000 {
45 #clock-cells = <1>;
46 compatible = "cirrus,ep7209-clk";
47 reg = <0x80000000 0xc000>;
48 startup-frequency = <73728000>;
49 };
50
51 intc: intc@80000000 {
52 compatible = "cirrus,ep7209-intc";
53 reg = <0x80000000 0x4000>;
54 interrupt-controller;
55 #interrupt-cells = <1>;
56 };
57
58 porta: gpio@80000000 {
59 compatible = "cirrus,ep7209-gpio";
60 reg = <0x80000000 0x1 0x80000040 0x1>;
61 gpio-controller;
62 #gpio-cells = <2>;
63 };
64
65 portb: gpio@80000001 {
66 compatible = "cirrus,ep7209-gpio";
67 reg = <0x80000001 0x1 0x80000041 0x1>;
68 gpio-controller;
69 #gpio-cells = <2>;
70 };
71
72 portd: gpio@80000003 {
73 compatible = "cirrus,ep7209-gpio";
74 reg = <0x80000003 0x1 0x80000043 0x1>;
75 gpio-controller;
76 #gpio-cells = <2>;
77 };
78
79 porte: gpio@80000083 {
80 compatible = "cirrus,ep7209-gpio";
81 reg = <0x80000083 0x1 0x800000c3 0x1>;
82 gpio-controller;
83 #gpio-cells = <2>;
84 };
85
86 syscon1: syscon@80000100 {
87 compatible = "cirrus,ep7209-syscon1", "syscon";
88 reg = <0x80000100 0x80>;
89 };
90
91 bus: bus@80000180 {
92 #address-cells = <2>;
93 #size-cells = <1>;
94 compatible = "cirrus,ep7209-bus", "simple-bus";
95 clocks = <&clks CLPS711X_CLK_BUS>;
96 reg = <0x80000180 0x80>;
97 ranges = <
98 0 0 0x00000000 0x10000000
99 1 0 0x10000000 0x10000000
100 2 0 0x20000000 0x10000000
101 3 0 0x30000000 0x10000000
102 4 0 0x40000000 0x10000000
103 5 0 0x50000000 0x10000000
104 6 0 0x60000000 0x0000c000
105 7 0 0x70000000 0x00000080
106 >;
107 };
108
109 fb: fb@800002c0 {
110 compatible = "cirrus,ep7209-fb";
111 reg = <0x800002c0 0xd44>, <0x60000000 0xc000>;
112 clocks = <&clks CLPS711X_CLK_BUS>;
113 syscon = <&syscon1>;
114 status = "disabled";
115 };
116
117 timer1: timer@80000300 {
118 compatible = "cirrus,ep7209-timer";
119 reg = <0x80000300 0x4>;
120 clocks = <&clks CLPS711X_CLK_TIMER1>;
121 interrupts = <8>;
122 };
123
124 timer2: timer@80000340 {
125 compatible = "cirrus,ep7209-timer";
126 reg = <0x80000340 0x4>;
127 clocks = <&clks CLPS711X_CLK_TIMER2>;
128 interrupts = <9>;
129 };
130
131 pwm: pwm@80000400 {
132 compatible = "cirrus,ep7209-pwm";
133 reg = <0x80000400 0x4>;
134 clocks = <&clks CLPS711X_CLK_PWM>;
135 #pwm-cells = <1>;
136 };
137
138 uart1: serial@80000480 {
139 compatible = "cirrus,ep7209-uart";
140 reg = <0x80000480 0x80>;
141 interrupts = <12 13>;
142 clocks = <&clks CLPS711X_CLK_UART>;
143 syscon = <&syscon1>;
144 };
145
146 spi: spi@80000500 {
147 #address-cells = <1>;
148 #size-cells = <0>;
149 compatible = "cirrus,ep7209-spi";
150 reg = <0x80000500 0x4>;
151 interrupts = <15>;
152 clocks = <&clks CLPS711X_CLK_SPI>;
153 syscon = <&syscon3>;
154 status = "disabled";
155 };
156
157 syscon2: syscon@80001100 {
158 compatible = "cirrus,ep7209-syscon2", "syscon";
159 reg = <0x80001100 0x80>;
160 };
161
162 uart2: serial@80001480 {
163 compatible = "cirrus,ep7209-uart";
164 reg = <0x80001480 0x80>;
165 interrupts = <28 29>;
166 clocks = <&clks CLPS711X_CLK_UART>;
167 syscon = <&syscon2>;
168 };
169
170 dai: dai@80002000 {
171 #sound-dai-cells = <0>;
172 compatible = "cirrus,ep7209-dai";
173 reg = <0x80002000 0x604>;
174 clocks = <&clks CLPS711X_CLK_PLL>;
175 clock-names = "pll";
176 interrupts = <32>;
177 syscon = <&syscon3>;
178 status = "disabled";
179 };
180
181 syscon3: syscon@80002200 {
182 compatible = "cirrus,ep7209-syscon3", "syscon";
183 reg = <0x80002200 0x40>;
184 };
185 };
186
187 keypad: keypad {
188 compatible = "cirrus,ep7209-keypad";
189 interrupt-parent = <&intc>;
190 interrupts = <16>;
191 syscon = <&syscon1>;
192 status = "disabled";
193 };
194
195 mctrl: mctrl {
196 compatible = "cirrus,ep7209-mctrl-gpio";
197 gpio,syscon-dev = <&syscon1 0 0>;
198 gpio-controller;
199 #gpio-cells = <2>;
200 };
201};