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