1// SPDX-License-Identifier: GPL-2.0-or-later
2/*
3 * Copyright 2012 ST-Ericsson AB
4 */
5
6#include <dt-bindings/interrupt-controller/irq.h>
7#include <dt-bindings/leds/common.h>
8#include "ste-href-family-pinctrl.dtsi"
9
10/ {
11	memory {
12		device_type = "memory";
13		reg = <0x00000000 0x20000000>;
14	};
15
16	battery: battery {
17		compatible = "simple-battery";
18		battery-type = "lithium-ion-polymer";
19		thermistor-on-batctrl;
20	};
21
22	soc {
23		uart@80120000 {
24			pinctrl-names = "default", "sleep";
25			pinctrl-0 = <&u0_a_1_default>;
26			pinctrl-1 = <&u0_a_1_sleep>;
27			status = "okay";
28		};
29
30		/* This UART is unused and thus left disabled */
31		uart@80121000 {
32			pinctrl-names = "default", "sleep";
33			pinctrl-0 = <&u1rxtx_a_1_default>;
34			pinctrl-1 = <&u1rxtx_a_1_sleep>;
35		};
36
37		uart@80007000 {
38			pinctrl-names = "default", "sleep";
39			pinctrl-0 = <&u2rxtx_c_1_default>;
40			pinctrl-1 = <&u2rxtx_c_1_sleep>;
41			status = "okay";
42		};
43
44		i2c@80004000 {
45			pinctrl-names = "default","sleep";
46			pinctrl-0 = <&i2c0_a_1_default>;
47			pinctrl-1 = <&i2c0_a_1_sleep>;
48			status = "okay";
49		};
50
51		i2c@80122000 {
52			pinctrl-names = "default","sleep";
53			pinctrl-0 = <&i2c1_b_2_default>;
54			pinctrl-1 = <&i2c1_b_2_sleep>;
55			status = "okay";
56		};
57
58		i2c@80128000 {
59			pinctrl-names = "default","sleep";
60			pinctrl-0 = <&i2c2_b_2_default>;
61			pinctrl-1 = <&i2c2_b_2_sleep>;
62			status = "okay";
63			lp5521@33 {
64				compatible = "national,lp5521";
65				reg = <0x33>;
66				label = "lp5521_pri";
67				clock-mode = /bits/ 8 <2>;
68				#address-cells = <1>;
69				#size-cells = <0>;
70				chan@0 {
71					reg = <0>;
72					led-cur = /bits/ 8 <0x2f>;
73					max-cur = /bits/ 8 <0x5f>;
74					color = <LED_COLOR_ID_BLUE>;
75					linux,default-trigger = "heartbeat";
76				};
77				chan@1 {
78					reg = <1>;
79					led-cur = /bits/ 8 <0x2f>;
80					max-cur = /bits/ 8 <0x5f>;
81					color = <LED_COLOR_ID_BLUE>;
82				};
83				chan@2 {
84					reg = <2>;
85					led-cur = /bits/ 8 <0x2f>;
86					max-cur = /bits/ 8 <0x5f>;
87					color = <LED_COLOR_ID_BLUE>;
88				};
89			};
90			lp5521@34 {
91				compatible = "national,lp5521";
92				reg = <0x34>;
93				label = "lp5521_sec";
94				clock-mode = /bits/ 8 <2>;
95				#address-cells = <1>;
96				#size-cells = <0>;
97				chan@0 {
98					reg = <0>;
99					led-cur = /bits/ 8 <0x2f>;
100					max-cur = /bits/ 8 <0x5f>;
101					color = <LED_COLOR_ID_BLUE>;
102				};
103				chan@1 {
104					reg = <1>;
105					led-cur = /bits/ 8 <0x2f>;
106					max-cur = /bits/ 8 <0x5f>;
107					color = <LED_COLOR_ID_BLUE>;
108				};
109				chan@2 {
110					reg = <2>;
111					led-cur = /bits/ 8 <0x2f>;
112					max-cur = /bits/ 8 <0x5f>;
113					color = <LED_COLOR_ID_BLUE>;
114				};
115			};
116			bh1780@29 {
117				compatible = "rohm,bh1780gli";
118				reg = <0x29>;
119			};
120		};
121
122		i2c@80110000 {
123			pinctrl-names = "default","sleep";
124			pinctrl-0 = <&i2c3_c_2_default>;
125			pinctrl-1 = <&i2c3_c_2_sleep>;
126			status = "okay";
127		};
128
129		// External Micro SD slot
130		mmc@80126000 {
131			arm,primecell-periphid = <0x10480180>;
132			max-frequency = <100000000>;
133			bus-width = <4>;
134			cap-sd-highspeed;
135			cap-mmc-highspeed;
136			sd-uhs-sdr12;
137			sd-uhs-sdr25;
138			full-pwr-cycle;
139			st,sig-dir-dat0;
140			st,sig-dir-dat2;
141			st,sig-dir-cmd;
142			st,sig-pin-fbclk;
143			vmmc-supply = <&ab8500_ldo_aux3_reg>;
144			vqmmc-supply = <&vmmci>;
145			pinctrl-names = "default", "sleep";
146			pinctrl-0 = <&mc0_a_1_default &sdi0_default_mode>;
147			pinctrl-1 = <&mc0_a_1_sleep>;
148
149			status = "okay";
150		};
151
152		// WLAN SDIO channel
153		mmc@80118000 {
154			arm,primecell-periphid = <0x10480180>;
155			max-frequency = <100000000>;
156			bus-width = <4>;
157			non-removable;
158			pinctrl-names = "default", "sleep";
159			pinctrl-0 = <&mc1_a_1_default>;
160			pinctrl-1 = <&mc1_a_1_sleep>;
161
162			status = "okay";
163		};
164
165		// PoP:ed eMMC
166		mmc@80005000 {
167			arm,primecell-periphid = <0x10480180>;
168			max-frequency = <100000000>;
169			bus-width = <8>;
170			cap-mmc-highspeed;
171			non-removable;
172			no-sdio;
173			no-sd;
174			vmmc-supply = <&db8500_vsmps2_reg>;
175			pinctrl-names = "default", "sleep";
176			pinctrl-0 = <&mc2_a_1_default>;
177			pinctrl-1 = <&mc2_a_1_sleep>;
178
179			status = "okay";
180		};
181
182		// On-board eMMC
183		mmc@80114000 {
184			arm,primecell-periphid = <0x10480180>;
185		        max-frequency = <100000000>;
186			bus-width = <8>;
187			cap-mmc-highspeed;
188			non-removable;
189			no-sdio;
190			no-sd;
191			vmmc-supply = <&ab8500_ldo_aux2_reg>;
192			pinctrl-names = "default", "sleep";
193			pinctrl-0 = <&mc4_a_1_default>;
194			pinctrl-1 = <&mc4_a_1_sleep>;
195
196			status = "okay";
197		};
198
199		msp0: msp@80123000 {
200			pinctrl-names = "default";
201			pinctrl-0 = <&msp0txrxtfstck_a_1_default>;
202			status = "okay";
203		};
204
205		msp1: msp@80124000 {
206			pinctrl-names = "default";
207			pinctrl-0 = <&msp1txrx_a_1_default>;
208			status = "okay";
209		};
210
211		msp2: msp@80117000 {
212			pinctrl-names = "default";
213			pinctrl-0 = <&msp2_a_1_default>;
214		};
215
216		msp3: msp@80125000 {
217			status = "okay";
218		};
219
220		prcmu@80157000 {
221			ab8500 {
222				ab8500-gpiocontroller {
223				};
224
225				ab8500_usb {
226					pinctrl-names = "default", "sleep";
227					pinctrl-0 = <&usb_a_1_default>;
228					pinctrl-1 = <&usb_a_1_sleep>;
229				};
230
231				ab8500-regulators {
232					ab8500_ldo_aux1_reg: ab8500_ldo_aux1 {
233						regulator-name = "V-DISPLAY";
234					};
235
236					ab8500_ldo_aux2_reg: ab8500_ldo_aux2 {
237						regulator-name = "V-eMMC1";
238					};
239
240					ab8500_ldo_aux3_reg: ab8500_ldo_aux3 {
241						regulator-name = "V-MMC-SD";
242					};
243
244					ab8500_ldo_intcore_reg: ab8500_ldo_intcore {
245						regulator-name = "V-INTCORE";
246					};
247
248					ab8500_ldo_tvout_reg: ab8500_ldo_tvout {
249						regulator-name = "V-TVOUT";
250					};
251
252					ab8500_ldo_audio_reg: ab8500_ldo_audio {
253						regulator-name = "V-AUD";
254					};
255
256					ab8500_ldo_anamic1_reg: ab8500_ldo_anamic1 {
257						regulator-name = "V-AMIC1";
258					};
259
260					ab8500_ldo_anamic2_reg: ab8500_ldo_anamic2 {
261						regulator-name = "V-AMIC2";
262					};
263
264					ab8500_ldo_dmic_reg: ab8500_ldo_dmic {
265						regulator-name = "V-DMIC";
266					};
267
268					ab8500_ldo_ana_reg: ab8500_ldo_ana {
269						regulator-name = "V-CSI/DSI";
270					};
271				};
272			};
273		};
274
275		pinctrl {
276			sdi0 {
277				sdi0_default_mode: sdi0_default {
278					/* Some boards set additional settings here */
279				};
280			};
281		};
282
283		mcde@a0350000 {
284			pinctrl-names = "default", "sleep";
285			pinctrl-0 = <&lcd_default_mode>;
286			pinctrl-1 = <&lcd_sleep_mode>;
287		};
288	};
289};
290