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

TOMOYO Linux Cross Reference
Linux/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts

Version: ~ [ linux-6.11-rc3 ] ~ [ linux-6.10.4 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.45 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.104 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.164 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.223 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.281 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.319 ] ~ [ 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) 2020 Aditya Prayoga <aditya@kobol.io>
  4  */
  5 
  6 /*
  7  * The Kobol Helios64 is a board designed to operate as a NAS and optionally
  8  * ships with an enclosing that can host five 2.5" hard disks.
  9  *
 10  * See https://wiki.kobol.io/helios64/intro/ for further details.
 11  */
 12 
 13 /dts-v1/;
 14 #include "rk3399.dtsi"
 15 #include "rk3399-opp.dtsi"
 16 
 17 / {
 18         model = "Kobol Helios64";
 19         compatible = "kobol,helios64", "rockchip,rk3399";
 20 
 21         aliases {
 22                 ethernet0 = &gmac;
 23                 mmc0 = &sdmmc;
 24                 mmc1 = &sdhci;
 25         };
 26 
 27         avdd_0v9_s0: avdd-0v9-s0 {
 28                 compatible = "regulator-fixed";
 29                 regulator-name = "avdd_0v9_s0";
 30                 regulator-always-on;
 31                 regulator-boot-on;
 32                 regulator-min-microvolt = <900000>;
 33                 regulator-max-microvolt = <900000>;
 34                 vin-supply = <&vcc1v8_sys_s3>;
 35         };
 36 
 37         avdd_1v8_s0: avdd-1v8-s0 {
 38                 compatible = "regulator-fixed";
 39                 regulator-name = "avdd_1v8_s0";
 40                 regulator-always-on;
 41                 regulator-boot-on;
 42                 regulator-min-microvolt = <1800000>;
 43                 regulator-max-microvolt = <1800000>;
 44                 vin-supply = <&vcc3v3_sys_s3>;
 45         };
 46 
 47         chosen {
 48                 stdout-path = "serial2:1500000n8";
 49         };
 50 
 51         clkin_gmac: external-gmac-clock {
 52                 compatible = "fixed-clock";
 53                 clock-frequency = <125000000>;
 54                 clock-output-names = "clkin_gmac";
 55                 #clock-cells = <0>;
 56         };
 57 
 58         fan1 {
 59                 /* fan connected to P7 */
 60                 compatible = "pwm-fan";
 61                 pwms = <&pwm0 0 40000 0>;
 62                 cooling-levels = <0 80 170 255>;
 63         };
 64 
 65         fan2 {
 66                 /* fan connected to P6 */
 67                 compatible = "pwm-fan";
 68                 pwms = <&pwm1 0 40000 0>;
 69                 cooling-levels = <0 80 170 255>;
 70         };
 71 
 72         leds {
 73                 compatible = "gpio-leds";
 74                 pinctrl-names = "default";
 75                 pinctrl-0 = <&sys_grn_led_on &sys_red_led_on>;
 76 
 77                 led-0 {
 78                         label = "helios64:green:status";
 79                         gpios = <&gpio0 RK_PB4 GPIO_ACTIVE_HIGH>;
 80                         default-state = "on";
 81                 };
 82 
 83                 led-1 {
 84                         label = "helios64:red:fault";
 85                         gpios = <&gpio0 RK_PB5 GPIO_ACTIVE_HIGH>;
 86                         default-state = "keep";
 87                 };
 88         };
 89 
 90         hdd_a_power: hdd-a-power {
 91                 compatible = "regulator-fixed";
 92                 enable-active-high;
 93                 gpio = <&gpio1 RK_PA0 GPIO_ACTIVE_HIGH>;
 94                 pinctrl-0 = <&hdd_a_power_en>;
 95                 pinctrl-names = "default";
 96                 regulator-always-on;
 97                 regulator-boot-on;
 98                 regulator-name = "hdd_a_power";
 99                 startup-delay-us = <2000000>;
100         };
101 
102         hdd_b_power: hdd-b-power {
103                 compatible = "regulator-fixed";
104                 enable-active-high;
105                 gpio = <&gpio1 RK_PA1 GPIO_ACTIVE_HIGH>;
106                 pinctrl-0 = <&hdd_b_power_en>;
107                 pinctrl-names = "default";
108                 regulator-always-on;
109                 regulator-boot-on;
110                 regulator-name = "hdd_b_power";
111                 startup-delay-us = <2000000>;
112         };
113 
114         pcie_power: pcie-power {
115                 compatible = "regulator-fixed";
116                 enable-active-high;
117                 gpio = <&gpio1 RK_PD0 GPIO_ACTIVE_HIGH>;
118                 pinctrl-0 = <&pcie_pwr>;
119                 pinctrl-names = "default";
120                 regulator-boot-on;
121                 regulator-name = "pcie_power";
122                 startup-delay-us = <10000>;
123                 vin-supply = <&vcc5v0_perdev>;
124         };
125 
126         usblan_power: usblan-power {
127                 compatible = "regulator-fixed";
128                 enable-active-high;
129                 gpio = <&gpio1 RK_PC7 GPIO_ACTIVE_HIGH>;
130                 pinctrl-names = "default";
131                 pinctrl-0 = <&usb_lan_en>;
132                 regulator-name = "usblan_power";
133                 regulator-always-on;
134                 regulator-boot-on;
135                 vin-supply = <&vcc5v0_usb>;
136         };
137 
138         vcc1v8_sys_s0: vcc1v8-sys-s0 {
139                 compatible = "regulator-fixed";
140                 regulator-name = "vcc1v8_sys_s0";
141                 regulator-always-on;
142                 regulator-boot-on;
143                 regulator-min-microvolt = <1800000>;
144                 regulator-max-microvolt = <1800000>;
145                 vin-supply = <&vcc1v8_sys_s3>;
146         };
147 
148         vcc3v0_sd: vcc3v0-sd {
149                 compatible = "regulator-fixed";
150                 enable-active-high;
151                 gpio = <&gpio0 RK_PA1 GPIO_ACTIVE_HIGH>;
152                 regulator-name = "vcc3v0_sd";
153                 regulator-boot-on;
154                 regulator-min-microvolt = <3000000>;
155                 regulator-max-microvolt = <3000000>;
156                 pinctrl-names = "default";
157                 pinctrl-0 = <&sdmmc0_pwr_h>;
158                 vin-supply = <&vcc3v3_sys_s3>;
159         };
160 
161         vcc3v3_sys_s3: vcc_lan: vcc3v3-sys-s3 {
162                 compatible = "regulator-fixed";
163                 regulator-name = "vcc3v3_sys_s3";
164                 regulator-always-on;
165                 regulator-boot-on;
166                 regulator-min-microvolt = <3300000>;
167                 regulator-max-microvolt = <3300000>;
168                 vin-supply = <&vcc5v0_sys>;
169 
170                 regulator-state-mem {
171                         regulator-on-in-suspend;
172                 };
173         };
174 
175         vcc5v0_perdev: vcc5v0-perdev {
176                 compatible = "regulator-fixed";
177                 regulator-name = "vcc5v0_perdev";
178                 regulator-always-on;
179                 regulator-boot-on;
180                 regulator-min-microvolt = <5000000>;
181                 regulator-max-microvolt = <5000000>;
182                 vin-supply = <&vcc12v_dcin_bkup>;
183         };
184 
185         vcc5v0_sys: vcc5v0-sys {
186                 compatible = "regulator-fixed";
187                 regulator-name = "vcc5v0_sys";
188                 regulator-always-on;
189                 regulator-boot-on;
190                 regulator-min-microvolt = <5000000>;
191                 regulator-max-microvolt = <5000000>;
192                 vin-supply = <&vcc12v_dcin_bkup>;
193 
194                 regulator-state-mem {
195                         regulator-on-in-suspend;
196                 };
197         };
198 
199         vcc5v0_usb: vcc5v0-usb {
200                 compatible = "regulator-fixed";
201                 enable-active-high;
202                 gpio = <&gpio1 RK_PC6 GPIO_ACTIVE_HIGH>;
203                 pinctrl-names = "default";
204                 pinctrl-0 = <&vcc5v0_usb_en>;
205                 regulator-name = "vcc5v0_usb";
206                 regulator-always-on;
207                 regulator-boot-on;
208                 regulator-min-microvolt = <5000000>;
209                 regulator-max-microvolt = <5000000>;
210                 vin-supply = <&vcc5v0_perdev>;
211         };
212 
213         vcc12v_dcin: vcc12v-dcin {
214                 compatible = "regulator-fixed";
215                 regulator-name = "vcc12v_dcin";
216                 regulator-always-on;
217                 regulator-boot-on;
218                 regulator-min-microvolt = <12000000>;
219                 regulator-max-microvolt = <12000000>;
220         };
221 
222         vcc12v_dcin_bkup: vcc12v-dcin-bkup {
223                 compatible = "regulator-fixed";
224                 regulator-name = "vcc12v_dcin_bkup";
225                 regulator-always-on;
226                 regulator-boot-on;
227                 regulator-min-microvolt = <12000000>;
228                 regulator-max-microvolt = <12000000>;
229                 vin-supply = <&vcc12v_dcin>;
230         };
231 };
232 
233 /*
234  * The system doesn't run stable with cpu freq enabled, so disallow the lower
235  * frequencies until this problem is properly understood and resolved.
236  */
237 &cluster0_opp {
238         /delete-node/ opp00;
239         /delete-node/ opp01;
240         /delete-node/ opp02;
241         /delete-node/ opp03;
242         /delete-node/ opp04;
243 };
244 
245 &cluster1_opp {
246         /delete-node/ opp00;
247         /delete-node/ opp01;
248         /delete-node/ opp02;
249         /delete-node/ opp03;
250         /delete-node/ opp04;
251         /delete-node/ opp05;
252         /delete-node/ opp06;
253 };
254 
255 &cpu_b0 {
256         cpu-supply = <&vdd_cpu_b>;
257 };
258 
259 &cpu_b1 {
260         cpu-supply = <&vdd_cpu_b>;
261 };
262 
263 &cpu_l0 {
264         cpu-supply = <&vdd_cpu_l>;
265 };
266 
267 &cpu_l1 {
268         cpu-supply = <&vdd_cpu_l>;
269 };
270 
271 &cpu_l2 {
272         cpu-supply = <&vdd_cpu_l>;
273 };
274 
275 &cpu_l3 {
276         cpu-supply = <&vdd_cpu_l>;
277 };
278 
279 &emmc_phy {
280         status = "okay";
281 };
282 
283 &gmac {
284         assigned-clock-parents = <&clkin_gmac>;
285         assigned-clocks = <&cru SCLK_RMII_SRC>;
286         clock_in_out = "input";
287         phy-mode = "rgmii";
288         phy-supply = <&vcc_lan>;
289         pinctrl-names = "default";
290         pinctrl-0 = <&rgmii_pins &gphy_reset>;
291         rx_delay = <0x20>;
292         tx_delay = <0x28>;
293         snps,reset-active-low;
294         snps,reset-delays-us = <0 10000 50000>;
295         snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
296         status = "okay";
297 };
298 
299 &i2c0 {
300         clock-frequency = <400000>;
301         i2c-scl-rising-time-ns = <168>;
302         i2c-scl-falling-time-ns = <4>;
303         status = "okay";
304 
305         rk808: pmic@1b {
306                 compatible = "rockchip,rk808";
307                 reg = <0x1b>;
308                 interrupt-parent = <&gpio0>;
309                 interrupts = <10 IRQ_TYPE_LEVEL_LOW>;
310                 clock-output-names = "xin32k", "rk808-clkout2";
311                 pinctrl-names = "default";
312                 pinctrl-0 = <&pmic_int_l>;
313                 rockchip,system-power-controller;
314                 vcc1-supply = <&vcc5v0_sys>;
315                 vcc2-supply = <&vcc5v0_sys>;
316                 vcc3-supply = <&vcc5v0_sys>;
317                 vcc4-supply = <&vcc5v0_sys>;
318                 vcc6-supply = <&vcc5v0_sys>;
319                 vcc7-supply = <&vcc5v0_sys>;
320                 vcc8-supply = <&vcc3v3_sys_s3>;
321                 vcc9-supply = <&vcc5v0_sys>;
322                 vcc10-supply = <&vcc5v0_sys>;
323                 vcc11-supply = <&vcc5v0_sys>;
324                 vcc12-supply = <&vcc3v3_sys_s3>;
325                 vddio-supply = <&vcc3v0_s3>;
326                 wakeup-source;
327                 #clock-cells = <1>;
328 
329                 regulators {
330                         vdd_cpu_l: DCDC_REG2 {
331                                 regulator-name = "vdd_cpu_l";
332                                 regulator-always-on;
333                                 regulator-boot-on;
334                                 regulator-min-microvolt = <750000>;
335                                 regulator-max-microvolt = <1350000>;
336                                 regulator-ramp-delay = <6001>;
337 
338                                 regulator-state-mem {
339                                         regulator-off-in-suspend;
340                                 };
341                         };
342 
343                         vcc1v8_sys_s3: DCDC_REG4 {
344                                 regulator-name = "vcc1v8_sys_s3";
345                                 regulator-always-on;
346                                 regulator-boot-on;
347                                 regulator-min-microvolt = <1800000>;
348                                 regulator-max-microvolt = <1800000>;
349 
350                                 regulator-state-mem {
351                                         regulator-on-in-suspend;
352                                         regulator-suspend-microvolt = <1800000>;
353                                 };
354                         };
355 
356                         vcc_sdio_s0: LDO_REG4 {
357                                 regulator-name = "vcc_sdio_s0";
358                                 regulator-always-on;
359                                 regulator-boot-on;
360                                 regulator-min-microvolt = <1800000>;
361                                 regulator-max-microvolt = <3000000>;
362 
363                                 regulator-state-mem {
364                                         regulator-on-in-suspend;
365                                         regulator-suspend-microvolt = <3000000>;
366                                 };
367                         };
368 
369                         vcc3v0_s3: LDO_REG8 {
370                                 regulator-name = "vcc3v0_s3";
371                                 regulator-always-on;
372                                 regulator-boot-on;
373                                 regulator-min-microvolt = <3000000>;
374                                 regulator-max-microvolt = <3000000>;
375 
376                                 regulator-state-mem {
377                                         regulator-on-in-suspend;
378                                         regulator-suspend-microvolt = <3000000>;
379                                 };
380                         };
381                 };
382         };
383 
384         vdd_cpu_b: regulator@40 {
385                 compatible = "silergy,syr827";
386                 reg = <0x40>;
387                 fcs,suspend-voltage-selector = <1>;
388                 regulator-name = "vdd_cpu_b";
389                 regulator-always-on;
390                 regulator-boot-on;
391                 regulator-min-microvolt = <712500>;
392                 regulator-max-microvolt = <1500000>;
393                 regulator-ramp-delay = <1000>;
394                 vin-supply = <&vcc5v0_sys>;
395 
396                 regulator-state-mem {
397                         regulator-off-in-suspend;
398                 };
399         };
400 };
401 
402 &i2c2 {
403         clock-frequency = <400000>;
404         i2c-scl-rising-time-ns = <160>;
405         i2c-scl-falling-time-ns = <30>;
406         status = "okay";
407 
408         temp@4c {
409                 compatible = "national,lm75";
410                 reg = <0x4c>;
411         };
412 };
413 
414 &io_domains {
415         audio-supply = <&vcc1v8_sys_s0>;
416         bt656-supply = <&vcc1v8_sys_s0>;
417         gpio1830-supply = <&vcc3v0_s3>;
418         sdmmc-supply = <&vcc_sdio_s0>;
419         status = "okay";
420 };
421 
422 &pcie_phy {
423         status = "okay";
424 };
425 
426 &pcie0 {
427         ep-gpios = <&gpio2 RK_PD4 GPIO_ACTIVE_HIGH>;
428         max-link-speed = <2>;
429         num-lanes = <2>;
430         pinctrl-names = "default";
431         status = "okay";
432 
433         vpcie12v-supply = <&vcc12v_dcin>;
434         vpcie3v3-supply = <&pcie_power>;
435         vpcie1v8-supply = <&avdd_1v8_s0>;
436         vpcie0v9-supply = <&avdd_0v9_s0>;
437 };
438 
439 &pinctrl {
440         gmac {
441                 gphy_reset: gphy-reset {
442                         rockchip,pins = <3 RK_PB7 RK_FUNC_GPIO &pcfg_output_low>;
443                 };
444         };
445 
446         leds {
447                 sys_grn_led_on: sys-grn-led-on {
448                         rockchip,pins = <0 RK_PB4 RK_FUNC_GPIO &pcfg_pull_down>;
449                 };
450 
451                 sys_red_led_on: sys-red-led-on {
452                         rockchip,pins = <0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_down>;
453                 };
454         };
455 
456         pcie {
457                 pcie_pwr: pcie-pwr {
458                         rockchip,pins =
459                                 <1 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>;
460                 };
461         };
462 
463         pmic {
464                 pmic_int_l: pmic-int-l {
465                         rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
466                 };
467         };
468 
469         power {
470                 hdd_a_power_en: hdd-a-power-en {
471                         rockchip,pins = <1 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>;
472                 };
473 
474                 hdd_b_power_en: hdd-b-power-en {
475                         rockchip,pins = <1 RK_PA1 RK_FUNC_GPIO &pcfg_pull_none>;
476                 };
477 
478                 vcc5v0_usb_en: vcc5v0-usb-en {
479                         rockchip,pins = <1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
480                 };
481 
482                 usb_lan_en: usb-lan-en {
483                         rockchip,pins = <1 RK_PC7 RK_FUNC_GPIO &pcfg_pull_none>;
484                 };
485         };
486 
487         vcc3v0-sd {
488                 sdmmc0_pwr_h: sdmmc0-pwr-h {
489                         rockchip,pins = <0 RK_PA1 RK_FUNC_GPIO &pcfg_pull_up>;
490                 };
491         };
492 };
493 
494 &pmu_io_domains {
495         pmu1830-supply = <&vcc3v0_s3>;
496         status = "okay";
497 };
498 
499 &pwm0 {
500         /* pwm-fan on P7 */
501         status = "okay";
502 };
503 
504 &pwm1 {
505         /* pwm-fan on P6 */
506         status = "okay";
507 };
508 
509 &sdhci {
510         bus-width = <8>;
511         mmc-hs200-1_8v;
512         non-removable;
513         vqmmc-supply = <&vcc1v8_sys_s0>;
514         status = "okay";
515 };
516 
517 &sdmmc {
518         bus-width = <4>;
519         cap-sd-highspeed;
520         cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>;
521         disable-wp;
522         pinctrl-names = "default";
523         pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>;
524         vmmc-supply = <&vcc3v0_sd>;
525         vqmmc-supply = <&vcc_sdio_s0>;
526         status = "okay";
527 };
528 
529 &spi1 {
530         status = "okay";
531 
532         spiflash: flash@0 {
533                 compatible = "jedec,spi-nor";
534                 reg = <0x0>;
535                 spi-max-frequency = <25000000>;
536                 status = "okay";
537                 m25p,fast-read;
538         };
539 };
540 
541 /* UEXT connector */
542 &spi2 {
543         status = "okay";
544 };
545 
546 &spi5 {
547         status = "okay";
548 };
549 
550 &tcphy1 {
551         /* phy for &usbdrd_dwc3_1 */
552         status = "okay";
553 };
554 
555 &tsadc {
556         /* tshut mode 0:CRU 1:GPIO */
557         rockchip,hw-tshut-mode = <1>;
558         /* tshut polarity 0:LOW 1:HIGH */
559         rockchip,hw-tshut-polarity = <1>;
560         status = "okay";
561 };
562 
563 &u2phy1 {
564         status = "okay";
565 
566         otg-port {
567                 /* phy for &usbdrd_dwc3_1 */
568                 phy-supply = <&vcc5v0_usb>;
569                 status = "okay";
570         };
571 };
572 
573 &uart2 {
574         status = "okay";
575 };
576 
577 &usbdrd3_1 {
578         status = "okay";
579 
580         usb@fe900000 {
581                 dr_mode = "host";
582                 status = "okay";
583                 #address-cells = <1>;
584                 #size-cells = <0>;
585 
586                 hub@1 {
587                         compatible = "usb2109,0815";
588                         reg = <1>;
589                         #address-cells = <1>;
590                         #size-cells = <0>;
591 
592                         port@1 {
593                                 reg = <1>;
594                                 #trigger-source-cells = <0>;
595                         };
596 
597                         port@2 {
598                                 reg = <2>;
599                                 #trigger-source-cells = <0>;
600                         };
601 
602                         port@3 {
603                                 reg = <3>;
604                                 #trigger-source-cells = <0>;
605                         };
606 
607                         device@4 {
608                                 compatible = "usbbda,8156";
609                                 reg = <4>;
610                                 #address-cells = <2>;
611                                 #size-cells = <0>;
612 
613                                 interface@0 {   /* interface 0 of configuration 1 */
614                                         compatible = "usbifbda,8156.config1.0";
615                                         reg = <0 1>;
616                                 };
617                         };
618                 };
619         };
620 };

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