• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 *  linux/arch/arm/boot/nspire.dtsi
4 *
5 *  Copyright (C) 2013 Daniel Tang <tangrs@tangrs.id.au>
6 */
7
8/ {
9	#address-cells = <1>;
10	#size-cells = <1>;
11	interrupt-parent = <&intc>;
12
13	cpus {
14		cpu@0 {
15			compatible = "arm,arm926ej-s";
16		};
17	};
18
19	bootrom: bootrom@0 {
20		reg = <0x00000000 0x80000>;
21	};
22
23	sram: sram@A4000000 {
24		device = "memory";
25		reg = <0xA4000000 0x20000>;
26	};
27
28	timer_clk: timer_clk {
29		#clock-cells = <0>;
30		compatible = "fixed-clock";
31		clock-frequency = <32768>;
32	};
33
34	base_clk: base_clk {
35		#clock-cells = <0>;
36		reg = <0x900B0024 0x4>;
37	};
38
39	ahb_clk: ahb_clk {
40		#clock-cells = <0>;
41		reg = <0x900B0024 0x4>;
42		clocks = <&base_clk>;
43	};
44
45	apb_pclk: apb_pclk {
46		#clock-cells = <0>;
47		compatible = "fixed-factor-clock";
48		clock-div = <2>;
49		clock-mult = <1>;
50		clocks = <&ahb_clk>;
51	};
52
53	usb_phy: usb_phy {
54		compatible = "usb-nop-xceiv";
55		#phy-cells = <0>;
56	};
57
58	vbus_reg: vbus_reg {
59		compatible = "regulator-fixed";
60
61		regulator-name = "USB VBUS output";
62		regulator-type = "voltage";
63
64		regulator-min-microvolt = <5000000>;
65		regulator-max-microvolt = <5000000>;
66	};
67
68	ahb {
69		compatible = "simple-bus";
70		#address-cells = <1>;
71		#size-cells = <1>;
72		ranges;
73
74		spi: spi@A9000000 {
75			reg = <0xA9000000 0x1000>;
76		};
77
78		usb0: usb@B0000000 {
79			compatible = "lsi,zevio-usb";
80			reg = <0xB0000000 0x1000>;
81			interrupts = <8>;
82
83			usb-phy = <&usb_phy>;
84			vbus-supply = <&vbus_reg>;
85		};
86
87		usb1: usb@B4000000 {
88			reg = <0xB4000000 0x1000>;
89			interrupts = <9>;
90			status = "disabled";
91		};
92
93		lcd: lcd@C0000000 {
94			compatible = "arm,pl111", "arm,primecell";
95			reg = <0xC0000000 0x1000>;
96			interrupts = <21>;
97
98			/*
99			 * We assume the same clock is fed to APB and CLCDCLK.
100			 * There is some code to scale the clock down by a factor
101			 * 48 for the display so likely the frequency to the
102			 * display is 1MHz and the CLCDCLK is 48 MHz.
103			 */
104			clocks = <&apb_pclk>, <&apb_pclk>;
105			clock-names = "clcdclk", "apb_pclk";
106		};
107
108		adc: adc@C4000000 {
109			reg = <0xC4000000 0x1000>;
110			interrupts = <11>;
111		};
112
113		tdes: crypto@C8010000 {
114			reg = <0xC8010000 0x1000>;
115		};
116
117		sha256: crypto@CC000000 {
118			reg = <0xCC000000 0x1000>;
119		};
120
121		apb@90000000 {
122			compatible = "simple-bus";
123			#address-cells = <1>;
124			#size-cells = <1>;
125			clock-ranges;
126			ranges;
127
128			gpio: gpio@90000000 {
129				compatible = "lsi,zevio-gpio";
130				reg = <0x90000000 0x1000>;
131				interrupts = <7>;
132				gpio-controller;
133				#gpio-cells = <2>;
134			};
135
136			fast_timer: timer@90010000 {
137				reg = <0x90010000 0x1000>;
138				interrupts = <17>;
139			};
140
141			uart: serial@90020000 {
142				reg = <0x90020000 0x1000>;
143				interrupts = <1>;
144			};
145
146			timer0: timer@900C0000 {
147				reg = <0x900C0000 0x1000>;
148
149				clocks = <&timer_clk>;
150			};
151
152			timer1: timer@900D0000 {
153				reg = <0x900D0000 0x1000>;
154				interrupts = <19>;
155
156				clocks = <&timer_clk>;
157			};
158
159			watchdog: watchdog@90060000 {
160				compatible = "arm,amba-primecell";
161				reg = <0x90060000 0x1000>;
162				interrupts = <3>;
163			};
164
165			rtc: rtc@90090000 {
166				reg = <0x90090000 0x1000>;
167				interrupts = <4>;
168			};
169
170			misc: misc@900A0000 {
171				reg = <0x900A0000 0x1000>;
172			};
173
174			pwr: pwr@900B0000 {
175				reg = <0x900B0000 0x1000>;
176				interrupts = <15>;
177			};
178
179			keypad: input@900E0000 {
180				compatible = "ti,nspire-keypad";
181				reg = <0x900E0000 0x1000>;
182				interrupts = <16>;
183
184				scan-interval = <1000>;
185				row-delay = <200>;
186
187				clocks = <&apb_pclk>;
188			};
189
190			contrast: contrast@900F0000 {
191				reg = <0x900F0000 0x1000>;
192			};
193
194			led: led@90110000 {
195				reg = <0x90110000 0x1000>;
196			};
197		};
198	};
199};
200