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

TOMOYO Linux Cross Reference
Linux/arch/arm64/boot/dts/rockchip/rk3399-firefly.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.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
  2 /*
  3  * Copyright (c) 2017 Fuzhou Rockchip Electronics Co., Ltd.
  4  */
  5 
  6 /dts-v1/;
  7 #include <dt-bindings/input/linux-event-codes.h>
  8 #include <dt-bindings/interrupt-controller/irq.h>
  9 #include <dt-bindings/pwm/pwm.h>
 10 #include <dt-bindings/usb/pd.h>
 11 #include "rk3399.dtsi"
 12 
 13 / {
 14         model = "Firefly-RK3399 Board";
 15         compatible = "firefly,firefly-rk3399", "rockchip,rk3399";
 16 
 17         aliases {
 18                 ethernet0 = &gmac;
 19                 mmc0 = &sdio0;
 20                 mmc1 = &sdmmc;
 21                 mmc2 = &sdhci;
 22         };
 23 
 24         chosen {
 25                 stdout-path = "serial2:1500000n8";
 26         };
 27 
 28         backlight: backlight {
 29                 compatible = "pwm-backlight";
 30                 enable-gpios = <&gpio1 RK_PB5 GPIO_ACTIVE_HIGH>;
 31                 pwms = <&pwm0 0 25000 0>;
 32                 brightness-levels = <
 33                           0   1   2   3   4   5   6   7
 34                           8   9  10  11  12  13  14  15
 35                          16  17  18  19  20  21  22  23
 36                          24  25  26  27  28  29  30  31
 37                          32  33  34  35  36  37  38  39
 38                          40  41  42  43  44  45  46  47
 39                          48  49  50  51  52  53  54  55
 40                          56  57  58  59  60  61  62  63
 41                          64  65  66  67  68  69  70  71
 42                          72  73  74  75  76  77  78  79
 43                          80  81  82  83  84  85  86  87
 44                          88  89  90  91  92  93  94  95
 45                          96  97  98  99 100 101 102 103
 46                         104 105 106 107 108 109 110 111
 47                         112 113 114 115 116 117 118 119
 48                         120 121 122 123 124 125 126 127
 49                         128 129 130 131 132 133 134 135
 50                         136 137 138 139 140 141 142 143
 51                         144 145 146 147 148 149 150 151
 52                         152 153 154 155 156 157 158 159
 53                         160 161 162 163 164 165 166 167
 54                         168 169 170 171 172 173 174 175
 55                         176 177 178 179 180 181 182 183
 56                         184 185 186 187 188 189 190 191
 57                         192 193 194 195 196 197 198 199
 58                         200 201 202 203 204 205 206 207
 59                         208 209 210 211 212 213 214 215
 60                         216 217 218 219 220 221 222 223
 61                         224 225 226 227 228 229 230 231
 62                         232 233 234 235 236 237 238 239
 63                         240 241 242 243 244 245 246 247
 64                         248 249 250 251 252 253 254 255>;
 65                 default-brightness-level = <200>;
 66         };
 67 
 68         clkin_gmac: external-gmac-clock {
 69                 compatible = "fixed-clock";
 70                 clock-frequency = <125000000>;
 71                 clock-output-names = "clkin_gmac";
 72                 #clock-cells = <0>;
 73         };
 74 
 75         dc_12v: dc-12v {
 76                 compatible = "regulator-fixed";
 77                 regulator-name = "dc_12v";
 78                 regulator-always-on;
 79                 regulator-boot-on;
 80                 regulator-min-microvolt = <12000000>;
 81                 regulator-max-microvolt = <12000000>;
 82         };
 83 
 84         gpio-keys {
 85                 compatible = "gpio-keys";
 86                 autorepeat;
 87                 pinctrl-names = "default";
 88                 pinctrl-0 = <&pwrbtn>;
 89 
 90                 key-power {
 91                         debounce-interval = <100>;
 92                         gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_LOW>;
 93                         label = "GPIO Key Power";
 94                         linux,code = <KEY_POWER>;
 95                         wakeup-source;
 96                 };
 97         };
 98 
 99         ir-receiver {
100                 compatible = "gpio-ir-receiver";
101                 gpios = <&gpio0 RK_PA6 GPIO_ACTIVE_LOW>;
102                 pinctrl-0 = <&ir_int>;
103                 pinctrl-names = "default";
104         };
105 
106         leds {
107                 compatible = "gpio-leds";
108                 pinctrl-names = "default";
109                 pinctrl-0 = <&work_led_pin>, <&diy_led_pin>;
110 
111                 work_led: led-0 {
112                         label = "work";
113                         default-state = "on";
114                         gpios = <&gpio2 RK_PD3 GPIO_ACTIVE_HIGH>;
115                 };
116 
117                 diy_led: led-1 {
118                         label = "diy";
119                         default-state = "off";
120                         gpios = <&gpio0 RK_PB5 GPIO_ACTIVE_HIGH>;
121                 };
122         };
123 
124         rt5640-sound {
125                 compatible = "simple-audio-card";
126                 simple-audio-card,name = "rockchip,rt5640-codec";
127                 simple-audio-card,format = "i2s";
128                 simple-audio-card,mclk-fs = <256>;
129                 simple-audio-card,widgets =
130                         "Microphone", "Mic Jack",
131                         "Headphone", "Headphone Jack";
132                 simple-audio-card,routing =
133                         "Mic Jack", "MICBIAS1",
134                         "IN1P", "Mic Jack",
135                         "Headphone Jack", "HPOL",
136                         "Headphone Jack", "HPOR";
137 
138                 simple-audio-card,cpu {
139                         sound-dai = <&i2s1>;
140                 };
141 
142                 simple-audio-card,codec {
143                         sound-dai = <&rt5640>;
144                 };
145         };
146 
147         sdio_pwrseq: sdio-pwrseq {
148                 compatible = "mmc-pwrseq-simple";
149                 clocks = <&rk808 1>;
150                 clock-names = "ext_clock";
151                 pinctrl-names = "default";
152                 pinctrl-0 = <&wifi_enable_h>;
153 
154                 /*
155                  * On the module itself this is one of these (depending
156                  * on the actual card populated):
157                  * - SDIO_RESET_L_WL_REG_ON
158                  * - PDN (power down when low)
159                  */
160                 reset-gpios = <&gpio0 RK_PB2 GPIO_ACTIVE_LOW>;
161         };
162 
163         sound-dit {
164                 compatible = "audio-graph-card";
165                 label = "SPDIF";
166                 dais = <&spdif_p0>;
167         };
168 
169         spdif-dit {
170                 compatible = "linux,spdif-dit";
171                 #sound-dai-cells = <0>;
172 
173                 port {
174                         dit_p0_0: endpoint {
175                                 remote-endpoint = <&spdif_p0_0>;
176                         };
177                 };
178         };
179 
180         /* switched by pmic_sleep */
181         vcc1v8_s3: vcca1v8_s3: vcc1v8-s3 {
182                 compatible = "regulator-fixed";
183                 regulator-name = "vcc1v8_s3";
184                 regulator-always-on;
185                 regulator-boot-on;
186                 regulator-min-microvolt = <1800000>;
187                 regulator-max-microvolt = <1800000>;
188                 vin-supply = <&vcc_1v8>;
189         };
190 
191         vcc3v3_pcie: vcc3v3-pcie-regulator {
192                 compatible = "regulator-fixed";
193                 enable-active-high;
194                 gpio = <&gpio1 RK_PC1 GPIO_ACTIVE_HIGH>;
195                 pinctrl-names = "default";
196                 pinctrl-0 = <&pcie_pwr_en>;
197                 regulator-name = "vcc3v3_pcie";
198                 regulator-always-on;
199                 regulator-boot-on;
200                 vin-supply = <&dc_12v>;
201         };
202 
203         vcc3v3_sys: vcc3v3-sys {
204                 compatible = "regulator-fixed";
205                 regulator-name = "vcc3v3_sys";
206                 regulator-always-on;
207                 regulator-boot-on;
208                 regulator-min-microvolt = <3300000>;
209                 regulator-max-microvolt = <3300000>;
210                 vin-supply = <&vcc_sys>;
211         };
212 
213         /* Actually 3 regulators (host0, 1, 2) controlled by the same gpio */
214         vcc5v0_host: vcc5v0-host-regulator {
215                 compatible = "regulator-fixed";
216                 enable-active-high;
217                 gpio = <&gpio1 RK_PA0 GPIO_ACTIVE_HIGH>;
218                 pinctrl-names = "default";
219                 pinctrl-0 = <&vcc5v0_host_en>;
220                 regulator-name = "vcc5v0_host";
221                 regulator-always-on;
222                 vin-supply = <&vcc_sys>;
223         };
224 
225         vcc5v0_typec: vcc5v0-typec-regulator {
226                 compatible = "regulator-fixed";
227                 enable-active-high;
228                 gpio = <&gpio1 RK_PA3 GPIO_ACTIVE_HIGH>;
229                 pinctrl-names = "default";
230                 pinctrl-0 = <&vcc5v0_typec_en>;
231                 regulator-name = "vcc5v0_typec";
232                 regulator-always-on;
233                 vin-supply = <&vcc_sys>;
234         };
235 
236         vcc_sys: vcc-sys {
237                 compatible = "regulator-fixed";
238                 regulator-name = "vcc_sys";
239                 regulator-always-on;
240                 regulator-boot-on;
241                 regulator-min-microvolt = <5000000>;
242                 regulator-max-microvolt = <5000000>;
243                 vin-supply = <&dc_12v>;
244         };
245 
246         vdd_log: vdd-log {
247                 compatible = "pwm-regulator";
248                 pwms = <&pwm2 0 25000 1>;
249                 pwm-supply = <&vcc_sys>;
250                 regulator-name = "vdd_log";
251                 regulator-always-on;
252                 regulator-boot-on;
253                 regulator-min-microvolt = <430000>;
254                 regulator-max-microvolt = <1400000>;
255         };
256 };
257 
258 &cpu_l0 {
259         cpu-supply = <&vdd_cpu_l>;
260 };
261 
262 &cpu_l1 {
263         cpu-supply = <&vdd_cpu_l>;
264 };
265 
266 &cpu_l2 {
267         cpu-supply = <&vdd_cpu_l>;
268 };
269 
270 &cpu_l3 {
271         cpu-supply = <&vdd_cpu_l>;
272 };
273 
274 &cpu_b0 {
275         cpu-supply = <&vdd_cpu_b>;
276 };
277 
278 &cpu_b1 {
279         cpu-supply = <&vdd_cpu_b>;
280 };
281 
282 &emmc_phy {
283         status = "okay";
284 };
285 
286 &gmac {
287         assigned-clocks = <&cru SCLK_RMII_SRC>;
288         assigned-clock-parents = <&clkin_gmac>;
289         clock_in_out = "input";
290         phy-supply = <&vcc_lan>;
291         phy-mode = "rgmii";
292         pinctrl-names = "default";
293         pinctrl-0 = <&rgmii_pins>;
294         snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
295         snps,reset-active-low;
296         snps,reset-delays-us = <0 10000 50000>;
297         tx_delay = <0x28>;
298         rx_delay = <0x11>;
299         status = "okay";
300 };
301 
302 &gpu {
303         mali-supply = <&vdd_gpu>;
304         status = "okay";
305 };
306 
307 &hdmi {
308         ddc-i2c-bus = <&i2c3>;
309         pinctrl-names = "default";
310         pinctrl-0 = <&hdmi_cec>;
311         status = "okay";
312 };
313 
314 &i2c0 {
315         clock-frequency = <400000>;
316         i2c-scl-rising-time-ns = <168>;
317         i2c-scl-falling-time-ns = <4>;
318         status = "okay";
319 
320         rk808: pmic@1b {
321                 compatible = "rockchip,rk808";
322                 reg = <0x1b>;
323                 interrupt-parent = <&gpio1>;
324                 interrupts = <21 IRQ_TYPE_LEVEL_LOW>;
325                 #clock-cells = <1>;
326                 clock-output-names = "xin32k", "rk808-clkout2";
327                 pinctrl-names = "default";
328                 pinctrl-0 = <&pmic_int_l>;
329                 rockchip,system-power-controller;
330                 wakeup-source;
331 
332                 vcc1-supply = <&vcc_sys>;
333                 vcc2-supply = <&vcc_sys>;
334                 vcc3-supply = <&vcc_sys>;
335                 vcc4-supply = <&vcc_sys>;
336                 vcc6-supply = <&vcc_sys>;
337                 vcc7-supply = <&vcc_sys>;
338                 vcc8-supply = <&vcc3v3_sys>;
339                 vcc9-supply = <&vcc_sys>;
340                 vcc10-supply = <&vcc_sys>;
341                 vcc11-supply = <&vcc_sys>;
342                 vcc12-supply = <&vcc3v3_sys>;
343                 vddio-supply = <&vcc1v8_pmu>;
344 
345                 regulators {
346                         vdd_center: DCDC_REG1 {
347                                 regulator-name = "vdd_center";
348                                 regulator-always-on;
349                                 regulator-boot-on;
350                                 regulator-min-microvolt = <750000>;
351                                 regulator-max-microvolt = <1350000>;
352                                 regulator-ramp-delay = <6001>;
353                                 regulator-state-mem {
354                                         regulator-off-in-suspend;
355                                 };
356                         };
357 
358                         vdd_cpu_l: DCDC_REG2 {
359                                 regulator-name = "vdd_cpu_l";
360                                 regulator-always-on;
361                                 regulator-boot-on;
362                                 regulator-min-microvolt = <750000>;
363                                 regulator-max-microvolt = <1350000>;
364                                 regulator-ramp-delay = <6001>;
365                                 regulator-state-mem {
366                                         regulator-off-in-suspend;
367                                 };
368                         };
369 
370                         vcc_ddr: DCDC_REG3 {
371                                 regulator-name = "vcc_ddr";
372                                 regulator-always-on;
373                                 regulator-boot-on;
374                                 regulator-state-mem {
375                                         regulator-on-in-suspend;
376                                 };
377                         };
378 
379                         vcc_1v8: DCDC_REG4 {
380                                 regulator-name = "vcc_1v8";
381                                 regulator-always-on;
382                                 regulator-boot-on;
383                                 regulator-min-microvolt = <1800000>;
384                                 regulator-max-microvolt = <1800000>;
385                                 regulator-state-mem {
386                                         regulator-on-in-suspend;
387                                         regulator-suspend-microvolt = <1800000>;
388                                 };
389                         };
390 
391                         vcc1v8_dvp: LDO_REG1 {
392                                 regulator-name = "vcc1v8_dvp";
393                                 regulator-always-on;
394                                 regulator-boot-on;
395                                 regulator-min-microvolt = <1800000>;
396                                 regulator-max-microvolt = <1800000>;
397                                 regulator-state-mem {
398                                         regulator-off-in-suspend;
399                                 };
400                         };
401 
402                         vcc2v8_dvp: LDO_REG2 {
403                                 regulator-name = "vcc2v8_dvp";
404                                 regulator-always-on;
405                                 regulator-boot-on;
406                                 regulator-min-microvolt = <2800000>;
407                                 regulator-max-microvolt = <2800000>;
408                                 regulator-state-mem {
409                                         regulator-off-in-suspend;
410                                 };
411                         };
412 
413                         vcc1v8_pmu: LDO_REG3 {
414                                 regulator-name = "vcc1v8_pmu";
415                                 regulator-always-on;
416                                 regulator-boot-on;
417                                 regulator-min-microvolt = <1800000>;
418                                 regulator-max-microvolt = <1800000>;
419                                 regulator-state-mem {
420                                         regulator-on-in-suspend;
421                                         regulator-suspend-microvolt = <1800000>;
422                                 };
423                         };
424 
425                         vcc_sdio: LDO_REG4 {
426                                 regulator-name = "vcc_sdio";
427                                 regulator-always-on;
428                                 regulator-boot-on;
429                                 regulator-min-microvolt = <1800000>;
430                                 regulator-max-microvolt = <3000000>;
431                                 regulator-state-mem {
432                                         regulator-on-in-suspend;
433                                         regulator-suspend-microvolt = <3000000>;
434                                 };
435                         };
436 
437                         vcca3v0_codec: LDO_REG5 {
438                                 regulator-name = "vcca3v0_codec";
439                                 regulator-always-on;
440                                 regulator-boot-on;
441                                 regulator-min-microvolt = <3000000>;
442                                 regulator-max-microvolt = <3000000>;
443                                 regulator-state-mem {
444                                         regulator-off-in-suspend;
445                                 };
446                         };
447 
448                         vcc_1v5: LDO_REG6 {
449                                 regulator-name = "vcc_1v5";
450                                 regulator-always-on;
451                                 regulator-boot-on;
452                                 regulator-min-microvolt = <1500000>;
453                                 regulator-max-microvolt = <1500000>;
454                                 regulator-state-mem {
455                                         regulator-on-in-suspend;
456                                         regulator-suspend-microvolt = <1500000>;
457                                 };
458                         };
459 
460                         vcca1v8_codec: LDO_REG7 {
461                                 regulator-name = "vcca1v8_codec";
462                                 regulator-always-on;
463                                 regulator-boot-on;
464                                 regulator-min-microvolt = <1800000>;
465                                 regulator-max-microvolt = <1800000>;
466                                 regulator-state-mem {
467                                         regulator-off-in-suspend;
468                                 };
469                         };
470 
471                         vcc_3v0: LDO_REG8 {
472                                 regulator-name = "vcc_3v0";
473                                 regulator-always-on;
474                                 regulator-boot-on;
475                                 regulator-min-microvolt = <3000000>;
476                                 regulator-max-microvolt = <3000000>;
477                                 regulator-state-mem {
478                                         regulator-on-in-suspend;
479                                         regulator-suspend-microvolt = <3000000>;
480                                 };
481                         };
482 
483                         vcc3v3_s3: vcc_lan: SWITCH_REG1 {
484                                 regulator-name = "vcc3v3_s3";
485                                 regulator-always-on;
486                                 regulator-boot-on;
487                                 regulator-state-mem {
488                                         regulator-off-in-suspend;
489                                 };
490                         };
491 
492                         vcc3v3_s0: SWITCH_REG2 {
493                                 regulator-name = "vcc3v3_s0";
494                                 regulator-always-on;
495                                 regulator-boot-on;
496                                 regulator-state-mem {
497                                         regulator-off-in-suspend;
498                                 };
499                         };
500                 };
501         };
502 
503         vdd_cpu_b: regulator@40 {
504                 compatible = "silergy,syr827";
505                 reg = <0x40>;
506                 fcs,suspend-voltage-selector = <0>;
507                 regulator-name = "vdd_cpu_b";
508                 regulator-min-microvolt = <712500>;
509                 regulator-max-microvolt = <1500000>;
510                 regulator-ramp-delay = <1000>;
511                 regulator-always-on;
512                 regulator-boot-on;
513                 vin-supply = <&vcc_sys>;
514 
515                 regulator-state-mem {
516                         regulator-off-in-suspend;
517                 };
518         };
519 
520         vdd_gpu: regulator@41 {
521                 compatible = "silergy,syr828";
522                 reg = <0x41>;
523                 fcs,suspend-voltage-selector = <1>;
524                 regulator-name = "vdd_gpu";
525                 regulator-min-microvolt = <712500>;
526                 regulator-max-microvolt = <1500000>;
527                 regulator-ramp-delay = <1000>;
528                 regulator-always-on;
529                 regulator-boot-on;
530                 vin-supply = <&vcc_sys>;
531 
532                 regulator-state-mem {
533                         regulator-off-in-suspend;
534                 };
535         };
536 };
537 
538 &i2c1 {
539         i2c-scl-rising-time-ns = <300>;
540         i2c-scl-falling-time-ns = <15>;
541         status = "okay";
542 
543         rt5640: rt5640@1c {
544                 compatible = "realtek,rt5640";
545                 reg = <0x1c>;
546                 clocks = <&cru SCLK_I2S_8CH_OUT>;
547                 clock-names = "mclk";
548                 realtek,in1-differential;
549                 #sound-dai-cells = <0>;
550                 pinctrl-names = "default";
551                 pinctrl-0 = <&rt5640_hpcon>;
552         };
553 };
554 
555 &i2c3 {
556         i2c-scl-rising-time-ns = <450>;
557         i2c-scl-falling-time-ns = <15>;
558         status = "okay";
559 };
560 
561 &i2c4 {
562         i2c-scl-rising-time-ns = <600>;
563         i2c-scl-falling-time-ns = <20>;
564         status = "okay";
565 
566         fusb0: typec-portc@22 {
567                 compatible = "fcs,fusb302";
568                 reg = <0x22>;
569                 interrupt-parent = <&gpio1>;
570                 interrupts = <RK_PA2 IRQ_TYPE_LEVEL_LOW>;
571                 pinctrl-names = "default";
572                 pinctrl-0 = <&fusb0_int>;
573                 vbus-supply = <&vcc5v0_typec>;
574                 status = "okay";
575 
576                 connector {
577                         compatible = "usb-c-connector";
578                         data-role = "host";
579                         label = "USB-C";
580                         op-sink-microwatt = <1000000>;
581                         power-role = "dual";
582                         sink-pdos =
583                                 <PDO_FIXED(5000, 2500, PDO_FIXED_USB_COMM)>;
584                         source-pdos =
585                                 <PDO_FIXED(5000, 1400, PDO_FIXED_USB_COMM)>;
586                         try-power-role = "sink";
587 
588                         ports {
589                                 #address-cells = <1>;
590                                 #size-cells = <0>;
591 
592                                 port@0 {
593                                         reg = <0>;
594 
595                                         usbc_hs: endpoint {
596                                                 remote-endpoint =
597                                                         <&u2phy0_typec_hs>;
598                                         };
599                                 };
600 
601                                 port@1 {
602                                         reg = <1>;
603 
604                                         usbc_ss: endpoint {
605                                                 remote-endpoint =
606                                                         <&tcphy0_typec_ss>;
607                                         };
608                                 };
609                         };
610                 };
611         };
612 
613         accelerometer@68 {
614                 compatible = "invensense,mpu6500";
615                 reg = <0x68>;
616                 interrupt-parent = <&gpio1>;
617                 interrupts = <RK_PC6 IRQ_TYPE_EDGE_RISING>;
618         };
619 };
620 
621 &i2s0 {
622         rockchip,playback-channels = <8>;
623         rockchip,capture-channels = <8>;
624         status = "okay";
625 };
626 
627 &i2s1 {
628         rockchip,playback-channels = <2>;
629         rockchip,capture-channels = <2>;
630         status = "okay";
631 };
632 
633 &i2s2 {
634         status = "okay";
635 };
636 
637 &io_domains {
638         status = "okay";
639 
640         bt656-supply = <&vcc1v8_dvp>;
641         audio-supply = <&vcca1v8_codec>;
642         sdmmc-supply = <&vcc_sdio>;
643         gpio1830-supply = <&vcc_3v0>;
644 };
645 
646 &pcie_phy {
647         status = "okay";
648 };
649 
650 &pcie0 {
651         ep-gpios = <&gpio4 RK_PD1 GPIO_ACTIVE_HIGH>;
652         num-lanes = <4>;
653         pinctrl-names = "default";
654         pinctrl-0 = <&pcie_clkreqn_cpm>;
655         status = "okay";
656 };
657 
658 &pmu_io_domains {
659         pmu1830-supply = <&vcc_3v0>;
660         status = "okay";
661 };
662 
663 &pinctrl {
664         buttons {
665                 pwrbtn: pwrbtn {
666                         rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>;
667                 };
668         };
669 
670         fusb302x {
671                 fusb0_int: fusb0-int {
672                         rockchip,pins = <1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>;
673                 };
674         };
675 
676         ir {
677                 ir_int: ir-int {
678                         rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
679                 };
680         };
681 
682         lcd-panel {
683                 lcd_panel_reset: lcd-panel-reset {
684                         rockchip,pins = <4 RK_PD6 RK_FUNC_GPIO &pcfg_pull_up>;
685                 };
686         };
687 
688         leds {
689                 work_led_pin: work-led-pin {
690                         rockchip,pins = <2 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>;
691                 };
692 
693                 diy_led_pin: diy-led-pin {
694                         rockchip,pins = <0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>;
695                 };
696         };
697 
698         pcie {
699                 pcie_pwr_en: pcie-pwr-en {
700                         rockchip,pins = <1 RK_PC1 RK_FUNC_GPIO &pcfg_pull_none>;
701                 };
702 
703                 pcie_3g_drv: pcie-3g-drv {
704                         rockchip,pins = <0 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>;
705                 };
706         };
707 
708         pmic {
709                 pmic_int_l: pmic-int-l {
710                         rockchip,pins = <1 RK_PC5 RK_FUNC_GPIO &pcfg_pull_up>;
711                 };
712 
713                 vsel1_pin: vsel1-pin {
714                         rockchip,pins = <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_down>;
715                 };
716 
717                 vsel2_pin: vsel2-pin {
718                         rockchip,pins = <1 RK_PB6 RK_FUNC_GPIO &pcfg_pull_down>;
719                 };
720         };
721 
722         rt5640 {
723                 rt5640_hpcon: rt5640-hpcon {
724                         rockchip,pins = <4 RK_PC5 RK_FUNC_GPIO &pcfg_pull_none>;
725                 };
726         };
727 
728         sdio-pwrseq {
729                 wifi_enable_h: wifi-enable-h {
730                         rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
731                 };
732         };
733 
734         usb-typec {
735                 vcc5v0_typec_en: vcc5v0_typec_en {
736                         rockchip,pins = <1 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>;
737                 };
738         };
739 
740         usb2 {
741                 vcc5v0_host_en: vcc5v0-host-en {
742                         rockchip,pins = <1 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>;
743                 };
744         };
745 
746         wifi {
747                 wifi_host_wake_l: wifi-host-wake-l {
748                         rockchip,pins = <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
749                 };
750         };
751 };
752 
753 &pwm0 {
754         status = "okay";
755 };
756 
757 &pwm2 {
758         status = "okay";
759 };
760 
761 &saradc {
762         vref-supply = <&vcca1v8_s3>;
763         status = "okay";
764 };
765 
766 &sdio0 {
767         /* WiFi & BT combo module Ampak AP6356S */
768         bus-width = <4>;
769         cap-sdio-irq;
770         cap-sd-highspeed;
771         keep-power-in-suspend;
772         mmc-pwrseq = <&sdio_pwrseq>;
773         non-removable;
774         pinctrl-names = "default";
775         pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>;
776         sd-uhs-sdr104;
777 
778         /* Power supply */
779         vqmmc-supply = <&vcc1v8_s3>;    /* IO line */
780         vmmc-supply = <&vcc_sdio>;      /* card's power */
781 
782         #address-cells = <1>;
783         #size-cells = <0>;
784         status = "okay";
785 
786         brcmf: wifi@1 {
787                 reg = <1>;
788                 compatible = "brcm,bcm4329-fmac";
789                 interrupt-parent = <&gpio0>;
790                 interrupts = <RK_PA3 IRQ_TYPE_LEVEL_HIGH>;
791                 interrupt-names = "host-wake";
792                 brcm,drive-strength = <5>;
793                 pinctrl-names = "default";
794                 pinctrl-0 = <&wifi_host_wake_l>;
795         };
796 };
797 
798 &sdmmc {
799         bus-width = <4>;
800         cap-mmc-highspeed;
801         cap-sd-highspeed;
802         cd-gpios = <&gpio0 7 GPIO_ACTIVE_LOW>;
803         disable-wp;
804         max-frequency = <150000000>;
805         pinctrl-names = "default";
806         pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_bus4>;
807         status = "okay";
808 };
809 
810 &sdhci {
811         bus-width = <8>;
812         mmc-hs400-1_8v;
813         mmc-hs400-enhanced-strobe;
814         non-removable;
815         status = "okay";
816 };
817 
818 &spdif {
819         pinctrl-0 = <&spdif_bus_1>;
820         status = "okay";
821 
822         spdif_p0: port {
823                 spdif_p0_0: endpoint {
824                         remote-endpoint = <&dit_p0_0>;
825                 };
826         };
827 };
828 
829 &tcphy0 {
830         status = "okay";
831 };
832 
833 &tcphy0_usb3 {
834         port {
835                 tcphy0_typec_ss: endpoint {
836                         remote-endpoint = <&usbc_ss>;
837                 };
838         };
839 };
840 
841 &tcphy1 {
842         status = "okay";
843 };
844 
845 &tsadc {
846         /* tshut mode 0:CRU 1:GPIO */
847         rockchip,hw-tshut-mode = <1>;
848         /* tshut polarity 0:LOW 1:HIGH */
849         rockchip,hw-tshut-polarity = <1>;
850         status = "okay";
851 };
852 
853 &u2phy0 {
854         status = "okay";
855 
856         u2phy0_otg: otg-port {
857                 status = "okay";
858         };
859 
860         u2phy0_host: host-port {
861                 phy-supply = <&vcc5v0_host>;
862                 status = "okay";
863         };
864 
865         port {
866                 u2phy0_typec_hs: endpoint {
867                         remote-endpoint = <&usbc_hs>;
868                 };
869         };
870 };
871 
872 &u2phy1 {
873         status = "okay";
874 
875         u2phy1_otg: otg-port {
876                 status = "okay";
877         };
878 
879         u2phy1_host: host-port {
880                 phy-supply = <&vcc5v0_host>;
881                 status = "okay";
882         };
883 };
884 
885 &uart0 {
886         pinctrl-names = "default";
887         pinctrl-0 = <&uart0_xfer &uart0_cts>;
888         status = "okay";
889 };
890 
891 &uart2 {
892         status = "okay";
893 };
894 
895 &usb_host0_ehci {
896         status = "okay";
897 };
898 
899 &usb_host0_ohci {
900         status = "okay";
901 };
902 
903 &usb_host1_ehci {
904         status = "okay";
905 };
906 
907 &usb_host1_ohci {
908         status = "okay";
909 };
910 
911 &usbdrd3_0 {
912         status = "okay";
913 };
914 
915 &usbdrd_dwc3_0 {
916         status = "okay";
917         dr_mode = "otg";
918 };
919 
920 &usbdrd3_1 {
921         status = "okay";
922 };
923 
924 &usbdrd_dwc3_1 {
925         status = "okay";
926         dr_mode = "host";
927 };
928 
929 &vopb {
930         status = "okay";
931 };
932 
933 &vopb_mmu {
934         status = "okay";
935 };
936 
937 &vopl {
938         status = "okay";
939 };
940 
941 &vopl_mmu {
942         status = "okay";
943 };

~ [ 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