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/amlogic/meson-gxl.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) 2016 Endless Computers, Inc.
    4  * Author: Carlo Caione <carlo@endlessm.com>
    5  */
    6 
    7 #include "meson-gx.dtsi"
    8 #include <dt-bindings/clock/gxbb-clkc.h>
    9 #include <dt-bindings/clock/gxbb-aoclkc.h>
   10 #include <dt-bindings/gpio/meson-gxl-gpio.h>
   11 #include <dt-bindings/reset/amlogic,meson-gxbb-reset.h>
   12 
   13 / {
   14         compatible = "amlogic,meson-gxl";
   15 
   16         soc {
   17                 usb: usb@d0078080 {
   18                         compatible = "amlogic,meson-gxl-usb-ctrl";
   19                         reg = <0x0 0xd0078080 0x0 0x20>;
   20                         interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
   21                         #address-cells = <2>;
   22                         #size-cells = <2>;
   23                         ranges;
   24 
   25                         clocks = <&clkc CLKID_USB>, <&clkc CLKID_USB1_DDR_BRIDGE>;
   26                         clock-names = "usb_ctrl", "ddr";
   27                         resets = <&reset RESET_USB_OTG>;
   28 
   29                         dr_mode = "otg";
   30 
   31                         phys = <&usb2_phy0>, <&usb2_phy1>;
   32                         phy-names = "usb2-phy0", "usb2-phy1";
   33 
   34                         dwc2: usb@c9100000 {
   35                                 compatible = "amlogic,meson-g12a-usb", "snps,dwc2";
   36                                 reg = <0x0 0xc9100000 0x0 0x40000>;
   37                                 interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
   38                                 clocks = <&clkc CLKID_USB1>;
   39                                 clock-names = "otg";
   40                                 phys = <&usb2_phy1>;
   41                                 dr_mode = "peripheral";
   42                                 g-rx-fifo-size = <192>;
   43                                 g-np-tx-fifo-size = <128>;
   44                                 g-tx-fifo-size = <128 128 16 16 16>;
   45                         };
   46 
   47                         dwc3: usb@c9000000 {
   48                                 compatible = "snps,dwc3";
   49                                 reg = <0x0 0xc9000000 0x0 0x100000>;
   50                                 interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
   51                                 dr_mode = "host";
   52                                 maximum-speed = "high-speed";
   53                                 snps,dis_u2_susphy_quirk;
   54                         };
   55                 };
   56 
   57                 acodec: audio-controller@c8832000 {
   58                         compatible = "amlogic,t9015";
   59                         reg = <0x0 0xc8832000 0x0 0x14>;
   60                         #sound-dai-cells = <0>;
   61                         sound-name-prefix = "ACODEC";
   62                         clocks = <&clkc CLKID_ACODEC>;
   63                         clock-names = "pclk";
   64                         resets = <&reset RESET_ACODEC>;
   65                         status = "disabled";
   66                 };
   67 
   68                 crypto: crypto@c883e000 {
   69                         compatible = "amlogic,gxl-crypto";
   70                         reg = <0x0 0xc883e000 0x0 0x36>;
   71                         interrupts = <GIC_SPI 188 IRQ_TYPE_EDGE_RISING>,
   72                                      <GIC_SPI 189 IRQ_TYPE_EDGE_RISING>;
   73                         clocks = <&clkc CLKID_BLKMV>;
   74                         clock-names = "blkmv";
   75                         status = "okay";
   76                 };
   77         };
   78 };
   79 
   80 &aiu {
   81         compatible = "amlogic,aiu-gxl", "amlogic,aiu";
   82         clocks = <&clkc CLKID_AIU_GLUE>,
   83                  <&clkc CLKID_I2S_OUT>,
   84                  <&clkc CLKID_AOCLK_GATE>,
   85                  <&clkc CLKID_CTS_AMCLK>,
   86                  <&clkc CLKID_MIXER_IFACE>,
   87                  <&clkc CLKID_IEC958>,
   88                  <&clkc CLKID_IEC958_GATE>,
   89                  <&clkc CLKID_CTS_MCLK_I958>,
   90                  <&clkc CLKID_CTS_I958>;
   91         clock-names = "pclk",
   92                       "i2s_pclk",
   93                       "i2s_aoclk",
   94                       "i2s_mclk",
   95                       "i2s_mixer",
   96                       "spdif_pclk",
   97                       "spdif_aoclk",
   98                       "spdif_mclk",
   99                       "spdif_mclk_sel";
  100         resets = <&reset RESET_AIU>;
  101 };
  102 
  103 &apb {
  104         usb2_phy0: phy@78000 {
  105                 compatible = "amlogic,meson-gxl-usb2-phy";
  106                 #phy-cells = <0>;
  107                 reg = <0x0 0x78000 0x0 0x20>;
  108                 clocks = <&clkc CLKID_USB>;
  109                 clock-names = "phy";
  110                 resets = <&reset RESET_USB_OTG>;
  111                 reset-names = "phy";
  112                 status = "okay";
  113         };
  114 
  115         usb2_phy1: phy@78020 {
  116                 compatible = "amlogic,meson-gxl-usb2-phy";
  117                 #phy-cells = <0>;
  118                 reg = <0x0 0x78020 0x0 0x20>;
  119                 clocks = <&clkc CLKID_USB>;
  120                 clock-names = "phy";
  121                 resets = <&reset RESET_USB_OTG>;
  122                 reset-names = "phy";
  123                 status = "okay";
  124         };
  125 };
  126 
  127 &efuse {
  128         clocks = <&clkc CLKID_EFUSE>;
  129 };
  130 
  131 &ethmac {
  132         clocks = <&clkc CLKID_ETH>,
  133                  <&clkc CLKID_FCLK_DIV2>,
  134                  <&clkc CLKID_MPLL2>,
  135                  <&clkc CLKID_FCLK_DIV2>;
  136         clock-names = "stmmaceth", "clkin0", "clkin1", "timing-adjustment";
  137 
  138         mdio0: mdio {
  139                 #address-cells = <1>;
  140                 #size-cells = <0>;
  141                 compatible = "snps,dwmac-mdio";
  142         };
  143 };
  144 
  145 &aobus {
  146         pinctrl_aobus: pinctrl@14 {
  147                 compatible = "amlogic,meson-gxl-aobus-pinctrl";
  148                 #address-cells = <2>;
  149                 #size-cells = <2>;
  150                 ranges;
  151 
  152                 gpio_ao: bank@14 {
  153                         reg = <0x0 0x00014 0x0 0x8>,
  154                               <0x0 0x0002c 0x0 0x4>,
  155                               <0x0 0x00024 0x0 0x8>;
  156                         reg-names = "mux", "pull", "gpio";
  157                         gpio-controller;
  158                         #gpio-cells = <2>;
  159                         gpio-ranges = <&pinctrl_aobus 0 0 14>;
  160                 };
  161 
  162                 uart_ao_a_pins: uart_ao_a {
  163                         mux {
  164                                 groups = "uart_tx_ao_a", "uart_rx_ao_a";
  165                                 function = "uart_ao";
  166                                 bias-disable;
  167                         };
  168                 };
  169 
  170                 uart_ao_a_cts_rts_pins: uart_ao_a_cts_rts {
  171                         mux {
  172                                 groups = "uart_cts_ao_a",
  173                                        "uart_rts_ao_a";
  174                                 function = "uart_ao";
  175                                 bias-disable;
  176                         };
  177                 };
  178 
  179                 uart_ao_b_pins: uart_ao_b {
  180                         mux {
  181                                 groups = "uart_tx_ao_b", "uart_rx_ao_b";
  182                                 function = "uart_ao_b";
  183                                 bias-disable;
  184                         };
  185                 };
  186 
  187                 uart_ao_b_0_1_pins: uart_ao_b_0_1 {
  188                         mux {
  189                                 groups = "uart_tx_ao_b_0", "uart_rx_ao_b_1";
  190                                 function = "uart_ao_b";
  191                                 bias-disable;
  192                         };
  193                 };
  194 
  195                 uart_ao_b_cts_rts_pins: uart_ao_b_cts_rts {
  196                         mux {
  197                                 groups = "uart_cts_ao_b",
  198                                        "uart_rts_ao_b";
  199                                 function = "uart_ao_b";
  200                                 bias-disable;
  201                         };
  202                 };
  203 
  204                 remote_input_ao_pins: remote_input_ao {
  205                         mux {
  206                                 groups = "remote_input_ao";
  207                                 function = "remote_input_ao";
  208                                 bias-disable;
  209                         };
  210                 };
  211 
  212                 i2c_ao_pins: i2c_ao {
  213                         mux {
  214                                 groups = "i2c_sck_ao",
  215                                        "i2c_sda_ao";
  216                                 function = "i2c_ao";
  217                                 bias-disable;
  218                         };
  219                 };
  220 
  221                 pwm_ao_a_3_pins: pwm_ao_a_3 {
  222                         mux {
  223                                 groups = "pwm_ao_a_3";
  224                                 function = "pwm_ao_a";
  225                                 bias-disable;
  226                         };
  227                 };
  228 
  229                 pwm_ao_a_8_pins: pwm_ao_a_8 {
  230                         mux {
  231                                 groups = "pwm_ao_a_8";
  232                                 function = "pwm_ao_a";
  233                                 bias-disable;
  234                         };
  235                 };
  236 
  237                 pwm_ao_b_pins: pwm_ao_b {
  238                         mux {
  239                                 groups = "pwm_ao_b";
  240                                 function = "pwm_ao_b";
  241                                 bias-disable;
  242                         };
  243                 };
  244 
  245                 pwm_ao_b_6_pins: pwm_ao_b_6 {
  246                         mux {
  247                                 groups = "pwm_ao_b_6";
  248                                 function = "pwm_ao_b";
  249                                 bias-disable;
  250                         };
  251                 };
  252 
  253                 i2s_out_ch23_ao_pins: i2s_out_ch23_ao {
  254                         mux {
  255                                 groups = "i2s_out_ch23_ao";
  256                                 function = "i2s_out_ao";
  257                                 bias-disable;
  258                         };
  259                 };
  260 
  261                 i2s_out_ch45_ao_pins: i2s_out_ch45_ao {
  262                         mux {
  263                                 groups = "i2s_out_ch45_ao";
  264                                 function = "i2s_out_ao";
  265                                 bias-disable;
  266                         };
  267                 };
  268 
  269                 spdif_out_ao_6_pins: spdif_out_ao_6 {
  270                         mux {
  271                                 groups = "spdif_out_ao_6";
  272                                 function = "spdif_out_ao";
  273                                 bias-disable;
  274                         };
  275                 };
  276 
  277                 spdif_out_ao_9_pins: spdif_out_ao_9 {
  278                         mux {
  279                                 groups = "spdif_out_ao_9";
  280                                 function = "spdif_out_ao";
  281                                 bias-disable;
  282                         };
  283                 };
  284 
  285                 ao_cec_pins: ao_cec {
  286                         mux {
  287                                 groups = "ao_cec";
  288                                 function = "cec_ao";
  289                                 bias-disable;
  290                         };
  291                 };
  292 
  293                 ee_cec_pins: ee_cec {
  294                         mux {
  295                                 groups = "ee_cec";
  296                                 function = "cec_ao";
  297                                 bias-disable;
  298                         };
  299                 };
  300         };
  301 };
  302 
  303 &cec_AO {
  304         clocks = <&clkc_AO CLKID_AO_CEC_32K>;
  305         clock-names = "core";
  306 };
  307 
  308 &clkc_AO {
  309         compatible = "amlogic,meson-gxl-aoclkc", "amlogic,meson-gx-aoclkc";
  310         clocks = <&xtal>, <&clkc CLKID_CLK81>;
  311         clock-names = "xtal", "mpeg-clk";
  312 };
  313 
  314 &gpio_intc {
  315         compatible = "amlogic,meson-gpio-intc",
  316                      "amlogic,meson-gxl-gpio-intc";
  317         status = "okay";
  318 };
  319 
  320 &hdmi_tx {
  321         compatible = "amlogic,meson-gxl-dw-hdmi", "amlogic,meson-gx-dw-hdmi";
  322         resets = <&reset RESET_HDMITX_CAPB3>,
  323                  <&reset RESET_HDMI_SYSTEM_RESET>,
  324                  <&reset RESET_HDMI_TX>;
  325         reset-names = "hdmitx_apb", "hdmitx", "hdmitx_phy";
  326         clocks = <&clkc CLKID_HDMI_PCLK>,
  327                  <&clkc CLKID_CLK81>,
  328                  <&clkc CLKID_GCLK_VENCI_INT0>;
  329         clock-names = "isfr", "iahb", "venci";
  330 };
  331 
  332 &sysctrl {
  333         clkc: clock-controller {
  334                 compatible = "amlogic,gxl-clkc";
  335                 #clock-cells = <1>;
  336                 clocks = <&xtal>;
  337                 clock-names = "xtal";
  338         };
  339 };
  340 
  341 &hwrng {
  342         clocks = <&clkc CLKID_RNG0>;
  343         clock-names = "core";
  344 };
  345 
  346 &i2c_A {
  347         clocks = <&clkc CLKID_I2C>;
  348 };
  349 
  350 &i2c_AO {
  351         clocks = <&clkc CLKID_AO_I2C>;
  352 };
  353 
  354 &i2c_B {
  355         clocks = <&clkc CLKID_I2C>;
  356 };
  357 
  358 &i2c_C {
  359         clocks = <&clkc CLKID_I2C>;
  360 };
  361 
  362 &periphs {
  363         pinctrl_periphs: pinctrl@4b0 {
  364                 compatible = "amlogic,meson-gxl-periphs-pinctrl";
  365                 #address-cells = <2>;
  366                 #size-cells = <2>;
  367                 ranges;
  368 
  369                 gpio: bank@4b0 {
  370                         reg = <0x0 0x004b0 0x0 0x28>,
  371                               <0x0 0x004e8 0x0 0x14>,
  372                               <0x0 0x00520 0x0 0x14>,
  373                               <0x0 0x00430 0x0 0x40>;
  374                         reg-names = "mux", "pull", "pull-enable", "gpio";
  375                         gpio-controller;
  376                         #gpio-cells = <2>;
  377                         gpio-ranges = <&pinctrl_periphs 0 0 100>;
  378                 };
  379 
  380                 emmc_pins: emmc {
  381                         mux-0 {
  382                                 groups = "emmc_nand_d07",
  383                                        "emmc_cmd";
  384                                 function = "emmc";
  385                                 bias-pull-up;
  386                         };
  387 
  388                         mux-1 {
  389                                 groups = "emmc_clk";
  390                                 function = "emmc";
  391                                 bias-disable;
  392                         };
  393                 };
  394 
  395                 emmc_ds_pins: emmc-ds {
  396                         mux {
  397                                 groups = "emmc_ds";
  398                                 function = "emmc";
  399                                 bias-pull-down;
  400                         };
  401                 };
  402 
  403                 emmc_clk_gate_pins: emmc_clk_gate {
  404                         mux {
  405                                 groups = "BOOT_8";
  406                                 function = "gpio_periphs";
  407                                 bias-pull-down;
  408                         };
  409                 };
  410 
  411                 nor_pins: nor {
  412                         mux {
  413                                 groups = "nor_d",
  414                                        "nor_q",
  415                                        "nor_c",
  416                                        "nor_cs";
  417                                 function = "nor";
  418                                 bias-disable;
  419                         };
  420                 };
  421 
  422                 spi_pins: spi-pins {
  423                         mux {
  424                                 groups = "spi_miso",
  425                                         "spi_mosi",
  426                                         "spi_sclk";
  427                                 function = "spi";
  428                                 bias-disable;
  429                         };
  430                 };
  431 
  432                 spi_ss0_pins: spi-ss0 {
  433                         mux {
  434                                 groups = "spi_ss0";
  435                                 function = "spi";
  436                                 bias-disable;
  437                         };
  438                 };
  439 
  440                 sdcard_pins: sdcard {
  441                         mux-0 {
  442                                 groups = "sdcard_d0",
  443                                        "sdcard_d1",
  444                                        "sdcard_d2",
  445                                        "sdcard_d3",
  446                                        "sdcard_cmd";
  447                                 function = "sdcard";
  448                                 bias-pull-up;
  449                         };
  450 
  451                         mux-1 {
  452                                 groups = "sdcard_clk";
  453                                 function = "sdcard";
  454                                 bias-disable;
  455                         };
  456                 };
  457 
  458                 sdcard_clk_gate_pins: sdcard_clk_gate {
  459                         mux {
  460                                 groups = "CARD_2";
  461                                 function = "gpio_periphs";
  462                                 bias-pull-down;
  463                         };
  464                 };
  465 
  466                 sdio_pins: sdio {
  467                         mux-0 {
  468                                 groups = "sdio_d0",
  469                                        "sdio_d1",
  470                                        "sdio_d2",
  471                                        "sdio_d3",
  472                                        "sdio_cmd";
  473                                 function = "sdio";
  474                                 bias-pull-up;
  475                         };
  476 
  477                         mux-1 {
  478                                 groups = "sdio_clk";
  479                                 function = "sdio";
  480                                 bias-disable;
  481                         };
  482                 };
  483 
  484                 sdio_clk_gate_pins: sdio_clk_gate {
  485                         mux {
  486                                 groups = "GPIOX_4";
  487                                 function = "gpio_periphs";
  488                                 bias-pull-down;
  489                         };
  490                 };
  491 
  492                 sdio_irq_pins: sdio_irq {
  493                         mux {
  494                                 groups = "sdio_irq";
  495                                 function = "sdio";
  496                                 bias-disable;
  497                         };
  498                 };
  499 
  500                 uart_a_pins: uart_a {
  501                         mux {
  502                                 groups = "uart_tx_a",
  503                                        "uart_rx_a";
  504                                 function = "uart_a";
  505                                 bias-disable;
  506                         };
  507                 };
  508 
  509                 uart_a_cts_rts_pins: uart_a_cts_rts {
  510                         mux {
  511                                 groups = "uart_cts_a",
  512                                        "uart_rts_a";
  513                                 function = "uart_a";
  514                                 bias-disable;
  515                         };
  516                 };
  517 
  518                 uart_b_pins: uart_b {
  519                         mux {
  520                                 groups = "uart_tx_b",
  521                                        "uart_rx_b";
  522                                 function = "uart_b";
  523                                 bias-disable;
  524                         };
  525                 };
  526 
  527                 uart_b_cts_rts_pins: uart_b_cts_rts {
  528                         mux {
  529                                 groups = "uart_cts_b",
  530                                        "uart_rts_b";
  531                                 function = "uart_b";
  532                                 bias-disable;
  533                         };
  534                 };
  535 
  536                 uart_c_pins: uart_c {
  537                         mux {
  538                                 groups = "uart_tx_c",
  539                                        "uart_rx_c";
  540                                 function = "uart_c";
  541                                 bias-disable;
  542                         };
  543                 };
  544 
  545                 uart_c_cts_rts_pins: uart_c_cts_rts {
  546                         mux {
  547                                 groups = "uart_cts_c",
  548                                        "uart_rts_c";
  549                                 function = "uart_c";
  550                                 bias-disable;
  551                         };
  552                 };
  553 
  554                 i2c_a_pins: i2c_a {
  555                         mux {
  556                                 groups = "i2c_sck_a",
  557                                      "i2c_sda_a";
  558                                 function = "i2c_a";
  559                                 bias-disable;
  560                         };
  561                 };
  562 
  563                 i2c_b_pins: i2c_b {
  564                         mux {
  565                                 groups = "i2c_sck_b",
  566                                       "i2c_sda_b";
  567                                 function = "i2c_b";
  568                                 bias-disable;
  569                         };
  570                 };
  571 
  572                 i2c_c_pins: i2c_c {
  573                         mux {
  574                                 groups = "i2c_sck_c",
  575                                       "i2c_sda_c";
  576                                 function = "i2c_c";
  577                                 bias-disable;
  578                         };
  579                 };
  580 
  581                 i2c_c_dv18_pins: i2c_c_dv18 {
  582                         mux {
  583                                 groups = "i2c_sck_c_dv19",
  584                                       "i2c_sda_c_dv18";
  585                                 function = "i2c_c";
  586                                 bias-disable;
  587                         };
  588                 };
  589 
  590                 eth_pins: eth_c {
  591                         mux {
  592                                 groups = "eth_mdio",
  593                                        "eth_mdc",
  594                                        "eth_clk_rx_clk",
  595                                        "eth_rx_dv",
  596                                        "eth_rxd0",
  597                                        "eth_rxd1",
  598                                        "eth_rxd2",
  599                                        "eth_rxd3",
  600                                        "eth_rgmii_tx_clk",
  601                                        "eth_tx_en",
  602                                        "eth_txd0",
  603                                        "eth_txd1",
  604                                        "eth_txd2",
  605                                        "eth_txd3";
  606                                 function = "eth";
  607                                 bias-disable;
  608                         };
  609                 };
  610 
  611                 eth_link_led_pins: eth_link_led {
  612                         mux {
  613                                 groups = "eth_link_led";
  614                                 function = "eth_led";
  615                                 bias-disable;
  616                         };
  617                 };
  618 
  619                 eth_act_led_pins: eth_act_led {
  620                         mux {
  621                                 groups = "eth_act_led";
  622                                 function = "eth_led";
  623                         };
  624                 };
  625                 
  626                 pwm_a_pins: pwm_a {
  627                         mux {
  628                                 groups = "pwm_a";
  629                                 function = "pwm_a";
  630                                 bias-disable;
  631                         };
  632                 };
  633 
  634                 pwm_b_pins: pwm_b {
  635                         mux {
  636                                 groups = "pwm_b";
  637                                 function = "pwm_b";
  638                                 bias-disable;
  639                         };
  640                 };
  641 
  642                 pwm_c_pins: pwm_c {
  643                         mux {
  644                                 groups = "pwm_c";
  645                                 function = "pwm_c";
  646                                 bias-disable;
  647                         };
  648                 };
  649 
  650                 pwm_d_pins: pwm_d {
  651                         mux {
  652                                 groups = "pwm_d";
  653                                 function = "pwm_d";
  654                                 bias-disable;
  655                         };
  656                 };
  657 
  658                 pwm_e_pins: pwm_e {
  659                         mux {
  660                                 groups = "pwm_e";
  661                                 function = "pwm_e";
  662                                 bias-disable;
  663                         };
  664                 };
  665 
  666                 pwm_f_clk_pins: pwm_f_clk {
  667                         mux {
  668                                 groups = "pwm_f_clk";
  669                                 function = "pwm_f";
  670                                 bias-disable;
  671                         };
  672                 };
  673 
  674                 pwm_f_x_pins: pwm_f_x {
  675                         mux {
  676                                 groups = "pwm_f_x";
  677                                 function = "pwm_f";
  678                                 bias-disable;
  679                         };
  680                 };
  681 
  682                 hdmi_hpd_pins: hdmi_hpd {
  683                         mux {
  684                                 groups = "hdmi_hpd";
  685                                 function = "hdmi_hpd";
  686                                 bias-disable;
  687                         };
  688                 };
  689 
  690                 hdmi_i2c_pins: hdmi_i2c {
  691                         mux {
  692                                 groups = "hdmi_sda", "hdmi_scl";
  693                                 function = "hdmi_i2c";
  694                                 bias-disable;
  695                         };
  696                 };
  697 
  698                 i2s_am_clk_pins: i2s_am_clk {
  699                         mux {
  700                                 groups = "i2s_am_clk";
  701                                 function = "i2s_out";
  702                                 bias-disable;
  703                         };
  704                 };
  705 
  706                 i2s_out_ao_clk_pins: i2s_out_ao_clk {
  707                         mux {
  708                                 groups = "i2s_out_ao_clk";
  709                                 function = "i2s_out";
  710                                 bias-disable;
  711                         };
  712                 };
  713 
  714                 i2s_out_lr_clk_pins: i2s_out_lr_clk {
  715                         mux {
  716                                 groups = "i2s_out_lr_clk";
  717                                 function = "i2s_out";
  718                                 bias-disable;
  719                         };
  720                 };
  721 
  722                 i2s_out_ch01_pins: i2s_out_ch01 {
  723                         mux {
  724                                 groups = "i2s_out_ch01";
  725                                 function = "i2s_out";
  726                                 bias-disable;
  727                         };
  728                 };
  729                 i2sout_ch23_z_pins: i2sout_ch23_z {
  730                         mux {
  731                                 groups = "i2sout_ch23_z";
  732                                 function = "i2s_out";
  733                                 bias-disable;
  734                         };
  735                 };
  736 
  737                 i2sout_ch45_z_pins: i2sout_ch45_z {
  738                         mux {
  739                                 groups = "i2sout_ch45_z";
  740                                 function = "i2s_out";
  741                                 bias-disable;
  742                         };
  743                 };
  744 
  745                 i2sout_ch67_z_pins: i2sout_ch67_z {
  746                         mux {
  747                                 groups = "i2sout_ch67_z";
  748                                 function = "i2s_out";
  749                                 bias-disable;
  750                         };
  751                 };
  752 
  753                 spdif_out_h_pins: spdif_out_ao_h {
  754                         mux {
  755                                 groups = "spdif_out_h";
  756                                 function = "spdif_out";
  757                                 bias-disable;
  758                         };
  759                 };
  760         };
  761 
  762         eth-phy-mux {
  763                 compatible = "mdio-mux-mmioreg", "mdio-mux";
  764                 #address-cells = <1>;
  765                 #size-cells = <0>;
  766                 reg = <0x0 0x55c 0x0 0x4>;
  767                 mux-mask = <0xffffffff>;
  768                 mdio-parent-bus = <&mdio0>;
  769 
  770                 internal_mdio: mdio@e40908ff {
  771                         reg = <0xe40908ff>;
  772                         #address-cells = <1>;
  773                         #size-cells = <0>;
  774 
  775                         internal_phy: ethernet-phy@8 {
  776                                 compatible = "ethernet-phy-id0181.4400";
  777                                 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
  778                                 reg = <8>;
  779                                 max-speed = <100>;
  780                         };
  781                 };
  782 
  783                 external_mdio: mdio@2009087f {
  784                         reg = <0x2009087f>;
  785                         #address-cells = <1>;
  786                         #size-cells = <0>;
  787                 };
  788         };
  789 };
  790 
  791 &pwrc {
  792         resets = <&reset RESET_VIU>,
  793                  <&reset RESET_VENC>,
  794                  <&reset RESET_VCBUS>,
  795                  <&reset RESET_BT656>,
  796                  <&reset RESET_DVIN_RESET>,
  797                  <&reset RESET_RDMA>,
  798                  <&reset RESET_VENCI>,
  799                  <&reset RESET_VENCP>,
  800                  <&reset RESET_VDAC>,
  801                  <&reset RESET_VDI6>,
  802                  <&reset RESET_VENCL>,
  803                  <&reset RESET_VID_LOCK>;
  804         reset-names = "viu", "venc", "vcbus", "bt656",
  805                       "dvin", "rdma", "venci", "vencp",
  806                       "vdac", "vdi6", "vencl", "vid_lock";
  807         clocks = <&clkc CLKID_VPU>,
  808                  <&clkc CLKID_VAPB>;
  809         clock-names = "vpu", "vapb";
  810         /*
  811          * VPU clocking is provided by two identical clock paths
  812          * VPU_0 and VPU_1 muxed to a single clock by a glitch
  813          * free mux to safely change frequency while running.
  814          * Same for VAPB but with a final gate after the glitch free mux.
  815          */
  816         assigned-clocks = <&clkc CLKID_VPU_0_SEL>,
  817                           <&clkc CLKID_VPU_0>,
  818                           <&clkc CLKID_VPU>, /* Glitch free mux */
  819                           <&clkc CLKID_VAPB_0_SEL>,
  820                           <&clkc CLKID_VAPB_0>,
  821                           <&clkc CLKID_VAPB_SEL>; /* Glitch free mux */
  822         assigned-clock-parents = <&clkc CLKID_FCLK_DIV3>,
  823                                  <0>, /* Do Nothing */
  824                                  <&clkc CLKID_VPU_0>,
  825                                  <&clkc CLKID_FCLK_DIV4>,
  826                                  <0>, /* Do Nothing */
  827                                  <&clkc CLKID_VAPB_0>;
  828         assigned-clock-rates = <0>, /* Do Nothing */
  829                                <666666666>,
  830                                <0>, /* Do Nothing */
  831                                <0>, /* Do Nothing */
  832                                <250000000>,
  833                                <0>; /* Do Nothing */
  834 };
  835 
  836 &saradc {
  837         compatible = "amlogic,meson-gxl-saradc", "amlogic,meson-saradc";
  838         clocks = <&xtal>,
  839                  <&clkc CLKID_SAR_ADC>,
  840                  <&clkc CLKID_SAR_ADC_CLK>,
  841                  <&clkc CLKID_SAR_ADC_SEL>;
  842         clock-names = "clkin", "core", "adc_clk", "adc_sel";
  843 };
  844 
  845 &sd_emmc_a {
  846         clocks = <&clkc CLKID_SD_EMMC_A>,
  847                  <&clkc CLKID_SD_EMMC_A_CLK0>,
  848                  <&clkc CLKID_FCLK_DIV2>;
  849         clock-names = "core", "clkin0", "clkin1";
  850         resets = <&reset RESET_SD_EMMC_A>;
  851 };
  852 
  853 &sd_emmc_b {
  854         clocks = <&clkc CLKID_SD_EMMC_B>,
  855                  <&clkc CLKID_SD_EMMC_B_CLK0>,
  856                  <&clkc CLKID_FCLK_DIV2>;
  857         clock-names = "core", "clkin0", "clkin1";
  858         resets = <&reset RESET_SD_EMMC_B>;
  859 };
  860 
  861 &sd_emmc_c {
  862         clocks = <&clkc CLKID_SD_EMMC_C>,
  863                  <&clkc CLKID_SD_EMMC_C_CLK0>,
  864                  <&clkc CLKID_FCLK_DIV2>;
  865         clock-names = "core", "clkin0", "clkin1";
  866         resets = <&reset RESET_SD_EMMC_C>;
  867 };
  868 
  869 &simplefb_hdmi {
  870         clocks = <&clkc CLKID_HDMI_PCLK>,
  871                  <&clkc CLKID_CLK81>,
  872                  <&clkc CLKID_GCLK_VENCI_INT0>;
  873 };
  874 
  875 &spicc {
  876         clocks = <&clkc CLKID_SPICC>;
  877         clock-names = "core";
  878         resets = <&reset RESET_PERIPHS_SPICC>;
  879         num-cs = <1>;
  880 };
  881 
  882 &spifc {
  883         clocks = <&clkc CLKID_SPI>;
  884 };
  885 
  886 &uart_A {
  887         clocks = <&xtal>, <&clkc CLKID_UART0>, <&xtal>;
  888         clock-names = "xtal", "pclk", "baud";
  889 };
  890 
  891 &uart_AO {
  892         clocks = <&xtal>, <&clkc_AO CLKID_AO_UART1>, <&xtal>;
  893         clock-names = "xtal", "pclk", "baud";
  894 };
  895 
  896 &uart_AO_B {
  897         clocks = <&xtal>, <&clkc_AO CLKID_AO_UART2>, <&xtal>;
  898         clock-names = "xtal", "pclk", "baud";
  899 };
  900 
  901 &uart_B {
  902         clocks = <&xtal>, <&clkc CLKID_UART1>, <&xtal>;
  903         clock-names = "xtal", "pclk", "baud";
  904 };
  905 
  906 &uart_C {
  907         clocks = <&xtal>, <&clkc CLKID_UART2>, <&xtal>;
  908         clock-names = "xtal", "pclk", "baud";
  909 };
  910 
  911 &vpu {
  912         compatible = "amlogic,meson-gxl-vpu", "amlogic,meson-gx-vpu";
  913         power-domains = <&pwrc PWRC_GXBB_VPU_ID>;
  914 };
  915 
  916 &vdec {
  917         compatible = "amlogic,gxl-vdec", "amlogic,gx-vdec";
  918         clocks = <&clkc CLKID_DOS_PARSER>,
  919                  <&clkc CLKID_DOS>,
  920                  <&clkc CLKID_VDEC_1>,
  921                  <&clkc CLKID_VDEC_HEVC>;
  922         clock-names = "dos_parser", "dos", "vdec_1", "vdec_hevc";
  923         resets = <&reset RESET_PARSER>;
  924         reset-names = "esparser";
  925 };

Cache object: fb368bd20dd2beae560e59ed2efb98f9


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