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/rk3568-rock-3a.dts

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 /dts-v1/;
    4 #include <dt-bindings/gpio/gpio.h>
    5 #include <dt-bindings/leds/common.h>
    6 #include <dt-bindings/pinctrl/rockchip.h>
    7 #include <dt-bindings/soc/rockchip,vop2.h>
    8 #include "rk3568.dtsi"
    9 
   10 / {
   11         model = "Radxa ROCK3 Model A";
   12         compatible = "radxa,rock3a", "rockchip,rk3568";
   13 
   14         aliases {
   15                 ethernet0 = &gmac1;
   16                 mmc0 = &sdmmc0;
   17                 mmc1 = &sdhci;
   18         };
   19 
   20         chosen: chosen {
   21                 stdout-path = "serial2:1500000n8";
   22         };
   23 
   24         hdmi-con {
   25                 compatible = "hdmi-connector";
   26                 type = "a";
   27 
   28                 port {
   29                         hdmi_con_in: endpoint {
   30                                 remote-endpoint = <&hdmi_out_con>;
   31                         };
   32                 };
   33         };
   34 
   35         leds {
   36                 compatible = "gpio-leds";
   37 
   38                 led_user: led-0 {
   39                         gpios = <&gpio0 RK_PB7 GPIO_ACTIVE_HIGH>;
   40                         function = LED_FUNCTION_HEARTBEAT;
   41                         color = <LED_COLOR_ID_BLUE>;
   42                         linux,default-trigger = "heartbeat";
   43                         pinctrl-names = "default";
   44                         pinctrl-0 = <&led_user_en>;
   45                 };
   46         };
   47 
   48         rk809-sound {
   49                 compatible = "simple-audio-card";
   50                 simple-audio-card,format = "i2s";
   51                 simple-audio-card,name = "Analog RK809";
   52                 simple-audio-card,mclk-fs = <256>;
   53 
   54                 simple-audio-card,cpu {
   55                         sound-dai = <&i2s1_8ch>;
   56                 };
   57 
   58                 simple-audio-card,codec {
   59                         sound-dai = <&rk809>;
   60                 };
   61         };
   62 
   63         vcc12v_dcin: vcc12v-dcin {
   64                 compatible = "regulator-fixed";
   65                 regulator-name = "vcc12v_dcin";
   66                 regulator-always-on;
   67                 regulator-boot-on;
   68         };
   69 
   70         vcc3v3_sys: vcc3v3-sys {
   71                 compatible = "regulator-fixed";
   72                 regulator-name = "vcc3v3_sys";
   73                 regulator-always-on;
   74                 regulator-boot-on;
   75                 regulator-min-microvolt = <3300000>;
   76                 regulator-max-microvolt = <3300000>;
   77                 vin-supply = <&vcc12v_dcin>;
   78         };
   79 
   80         vcc5v0_sys: vcc5v0-sys {
   81                 compatible = "regulator-fixed";
   82                 regulator-name = "vcc5v0_sys";
   83                 regulator-always-on;
   84                 regulator-boot-on;
   85                 regulator-min-microvolt = <5000000>;
   86                 regulator-max-microvolt = <5000000>;
   87                 vin-supply = <&vcc12v_dcin>;
   88         };
   89 
   90         vcc5v0_usb: vcc5v0-usb {
   91                 compatible = "regulator-fixed";
   92                 regulator-name = "vcc5v0_usb";
   93                 regulator-always-on;
   94                 regulator-boot-on;
   95                 regulator-min-microvolt = <5000000>;
   96                 regulator-max-microvolt = <5000000>;
   97                 vin-supply = <&vcc12v_dcin>;
   98         };
   99 
  100         vcc5v0_usb_host: vcc5v0-usb-host {
  101                 compatible = "regulator-fixed";
  102                 enable-active-high;
  103                 gpio = <&gpio0 RK_PA6 GPIO_ACTIVE_HIGH>;
  104                 pinctrl-names = "default";
  105                 pinctrl-0 = <&vcc5v0_usb_host_en>;
  106                 regulator-name = "vcc5v0_usb_host";
  107                 regulator-min-microvolt = <5000000>;
  108                 regulator-max-microvolt = <5000000>;
  109                 vin-supply = <&vcc5v0_usb>;
  110         };
  111 
  112         vcc5v0_usb_hub: vcc5v0-usb-hub-regulator {
  113                 compatible = "regulator-fixed";
  114                 enable-active-high;
  115                 gpio = <&gpio0 RK_PD5 GPIO_ACTIVE_HIGH>;
  116                 pinctrl-names = "default";
  117                 pinctrl-0 = <&vcc5v0_usb_hub_en>;
  118                 regulator-name = "vcc5v0_usb_hub";
  119                 regulator-always-on;
  120                 vin-supply = <&vcc5v0_usb>;
  121         };
  122 
  123         vcc5v0_usb_otg: vcc5v0-usb-otg-regulator {
  124                 compatible = "regulator-fixed";
  125                 enable-active-high;
  126                 gpio = <&gpio0 RK_PA5 GPIO_ACTIVE_HIGH>;
  127                 pinctrl-names = "default";
  128                 pinctrl-0 = <&vcc5v0_usb_otg_en>;
  129                 regulator-name = "vcc5v0_usb_otg";
  130                 regulator-min-microvolt = <5000000>;
  131                 regulator-max-microvolt = <5000000>;
  132                 vin-supply = <&vcc5v0_usb>;
  133         };
  134 };
  135 
  136 &combphy0 {
  137         status = "okay";
  138 };
  139 
  140 &combphy1 {
  141         status = "okay";
  142 };
  143 
  144 &cpu0 {
  145         cpu-supply = <&vdd_cpu>;
  146 };
  147 
  148 &cpu1 {
  149         cpu-supply = <&vdd_cpu>;
  150 };
  151 
  152 &cpu2 {
  153         cpu-supply = <&vdd_cpu>;
  154 };
  155 
  156 &cpu3 {
  157         cpu-supply = <&vdd_cpu>;
  158 };
  159 
  160 &gmac1 {
  161         assigned-clocks = <&cru SCLK_GMAC1_RX_TX>, <&cru SCLK_GMAC1>;
  162         assigned-clock-parents = <&cru SCLK_GMAC1_RGMII_SPEED>;
  163         assigned-clock-rates = <0>, <125000000>;
  164         clock_in_out = "output";
  165         phy-handle = <&rgmii_phy1>;
  166         phy-mode = "rgmii-id";
  167         pinctrl-names = "default";
  168         pinctrl-0 = <&gmac1m1_miim
  169                      &gmac1m1_tx_bus2
  170                      &gmac1m1_rx_bus2
  171                      &gmac1m1_rgmii_clk
  172                      &gmac1m1_rgmii_bus>;
  173         status = "okay";
  174 };
  175 
  176 &gpu {
  177         mali-supply = <&vdd_gpu>;
  178         status = "okay";
  179 };
  180 
  181 &hdmi {
  182         avdd-0v9-supply = <&vdda0v9_image>;
  183         avdd-1v8-supply = <&vcca1v8_image>;
  184         status = "okay";
  185 };
  186 
  187 &hdmi_in {
  188         hdmi_in_vp0: endpoint {
  189                 remote-endpoint = <&vp0_out_hdmi>;
  190         };
  191 };
  192 
  193 &hdmi_out {
  194         hdmi_out_con: endpoint {
  195                 remote-endpoint = <&hdmi_con_in>;
  196         };
  197 };
  198 
  199 &hdmi_sound {
  200         status = "okay";
  201 };
  202 
  203 &i2c0 {
  204         status = "okay";
  205 
  206         vdd_cpu: regulator@1c {
  207                 compatible = "tcs,tcs4525";
  208                 reg = <0x1c>;
  209                 fcs,suspend-voltage-selector = <1>;
  210                 regulator-name = "vdd_cpu";
  211                 regulator-always-on;
  212                 regulator-boot-on;
  213                 regulator-min-microvolt = <800000>;
  214                 regulator-max-microvolt = <1150000>;
  215                 regulator-ramp-delay = <2300>;
  216                 vin-supply = <&vcc5v0_sys>;
  217 
  218                 regulator-state-mem {
  219                         regulator-off-in-suspend;
  220                 };
  221         };
  222 
  223         rk809: pmic@20 {
  224                 compatible = "rockchip,rk809";
  225                 reg = <0x20>;
  226                 interrupt-parent = <&gpio0>;
  227                 interrupts = <RK_PA3 IRQ_TYPE_LEVEL_LOW>;
  228                 assigned-clocks = <&cru I2S1_MCLKOUT_TX>;
  229                 assigned-clock-parents = <&cru CLK_I2S1_8CH_TX>;
  230                 #clock-cells = <1>;
  231                 clock-names = "mclk";
  232                 clocks = <&cru I2S1_MCLKOUT_TX>;
  233                 pinctrl-names = "default";
  234                 pinctrl-0 = <&pmic_int>, <&i2s1m0_mclk>;
  235                 rockchip,system-power-controller;
  236                 #sound-dai-cells = <0>;
  237                 vcc1-supply = <&vcc3v3_sys>;
  238                 vcc2-supply = <&vcc3v3_sys>;
  239                 vcc3-supply = <&vcc3v3_sys>;
  240                 vcc4-supply = <&vcc3v3_sys>;
  241                 vcc5-supply = <&vcc3v3_sys>;
  242                 vcc6-supply = <&vcc3v3_sys>;
  243                 vcc7-supply = <&vcc3v3_sys>;
  244                 vcc8-supply = <&vcc3v3_sys>;
  245                 vcc9-supply = <&vcc3v3_sys>;
  246                 wakeup-source;
  247 
  248                 regulators {
  249                         vdd_logic: DCDC_REG1 {
  250                                 regulator-name = "vdd_logic";
  251                                 regulator-always-on;
  252                                 regulator-boot-on;
  253                                 regulator-init-microvolt = <900000>;
  254                                 regulator-initial-mode = <0x2>;
  255                                 regulator-min-microvolt = <500000>;
  256                                 regulator-max-microvolt = <1350000>;
  257                                 regulator-ramp-delay = <6001>;
  258 
  259                                 regulator-state-mem {
  260                                         regulator-off-in-suspend;
  261                                 };
  262                         };
  263 
  264                         vdd_gpu: DCDC_REG2 {
  265                                 regulator-name = "vdd_gpu";
  266                                 regulator-always-on;
  267                                 regulator-init-microvolt = <900000>;
  268                                 regulator-initial-mode = <0x2>;
  269                                 regulator-min-microvolt = <500000>;
  270                                 regulator-max-microvolt = <1350000>;
  271                                 regulator-ramp-delay = <6001>;
  272 
  273                                 regulator-state-mem {
  274                                         regulator-off-in-suspend;
  275                                 };
  276                         };
  277 
  278                         vcc_ddr: DCDC_REG3 {
  279                                 regulator-name = "vcc_ddr";
  280                                 regulator-always-on;
  281                                 regulator-boot-on;
  282                                 regulator-initial-mode = <0x2>;
  283 
  284                                 regulator-state-mem {
  285                                         regulator-on-in-suspend;
  286                                 };
  287                         };
  288 
  289                         vdd_npu: DCDC_REG4 {
  290                                 regulator-name = "vdd_npu";
  291                                 regulator-init-microvolt = <900000>;
  292                                 regulator-initial-mode = <0x2>;
  293                                 regulator-min-microvolt = <500000>;
  294                                 regulator-max-microvolt = <1350000>;
  295                                 regulator-ramp-delay = <6001>;
  296 
  297                                 regulator-state-mem {
  298                                         regulator-off-in-suspend;
  299                                 };
  300                         };
  301 
  302                         vcc_1v8: DCDC_REG5 {
  303                                 regulator-name = "vcc_1v8";
  304                                 regulator-always-on;
  305                                 regulator-boot-on;
  306                                 regulator-min-microvolt = <1800000>;
  307                                 regulator-max-microvolt = <1800000>;
  308 
  309                                 regulator-state-mem {
  310                                         regulator-off-in-suspend;
  311                                 };
  312                         };
  313 
  314                         vdda0v9_image: LDO_REG1 {
  315                                 regulator-name = "vdda0v9_image";
  316                                 regulator-min-microvolt = <900000>;
  317                                 regulator-max-microvolt = <900000>;
  318 
  319                                 regulator-state-mem {
  320                                         regulator-off-in-suspend;
  321                                 };
  322                         };
  323 
  324                         vdda_0v9: LDO_REG2 {
  325                                 regulator-name = "vdda_0v9";
  326                                 regulator-always-on;
  327                                 regulator-boot-on;
  328                                 regulator-min-microvolt = <900000>;
  329                                 regulator-max-microvolt = <900000>;
  330 
  331                                 regulator-state-mem {
  332                                         regulator-off-in-suspend;
  333                                 };
  334                         };
  335 
  336                         vdda0v9_pmu: LDO_REG3 {
  337                                 regulator-name = "vdda0v9_pmu";
  338                                 regulator-always-on;
  339                                 regulator-boot-on;
  340                                 regulator-min-microvolt = <900000>;
  341                                 regulator-max-microvolt = <900000>;
  342 
  343                                 regulator-state-mem {
  344                                         regulator-on-in-suspend;
  345                                         regulator-suspend-microvolt = <900000>;
  346                                 };
  347                         };
  348 
  349                         vccio_acodec: LDO_REG4 {
  350                                 regulator-name = "vccio_acodec";
  351                                 regulator-always-on;
  352                                 regulator-min-microvolt = <3300000>;
  353                                 regulator-max-microvolt = <3300000>;
  354 
  355                                 regulator-state-mem {
  356                                         regulator-off-in-suspend;
  357                                 };
  358                         };
  359 
  360                         vccio_sd: LDO_REG5 {
  361                                 regulator-name = "vccio_sd";
  362                                 regulator-min-microvolt = <1800000>;
  363                                 regulator-max-microvolt = <3300000>;
  364 
  365                                 regulator-state-mem {
  366                                         regulator-off-in-suspend;
  367                                 };
  368                         };
  369 
  370                         vcc3v3_pmu: LDO_REG6 {
  371                                 regulator-name = "vcc3v3_pmu";
  372                                 regulator-always-on;
  373                                 regulator-boot-on;
  374                                 regulator-min-microvolt = <3300000>;
  375                                 regulator-max-microvolt = <3300000>;
  376 
  377                                 regulator-state-mem {
  378                                         regulator-on-in-suspend;
  379                                         regulator-suspend-microvolt = <3300000>;
  380                                 };
  381                         };
  382 
  383                         vcca_1v8: LDO_REG7 {
  384                                 regulator-name = "vcca_1v8";
  385                                 regulator-always-on;
  386                                 regulator-boot-on;
  387                                 regulator-min-microvolt = <1800000>;
  388                                 regulator-max-microvolt = <1800000>;
  389 
  390                                 regulator-state-mem {
  391                                         regulator-off-in-suspend;
  392                                 };
  393                         };
  394 
  395                         vcca1v8_pmu: LDO_REG8 {
  396                                 regulator-name = "vcca1v8_pmu";
  397                                 regulator-always-on;
  398                                 regulator-boot-on;
  399                                 regulator-min-microvolt = <1800000>;
  400                                 regulator-max-microvolt = <1800000>;
  401 
  402                                 regulator-state-mem {
  403                                         regulator-on-in-suspend;
  404                                         regulator-suspend-microvolt = <1800000>;
  405                                 };
  406                         };
  407 
  408                         vcca1v8_image: LDO_REG9 {
  409                                 regulator-name = "vcca1v8_image";
  410                                 regulator-min-microvolt = <1800000>;
  411                                 regulator-max-microvolt = <1800000>;
  412 
  413                                 regulator-state-mem {
  414                                         regulator-off-in-suspend;
  415                                 };
  416                         };
  417 
  418                         vcc_3v3: SWITCH_REG1 {
  419                                 regulator-name = "vcc_3v3";
  420                                 regulator-always-on;
  421                                 regulator-boot-on;
  422 
  423                                 regulator-state-mem {
  424                                         regulator-off-in-suspend;
  425                                 };
  426                         };
  427 
  428                         vcc3v3_sd: SWITCH_REG2 {
  429                                 regulator-name = "vcc3v3_sd";
  430 
  431                                 regulator-state-mem {
  432                                         regulator-off-in-suspend;
  433                                 };
  434                         };
  435                 };
  436 
  437                 codec {
  438                         mic-in-differential;
  439                 };
  440         };
  441 };
  442 
  443 &i2s0_8ch {
  444         status = "okay";
  445 };
  446 
  447 &i2s1_8ch {
  448         rockchip,trcm-sync-tx-only;
  449         status = "okay";
  450 };
  451 
  452 &mdio1 {
  453         rgmii_phy1: ethernet-phy@0 {
  454                 compatible = "ethernet-phy-ieee802.3-c22";
  455                 reg = <0x0>;
  456                 pinctrl-names = "default";
  457                 pinctrl-0 = <&eth_phy_rst>;
  458                 reset-assert-us = <20000>;
  459                 reset-deassert-us = <100000>;
  460                 reset-gpios = <&gpio3 RK_PB0 GPIO_ACTIVE_LOW>;
  461         };
  462 };
  463 
  464 &pinctrl {
  465         ethernet {
  466                 eth_phy_rst: eth_phy_rst {
  467                         rockchip,pins = <3 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
  468                 };
  469         };
  470 
  471         leds {
  472                 led_user_en: led_user_en {
  473                         rockchip,pins = <0 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
  474                 };
  475         };
  476 
  477         pmic {
  478                 pmic_int: pmic_int {
  479                         rockchip,pins =
  480                                 <0 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>;
  481                 };
  482         };
  483 
  484         usb {
  485                 vcc5v0_usb_host_en: vcc5v0_usb_host_en {
  486                         rockchip,pins = <0 RK_PA6 RK_FUNC_GPIO &pcfg_pull_none>;
  487                 };
  488                 vcc5v0_usb_hub_en: vcc5v0_usb_hub_en {
  489                         rockchip,pins = <0 RK_PD5 RK_FUNC_GPIO &pcfg_pull_none>;
  490                 };
  491                 vcc5v0_usb_otg_en: vcc5v0_usb_otg_en {
  492                         rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>;
  493                 };
  494         };
  495 };
  496 
  497 &pmu_io_domains {
  498         pmuio1-supply = <&vcc3v3_pmu>;
  499         pmuio2-supply = <&vcc3v3_pmu>;
  500         vccio1-supply = <&vccio_acodec>;
  501         vccio2-supply = <&vcc_1v8>;
  502         vccio3-supply = <&vccio_sd>;
  503         vccio4-supply = <&vcc_1v8>;
  504         vccio5-supply = <&vcc_3v3>;
  505         vccio6-supply = <&vcc_1v8>;
  506         vccio7-supply = <&vcc_3v3>;
  507         status = "okay";
  508 };
  509 
  510 &saradc {
  511         vref-supply = <&vcca_1v8>;
  512         status = "okay";
  513 };
  514 
  515 &sdhci {
  516         bus-width = <8>;
  517         max-frequency = <200000000>;
  518         non-removable;
  519         pinctrl-names = "default";
  520         pinctrl-0 = <&emmc_bus8 &emmc_clk &emmc_cmd &emmc_datastrobe>;
  521         vmmc-supply = <&vcc_3v3>;
  522         vqmmc-supply = <&vcc_1v8>;
  523         status = "okay";
  524 };
  525 
  526 &sdmmc0 {
  527         bus-width = <4>;
  528         cap-sd-highspeed;
  529         cd-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>;
  530         disable-wp;
  531         pinctrl-names = "default";
  532         pinctrl-0 = <&sdmmc0_bus4 &sdmmc0_clk &sdmmc0_cmd &sdmmc0_det>;
  533         sd-uhs-sdr104;
  534         vmmc-supply = <&vcc3v3_sd>;
  535         vqmmc-supply = <&vccio_sd>;
  536         status = "okay";
  537 };
  538 
  539 &tsadc {
  540         rockchip,hw-tshut-mode = <1>;
  541         rockchip,hw-tshut-polarity = <0>;
  542         status = "okay";
  543 };
  544 
  545 &uart2 {
  546         status = "okay";
  547 };
  548 
  549 &usb_host0_ehci {
  550         status = "okay";
  551 };
  552 
  553 &usb_host0_ohci {
  554         status = "okay";
  555 };
  556 
  557 &usb_host0_xhci {
  558         extcon = <&usb2phy0>;
  559         status = "okay";
  560 };
  561 
  562 &usb_host1_ehci {
  563         status = "okay";
  564 };
  565 
  566 &usb_host1_ohci {
  567         status = "okay";
  568 };
  569 
  570 &usb_host1_xhci {
  571         status = "okay";
  572 };
  573 
  574 &usb2phy0 {
  575         status = "okay";
  576 };
  577 
  578 &usb2phy0_host {
  579         phy-supply = <&vcc5v0_usb_host>;
  580         status = "okay";
  581 };
  582 
  583 &usb2phy0_otg {
  584         phy-supply = <&vcc5v0_usb_otg>;
  585         status = "okay";
  586 };
  587 
  588 &usb2phy1 {
  589         status = "okay";
  590 };
  591 
  592 &usb2phy1_host {
  593         phy-supply = <&vcc5v0_usb_host>;
  594         status = "okay";
  595 };
  596 
  597 &usb2phy1_otg {
  598         phy-supply = <&vcc5v0_usb_host>;
  599         status = "okay";
  600 };
  601 
  602 &vop {
  603         assigned-clocks = <&cru DCLK_VOP0>, <&cru DCLK_VOP1>;
  604         assigned-clock-parents = <&pmucru PLL_HPLL>, <&cru PLL_VPLL>;
  605         status = "okay";
  606 };
  607 
  608 &vop_mmu {
  609         status = "okay";
  610 };
  611 
  612 &vp0 {
  613         vp0_out_hdmi: endpoint@ROCKCHIP_VOP2_EP_HDMI0 {
  614                 reg = <ROCKCHIP_VOP2_EP_HDMI0>;
  615                 remote-endpoint = <&hdmi_in_vp0>;
  616         };
  617 };

Cache object: adf66c6c9299e5d234e985c286ec3046


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