blob: d56fef7250dbd8a4505f13d859807066c92fb434 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * Copyright (C) 2013 Daniel Tang <tangrs@tangrs.id.au>
4 */
5
6/ {
7 #address-cells = <1>;
8 #size-cells = <1>;
9 interrupt-parent = <&intc>;
10
11 cpus {
12 #address-cells = <1>;
13 #size-cells = <0>;
14
15 cpu@0 {
16 compatible = "arm,arm926ej-s";
17 device_type = "cpu";
18 reg = <0>;
19 };
20 };
21
22 bootrom: bootrom@0 {
23 reg = <0x00000000 0x80000>;
24 };
25
26 sram: sram@a4000000 {
27 compatible = "mmio-sram";
28 reg = <0xa4000000 0x20000>; /* 128k */
29 #address-cells = <1>;
30 #size-cells = <1>;
31 ranges = <0 0xa4000000 0x20000>;
32
33 sram@0 {
34 reg = <0x0 0x20000>;
35 };
36 };
37
38 timer_clk: timer_clk {
39 #clock-cells = <0>;
40 compatible = "fixed-clock";
41 clock-frequency = <32768>;
42 };
43
44 base_clk: base_clk {
45 #clock-cells = <0>;
46 reg = <0x900b0024 0x4>;
47 };
48
49 ahb_clk: ahb_clk {
50 #clock-cells = <0>;
51 reg = <0x900b0024 0x4>;
52 clocks = <&base_clk>;
53 };
54
55 apb_pclk: apb_pclk {
56 #clock-cells = <0>;
57 compatible = "fixed-factor-clock";
58 clock-div = <2>;
59 clock-mult = <1>;
60 clocks = <&ahb_clk>;
61 };
62
63 usb_phy: usb_phy {
64 compatible = "usb-nop-xceiv";
65 #phy-cells = <0>;
66 };
67
68 vbus_reg: vbus_reg {
69 compatible = "regulator-fixed";
70
71 regulator-name = "USB VBUS output";
72
73 regulator-min-microvolt = <5000000>;
74 regulator-max-microvolt = <5000000>;
75 };
76
77 ahb {
78 compatible = "simple-bus";
79 #address-cells = <1>;
80 #size-cells = <1>;
81 ranges;
82
83 spi: spi@a9000000 {
84 reg = <0xa9000000 0x1000>;
85 };
86
87 usb0: usb@b0000000 {
88 compatible = "lsi,zevio-usb";
89 reg = <0xb0000000 0x1000>;
90 interrupts = <8>;
91
92 usb-phy = <&usb_phy>;
93 vbus-supply = <&vbus_reg>;
94 };
95
96 usb1: usb@b4000000 {
97 reg = <0xb4000000 0x1000>;
98 interrupts = <9>;
99 status = "disabled";
100 };
101
102 lcd: lcd@c0000000 {
103 compatible = "arm,pl111", "arm,primecell";
104 reg = <0xc0000000 0x1000>;
105 interrupts = <21>;
106
107 /*
108 * We assume the same clock is fed to APB and CLCDCLK.
109 * There is some code to scale the clock down by a factor
110 * 48 for the display so likely the frequency to the
111 * display is 1MHz and the CLCDCLK is 48 MHz.
112 */
113 clocks = <&apb_pclk>, <&apb_pclk>;
114 clock-names = "clcdclk", "apb_pclk";
115 };
116
117 adc: adc@c4000000 {
118 reg = <0xc4000000 0x1000>;
119 interrupts = <11>;
120 };
121
122 tdes: crypto@c8010000 {
123 reg = <0xc8010000 0x1000>;
124 };
125
126 sha256: crypto@cc000000 {
127 reg = <0xcc000000 0x1000>;
128 };
129
130 apb@90000000 {
131 compatible = "simple-bus";
132 #address-cells = <1>;
133 #size-cells = <1>;
134 clock-ranges;
135 ranges;
136
137 gpio: gpio@90000000 {
138 compatible = "lsi,zevio-gpio";
139 reg = <0x90000000 0x1000>;
140 interrupts = <7>;
141 gpio-controller;
142 #gpio-cells = <2>;
143 };
144
145 fast_timer: timer@90010000 {
146 reg = <0x90010000 0x1000>;
147 interrupts = <17>;
148 };
149
150 uart: serial@90020000 {
151 reg = <0x90020000 0x1000>;
152 interrupts = <1>;
153 };
154
155 timer0: timer@900c0000 {
156 reg = <0x900c0000 0x1000>;
157 clocks = <&timer_clk>, <&timer_clk>,
158 <&timer_clk>;
159 clock-names = "timer0clk", "timer1clk",
160 "apb_pclk";
161 };
162
163 timer1: timer@900d0000 {
164 reg = <0x900d0000 0x1000>;
165 interrupts = <19>;
166 clocks = <&timer_clk>, <&timer_clk>,
167 <&timer_clk>;
168 clock-names = "timer0clk", "timer1clk",
169 "apb_pclk";
170 };
171
172 watchdog: watchdog@90060000 {
173 compatible = "arm,primecell";
174 reg = <0x90060000 0x1000>;
175 interrupts = <3>;
176 };
177
178 rtc: rtc@90090000 {
179 reg = <0x90090000 0x1000>;
180 interrupts = <4>;
181 };
182
183 misc: misc@900a0000 {
184 compatible = "ti,nspire-misc", "syscon", "simple-mfd";
185 reg = <0x900a0000 0x1000>;
186
187 reboot {
188 compatible = "syscon-reboot";
189 offset = <0x08>;
190 value = <0x02>;
191 };
192 };
193
194 pwr: pwr@900b0000 {
195 reg = <0x900b0000 0x1000>;
196 interrupts = <15>;
197 };
198
199 keypad: input@900e0000 {
200 compatible = "ti,nspire-keypad";
201 reg = <0x900e0000 0x1000>;
202 interrupts = <16>;
203
204 scan-interval = <1000>;
205 row-delay = <200>;
206
207 clocks = <&apb_pclk>;
208 };
209
210 contrast: contrast@900f0000 {
211 reg = <0x900f0000 0x1000>;
212 };
213
214 led: led@90110000 {
215 reg = <0x90110000 0x1000>;
216 };
217 };
218 };
219};