~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/arm/boot/dts/qcom/qcom-apq8026-samsung-milletwifi.dts

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: BSD-3-Clause
  2 /*
  3  * Copyright (c) 2022, Matti Lehtimäki <matti.lehtimaki@gmail.com>
  4  * Copyright (c) 2023, Bryant Mairs <bryant@mai.rs>
  5  */
  6 
  7 /dts-v1/;
  8 
  9 #include <dt-bindings/input/input.h>
 10 #include <dt-bindings/power/summit,smb347-charger.h>
 11 #include "qcom-msm8226.dtsi"
 12 #include "pm8226.dtsi"
 13 
 14 /delete-node/ &adsp_region;
 15 /delete-node/ &smem_region;
 16 
 17 / {
 18         model = "Samsung Galaxy Tab 4 8.0 Wi-Fi";
 19         compatible = "samsung,milletwifi", "qcom,apq8026";
 20         chassis-type = "tablet";
 21 
 22         aliases {
 23                 display0 = &framebuffer0;
 24                 mmc0 = &sdhc_1; /* SDC1 eMMC slot */
 25                 mmc1 = &sdhc_2; /* SDC2 SD card slot */
 26         };
 27 
 28         chosen {
 29                 #address-cells = <1>;
 30                 #size-cells = <1>;
 31                 ranges;
 32 
 33                 stdout-path = "display0";
 34 
 35                 framebuffer0: framebuffer@3200000 {
 36                         compatible = "simple-framebuffer";
 37                         reg = <0x03200000 0x800000>;
 38                         width = <800>;
 39                         height = <1280>;
 40                         stride = <(800 * 3)>;
 41                         format = "r8g8b8";
 42                 };
 43         };
 44 
 45         gpio-hall-sensor {
 46                 compatible = "gpio-keys";
 47 
 48                 event-hall-sensor {
 49                         label = "Cover";
 50                         gpios = <&tlmm 37 GPIO_ACTIVE_LOW>;
 51                         linux,input-type = <EV_SW>;
 52                         linux,code = <SW_LID>;
 53                         debounce-interval = <15>;
 54                         linux,can-disable;
 55                         wakeup-source;
 56                 };
 57         };
 58 
 59         gpio-keys {
 60                 compatible = "gpio-keys";
 61                 autorepeat;
 62 
 63                 key-home {
 64                         label = "Home";
 65                         gpios = <&tlmm 108 GPIO_ACTIVE_LOW>;
 66                         linux,code = <KEY_HOMEPAGE>;
 67                         debounce-interval = <15>;
 68                 };
 69 
 70                 key-volume-down {
 71                         label = "Volume Down";
 72                         gpios = <&tlmm 107 GPIO_ACTIVE_LOW>;
 73                         linux,code = <KEY_VOLUMEDOWN>;
 74                         debounce-interval = <15>;
 75                 };
 76 
 77                 key-volume-up {
 78                         label = "Volume Up";
 79                         gpios = <&tlmm 106 GPIO_ACTIVE_LOW>;
 80                         linux,code = <KEY_VOLUMEUP>;
 81                         debounce-interval = <15>;
 82                 };
 83         };
 84 
 85         i2c-backlight {
 86                 compatible = "i2c-gpio";
 87                 sda-gpios = <&tlmm 20 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>;
 88                 scl-gpios = <&tlmm 21 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>;
 89 
 90                 pinctrl-0 = <&backlight_i2c_default_state>;
 91                 pinctrl-names = "default";
 92 
 93                 i2c-gpio,delay-us = <4>;
 94 
 95                 #address-cells = <1>;
 96                 #size-cells = <0>;
 97 
 98                 backlight@2c {
 99                         compatible = "ti,lp8556";
100                         reg = <0x2c>;
101                         enable-supply = <&reg_backlight_vddio>;
102 
103                         dev-ctrl = /bits/ 8 <0x80>;
104                         init-brt = /bits/ 8 <0x3f>;
105 
106                         /*
107                          * Change transition duration: 200ms, Change
108                          * transition strength: heavy, PWM hysteresis:
109                          * 1-bit w/ 8-bit resolution
110                          */
111                         rom-a3h {
112                                 rom-addr = /bits/ 8 <0xa3>;
113                                 rom-val = /bits/ 8 <0x5e>;
114                         };
115 
116                         /*
117                          * PWM phase configuration: 3-phase/3 drivers
118                          * (0, 120deg, 240deg, -, -, -),
119                          * PWM frequency: 9616Hz (10-bit)
120                          */
121                         rom-a5h {
122                                 rom-addr = /bits/ 8 <0xa5>;
123                                 rom-val = /bits/ 8 <0x34>;
124                         };
125 
126                         /*
127                          * Enable LED drivers 2 & 3, Boot inductor
128                          * current limit: 1.5A/2.6A
129                          */
130                         rom-a7h {
131                                 rom-addr = /bits/ 8 <0xa7>;
132                                 rom-val = /bits/ 8 <0xfa>;
133                         };
134                 };
135         };
136 
137         reg_backlight_vddio: regulator-backlight-vddio {
138                 compatible = "regulator-fixed";
139                 regulator-name = "backlight_vddio";
140                 regulator-min-microvolt = <1800000>;
141                 regulator-max-microvolt = <1800000>;
142 
143                 gpio = <&tlmm 74 GPIO_ACTIVE_HIGH>;
144                 enable-active-high;
145 
146                 pinctrl-0 = <&backlight_vddio_default_state>;
147                 pinctrl-names = "default";
148         };
149 
150         reg_tsp_1p8v: regulator-tsp-1p8v {
151                 compatible = "regulator-fixed";
152                 regulator-name = "tsp_1p8v";
153                 regulator-min-microvolt = <1800000>;
154                 regulator-max-microvolt = <1800000>;
155 
156                 gpio = <&tlmm 114 GPIO_ACTIVE_HIGH>;
157                 enable-active-high;
158 
159                 pinctrl-0 = <&tsp_en1_default_state>;
160                 pinctrl-names = "default";
161         };
162 
163         reg_tsp_3p3v: regulator-tsp-3p3v {
164                 compatible = "regulator-fixed";
165                 regulator-name = "tsp_3p3v";
166                 regulator-min-microvolt = <3300000>;
167                 regulator-max-microvolt = <3300000>;
168 
169                 gpio = <&tlmm 31 GPIO_ACTIVE_HIGH>;
170                 enable-active-high;
171 
172                 pinctrl-0 = <&tsp_en_default_state>;
173                 pinctrl-names = "default";
174         };
175 
176         reserved-memory {
177                 #address-cells = <1>;
178                 #size-cells = <1>;
179                 ranges;
180 
181                 framebuffer@3200000 {
182                         reg = <0x03200000 0x800000>;
183                         no-map;
184                 };
185 
186                 mpss_region: mpss@8400000 {
187                         reg = <0x08400000 0x1f00000>;
188                         no-map;
189                 };
190 
191                 mba_region: mba@a300000 {
192                         reg = <0x0a300000 0x100000>;
193                         no-map;
194                 };
195 
196                 reserved@cb00000 {
197                         reg = <0x0cb00000 0x700000>;
198                         no-map;
199                 };
200 
201                 wcnss_region: wcnss@d200000 {
202                         reg = <0x0d200000 0x700000>;
203                         no-map;
204                 };
205 
206                 adsp_region: adsp@d900000 {
207                         reg = <0x0d900000 0x1800000>;
208                         no-map;
209                 };
210 
211                 venus@f100000 {
212                         reg = <0x0f100000 0x500000>;
213                         no-map;
214                 };
215 
216                 smem_region: smem@fa00000 {
217                         reg = <0x0fa00000 0x100000>;
218                         no-map;
219                 };
220 
221                 reserved@fb00000 {
222                         reg = <0x0fb00000 0x260000>;
223                         no-map;
224                 };
225 
226                 rfsa@fd60000 {
227                         reg = <0x0fd60000 0x20000>;
228                         no-map;
229                 };
230 
231                 rmtfs@fd80000 {
232                         compatible = "qcom,rmtfs-mem";
233                         reg = <0x0fd80000 0x180000>;
234                         no-map;
235 
236                         qcom,client-id = <1>;
237                 };
238         };
239 };
240 
241 &blsp1_i2c2 {
242         status = "okay";
243 
244         accelerometer@1d {
245                 compatible = "st,lis2hh12";
246                 reg = <0x1d>;
247 
248                 interrupts-extended = <&tlmm 54 IRQ_TYPE_LEVEL_HIGH>;
249 
250                 pinctrl-0 = <&accel_int_default_state>;
251                 pinctrl-names = "default";
252 
253                 vdd-supply = <&pm8226_l19>;
254                 vddio-supply = <&pm8226_lvs1>;
255 
256                 mount-matrix = "0", "1", "0",
257                                "-1", "0", "0",
258                                "0", "0", "1";
259 
260                 st,drdy-int-pin = <1>;
261         };
262 };
263 
264 &blsp1_i2c3 {
265         status = "okay";
266 
267         charger@6a {
268                 compatible = "summit,smb358";
269                 reg = <0x6a>;
270 
271                 interrupts-extended = <&tlmm 115 IRQ_TYPE_EDGE_FALLING>;
272 
273                 pinctrl-0 = <&charger_int_default_state>;
274                 pinctrl-names = "default";
275 
276                 summit,enable-usb-charging;
277                 summit,enable-charge-control = <SMB3XX_CHG_ENABLE_SW>;
278                 summit,fast-voltage-threshold-microvolt = <3000000>;
279                 summit,chip-temperature-threshold-celsius = <130>;
280                 summit,usb-current-limit-microamp = <1500000>;
281         };
282 };
283 
284 &blsp1_i2c4 {
285         status = "okay";
286 
287         muic: usb-switch@25 {
288                 compatible = "siliconmitus,sm5502-muic";
289                 reg = <0x25>;
290 
291                 interrupts-extended = <&tlmm 67 IRQ_TYPE_EDGE_FALLING>;
292 
293                 pinctrl-0 = <&muic_int_default_state>;
294                 pinctrl-names = "default";
295         };
296 };
297 
298 &blsp1_i2c5 {
299         status = "okay";
300 
301         touchscreen@48 {
302                 compatible = "melfas,mms252", "melfas,mms114";
303                 reg = <0x48>;
304                 interrupts-extended = <&tlmm 17 IRQ_TYPE_EDGE_FALLING>;
305                 touchscreen-size-x = <800>;
306                 touchscreen-size-y = <1280>;
307                 avdd-supply = <&reg_tsp_3p3v>;
308                 vdd-supply = <&reg_tsp_1p8v>;
309                 linux,keycodes = <KEY_APPSELECT KEY_BACK>;
310 
311                 pinctrl-0 = <&tsp_int_rst_default_state>;
312                 pinctrl-names = "default";
313         };
314 };
315 
316 &rpm_requests {
317         regulators {
318                 compatible = "qcom,rpm-pm8226-regulators";
319 
320                 pm8226_s3: s3 {
321                         regulator-min-microvolt = <1200000>;
322                         regulator-max-microvolt = <1300000>;
323                 };
324 
325                 pm8226_s4: s4 {
326                         regulator-min-microvolt = <1800000>;
327                         regulator-max-microvolt = <1800000>;
328                 };
329 
330                 pm8226_s5: s5 {
331                         regulator-min-microvolt = <1150000>;
332                         regulator-max-microvolt = <1150000>;
333                 };
334 
335                 pm8226_l1: l1 {
336                         regulator-min-microvolt = <1225000>;
337                         regulator-max-microvolt = <1225000>;
338                 };
339 
340                 pm8226_l2: l2 {
341                         regulator-min-microvolt = <1200000>;
342                         regulator-max-microvolt = <1200000>;
343                 };
344 
345                 pm8226_l3: l3 {
346                         regulator-min-microvolt = <750000>;
347                         regulator-max-microvolt = <1337500>;
348                         regulator-always-on;
349                 };
350 
351                 pm8226_l4: l4 {
352                         regulator-min-microvolt = <1200000>;
353                         regulator-max-microvolt = <1200000>;
354                 };
355 
356                 pm8226_l5: l5 {
357                         regulator-min-microvolt = <1200000>;
358                         regulator-max-microvolt = <1200000>;
359                 };
360 
361                 pm8226_l6: l6 {
362                         regulator-min-microvolt = <1800000>;
363                         regulator-max-microvolt = <1800000>;
364                         regulator-always-on;
365                 };
366 
367                 pm8226_l7: l7 {
368                         regulator-min-microvolt = <1850000>;
369                         regulator-max-microvolt = <1850000>;
370                 };
371 
372                 pm8226_l8: l8 {
373                         regulator-min-microvolt = <1800000>;
374                         regulator-max-microvolt = <1800000>;
375                         regulator-always-on;
376                 };
377 
378                 pm8226_l9: l9 {
379                         regulator-min-microvolt = <2050000>;
380                         regulator-max-microvolt = <2050000>;
381                 };
382 
383                 pm8226_l10: l10 {
384                         regulator-min-microvolt = <1800000>;
385                         regulator-max-microvolt = <1800000>;
386                 };
387 
388                 pm8226_l12: l12 {
389                         regulator-min-microvolt = <1800000>;
390                         regulator-max-microvolt = <1800000>;
391                 };
392 
393                 pm8226_l14: l14 {
394                         regulator-min-microvolt = <2750000>;
395                         regulator-max-microvolt = <2750000>;
396                 };
397 
398                 pm8226_l15: l15 {
399                         regulator-min-microvolt = <1800000>;
400                         regulator-max-microvolt = <3300000>;
401                 };
402 
403                 pm8226_l16: l16 {
404                         regulator-min-microvolt = <3000000>;
405                         regulator-max-microvolt = <3350000>;
406                 };
407 
408                 pm8226_l17: l17 {
409                         regulator-min-microvolt = <2950000>;
410                         regulator-max-microvolt = <2950000>;
411 
412                         regulator-system-load = <200000>;
413                         regulator-allow-set-load;
414                         regulator-always-on;
415                 };
416 
417                 pm8226_l18: l18 {
418                         regulator-min-microvolt = <2950000>;
419                         regulator-max-microvolt = <2950000>;
420                 };
421 
422                 pm8226_l19: l19 {
423                         regulator-min-microvolt = <2850000>;
424                         regulator-max-microvolt = <3000000>;
425                 };
426 
427                 pm8226_l20: l20 {
428                         regulator-min-microvolt = <3075000>;
429                         regulator-max-microvolt = <3075000>;
430                 };
431 
432                 pm8226_l21: l21 {
433                         regulator-min-microvolt = <1800000>;
434                         regulator-max-microvolt = <2950000>;
435                 };
436 
437                 pm8226_l22: l22 {
438                         regulator-min-microvolt = <1800000>;
439                         regulator-max-microvolt = <3000000>;
440                 };
441 
442                 pm8226_l23: l23 {
443                         regulator-min-microvolt = <1800000>;
444                         regulator-max-microvolt = <3300000>;
445                 };
446 
447                 pm8226_l24: l24 {
448                         regulator-min-microvolt = <1300000>;
449                         regulator-max-microvolt = <1350000>;
450                 };
451 
452                 pm8226_l25: l25 {
453                         regulator-min-microvolt = <1775000>;
454                         regulator-max-microvolt = <2125000>;
455                 };
456 
457                 pm8226_l26: l26 {
458                         regulator-min-microvolt = <1225000>;
459                         regulator-max-microvolt = <1300000>;
460                 };
461 
462                 pm8226_l27: l27 {
463                         regulator-min-microvolt = <1800000>;
464                         regulator-max-microvolt = <1800000>;
465                 };
466 
467                 pm8226_l28: l28 {
468                         regulator-min-microvolt = <1800000>;
469                         regulator-max-microvolt = <2950000>;
470                 };
471 
472                 pm8226_lvs1: lvs1 {};
473         };
474 };
475 
476 &sdhc_1 {
477         vmmc-supply = <&pm8226_l17>;
478         vqmmc-supply = <&pm8226_l6>;
479 
480         bus-width = <8>;
481         non-removable;
482 
483         status = "okay";
484 };
485 
486 &sdhc_2 {
487         vmmc-supply = <&pm8226_l18>;
488         vqmmc-supply = <&pm8226_l21>;
489 
490         bus-width = <4>;
491         cd-gpios = <&tlmm 38 GPIO_ACTIVE_LOW>;
492 
493         pinctrl-0 = <&sdhc2_default_state>, <&sdc2_cd_default_state>;
494         pinctrl-names = "default";
495 
496         status = "okay";
497 };
498 
499 &tlmm {
500         accel_int_default_state: accel-int-default-state {
501                 pins = "gpio54";
502                 function = "gpio";
503                 drive-strength = <2>;
504                 bias-disable;
505         };
506 
507         backlight_i2c_default_state: backlight-i2c-default-state {
508                 pins = "gpio20", "gpio21";
509                 function = "gpio";
510                 drive-strength = <2>;
511                 bias-disable;
512         };
513 
514         backlight_vddio_default_state: backlight-vddio-default-state {
515                 pins = "gpio74";
516                 function = "gpio";
517                 drive-strength = <2>;
518                 bias-disable;
519         };
520 
521         charger_int_default_state: charger-int-default-state {
522                 pins = "gpio115";
523                 function = "gpio";
524                 drive-strength = <2>;
525                 bias-disable;
526         };
527 
528         muic_int_default_state: muic-int-default-state {
529                 pins = "gpio67";
530                 function = "gpio";
531                 drive-strength = <2>;
532                 bias-disable;
533         };
534 
535         sdc2_cd_default_state: sdc2-cd-default-state {
536                 pins = "gpio38";
537                 function = "gpio";
538                 drive-strength = <2>;
539                 bias-disable;
540         };
541 
542         tsp_en_default_state: tsp-en-default-state {
543                 pins = "gpio31";
544                 function = "gpio";
545                 drive-strength = <2>;
546                 bias-disable;
547         };
548 
549         tsp_en1_default_state: tsp-en1-default-state {
550                 pins = "gpio114";
551                 function = "gpio";
552                 drive-strength = <2>;
553                 bias-disable;
554         };
555 
556         tsp_int_rst_default_state: tsp-int-rst-default-state {
557                 pins = "gpio17";
558                 function = "gpio";
559                 drive-strength = <10>;
560                 bias-pull-up;
561         };
562 };
563 
564 &usb {
565         extcon = <&muic>, <&muic>;
566         status = "okay";
567 };
568 
569 &usb_hs_phy {
570         extcon = <&muic>;
571         v1p8-supply = <&pm8226_l10>;
572         v3p3-supply = <&pm8226_l20>;
573 };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php