Linux Audio

Check our new training course

Buildroot integration, development and maintenance

Need a Buildroot system for your embedded project?
Loading...
Note: File does not exist in v6.8.
  1// SPDX-License-Identifier: BSD-3-Clause
  2/*
  3 * Copyright (c) 2022, Matti Lehtimäki <matti.lehtimaki@gmail.com>
  4 */
  5
  6/dts-v1/;
  7
  8#include <dt-bindings/input/input.h>
  9#include "qcom-msm8226.dtsi"
 10#include "qcom-pm8226.dtsi"
 11
 12/ {
 13	model = "Samsung Galaxy Tab 4 10.1";
 14	compatible = "samsung,matisse-wifi", "qcom,apq8026";
 15	chassis-type = "tablet";
 16
 17	aliases {
 18		mmc0 = &sdhc_1; /* SDC1 eMMC slot */
 19		mmc1 = &sdhc_2; /* SDC2 SD card slot */
 20		display0 = &framebuffer0;
 21	};
 22
 23	chosen {
 24		#address-cells = <1>;
 25		#size-cells = <1>;
 26		ranges;
 27
 28		stdout-path = "display0";
 29
 30		framebuffer0: framebuffer@3200000 {
 31			compatible = "simple-framebuffer";
 32			reg = <0x03200000 0x800000>;
 33			width = <1280>;
 34			height = <800>;
 35			stride = <(1280 * 3)>;
 36			format = "r8g8b8";
 37		};
 38	};
 39
 40	gpio-hall-sensor {
 41		compatible = "gpio-keys";
 42
 43		event-hall-sensor {
 44			label = "Hall Effect Sensor";
 45			gpios = <&tlmm 110 GPIO_ACTIVE_HIGH>;
 46			interrupts = <&tlmm 110 IRQ_TYPE_EDGE_FALLING>;
 47			linux,input-type = <EV_SW>;
 48			linux,code = <SW_LID>;
 49			debounce-interval = <15>;
 50			wakeup-source;
 51		};
 52	};
 53
 54	gpio-keys {
 55		compatible = "gpio-keys";
 56		autorepeat;
 57
 58		key-home {
 59			label = "Home";
 60			gpios = <&tlmm 108 GPIO_ACTIVE_LOW>;
 61			linux,code = <KEY_HOMEPAGE>;
 62			debounce-interval = <15>;
 63		};
 64
 65		key-volume-down {
 66			label = "Volume Down";
 67			gpios = <&tlmm 107 GPIO_ACTIVE_LOW>;
 68			linux,code = <KEY_VOLUMEDOWN>;
 69			debounce-interval = <15>;
 70		};
 71
 72		key-volume-up {
 73			label = "Volume Up";
 74			gpios = <&tlmm 106 GPIO_ACTIVE_LOW>;
 75			linux,code = <KEY_VOLUMEUP>;
 76			debounce-interval = <15>;
 77		};
 78	};
 79
 80	reg_tsp_1p8v: regulator-tsp-1p8v {
 81		compatible = "regulator-fixed";
 82		regulator-name = "tsp_1p8v";
 83		regulator-min-microvolt = <1800000>;
 84		regulator-max-microvolt = <1800000>;
 85
 86		gpio = <&tlmm 31 GPIO_ACTIVE_HIGH>;
 87		enable-active-high;
 88
 89		pinctrl-names = "default";
 90		pinctrl-0 = <&tsp_en_default_state>;
 91	};
 92
 93	reg_tsp_3p3v: regulator-tsp-3p3v {
 94		compatible = "regulator-fixed";
 95		regulator-name = "tsp_3p3v";
 96		regulator-min-microvolt = <3300000>;
 97		regulator-max-microvolt = <3300000>;
 98
 99		gpio = <&tlmm 73 GPIO_ACTIVE_HIGH>;
100		enable-active-high;
101
102		pinctrl-names = "default";
103		pinctrl-0 = <&tsp_en1_default_state>;
104	};
105
106	reserved-memory {
107		#address-cells = <1>;
108		#size-cells = <1>;
109		ranges;
110
111		framebuffer@3200000 {
112			reg = <0x03200000 0x800000>;
113			no-map;
114		};
115
116		mpss@8400000 {
117			reg = <0x08400000 0x1f00000>;
118			no-map;
119		};
120
121		mba@a300000 {
122			reg = <0x0a300000 0x100000>;
123			no-map;
124		};
125
126		reserved@cb00000 {
127			reg = <0x0cb00000 0x700000>;
128			no-map;
129		};
130
131		wcnss@d200000 {
132			reg = <0x0d200000 0x700000>;
133			no-map;
134		};
135
136		adsp@d900000 {
137			reg = <0x0d900000 0x1800000>;
138			no-map;
139		};
140
141		venus@f100000 {
142			reg = <0x0f100000 0x500000>;
143			no-map;
144		};
145
146		/delete-node/ smem@3000000;
147		smem_region: smem@fa00000 {
148			reg = <0x0fa00000 0x100000>;
149			no-map;
150		};
151
152		reserved@fb00000 {
153			reg = <0x0fb00000 0x260000>;
154			no-map;
155		};
156
157		rfsa@fd60000 {
158			reg = <0x0fd60000 0x20000>;
159			no-map;
160		};
161
162		rmtfs@fd80000 {
163			compatible = "qcom,rmtfs-mem";
164			reg = <0x0fd80000 0x180000>;
165			no-map;
166
167			qcom,client-id = <1>;
168		};
169	};
170};
171
172&blsp1_i2c2 {
173	status = "okay";
174
175	accelerometer@1d {
176		compatible = "st,lis2hh12";
177		reg = <0x1d>;
178
179		interrupt-parent = <&tlmm>;
180		interrupts = <54 IRQ_TYPE_LEVEL_HIGH>;
181
182		pinctrl-names = "default";
183		pinctrl-0 = <&accel_int_default_state>;
184
185		st,drdy-int-pin = <1>;
186
187		vdd-supply = <&pm8226_l19>;
188		vddio-supply = <&pm8226_lvs1>;
189	};
190};
191
192&blsp1_i2c4 {
193	status = "okay";
194
195	muic: usb-switch@25 {
196		compatible = "siliconmitus,sm5502-muic";
197		reg = <0x25>;
198
199		interrupt-parent = <&tlmm>;
200		interrupts = <67 IRQ_TYPE_EDGE_FALLING>;
201
202		pinctrl-names = "default";
203		pinctrl-0 = <&muic_int_default_state>;
204	};
205};
206
207&blsp1_i2c5 {
208	status = "okay";
209
210	touchscreen@4a {
211		compatible = "atmel,maxtouch";
212		reg = <0x4a>;
213
214		interrupt-parent = <&tlmm>;
215		interrupts = <17 IRQ_TYPE_LEVEL_LOW>;
216
217		pinctrl-names = "default";
218		pinctrl-0 = <&tsp_int_rst_default_state>;
219
220		reset-gpios = <&pm8226_gpios 6 GPIO_ACTIVE_LOW>;
221
222		vdd-supply = <&reg_tsp_1p8v>;
223		vdda-supply = <&reg_tsp_3p3v>;
224	};
225};
226
227&rpm_requests {
228	regulators {
229		compatible = "qcom,rpm-pm8226-regulators";
230
231		pm8226_s3: s3 {
232			regulator-min-microvolt = <1200000>;
233			regulator-max-microvolt = <1300000>;
234		};
235
236		pm8226_s4: s4 {
237			regulator-min-microvolt = <1800000>;
238			regulator-max-microvolt = <1800000>;
239		};
240
241		pm8226_s5: s5 {
242			regulator-min-microvolt = <1150000>;
243			regulator-max-microvolt = <1150000>;
244		};
245
246		pm8226_l1: l1 {
247			regulator-min-microvolt = <1225000>;
248			regulator-max-microvolt = <1225000>;
249		};
250
251		pm8226_l2: l2 {
252			regulator-min-microvolt = <1200000>;
253			regulator-max-microvolt = <1200000>;
254		};
255
256		pm8226_l3: l3 {
257			regulator-min-microvolt = <750000>;
258			regulator-max-microvolt = <1337500>;
259			regulator-always-on;
260		};
261
262		pm8226_l4: l4 {
263			regulator-min-microvolt = <1200000>;
264			regulator-max-microvolt = <1200000>;
265		};
266
267		pm8226_l5: l5 {
268			regulator-min-microvolt = <1200000>;
269			regulator-max-microvolt = <1200000>;
270		};
271
272		pm8226_l6: l6 {
273			regulator-min-microvolt = <1800000>;
274			regulator-max-microvolt = <1800000>;
275			regulator-always-on;
276		};
277
278		pm8226_l7: l7 {
279			regulator-min-microvolt = <1850000>;
280			regulator-max-microvolt = <1850000>;
281		};
282
283		pm8226_l8: l8 {
284			regulator-min-microvolt = <1800000>;
285			regulator-max-microvolt = <1800000>;
286			regulator-always-on;
287		};
288
289		pm8226_l9: l9 {
290			regulator-min-microvolt = <2050000>;
291			regulator-max-microvolt = <2050000>;
292		};
293
294		pm8226_l10: l10 {
295			regulator-min-microvolt = <1800000>;
296			regulator-max-microvolt = <1800000>;
297		};
298
299		pm8226_l12: l12 {
300			regulator-min-microvolt = <1800000>;
301			regulator-max-microvolt = <1800000>;
302		};
303
304		pm8226_l14: l14 {
305			regulator-min-microvolt = <2750000>;
306			regulator-max-microvolt = <2750000>;
307		};
308
309		pm8226_l15: l15 {
310			regulator-min-microvolt = <1800000>;
311			regulator-max-microvolt = <3300000>;
312		};
313
314		pm8226_l16: l16 {
315			regulator-min-microvolt = <3000000>;
316			regulator-max-microvolt = <3350000>;
317		};
318
319		pm8226_l17: l17 {
320			regulator-min-microvolt = <2950000>;
321			regulator-max-microvolt = <2950000>;
322
323			regulator-system-load = <200000>;
324			regulator-allow-set-load;
325			regulator-always-on;
326		};
327
328		pm8226_l18: l18 {
329			regulator-min-microvolt = <2950000>;
330			regulator-max-microvolt = <2950000>;
331		};
332
333		pm8226_l19: l19 {
334			regulator-min-microvolt = <2850000>;
335			regulator-max-microvolt = <3000000>;
336		};
337
338		pm8226_l20: l20 {
339			regulator-min-microvolt = <3075000>;
340			regulator-max-microvolt = <3075000>;
341		};
342
343		pm8226_l21: l21 {
344			regulator-min-microvolt = <1800000>;
345			regulator-max-microvolt = <2950000>;
346		};
347
348		pm8226_l22: l22 {
349			regulator-min-microvolt = <1800000>;
350			regulator-max-microvolt = <3000000>;
351		};
352
353		pm8226_l23: l23 {
354			regulator-min-microvolt = <1800000>;
355			regulator-max-microvolt = <3300000>;
356		};
357
358		pm8226_l24: l24 {
359			regulator-min-microvolt = <1300000>;
360			regulator-max-microvolt = <1350000>;
361		};
362
363		pm8226_l25: l25 {
364			regulator-min-microvolt = <1775000>;
365			regulator-max-microvolt = <2125000>;
366		};
367
368		pm8226_l26: l26 {
369			regulator-min-microvolt = <1225000>;
370			regulator-max-microvolt = <1300000>;
371		};
372
373		pm8226_l27: l27 {
374			regulator-min-microvolt = <1800000>;
375			regulator-max-microvolt = <1800000>;
376		};
377
378		pm8226_l28: l28 {
379			regulator-min-microvolt = <1800000>;
380			regulator-max-microvolt = <2950000>;
381		};
382
383		pm8226_lvs1: lvs1 {};
384	};
385};
386
387&sdhc_1 {
388	vmmc-supply = <&pm8226_l17>;
389	vqmmc-supply = <&pm8226_l6>;
390
391	bus-width = <8>;
392	non-removable;
393
394	status = "okay";
395};
396
397&sdhc_2 {
398	vmmc-supply = <&pm8226_l18>;
399	vqmmc-supply = <&pm8226_l21>;
400
401	bus-width = <4>;
402	cd-gpios = <&tlmm 38 GPIO_ACTIVE_LOW>;
403
404	status = "okay";
405};
406
407&tlmm {
408	accel_int_default_state: accel-int-default-state {
409		pins = "gpio54";
410		function = "gpio";
411		drive-strength = <2>;
412		bias-disable;
413	};
414
415	muic_int_default_state: muic-int-default-state {
416		pins = "gpio67";
417		function = "gpio";
418		drive-strength = <2>;
419		bias-disable;
420	};
421
422	tsp_en_default_state: tsp-en-default-state {
423		pins = "gpio31";
424		function = "gpio";
425		drive-strength = <2>;
426		bias-disable;
427	};
428
429	tsp_en1_default_state: tsp-en1-default-state {
430		pins = "gpio73";
431		function = "gpio";
432		drive-strength = <2>;
433		bias-disable;
434	};
435
436	tsp_int_rst_default_state: tsp-int-rst-default-state {
437		pins = "gpio17";
438		function = "gpio";
439		drive-strength = <10>;
440		bias-pull-up;
441	};
442};
443
444&usb {
445	extcon = <&muic>, <&muic>;
446	status = "okay";
447};
448
449&usb_hs_phy {
450	extcon = <&muic>;
451	v1p8-supply = <&pm8226_l10>;
452	v3p3-supply = <&pm8226_l20>;
453};