The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/device-tree/src/arm64/rockchip/rk3399-rockpro64.dtsi

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

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

Cache object: 0bb54da14a1554453890f2f89d99fbf8


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.