Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
0002 /*
0003  * Copyright (c) 2017 Amlogic, Inc. All rights reserved.
0004  */
0005 
0006 #include <dt-bindings/clock/axg-aoclkc.h>
0007 #include <dt-bindings/clock/axg-audio-clkc.h>
0008 #include <dt-bindings/clock/axg-clkc.h>
0009 #include <dt-bindings/gpio/gpio.h>
0010 #include <dt-bindings/gpio/meson-axg-gpio.h>
0011 #include <dt-bindings/interrupt-controller/irq.h>
0012 #include <dt-bindings/interrupt-controller/arm-gic.h>
0013 #include <dt-bindings/reset/amlogic,meson-axg-audio-arb.h>
0014 #include <dt-bindings/reset/amlogic,meson-axg-reset.h>
0015 #include <dt-bindings/power/meson-axg-power.h>
0016 
0017 / {
0018         compatible = "amlogic,meson-axg";
0019 
0020         interrupt-parent = <&gic>;
0021         #address-cells = <2>;
0022         #size-cells = <2>;
0023 
0024         tdmif_a: audio-controller-0 {
0025                 compatible = "amlogic,axg-tdm-iface";
0026                 #sound-dai-cells = <0>;
0027                 sound-name-prefix = "TDM_A";
0028                 clocks = <&clkc_audio AUD_CLKID_MST_A_MCLK>,
0029                          <&clkc_audio AUD_CLKID_MST_A_SCLK>,
0030                          <&clkc_audio AUD_CLKID_MST_A_LRCLK>;
0031                 clock-names = "mclk", "sclk", "lrclk";
0032                 status = "disabled";
0033         };
0034 
0035         tdmif_b: audio-controller-1 {
0036                 compatible = "amlogic,axg-tdm-iface";
0037                 #sound-dai-cells = <0>;
0038                 sound-name-prefix = "TDM_B";
0039                 clocks = <&clkc_audio AUD_CLKID_MST_B_MCLK>,
0040                          <&clkc_audio AUD_CLKID_MST_B_SCLK>,
0041                          <&clkc_audio AUD_CLKID_MST_B_LRCLK>;
0042                 clock-names = "mclk", "sclk", "lrclk";
0043                 status = "disabled";
0044         };
0045 
0046         tdmif_c: audio-controller-2 {
0047                 compatible = "amlogic,axg-tdm-iface";
0048                 #sound-dai-cells = <0>;
0049                 sound-name-prefix = "TDM_C";
0050                 clocks = <&clkc_audio AUD_CLKID_MST_C_MCLK>,
0051                          <&clkc_audio AUD_CLKID_MST_C_SCLK>,
0052                          <&clkc_audio AUD_CLKID_MST_C_LRCLK>;
0053                 clock-names = "mclk", "sclk", "lrclk";
0054                 status = "disabled";
0055         };
0056 
0057         arm-pmu {
0058                 compatible = "arm,cortex-a53-pmu";
0059                 interrupts = <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>,
0060                              <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>,
0061                              <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>,
0062                              <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>;
0063                 interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
0064         };
0065 
0066         cpus {
0067                 #address-cells = <0x2>;
0068                 #size-cells = <0x0>;
0069 
0070                 cpu0: cpu@0 {
0071                         device_type = "cpu";
0072                         compatible = "arm,cortex-a53";
0073                         reg = <0x0 0x0>;
0074                         enable-method = "psci";
0075                         next-level-cache = <&l2>;
0076                         clocks = <&scpi_dvfs 0>;
0077                 };
0078 
0079                 cpu1: cpu@1 {
0080                         device_type = "cpu";
0081                         compatible = "arm,cortex-a53";
0082                         reg = <0x0 0x1>;
0083                         enable-method = "psci";
0084                         next-level-cache = <&l2>;
0085                         clocks = <&scpi_dvfs 0>;
0086                 };
0087 
0088                 cpu2: cpu@2 {
0089                         device_type = "cpu";
0090                         compatible = "arm,cortex-a53";
0091                         reg = <0x0 0x2>;
0092                         enable-method = "psci";
0093                         next-level-cache = <&l2>;
0094                         clocks = <&scpi_dvfs 0>;
0095                 };
0096 
0097                 cpu3: cpu@3 {
0098                         device_type = "cpu";
0099                         compatible = "arm,cortex-a53";
0100                         reg = <0x0 0x3>;
0101                         enable-method = "psci";
0102                         next-level-cache = <&l2>;
0103                         clocks = <&scpi_dvfs 0>;
0104                 };
0105 
0106                 l2: l2-cache0 {
0107                         compatible = "cache";
0108                 };
0109         };
0110 
0111         sm: secure-monitor {
0112                 compatible = "amlogic,meson-gxbb-sm";
0113         };
0114 
0115         efuse: efuse {
0116                 compatible = "amlogic,meson-gxbb-efuse";
0117                 clocks = <&clkc CLKID_EFUSE>;
0118                 #address-cells = <1>;
0119                 #size-cells = <1>;
0120                 read-only;
0121                 secure-monitor = <&sm>;
0122         };
0123 
0124         psci {
0125                 compatible = "arm,psci-1.0";
0126                 method = "smc";
0127         };
0128 
0129         reserved-memory {
0130                 #address-cells = <2>;
0131                 #size-cells = <2>;
0132                 ranges;
0133 
0134                 /* 16 MiB reserved for Hardware ROM Firmware */
0135                 hwrom_reserved: hwrom@0 {
0136                         reg = <0x0 0x0 0x0 0x1000000>;
0137                         no-map;
0138                 };
0139 
0140                 /* Alternate 3 MiB reserved for ARM Trusted Firmware (BL31) */
0141                 secmon_reserved: secmon@5000000 {
0142                         reg = <0x0 0x05000000 0x0 0x300000>;
0143                         no-map;
0144                 };
0145         };
0146 
0147         scpi {
0148                 compatible = "arm,scpi-pre-1.0";
0149                 mboxes = <&mailbox 1 &mailbox 2>;
0150                 shmem = <&cpu_scp_lpri &cpu_scp_hpri>;
0151 
0152                 scpi_clocks: clocks {
0153                         compatible = "arm,scpi-clocks";
0154 
0155                         scpi_dvfs: clock-controller {
0156                                 compatible = "arm,scpi-dvfs-clocks";
0157                                 #clock-cells = <1>;
0158                                 clock-indices = <0>;
0159                                 clock-output-names = "vcpu";
0160                         };
0161                 };
0162 
0163                 scpi_sensors: sensors {
0164                         compatible = "amlogic,meson-gxbb-scpi-sensors";
0165                         #thermal-sensor-cells = <1>;
0166                 };
0167         };
0168 
0169         soc {
0170                 compatible = "simple-bus";
0171                 #address-cells = <2>;
0172                 #size-cells = <2>;
0173                 ranges;
0174 
0175                 pcieA: pcie@f9800000 {
0176                         compatible = "amlogic,axg-pcie", "snps,dw-pcie";
0177                         reg = <0x0 0xf9800000 0x0 0x400000>,
0178                               <0x0 0xff646000 0x0 0x2000>,
0179                               <0x0 0xf9f00000 0x0 0x100000>;
0180                         reg-names = "elbi", "cfg", "config";
0181                         interrupts = <GIC_SPI 177 IRQ_TYPE_EDGE_RISING>;
0182                         #interrupt-cells = <1>;
0183                         interrupt-map-mask = <0 0 0 0>;
0184                         interrupt-map = <0 0 0 0 &gic GIC_SPI 179 IRQ_TYPE_EDGE_RISING>;
0185                         bus-range = <0x0 0xff>;
0186                         #address-cells = <3>;
0187                         #size-cells = <2>;
0188                         device_type = "pci";
0189                         ranges = <0x82000000 0 0xf9c00000 0x0 0xf9c00000 0 0x00300000>;
0190 
0191                         clocks = <&clkc CLKID_USB>, <&clkc CLKID_PCIE_A>, <&clkc CLKID_PCIE_CML_EN0>;
0192                         clock-names = "general", "pclk", "port";
0193                         resets = <&reset RESET_PCIE_A>, <&reset RESET_PCIE_APB>;
0194                         reset-names = "port", "apb";
0195                         num-lanes = <1>;
0196                         phys = <&pcie_phy>;
0197                         phy-names = "pcie";
0198                         status = "disabled";
0199                 };
0200 
0201                 pcieB: pcie@fa000000 {
0202                         compatible = "amlogic,axg-pcie", "snps,dw-pcie";
0203                         reg = <0x0 0xfa000000 0x0 0x400000>,
0204                               <0x0 0xff648000 0x0 0x2000>,
0205                               <0x0 0xfa400000 0x0 0x100000>;
0206                         reg-names = "elbi", "cfg", "config";
0207                         interrupts = <GIC_SPI 167 IRQ_TYPE_EDGE_RISING>;
0208                         #interrupt-cells = <1>;
0209                         interrupt-map-mask = <0 0 0 0>;
0210                         interrupt-map = <0 0 0 0 &gic GIC_SPI 169 IRQ_TYPE_EDGE_RISING>;
0211                         bus-range = <0x0 0xff>;
0212                         #address-cells = <3>;
0213                         #size-cells = <2>;
0214                         device_type = "pci";
0215                         ranges = <0x82000000 0 0xfa500000 0x0 0xfa500000 0 0x00300000>;
0216 
0217                         clocks = <&clkc CLKID_USB>, <&clkc CLKID_PCIE_B>, <&clkc CLKID_PCIE_CML_EN1>;
0218                         clock-names = "general", "pclk", "port";
0219                         resets = <&reset RESET_PCIE_B>, <&reset RESET_PCIE_APB>;
0220                         reset-names = "port", "apb";
0221                         num-lanes = <1>;
0222                         phys = <&pcie_phy>;
0223                         phy-names = "pcie";
0224                         status = "disabled";
0225                 };
0226 
0227                 usb: usb@ffe09080 {
0228                         compatible = "amlogic,meson-axg-usb-ctrl";
0229                         reg = <0x0 0xffe09080 0x0 0x20>;
0230                         interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
0231                         #address-cells = <2>;
0232                         #size-cells = <2>;
0233                         ranges;
0234 
0235                         clocks = <&clkc CLKID_USB>, <&clkc CLKID_USB1_DDR_BRIDGE>;
0236                         clock-names = "usb_ctrl", "ddr";
0237                         resets = <&reset RESET_USB_OTG>;
0238 
0239                         dr_mode = "otg";
0240 
0241                         phys = <&usb2_phy1>;
0242                         phy-names = "usb2-phy1";
0243 
0244                         dwc2: usb@ff400000 {
0245                                 compatible = "amlogic,meson-g12a-usb", "snps,dwc2";
0246                                 reg = <0x0 0xff400000 0x0 0x40000>;
0247                                 interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>;
0248                                 clocks = <&clkc CLKID_USB1>;
0249                                 clock-names = "otg";
0250                                 phys = <&usb2_phy1>;
0251                                 dr_mode = "peripheral";
0252                                 g-rx-fifo-size = <192>;
0253                                 g-np-tx-fifo-size = <128>;
0254                                 g-tx-fifo-size = <128 128 16 16 16>;
0255                         };
0256 
0257                         dwc3: usb@ff500000 {
0258                                 compatible = "snps,dwc3";
0259                                 reg = <0x0 0xff500000 0x0 0x100000>;
0260                                 interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
0261                                 dr_mode = "host";
0262                                 maximum-speed = "high-speed";
0263                                 snps,dis_u2_susphy_quirk;
0264                         };
0265                 };
0266 
0267                 ethmac: ethernet@ff3f0000 {
0268                         compatible = "amlogic,meson-axg-dwmac",
0269                                      "snps,dwmac-3.70a",
0270                                      "snps,dwmac";
0271                         reg = <0x0 0xff3f0000 0x0 0x10000>,
0272                               <0x0 0xff634540 0x0 0x8>;
0273                         interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
0274                         interrupt-names = "macirq";
0275                         clocks = <&clkc CLKID_ETH>,
0276                                  <&clkc CLKID_FCLK_DIV2>,
0277                                  <&clkc CLKID_MPLL2>,
0278                                  <&clkc CLKID_FCLK_DIV2>;
0279                         clock-names = "stmmaceth", "clkin0", "clkin1",
0280                                       "timing-adjustment";
0281                         rx-fifo-depth = <4096>;
0282                         tx-fifo-depth = <2048>;
0283                         power-domains = <&pwrc PWRC_AXG_ETHERNET_MEM_ID>;
0284                         status = "disabled";
0285                 };
0286 
0287                 pcie_phy: phy@ff644000 {
0288                         compatible = "amlogic,axg-pcie-phy";
0289                         reg = <0x0 0xff644000 0x0 0x1c>;
0290                         resets = <&reset RESET_PCIE_PHY>;
0291                         phys = <&mipi_pcie_analog_dphy>;
0292                         phy-names = "analog";
0293                         #phy-cells = <0>;
0294                 };
0295 
0296                 pdm: audio-controller@ff632000 {
0297                         compatible = "amlogic,axg-pdm";
0298                         reg = <0x0 0xff632000 0x0 0x34>;
0299                         #sound-dai-cells = <0>;
0300                         sound-name-prefix = "PDM";
0301                         clocks = <&clkc_audio AUD_CLKID_PDM>,
0302                                  <&clkc_audio AUD_CLKID_PDM_DCLK>,
0303                                  <&clkc_audio AUD_CLKID_PDM_SYSCLK>;
0304                         clock-names = "pclk", "dclk", "sysclk";
0305                         status = "disabled";
0306                 };
0307 
0308                 periphs: bus@ff634000 {
0309                         compatible = "simple-bus";
0310                         reg = <0x0 0xff634000 0x0 0x2000>;
0311                         #address-cells = <2>;
0312                         #size-cells = <2>;
0313                         ranges = <0x0 0x0 0x0 0xff634000 0x0 0x2000>;
0314 
0315                         hwrng: rng@18 {
0316                                 compatible = "amlogic,meson-rng";
0317                                 reg = <0x0 0x18 0x0 0x4>;
0318                                 clocks = <&clkc CLKID_RNG0>;
0319                                 clock-names = "core";
0320                         };
0321 
0322                         pinctrl_periphs: pinctrl@480 {
0323                                 compatible = "amlogic,meson-axg-periphs-pinctrl";
0324                                 #address-cells = <2>;
0325                                 #size-cells = <2>;
0326                                 ranges;
0327 
0328                                 gpio: bank@480 {
0329                                         reg = <0x0 0x00480 0x0 0x40>,
0330                                               <0x0 0x004e8 0x0 0x14>,
0331                                               <0x0 0x00520 0x0 0x14>,
0332                                               <0x0 0x00430 0x0 0x3c>;
0333                                         reg-names = "mux", "pull", "pull-enable", "gpio";
0334                                         gpio-controller;
0335                                         #gpio-cells = <2>;
0336                                         gpio-ranges = <&pinctrl_periphs 0 0 86>;
0337                                 };
0338 
0339                                 i2c0_pins: i2c0 {
0340                                         mux {
0341                                                 groups = "i2c0_sck",
0342                                                          "i2c0_sda";
0343                                                 function = "i2c0";
0344                                                 bias-disable;
0345                                         };
0346                                 };
0347 
0348                                 i2c1_x_pins: i2c1_x {
0349                                         mux {
0350                                                 groups = "i2c1_sck_x",
0351                                                          "i2c1_sda_x";
0352                                                 function = "i2c1";
0353                                                 bias-disable;
0354                                         };
0355                                 };
0356 
0357                                 i2c1_z_pins: i2c1_z {
0358                                         mux {
0359                                                 groups = "i2c1_sck_z",
0360                                                          "i2c1_sda_z";
0361                                                 function = "i2c1";
0362                                                 bias-disable;
0363                                         };
0364                                 };
0365 
0366                                 i2c2_a_pins: i2c2_a {
0367                                         mux {
0368                                                 groups = "i2c2_sck_a",
0369                                                          "i2c2_sda_a";
0370                                                 function = "i2c2";
0371                                                 bias-disable;
0372                                         };
0373                                 };
0374 
0375                                 i2c2_x_pins: i2c2_x {
0376                                         mux {
0377                                                 groups = "i2c2_sck_x",
0378                                                          "i2c2_sda_x";
0379                                                 function = "i2c2";
0380                                                 bias-disable;
0381                                         };
0382                                 };
0383 
0384                                 i2c3_a6_pins: i2c3_a6 {
0385                                         mux {
0386                                                 groups = "i2c3_sda_a6",
0387                                                          "i2c3_sck_a7";
0388                                                 function = "i2c3";
0389                                                 bias-disable;
0390                                         };
0391                                 };
0392 
0393                                 i2c3_a12_pins: i2c3_a12 {
0394                                         mux {
0395                                                 groups = "i2c3_sda_a12",
0396                                                          "i2c3_sck_a13";
0397                                                 function = "i2c3";
0398                                                 bias-disable;
0399                                         };
0400                                 };
0401 
0402                                 i2c3_a19_pins: i2c3_a19 {
0403                                         mux {
0404                                                 groups = "i2c3_sda_a19",
0405                                                          "i2c3_sck_a20";
0406                                                 function = "i2c3";
0407                                                 bias-disable;
0408                                         };
0409                                 };
0410 
0411                                 emmc_pins: emmc {
0412                                         mux-0 {
0413                                                 groups = "emmc_nand_d0",
0414                                                          "emmc_nand_d1",
0415                                                          "emmc_nand_d2",
0416                                                          "emmc_nand_d3",
0417                                                          "emmc_nand_d4",
0418                                                          "emmc_nand_d5",
0419                                                          "emmc_nand_d6",
0420                                                          "emmc_nand_d7",
0421                                                          "emmc_cmd";
0422                                                 function = "emmc";
0423                                                 bias-pull-up;
0424                                         };
0425 
0426                                         mux-1 {
0427                                                 groups = "emmc_clk";
0428                                                 function = "emmc";
0429                                                 bias-disable;
0430                                         };
0431                                 };
0432 
0433                                 emmc_ds_pins: emmc_ds {
0434                                         mux {
0435                                                 groups = "emmc_ds";
0436                                                 function = "emmc";
0437                                                 bias-pull-down;
0438                                         };
0439                                 };
0440 
0441                                 emmc_clk_gate_pins: emmc_clk_gate {
0442                                         mux {
0443                                                 groups = "BOOT_8";
0444                                                 function = "gpio_periphs";
0445                                                 bias-pull-down;
0446                                         };
0447                                 };
0448 
0449                                 eth_rgmii_x_pins: eth-x-rgmii {
0450                                         mux {
0451                                                 groups = "eth_mdio_x",
0452                                                          "eth_mdc_x",
0453                                                          "eth_rgmii_rx_clk_x",
0454                                                          "eth_rx_dv_x",
0455                                                          "eth_rxd0_x",
0456                                                          "eth_rxd1_x",
0457                                                          "eth_rxd2_rgmii",
0458                                                          "eth_rxd3_rgmii",
0459                                                          "eth_rgmii_tx_clk",
0460                                                          "eth_txen_x",
0461                                                          "eth_txd0_x",
0462                                                          "eth_txd1_x",
0463                                                          "eth_txd2_rgmii",
0464                                                          "eth_txd3_rgmii";
0465                                                 function = "eth";
0466                                                 bias-disable;
0467                                         };
0468                                 };
0469 
0470                                 eth_rgmii_y_pins: eth-y-rgmii {
0471                                         mux {
0472                                                 groups = "eth_mdio_y",
0473                                                          "eth_mdc_y",
0474                                                          "eth_rgmii_rx_clk_y",
0475                                                          "eth_rx_dv_y",
0476                                                          "eth_rxd0_y",
0477                                                          "eth_rxd1_y",
0478                                                          "eth_rxd2_rgmii",
0479                                                          "eth_rxd3_rgmii",
0480                                                          "eth_rgmii_tx_clk",
0481                                                          "eth_txen_y",
0482                                                          "eth_txd0_y",
0483                                                          "eth_txd1_y",
0484                                                          "eth_txd2_rgmii",
0485                                                          "eth_txd3_rgmii";
0486                                                 function = "eth";
0487                                                 bias-disable;
0488                                         };
0489                                 };
0490 
0491                                 eth_rmii_x_pins: eth-x-rmii {
0492                                         mux {
0493                                                 groups = "eth_mdio_x",
0494                                                          "eth_mdc_x",
0495                                                          "eth_rgmii_rx_clk_x",
0496                                                          "eth_rx_dv_x",
0497                                                          "eth_rxd0_x",
0498                                                          "eth_rxd1_x",
0499                                                          "eth_txen_x",
0500                                                          "eth_txd0_x",
0501                                                          "eth_txd1_x";
0502                                                 function = "eth";
0503                                                 bias-disable;
0504                                         };
0505                                 };
0506 
0507                                 eth_rmii_y_pins: eth-y-rmii {
0508                                         mux {
0509                                                 groups = "eth_mdio_y",
0510                                                          "eth_mdc_y",
0511                                                          "eth_rgmii_rx_clk_y",
0512                                                          "eth_rx_dv_y",
0513                                                          "eth_rxd0_y",
0514                                                          "eth_rxd1_y",
0515                                                          "eth_txen_y",
0516                                                          "eth_txd0_y",
0517                                                          "eth_txd1_y";
0518                                                 function = "eth";
0519                                                 bias-disable;
0520                                         };
0521                                 };
0522 
0523                                 mclk_b_pins: mclk_b {
0524                                         mux {
0525                                                 groups = "mclk_b";
0526                                                 function = "mclk_b";
0527                                                 bias-disable;
0528                                         };
0529                                 };
0530 
0531                                 mclk_c_pins: mclk_c {
0532                                         mux {
0533                                                 groups = "mclk_c";
0534                                                 function = "mclk_c";
0535                                                 bias-disable;
0536                                         };
0537                                 };
0538 
0539                                 pdm_dclk_a14_pins: pdm_dclk_a14 {
0540                                         mux {
0541                                                 groups = "pdm_dclk_a14";
0542                                                 function = "pdm";
0543                                                 bias-disable;
0544                                         };
0545                                 };
0546 
0547                                 pdm_dclk_a19_pins: pdm_dclk_a19 {
0548                                         mux {
0549                                                 groups = "pdm_dclk_a19";
0550                                                 function = "pdm";
0551                                                 bias-disable;
0552                                         };
0553                                 };
0554 
0555                                 pdm_din0_pins: pdm_din0 {
0556                                         mux {
0557                                                 groups = "pdm_din0";
0558                                                 function = "pdm";
0559                                                 bias-disable;
0560                                         };
0561                                 };
0562 
0563                                 pdm_din1_pins: pdm_din1 {
0564                                         mux {
0565                                                 groups = "pdm_din1";
0566                                                 function = "pdm";
0567                                                 bias-disable;
0568                                         };
0569                                 };
0570 
0571                                 pdm_din2_pins: pdm_din2 {
0572                                         mux {
0573                                                 groups = "pdm_din2";
0574                                                 function = "pdm";
0575                                                 bias-disable;
0576                                         };
0577                                 };
0578 
0579                                 pdm_din3_pins: pdm_din3 {
0580                                         mux {
0581                                                 groups = "pdm_din3";
0582                                                 function = "pdm";
0583                                                 bias-disable;
0584                                         };
0585                                 };
0586 
0587                                 pwm_a_a_pins: pwm_a_a {
0588                                         mux {
0589                                                 groups = "pwm_a_a";
0590                                                 function = "pwm_a";
0591                                                 bias-disable;
0592                                         };
0593                                 };
0594 
0595                                 pwm_a_x18_pins: pwm_a_x18 {
0596                                         mux {
0597                                                 groups = "pwm_a_x18";
0598                                                 function = "pwm_a";
0599                                                 bias-disable;
0600                                         };
0601                                 };
0602 
0603                                 pwm_a_x20_pins: pwm_a_x20 {
0604                                         mux {
0605                                                 groups = "pwm_a_x20";
0606                                                 function = "pwm_a";
0607                                                 bias-disable;
0608                                         };
0609                                 };
0610 
0611                                 pwm_a_z_pins: pwm_a_z {
0612                                         mux {
0613                                                 groups = "pwm_a_z";
0614                                                 function = "pwm_a";
0615                                                 bias-disable;
0616                                         };
0617                                 };
0618 
0619                                 pwm_b_a_pins: pwm_b_a {
0620                                         mux {
0621                                                 groups = "pwm_b_a";
0622                                                 function = "pwm_b";
0623                                                 bias-disable;
0624                                         };
0625                                 };
0626 
0627                                 pwm_b_x_pins: pwm_b_x {
0628                                         mux {
0629                                                 groups = "pwm_b_x";
0630                                                 function = "pwm_b";
0631                                                 bias-disable;
0632                                         };
0633                                 };
0634 
0635                                 pwm_b_z_pins: pwm_b_z {
0636                                         mux {
0637                                                 groups = "pwm_b_z";
0638                                                 function = "pwm_b";
0639                                                 bias-disable;
0640                                         };
0641                                 };
0642 
0643                                 pwm_c_a_pins: pwm_c_a {
0644                                         mux {
0645                                                 groups = "pwm_c_a";
0646                                                 function = "pwm_c";
0647                                                 bias-disable;
0648                                         };
0649                                 };
0650 
0651                                 pwm_c_x10_pins: pwm_c_x10 {
0652                                         mux {
0653                                                 groups = "pwm_c_x10";
0654                                                 function = "pwm_c";
0655                                                 bias-disable;
0656                                         };
0657                                 };
0658 
0659                                 pwm_c_x17_pins: pwm_c_x17 {
0660                                         mux {
0661                                                 groups = "pwm_c_x17";
0662                                                 function = "pwm_c";
0663                                                 bias-disable;
0664                                         };
0665                                 };
0666 
0667                                 pwm_d_x11_pins: pwm_d_x11 {
0668                                         mux {
0669                                                 groups = "pwm_d_x11";
0670                                                 function = "pwm_d";
0671                                                 bias-disable;
0672                                         };
0673                                 };
0674 
0675                                 pwm_d_x16_pins: pwm_d_x16 {
0676                                         mux {
0677                                                 groups = "pwm_d_x16";
0678                                                 function = "pwm_d";
0679                                                 bias-disable;
0680                                         };
0681                                 };
0682 
0683                                 sdio_pins: sdio {
0684                                         mux-0 {
0685                                                 groups = "sdio_d0",
0686                                                          "sdio_d1",
0687                                                          "sdio_d2",
0688                                                          "sdio_d3",
0689                                                          "sdio_cmd";
0690                                                 function = "sdio";
0691                                                 bias-pull-up;
0692                                         };
0693 
0694                                         mux-1 {
0695                                                 groups = "sdio_clk";
0696                                                 function = "sdio";
0697                                                 bias-disable;
0698                                         };
0699                                 };
0700 
0701                                 sdio_clk_gate_pins: sdio_clk_gate {
0702                                         mux {
0703                                                 groups = "GPIOX_4";
0704                                                 function = "gpio_periphs";
0705                                                 bias-pull-down;
0706                                         };
0707                                 };
0708 
0709                                 spdif_in_z_pins: spdif_in_z {
0710                                         mux {
0711                                                 groups = "spdif_in_z";
0712                                                 function = "spdif_in";
0713                                                 bias-disable;
0714                                         };
0715                                 };
0716 
0717                                 spdif_in_a1_pins: spdif_in_a1 {
0718                                         mux {
0719                                                 groups = "spdif_in_a1";
0720                                                 function = "spdif_in";
0721                                                 bias-disable;
0722                                         };
0723                                 };
0724 
0725                                 spdif_in_a7_pins: spdif_in_a7 {
0726                                         mux {
0727                                                 groups = "spdif_in_a7";
0728                                                 function = "spdif_in";
0729                                                 bias-disable;
0730                                         };
0731                                 };
0732 
0733                                 spdif_in_a19_pins: spdif_in_a19 {
0734                                         mux {
0735                                                 groups = "spdif_in_a19";
0736                                                 function = "spdif_in";
0737                                                 bias-disable;
0738                                         };
0739                                 };
0740 
0741                                 spdif_in_a20_pins: spdif_in_a20 {
0742                                         mux {
0743                                                 groups = "spdif_in_a20";
0744                                                 function = "spdif_in";
0745                                                 bias-disable;
0746                                         };
0747                                 };
0748 
0749                                 spdif_out_a1_pins: spdif_out_a1 {
0750                                         mux {
0751                                                 groups = "spdif_out_a1";
0752                                                 function = "spdif_out";
0753                                                 bias-disable;
0754                                         };
0755                                 };
0756 
0757                                 spdif_out_a11_pins: spdif_out_a11 {
0758                                         mux {
0759                                                 groups = "spdif_out_a11";
0760                                                 function = "spdif_out";
0761                                                 bias-disable;
0762                                         };
0763                                 };
0764 
0765                                 spdif_out_a19_pins: spdif_out_a19 {
0766                                         mux {
0767                                                 groups = "spdif_out_a19";
0768                                                 function = "spdif_out";
0769                                                 bias-disable;
0770                                         };
0771                                 };
0772 
0773                                 spdif_out_a20_pins: spdif_out_a20 {
0774                                         mux {
0775                                                 groups = "spdif_out_a20";
0776                                                 function = "spdif_out";
0777                                                 bias-disable;
0778                                         };
0779                                 };
0780 
0781                                 spdif_out_z_pins: spdif_out_z {
0782                                         mux {
0783                                                 groups = "spdif_out_z";
0784                                                 function = "spdif_out";
0785                                                 bias-disable;
0786                                         };
0787                                 };
0788 
0789                                 spi0_pins: spi0 {
0790                                         mux {
0791                                                 groups = "spi0_miso",
0792                                                          "spi0_mosi",
0793                                                          "spi0_clk";
0794                                                 function = "spi0";
0795                                                 bias-disable;
0796                                         };
0797                                 };
0798 
0799                                 spi0_ss0_pins: spi0_ss0 {
0800                                         mux {
0801                                                 groups = "spi0_ss0";
0802                                                 function = "spi0";
0803                                                 bias-disable;
0804                                         };
0805                                 };
0806 
0807                                 spi0_ss1_pins: spi0_ss1 {
0808                                         mux {
0809                                                 groups = "spi0_ss1";
0810                                                 function = "spi0";
0811                                                 bias-disable;
0812                                         };
0813                                 };
0814 
0815                                 spi0_ss2_pins: spi0_ss2 {
0816                                         mux {
0817                                                 groups = "spi0_ss2";
0818                                                 function = "spi0";
0819                                                 bias-disable;
0820                                         };
0821                                 };
0822 
0823                                 spi1_a_pins: spi1_a {
0824                                         mux {
0825                                                 groups = "spi1_miso_a",
0826                                                          "spi1_mosi_a",
0827                                                          "spi1_clk_a";
0828                                                 function = "spi1";
0829                                                 bias-disable;
0830                                         };
0831                                 };
0832 
0833                                 spi1_ss0_a_pins: spi1_ss0_a {
0834                                         mux {
0835                                                 groups = "spi1_ss0_a";
0836                                                 function = "spi1";
0837                                                 bias-disable;
0838                                         };
0839                                 };
0840 
0841                                 spi1_ss1_pins: spi1_ss1 {
0842                                         mux {
0843                                                 groups = "spi1_ss1";
0844                                                 function = "spi1";
0845                                                 bias-disable;
0846                                         };
0847                                 };
0848 
0849                                 spi1_x_pins: spi1_x {
0850                                         mux {
0851                                                 groups = "spi1_miso_x",
0852                                                          "spi1_mosi_x",
0853                                                          "spi1_clk_x";
0854                                                 function = "spi1";
0855                                                 bias-disable;
0856                                         };
0857                                 };
0858 
0859                                 spi1_ss0_x_pins: spi1_ss0_x {
0860                                         mux {
0861                                                 groups = "spi1_ss0_x";
0862                                                 function = "spi1";
0863                                                 bias-disable;
0864                                         };
0865                                 };
0866 
0867                                 tdma_din0_pins: tdma_din0 {
0868                                         mux {
0869                                                 groups = "tdma_din0";
0870                                                 function = "tdma";
0871                                                 bias-disable;
0872                                         };
0873                                 };
0874 
0875                                 tdma_dout0_x14_pins: tdma_dout0_x14 {
0876                                         mux {
0877                                                 groups = "tdma_dout0_x14";
0878                                                 function = "tdma";
0879                                                 bias-disable;
0880                                         };
0881                                 };
0882 
0883                                 tdma_dout0_x15_pins: tdma_dout0_x15 {
0884                                         mux {
0885                                                 groups = "tdma_dout0_x15";
0886                                                 function = "tdma";
0887                                                 bias-disable;
0888                                         };
0889                                 };
0890 
0891                                 tdma_dout1_pins: tdma_dout1 {
0892                                         mux {
0893                                                 groups = "tdma_dout1";
0894                                                 function = "tdma";
0895                                                 bias-disable;
0896                                         };
0897                                 };
0898 
0899                                 tdma_din1_pins: tdma_din1 {
0900                                         mux {
0901                                                 groups = "tdma_din1";
0902                                                 function = "tdma";
0903                                                 bias-disable;
0904                                         };
0905                                 };
0906 
0907                                 tdma_fs_pins: tdma_fs {
0908                                         mux {
0909                                                 groups = "tdma_fs";
0910                                                 function = "tdma";
0911                                                 bias-disable;
0912                                         };
0913                                 };
0914 
0915                                 tdma_fs_slv_pins: tdma_fs_slv {
0916                                         mux {
0917                                                 groups = "tdma_fs_slv";
0918                                                 function = "tdma";
0919                                                 bias-disable;
0920                                         };
0921                                 };
0922 
0923                                 tdma_sclk_pins: tdma_sclk {
0924                                         mux {
0925                                                 groups = "tdma_sclk";
0926                                                 function = "tdma";
0927                                                 bias-disable;
0928                                         };
0929                                 };
0930 
0931                                 tdma_sclk_slv_pins: tdma_sclk_slv {
0932                                         mux {
0933                                                 groups = "tdma_sclk_slv";
0934                                                 function = "tdma";
0935                                                 bias-disable;
0936                                         };
0937                                 };
0938 
0939                                 tdmb_din0_pins: tdmb_din0 {
0940                                         mux {
0941                                                 groups = "tdmb_din0";
0942                                                 function = "tdmb";
0943                                                 bias-disable;
0944                                         };
0945                                 };
0946 
0947                                 tdmb_din1_pins: tdmb_din1 {
0948                                         mux {
0949                                                 groups = "tdmb_din1";
0950                                                 function = "tdmb";
0951                                                 bias-disable;
0952                                         };
0953                                 };
0954 
0955                                 tdmb_din2_pins: tdmb_din2 {
0956                                         mux {
0957                                                 groups = "tdmb_din2";
0958                                                 function = "tdmb";
0959                                                 bias-disable;
0960                                         };
0961                                 };
0962 
0963                                 tdmb_din3_pins: tdmb_din3 {
0964                                         mux {
0965                                                 groups = "tdmb_din3";
0966                                                 function = "tdmb";
0967                                                 bias-disable;
0968                                         };
0969                                 };
0970 
0971                                 tdmb_dout0_pins: tdmb_dout0 {
0972                                         mux {
0973                                                 groups = "tdmb_dout0";
0974                                                 function = "tdmb";
0975                                                 bias-disable;
0976                                         };
0977                                 };
0978 
0979                                 tdmb_dout1_pins: tdmb_dout1 {
0980                                         mux {
0981                                                 groups = "tdmb_dout1";
0982                                                 function = "tdmb";
0983                                                 bias-disable;
0984                                         };
0985                                 };
0986 
0987                                 tdmb_dout2_pins: tdmb_dout2 {
0988                                         mux {
0989                                                 groups = "tdmb_dout2";
0990                                                 function = "tdmb";
0991                                                 bias-disable;
0992                                         };
0993                                 };
0994 
0995                                 tdmb_dout3_pins: tdmb_dout3 {
0996                                         mux {
0997                                                 groups = "tdmb_dout3";
0998                                                 function = "tdmb";
0999                                                 bias-disable;
1000                                         };
1001                                 };
1002 
1003                                 tdmb_fs_pins: tdmb_fs {
1004                                         mux {
1005                                                 groups = "tdmb_fs";
1006                                                 function = "tdmb";
1007                                                 bias-disable;
1008                                         };
1009                                 };
1010 
1011                                 tdmb_fs_slv_pins: tdmb_fs_slv {
1012                                         mux {
1013                                                 groups = "tdmb_fs_slv";
1014                                                 function = "tdmb";
1015                                                 bias-disable;
1016                                         };
1017                                 };
1018 
1019                                 tdmb_sclk_pins: tdmb_sclk {
1020                                         mux {
1021                                                 groups = "tdmb_sclk";
1022                                                 function = "tdmb";
1023                                                 bias-disable;
1024                                         };
1025                                 };
1026 
1027                                 tdmb_sclk_slv_pins: tdmb_sclk_slv {
1028                                         mux {
1029                                                 groups = "tdmb_sclk_slv";
1030                                                 function = "tdmb";
1031                                                 bias-disable;
1032                                         };
1033                                 };
1034 
1035                                 tdmc_fs_pins: tdmc_fs {
1036                                         mux {
1037                                                 groups = "tdmc_fs";
1038                                                 function = "tdmc";
1039                                                 bias-disable;
1040                                         };
1041                                 };
1042 
1043                                 tdmc_fs_slv_pins: tdmc_fs_slv {
1044                                         mux {
1045                                                 groups = "tdmc_fs_slv";
1046                                                 function = "tdmc";
1047                                                 bias-disable;
1048                                         };
1049                                 };
1050 
1051                                 tdmc_sclk_pins: tdmc_sclk {
1052                                         mux {
1053                                                 groups = "tdmc_sclk";
1054                                                 function = "tdmc";
1055                                                 bias-disable;
1056                                         };
1057                                 };
1058 
1059                                 tdmc_sclk_slv_pins: tdmc_sclk_slv {
1060                                         mux {
1061                                                 groups = "tdmc_sclk_slv";
1062                                                 function = "tdmc";
1063                                                 bias-disable;
1064                                         };
1065                                 };
1066 
1067                                 tdmc_din0_pins: tdmc_din0 {
1068                                         mux {
1069                                                 groups = "tdmc_din0";
1070                                                 function = "tdmc";
1071                                                 bias-disable;
1072                                         };
1073                                 };
1074 
1075                                 tdmc_din1_pins: tdmc_din1 {
1076                                         mux {
1077                                                 groups = "tdmc_din1";
1078                                                 function = "tdmc";
1079                                                 bias-disable;
1080                                         };
1081                                 };
1082 
1083                                 tdmc_din2_pins: tdmc_din2 {
1084                                         mux {
1085                                                 groups = "tdmc_din2";
1086                                                 function = "tdmc";
1087                                                 bias-disable;
1088                                         };
1089                                 };
1090 
1091                                 tdmc_din3_pins: tdmc_din3 {
1092                                         mux {
1093                                                 groups = "tdmc_din3";
1094                                                 function = "tdmc";
1095                                                 bias-disable;
1096                                         };
1097                                 };
1098 
1099                                 tdmc_dout0_pins: tdmc_dout0 {
1100                                         mux {
1101                                                 groups = "tdmc_dout0";
1102                                                 function = "tdmc";
1103                                                 bias-disable;
1104                                         };
1105                                 };
1106 
1107                                 tdmc_dout1_pins: tdmc_dout1 {
1108                                         mux {
1109                                                 groups = "tdmc_dout1";
1110                                                 function = "tdmc";
1111                                                 bias-disable;
1112                                         };
1113                                 };
1114 
1115                                 tdmc_dout2_pins: tdmc_dout2 {
1116                                         mux {
1117                                                 groups = "tdmc_dout2";
1118                                                 function = "tdmc";
1119                                                 bias-disable;
1120                                         };
1121                                 };
1122 
1123                                 tdmc_dout3_pins: tdmc_dout3 {
1124                                         mux {
1125                                                 groups = "tdmc_dout3";
1126                                                 function = "tdmc";
1127                                                 bias-disable;
1128                                         };
1129                                 };
1130 
1131                                 uart_a_pins: uart_a {
1132                                         mux {
1133                                                 groups = "uart_tx_a",
1134                                                          "uart_rx_a";
1135                                                 function = "uart_a";
1136                                                 bias-disable;
1137                                         };
1138                                 };
1139 
1140                                 uart_a_cts_rts_pins: uart_a_cts_rts {
1141                                         mux {
1142                                                 groups = "uart_cts_a",
1143                                                          "uart_rts_a";
1144                                                 function = "uart_a";
1145                                                 bias-disable;
1146                                         };
1147                                 };
1148 
1149                                 uart_b_x_pins: uart_b_x {
1150                                         mux {
1151                                                 groups = "uart_tx_b_x",
1152                                                          "uart_rx_b_x";
1153                                                 function = "uart_b";
1154                                                 bias-disable;
1155                                         };
1156                                 };
1157 
1158                                 uart_b_x_cts_rts_pins: uart_b_x_cts_rts {
1159                                         mux {
1160                                                 groups = "uart_cts_b_x",
1161                                                          "uart_rts_b_x";
1162                                                 function = "uart_b";
1163                                                 bias-disable;
1164                                         };
1165                                 };
1166 
1167                                 uart_b_z_pins: uart_b_z {
1168                                         mux {
1169                                                 groups = "uart_tx_b_z",
1170                                                          "uart_rx_b_z";
1171                                                 function = "uart_b";
1172                                                 bias-disable;
1173                                         };
1174                                 };
1175 
1176                                 uart_b_z_cts_rts_pins: uart_b_z_cts_rts {
1177                                         mux {
1178                                                 groups = "uart_cts_b_z",
1179                                                          "uart_rts_b_z";
1180                                                 function = "uart_b";
1181                                                 bias-disable;
1182                                         };
1183                                 };
1184 
1185                                 uart_ao_b_z_pins: uart_ao_b_z {
1186                                         mux {
1187                                                 groups = "uart_ao_tx_b_z",
1188                                                          "uart_ao_rx_b_z";
1189                                                 function = "uart_ao_b_z";
1190                                                 bias-disable;
1191                                         };
1192                                 };
1193 
1194                                 uart_ao_b_z_cts_rts_pins: uart_ao_b_z_cts_rts {
1195                                         mux {
1196                                                 groups = "uart_ao_cts_b_z",
1197                                                          "uart_ao_rts_b_z";
1198                                                 function = "uart_ao_b_z";
1199                                                 bias-disable;
1200                                         };
1201                                 };
1202                         };
1203                 };
1204 
1205                 hiubus: bus@ff63c000 {
1206                         compatible = "simple-bus";
1207                         reg = <0x0 0xff63c000 0x0 0x1c00>;
1208                         #address-cells = <2>;
1209                         #size-cells = <2>;
1210                         ranges = <0x0 0x0 0x0 0xff63c000 0x0 0x1c00>;
1211 
1212                         sysctrl: system-controller@0 {
1213                                 compatible = "amlogic,meson-axg-hhi-sysctrl",
1214                                              "simple-mfd", "syscon";
1215                                 reg = <0 0 0 0x400>;
1216 
1217                                 clkc: clock-controller {
1218                                         compatible = "amlogic,axg-clkc";
1219                                         #clock-cells = <1>;
1220                                         clocks = <&xtal>;
1221                                         clock-names = "xtal";
1222                                 };
1223 
1224                                 pwrc: power-controller {
1225                                         compatible = "amlogic,meson-axg-pwrc";
1226                                         #power-domain-cells = <1>;
1227                                         amlogic,ao-sysctrl = <&sysctrl_AO>;
1228                                         resets = <&reset RESET_VIU>,
1229                                                  <&reset RESET_VENC>,
1230                                                  <&reset RESET_VCBUS>,
1231                                                  <&reset RESET_VENCL>,
1232                                                  <&reset RESET_VID_LOCK>;
1233                                         reset-names = "viu", "venc", "vcbus",
1234                                                       "vencl", "vid_lock";
1235                                         clocks = <&clkc CLKID_VPU>,
1236                                                  <&clkc CLKID_VAPB>;
1237                                         clock-names = "vpu", "vapb";
1238                                         /*
1239                                          * VPU clocking is provided by two identical clock paths
1240                                          * VPU_0 and VPU_1 muxed to a single clock by a glitch
1241                                          * free mux to safely change frequency while running.
1242                                          * Same for VAPB but with a final gate after the glitch free mux.
1243                                          */
1244                                         assigned-clocks = <&clkc CLKID_VPU_0_SEL>,
1245                                                           <&clkc CLKID_VPU_0>,
1246                                                           <&clkc CLKID_VPU>, /* Glitch free mux */
1247                                                           <&clkc CLKID_VAPB_0_SEL>,
1248                                                           <&clkc CLKID_VAPB_0>,
1249                                                           <&clkc CLKID_VAPB_SEL>; /* Glitch free mux */
1250                                         assigned-clock-parents = <&clkc CLKID_FCLK_DIV4>,
1251                                                                  <0>, /* Do Nothing */
1252                                                                  <&clkc CLKID_VPU_0>,
1253                                                                  <&clkc CLKID_FCLK_DIV4>,
1254                                                                  <0>, /* Do Nothing */
1255                                                                  <&clkc CLKID_VAPB_0>;
1256                                         assigned-clock-rates = <0>, /* Do Nothing */
1257                                                                <250000000>,
1258                                                                <0>, /* Do Nothing */
1259                                                                <0>, /* Do Nothing */
1260                                                                <250000000>,
1261                                                                <0>; /* Do Nothing */
1262                                 };
1263 
1264                                 mipi_pcie_analog_dphy: phy {
1265                                         compatible = "amlogic,axg-mipi-pcie-analog-phy";
1266                                         #phy-cells = <0>;
1267                                         status = "disabled";
1268                                 };
1269                         };
1270                 };
1271 
1272                 mailbox: mailbox@ff63c404 {
1273                         compatible = "amlogic,meson-gxbb-mhu";
1274                         reg = <0 0xff63c404 0 0x4c>;
1275                         interrupts = <GIC_SPI 208 IRQ_TYPE_EDGE_RISING>,
1276                                      <GIC_SPI 209 IRQ_TYPE_EDGE_RISING>,
1277                                      <GIC_SPI 210 IRQ_TYPE_EDGE_RISING>;
1278                         #mbox-cells = <1>;
1279                 };
1280 
1281                 mipi_dphy: phy@ff640000 {
1282                         compatible = "amlogic,axg-mipi-dphy";
1283                         reg = <0x0 0xff640000 0x0 0x100>;
1284                         clocks = <&clkc CLKID_MIPI_DSI_PHY>;
1285                         clock-names = "pclk";
1286                         resets = <&reset RESET_MIPI_PHY>;
1287                         reset-names = "phy";
1288                         phys = <&mipi_pcie_analog_dphy>;
1289                         phy-names = "analog";
1290                         #phy-cells = <0>;
1291                         status = "disabled";
1292                 };
1293 
1294                 audio: bus@ff642000 {
1295                         compatible = "simple-bus";
1296                         reg = <0x0 0xff642000 0x0 0x2000>;
1297                         #address-cells = <2>;
1298                         #size-cells = <2>;
1299                         ranges = <0x0 0x0 0x0 0xff642000 0x0 0x2000>;
1300 
1301                         clkc_audio: clock-controller@0 {
1302                                 compatible = "amlogic,axg-audio-clkc";
1303                                 reg = <0x0 0x0 0x0 0xb4>;
1304                                 #clock-cells = <1>;
1305 
1306                                 clocks = <&clkc CLKID_AUDIO>,
1307                                          <&clkc CLKID_MPLL0>,
1308                                          <&clkc CLKID_MPLL1>,
1309                                          <&clkc CLKID_MPLL2>,
1310                                          <&clkc CLKID_MPLL3>,
1311                                          <&clkc CLKID_HIFI_PLL>,
1312                                          <&clkc CLKID_FCLK_DIV3>,
1313                                          <&clkc CLKID_FCLK_DIV4>,
1314                                          <&clkc CLKID_GP0_PLL>;
1315                                 clock-names = "pclk",
1316                                               "mst_in0",
1317                                               "mst_in1",
1318                                               "mst_in2",
1319                                               "mst_in3",
1320                                               "mst_in4",
1321                                               "mst_in5",
1322                                               "mst_in6",
1323                                               "mst_in7";
1324 
1325                                 resets = <&reset RESET_AUDIO>;
1326                         };
1327 
1328                         toddr_a: audio-controller@100 {
1329                                 compatible = "amlogic,axg-toddr";
1330                                 reg = <0x0 0x100 0x0 0x2c>;
1331                                 #sound-dai-cells = <0>;
1332                                 sound-name-prefix = "TODDR_A";
1333                                 interrupts = <GIC_SPI 84 IRQ_TYPE_EDGE_RISING>;
1334                                 clocks = <&clkc_audio AUD_CLKID_TODDR_A>;
1335                                 resets = <&arb AXG_ARB_TODDR_A>;
1336                                 amlogic,fifo-depth = <512>;
1337                                 status = "disabled";
1338                         };
1339 
1340                         toddr_b: audio-controller@140 {
1341                                 compatible = "amlogic,axg-toddr";
1342                                 reg = <0x0 0x140 0x0 0x2c>;
1343                                 #sound-dai-cells = <0>;
1344                                 sound-name-prefix = "TODDR_B";
1345                                 interrupts = <GIC_SPI 85 IRQ_TYPE_EDGE_RISING>;
1346                                 clocks = <&clkc_audio AUD_CLKID_TODDR_B>;
1347                                 resets = <&arb AXG_ARB_TODDR_B>;
1348                                 amlogic,fifo-depth = <256>;
1349                                 status = "disabled";
1350                         };
1351 
1352                         toddr_c: audio-controller@180 {
1353                                 compatible = "amlogic,axg-toddr";
1354                                 reg = <0x0 0x180 0x0 0x2c>;
1355                                 #sound-dai-cells = <0>;
1356                                 sound-name-prefix = "TODDR_C";
1357                                 interrupts = <GIC_SPI 86 IRQ_TYPE_EDGE_RISING>;
1358                                 clocks = <&clkc_audio AUD_CLKID_TODDR_C>;
1359                                 resets = <&arb AXG_ARB_TODDR_C>;
1360                                 amlogic,fifo-depth = <256>;
1361                                 status = "disabled";
1362                         };
1363 
1364                         frddr_a: audio-controller@1c0 {
1365                                 compatible = "amlogic,axg-frddr";
1366                                 reg = <0x0 0x1c0 0x0 0x2c>;
1367                                 #sound-dai-cells = <0>;
1368                                 sound-name-prefix = "FRDDR_A";
1369                                 interrupts = <GIC_SPI 88 IRQ_TYPE_EDGE_RISING>;
1370                                 clocks = <&clkc_audio AUD_CLKID_FRDDR_A>;
1371                                 resets = <&arb AXG_ARB_FRDDR_A>;
1372                                 amlogic,fifo-depth = <512>;
1373                                 status = "disabled";
1374                         };
1375 
1376                         frddr_b: audio-controller@200 {
1377                                 compatible = "amlogic,axg-frddr";
1378                                 reg = <0x0 0x200 0x0 0x2c>;
1379                                 #sound-dai-cells = <0>;
1380                                 sound-name-prefix = "FRDDR_B";
1381                                 interrupts = <GIC_SPI 89 IRQ_TYPE_EDGE_RISING>;
1382                                 clocks = <&clkc_audio AUD_CLKID_FRDDR_B>;
1383                                 resets = <&arb AXG_ARB_FRDDR_B>;
1384                                 amlogic,fifo-depth = <256>;
1385                                 status = "disabled";
1386                         };
1387 
1388                         frddr_c: audio-controller@240 {
1389                                 compatible = "amlogic,axg-frddr";
1390                                 reg = <0x0 0x240 0x0 0x2c>;
1391                                 #sound-dai-cells = <0>;
1392                                 sound-name-prefix = "FRDDR_C";
1393                                 interrupts = <GIC_SPI 90 IRQ_TYPE_EDGE_RISING>;
1394                                 clocks = <&clkc_audio AUD_CLKID_FRDDR_C>;
1395                                 resets = <&arb AXG_ARB_FRDDR_C>;
1396                                 amlogic,fifo-depth = <256>;
1397                                 status = "disabled";
1398                         };
1399 
1400                         arb: reset-controller@280 {
1401                                 compatible = "amlogic,meson-axg-audio-arb";
1402                                 reg = <0x0 0x280 0x0 0x4>;
1403                                 #reset-cells = <1>;
1404                                 clocks = <&clkc_audio AUD_CLKID_DDR_ARB>;
1405                         };
1406 
1407                         tdmin_a: audio-controller@300 {
1408                                 compatible = "amlogic,axg-tdmin";
1409                                 reg = <0x0 0x300 0x0 0x40>;
1410                                 sound-name-prefix = "TDMIN_A";
1411                                 clocks = <&clkc_audio AUD_CLKID_TDMIN_A>,
1412                                          <&clkc_audio AUD_CLKID_TDMIN_A_SCLK>,
1413                                          <&clkc_audio AUD_CLKID_TDMIN_A_SCLK_SEL>,
1414                                          <&clkc_audio AUD_CLKID_TDMIN_A_LRCLK>,
1415                                          <&clkc_audio AUD_CLKID_TDMIN_A_LRCLK>;
1416                                 clock-names = "pclk", "sclk", "sclk_sel",
1417                                               "lrclk", "lrclk_sel";
1418                                 status = "disabled";
1419                         };
1420 
1421                         tdmin_b: audio-controller@340 {
1422                                 compatible = "amlogic,axg-tdmin";
1423                                 reg = <0x0 0x340 0x0 0x40>;
1424                                 sound-name-prefix = "TDMIN_B";
1425                                 clocks = <&clkc_audio AUD_CLKID_TDMIN_B>,
1426                                          <&clkc_audio AUD_CLKID_TDMIN_B_SCLK>,
1427                                          <&clkc_audio AUD_CLKID_TDMIN_B_SCLK_SEL>,
1428                                          <&clkc_audio AUD_CLKID_TDMIN_B_LRCLK>,
1429                                          <&clkc_audio AUD_CLKID_TDMIN_B_LRCLK>;
1430                                 clock-names = "pclk", "sclk", "sclk_sel",
1431                                               "lrclk", "lrclk_sel";
1432                                 status = "disabled";
1433                         };
1434 
1435                         tdmin_c: audio-controller@380 {
1436                                 compatible = "amlogic,axg-tdmin";
1437                                 reg = <0x0 0x380 0x0 0x40>;
1438                                 sound-name-prefix = "TDMIN_C";
1439                                 clocks = <&clkc_audio AUD_CLKID_TDMIN_C>,
1440                                          <&clkc_audio AUD_CLKID_TDMIN_C_SCLK>,
1441                                          <&clkc_audio AUD_CLKID_TDMIN_C_SCLK_SEL>,
1442                                          <&clkc_audio AUD_CLKID_TDMIN_C_LRCLK>,
1443                                          <&clkc_audio AUD_CLKID_TDMIN_C_LRCLK>;
1444                                 clock-names = "pclk", "sclk", "sclk_sel",
1445                                               "lrclk", "lrclk_sel";
1446                                 status = "disabled";
1447                         };
1448 
1449                         tdmin_lb: audio-controller@3c0 {
1450                                 compatible = "amlogic,axg-tdmin";
1451                                 reg = <0x0 0x3c0 0x0 0x40>;
1452                                 sound-name-prefix = "TDMIN_LB";
1453                                 clocks = <&clkc_audio AUD_CLKID_TDMIN_LB>,
1454                                          <&clkc_audio AUD_CLKID_TDMIN_LB_SCLK>,
1455                                          <&clkc_audio AUD_CLKID_TDMIN_LB_SCLK_SEL>,
1456                                          <&clkc_audio AUD_CLKID_TDMIN_LB_LRCLK>,
1457                                          <&clkc_audio AUD_CLKID_TDMIN_LB_LRCLK>;
1458                                 clock-names = "pclk", "sclk", "sclk_sel",
1459                                               "lrclk", "lrclk_sel";
1460                                 status = "disabled";
1461                         };
1462 
1463                         spdifin: audio-controller@400 {
1464                                 compatible = "amlogic,axg-spdifin";
1465                                 reg = <0x0 0x400 0x0 0x30>;
1466                                 #sound-dai-cells = <0>;
1467                                 sound-name-prefix = "SPDIFIN";
1468                                 interrupts = <GIC_SPI 87 IRQ_TYPE_EDGE_RISING>;
1469                                 clocks = <&clkc_audio AUD_CLKID_SPDIFIN>,
1470                                          <&clkc_audio AUD_CLKID_SPDIFIN_CLK>;
1471                                 clock-names = "pclk", "refclk";
1472                                 status = "disabled";
1473                         };
1474 
1475                         spdifout: audio-controller@480 {
1476                                 compatible = "amlogic,axg-spdifout";
1477                                 reg = <0x0 0x480 0x0 0x50>;
1478                                 #sound-dai-cells = <0>;
1479                                 sound-name-prefix = "SPDIFOUT";
1480                                 clocks = <&clkc_audio AUD_CLKID_SPDIFOUT>,
1481                                          <&clkc_audio AUD_CLKID_SPDIFOUT_CLK>;
1482                                 clock-names = "pclk", "mclk";
1483                                 status = "disabled";
1484                         };
1485 
1486                         tdmout_a: audio-controller@500 {
1487                                 compatible = "amlogic,axg-tdmout";
1488                                 reg = <0x0 0x500 0x0 0x40>;
1489                                 sound-name-prefix = "TDMOUT_A";
1490                                 clocks = <&clkc_audio AUD_CLKID_TDMOUT_A>,
1491                                          <&clkc_audio AUD_CLKID_TDMOUT_A_SCLK>,
1492                                          <&clkc_audio AUD_CLKID_TDMOUT_A_SCLK_SEL>,
1493                                          <&clkc_audio AUD_CLKID_TDMOUT_A_LRCLK>,
1494                                          <&clkc_audio AUD_CLKID_TDMOUT_A_LRCLK>;
1495                                 clock-names = "pclk", "sclk", "sclk_sel",
1496                                               "lrclk", "lrclk_sel";
1497                                 status = "disabled";
1498                         };
1499 
1500                         tdmout_b: audio-controller@540 {
1501                                 compatible = "amlogic,axg-tdmout";
1502                                 reg = <0x0 0x540 0x0 0x40>;
1503                                 sound-name-prefix = "TDMOUT_B";
1504                                 clocks = <&clkc_audio AUD_CLKID_TDMOUT_B>,
1505                                          <&clkc_audio AUD_CLKID_TDMOUT_B_SCLK>,
1506                                          <&clkc_audio AUD_CLKID_TDMOUT_B_SCLK_SEL>,
1507                                          <&clkc_audio AUD_CLKID_TDMOUT_B_LRCLK>,
1508                                          <&clkc_audio AUD_CLKID_TDMOUT_B_LRCLK>;
1509                                 clock-names = "pclk", "sclk", "sclk_sel",
1510                                               "lrclk", "lrclk_sel";
1511                                 status = "disabled";
1512                         };
1513 
1514                         tdmout_c: audio-controller@580 {
1515                                 compatible = "amlogic,axg-tdmout";
1516                                 reg = <0x0 0x580 0x0 0x40>;
1517                                 sound-name-prefix = "TDMOUT_C";
1518                                 clocks = <&clkc_audio AUD_CLKID_TDMOUT_C>,
1519                                          <&clkc_audio AUD_CLKID_TDMOUT_C_SCLK>,
1520                                          <&clkc_audio AUD_CLKID_TDMOUT_C_SCLK_SEL>,
1521                                          <&clkc_audio AUD_CLKID_TDMOUT_C_LRCLK>,
1522                                          <&clkc_audio AUD_CLKID_TDMOUT_C_LRCLK>;
1523                                 clock-names = "pclk", "sclk", "sclk_sel",
1524                                               "lrclk", "lrclk_sel";
1525                                 status = "disabled";
1526                         };
1527                 };
1528 
1529                 aobus: bus@ff800000 {
1530                         compatible = "simple-bus";
1531                         reg = <0x0 0xff800000 0x0 0x100000>;
1532                         #address-cells = <2>;
1533                         #size-cells = <2>;
1534                         ranges = <0x0 0x0 0x0 0xff800000 0x0 0x100000>;
1535 
1536                         sysctrl_AO: sys-ctrl@0 {
1537                                 compatible = "amlogic,meson-axg-ao-sysctrl", "simple-mfd", "syscon";
1538                                 reg = <0x0 0x0 0x0 0x100>;
1539 
1540                                 clkc_AO: clock-controller {
1541                                         compatible = "amlogic,meson-axg-aoclkc";
1542                                         #clock-cells = <1>;
1543                                         #reset-cells = <1>;
1544                                         clocks = <&xtal>, <&clkc CLKID_CLK81>;
1545                                         clock-names = "xtal", "mpeg-clk";
1546                                 };
1547                         };
1548 
1549                         pinctrl_aobus: pinctrl@14 {
1550                                 compatible = "amlogic,meson-axg-aobus-pinctrl";
1551                                 #address-cells = <2>;
1552                                 #size-cells = <2>;
1553                                 ranges;
1554 
1555                                 gpio_ao: bank@14 {
1556                                         reg = <0x0 0x00014 0x0 0x8>,
1557                                               <0x0 0x0002c 0x0 0x4>,
1558                                               <0x0 0x00024 0x0 0x8>;
1559                                         reg-names = "mux", "pull", "gpio";
1560                                         gpio-controller;
1561                                         #gpio-cells = <2>;
1562                                         gpio-ranges = <&pinctrl_aobus 0 0 15>;
1563                                 };
1564 
1565                                 i2c_ao_sck_4_pins: i2c_ao_sck_4 {
1566                                         mux {
1567                                                 groups = "i2c_ao_sck_4";
1568                                                 function = "i2c_ao";
1569                                                 bias-disable;
1570                                         };
1571                                 };
1572 
1573                                 i2c_ao_sck_8_pins: i2c_ao_sck_8 {
1574                                         mux {
1575                                                 groups = "i2c_ao_sck_8";
1576                                                 function = "i2c_ao";
1577                                                 bias-disable;
1578                                         };
1579                                 };
1580 
1581                                 i2c_ao_sck_10_pins: i2c_ao_sck_10 {
1582                                         mux {
1583                                                 groups = "i2c_ao_sck_10";
1584                                                 function = "i2c_ao";
1585                                                 bias-disable;
1586                                         };
1587                                 };
1588 
1589                                 i2c_ao_sda_5_pins: i2c_ao_sda_5 {
1590                                         mux {
1591                                                 groups = "i2c_ao_sda_5";
1592                                                 function = "i2c_ao";
1593                                                 bias-disable;
1594                                         };
1595                                 };
1596 
1597                                 i2c_ao_sda_9_pins: i2c_ao_sda_9 {
1598                                         mux {
1599                                                 groups = "i2c_ao_sda_9";
1600                                                 function = "i2c_ao";
1601                                                 bias-disable;
1602                                         };
1603                                 };
1604 
1605                                 i2c_ao_sda_11_pins: i2c_ao_sda_11 {
1606                                         mux {
1607                                                 groups = "i2c_ao_sda_11";
1608                                                 function = "i2c_ao";
1609                                                 bias-disable;
1610                                         };
1611                                 };
1612 
1613                                 remote_input_ao_pins: remote_input_ao {
1614                                         mux {
1615                                                 groups = "remote_input_ao";
1616                                                 function = "remote_input_ao";
1617                                                 bias-disable;
1618                                         };
1619                                 };
1620 
1621                                 uart_ao_a_pins: uart_ao_a {
1622                                         mux {
1623                                                 groups = "uart_ao_tx_a",
1624                                                          "uart_ao_rx_a";
1625                                                 function = "uart_ao_a";
1626                                                 bias-disable;
1627                                         };
1628                                 };
1629 
1630                                 uart_ao_a_cts_rts_pins: uart_ao_a_cts_rts {
1631                                         mux {
1632                                                 groups = "uart_ao_cts_a",
1633                                                          "uart_ao_rts_a";
1634                                                 function = "uart_ao_a";
1635                                                 bias-disable;
1636                                         };
1637                                 };
1638 
1639                                 uart_ao_b_pins: uart_ao_b {
1640                                         mux {
1641                                                 groups = "uart_ao_tx_b",
1642                                                          "uart_ao_rx_b";
1643                                                 function = "uart_ao_b";
1644                                                 bias-disable;
1645                                         };
1646                                 };
1647 
1648                                 uart_ao_b_cts_rts_pins: uart_ao_b_cts_rts {
1649                                         mux {
1650                                                 groups = "uart_ao_cts_b",
1651                                                          "uart_ao_rts_b";
1652                                                 function = "uart_ao_b";
1653                                                 bias-disable;
1654                                         };
1655                                 };
1656                         };
1657 
1658                         sec_AO: ao-secure@140 {
1659                                 compatible = "amlogic,meson-gx-ao-secure", "syscon";
1660                                 reg = <0x0 0x140 0x0 0x140>;
1661                                 amlogic,has-chip-id;
1662                         };
1663 
1664                         pwm_AO_cd: pwm@2000 {
1665                                 compatible = "amlogic,meson-axg-ao-pwm";
1666                                 reg = <0x0 0x02000  0x0 0x20>;
1667                                 #pwm-cells = <3>;
1668                                 status = "disabled";
1669                         };
1670 
1671                         uart_AO: serial@3000 {
1672                                 compatible = "amlogic,meson-gx-uart", "amlogic,meson-ao-uart";
1673                                 reg = <0x0 0x3000 0x0 0x18>;
1674                                 interrupts = <GIC_SPI 193 IRQ_TYPE_EDGE_RISING>;
1675                                 clocks = <&xtal>, <&clkc_AO CLKID_AO_UART1>, <&xtal>;
1676                                 clock-names = "xtal", "pclk", "baud";
1677                                 status = "disabled";
1678                         };
1679 
1680                         uart_AO_B: serial@4000 {
1681                                 compatible = "amlogic,meson-gx-uart", "amlogic,meson-ao-uart";
1682                                 reg = <0x0 0x4000 0x0 0x18>;
1683                                 interrupts = <GIC_SPI 197 IRQ_TYPE_EDGE_RISING>;
1684                                 clocks = <&xtal>, <&clkc_AO CLKID_AO_UART2>, <&xtal>;
1685                                 clock-names = "xtal", "pclk", "baud";
1686                                 status = "disabled";
1687                         };
1688 
1689                         i2c_AO: i2c@5000 {
1690                                 compatible = "amlogic,meson-axg-i2c";
1691                                 reg = <0x0 0x05000 0x0 0x20>;
1692                                 interrupts = <GIC_SPI 195 IRQ_TYPE_EDGE_RISING>;
1693                                 clocks = <&clkc CLKID_AO_I2C>;
1694                                 #address-cells = <1>;
1695                                 #size-cells = <0>;
1696                                 status = "disabled";
1697                         };
1698 
1699                         pwm_AO_ab: pwm@7000 {
1700                                 compatible = "amlogic,meson-axg-ao-pwm";
1701                                 reg = <0x0 0x07000 0x0 0x20>;
1702                                 #pwm-cells = <3>;
1703                                 status = "disabled";
1704                         };
1705 
1706                         ir: ir@8000 {
1707                                 compatible = "amlogic,meson-gxbb-ir";
1708                                 reg = <0x0 0x8000 0x0 0x20>;
1709                                 interrupts = <GIC_SPI 196 IRQ_TYPE_EDGE_RISING>;
1710                                 status = "disabled";
1711                         };
1712 
1713                         saradc: adc@9000 {
1714                                 compatible = "amlogic,meson-axg-saradc",
1715                                         "amlogic,meson-saradc";
1716                                 reg = <0x0 0x9000 0x0 0x38>;
1717                                 #io-channel-cells = <1>;
1718                                 interrupts = <GIC_SPI 73 IRQ_TYPE_EDGE_RISING>;
1719                                 clocks = <&xtal>,
1720                                          <&clkc_AO CLKID_AO_SAR_ADC>,
1721                                          <&clkc_AO CLKID_AO_SAR_ADC_CLK>,
1722                                          <&clkc_AO CLKID_AO_SAR_ADC_SEL>;
1723                                 clock-names = "clkin", "core", "adc_clk", "adc_sel";
1724                                 status = "disabled";
1725                         };
1726                 };
1727 
1728                 ge2d: ge2d@ff940000 {
1729                         compatible = "amlogic,axg-ge2d";
1730                         reg = <0x0 0xff940000 0x0 0x10000>;
1731                         interrupts = <GIC_SPI 150 IRQ_TYPE_EDGE_RISING>;
1732                         clocks = <&clkc CLKID_VAPB>;
1733                         resets = <&reset RESET_GE2D>;
1734                 };
1735 
1736                 gic: interrupt-controller@ffc01000 {
1737                         compatible = "arm,gic-400";
1738                         reg = <0x0 0xffc01000 0 0x1000>,
1739                               <0x0 0xffc02000 0 0x2000>,
1740                               <0x0 0xffc04000 0 0x2000>,
1741                               <0x0 0xffc06000 0 0x2000>;
1742                         interrupt-controller;
1743                         interrupts = <GIC_PPI 9
1744                                 (GIC_CPU_MASK_SIMPLE(8) | IRQ_TYPE_LEVEL_HIGH)>;
1745                         #interrupt-cells = <3>;
1746                         #address-cells = <0>;
1747                 };
1748 
1749                 cbus: bus@ffd00000 {
1750                         compatible = "simple-bus";
1751                         reg = <0x0 0xffd00000 0x0 0x25000>;
1752                         #address-cells = <2>;
1753                         #size-cells = <2>;
1754                         ranges = <0x0 0x0 0x0 0xffd00000 0x0 0x25000>;
1755 
1756                         reset: reset-controller@1004 {
1757                                 compatible = "amlogic,meson-axg-reset";
1758                                 reg = <0x0 0x01004 0x0 0x9c>;
1759                                 #reset-cells = <1>;
1760                         };
1761 
1762                         gpio_intc: interrupt-controller@f080 {
1763                                 compatible = "amlogic,meson-axg-gpio-intc",
1764                                              "amlogic,meson-gpio-intc";
1765                                 reg = <0x0 0xf080 0x0 0x10>;
1766                                 interrupt-controller;
1767                                 #interrupt-cells = <2>;
1768                                 amlogic,channel-interrupts = <64 65 66 67 68 69 70 71>;
1769                         };
1770 
1771                         watchdog@f0d0 {
1772                                 compatible = "amlogic,meson-gxbb-wdt";
1773                                 reg = <0x0 0xf0d0 0x0 0x10>;
1774                                 clocks = <&xtal>;
1775                         };
1776 
1777                         pwm_ab: pwm@1b000 {
1778                                 compatible = "amlogic,meson-axg-ee-pwm";
1779                                 reg = <0x0 0x1b000 0x0 0x20>;
1780                                 #pwm-cells = <3>;
1781                                 status = "disabled";
1782                         };
1783 
1784                         pwm_cd: pwm@1a000 {
1785                                 compatible = "amlogic,meson-axg-ee-pwm";
1786                                 reg = <0x0 0x1a000 0x0 0x20>;
1787                                 #pwm-cells = <3>;
1788                                 status = "disabled";
1789                         };
1790 
1791                         spicc0: spi@13000 {
1792                                 compatible = "amlogic,meson-axg-spicc";
1793                                 reg = <0x0 0x13000 0x0 0x3c>;
1794                                 interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
1795                                 clocks = <&clkc CLKID_SPICC0>;
1796                                 clock-names = "core";
1797                                 #address-cells = <1>;
1798                                 #size-cells = <0>;
1799                                 status = "disabled";
1800                         };
1801 
1802                         spicc1: spi@15000 {
1803                                 compatible = "amlogic,meson-axg-spicc";
1804                                 reg = <0x0 0x15000 0x0 0x3c>;
1805                                 interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
1806                                 clocks = <&clkc CLKID_SPICC1>;
1807                                 clock-names = "core";
1808                                 #address-cells = <1>;
1809                                 #size-cells = <0>;
1810                                 status = "disabled";
1811                         };
1812 
1813                         clk_msr: clock-measure@18000 {
1814                                 compatible = "amlogic,meson-axg-clk-measure";
1815                                 reg = <0x0 0x18000 0x0 0x10>;
1816                         };
1817 
1818                         i2c3: i2c@1c000 {
1819                                 compatible = "amlogic,meson-axg-i2c";
1820                                 reg = <0x0 0x1c000 0x0 0x20>;
1821                                 interrupts = <GIC_SPI 39 IRQ_TYPE_EDGE_RISING>;
1822                                 clocks = <&clkc CLKID_I2C>;
1823                                 #address-cells = <1>;
1824                                 #size-cells = <0>;
1825                                 status = "disabled";
1826                         };
1827 
1828                         i2c2: i2c@1d000 {
1829                                 compatible = "amlogic,meson-axg-i2c";
1830                                 reg = <0x0 0x1d000 0x0 0x20>;
1831                                 interrupts = <GIC_SPI 215 IRQ_TYPE_EDGE_RISING>;
1832                                 clocks = <&clkc CLKID_I2C>;
1833                                 #address-cells = <1>;
1834                                 #size-cells = <0>;
1835                                 status = "disabled";
1836                         };
1837 
1838                         i2c1: i2c@1e000 {
1839                                 compatible = "amlogic,meson-axg-i2c";
1840                                 reg = <0x0 0x1e000 0x0 0x20>;
1841                                 interrupts = <GIC_SPI 214 IRQ_TYPE_EDGE_RISING>;
1842                                 clocks = <&clkc CLKID_I2C>;
1843                                 #address-cells = <1>;
1844                                 #size-cells = <0>;
1845                                 status = "disabled";
1846                         };
1847 
1848                         i2c0: i2c@1f000 {
1849                                 compatible = "amlogic,meson-axg-i2c";
1850                                 reg = <0x0 0x1f000 0x0 0x20>;
1851                                 interrupts = <GIC_SPI 21 IRQ_TYPE_EDGE_RISING>;
1852                                 clocks = <&clkc CLKID_I2C>;
1853                                 #address-cells = <1>;
1854                                 #size-cells = <0>;
1855                                 status = "disabled";
1856                         };
1857 
1858                         uart_B: serial@23000 {
1859                                 compatible = "amlogic,meson-gx-uart";
1860                                 reg = <0x0 0x23000 0x0 0x18>;
1861                                 interrupts = <GIC_SPI 75 IRQ_TYPE_EDGE_RISING>;
1862                                 status = "disabled";
1863                                 clocks = <&xtal>, <&clkc CLKID_UART1>, <&xtal>;
1864                                 clock-names = "xtal", "pclk", "baud";
1865                         };
1866 
1867                         uart_A: serial@24000 {
1868                                 compatible = "amlogic,meson-gx-uart";
1869                                 reg = <0x0 0x24000 0x0 0x18>;
1870                                 interrupts = <GIC_SPI 26 IRQ_TYPE_EDGE_RISING>;
1871                                 status = "disabled";
1872                                 clocks = <&xtal>, <&clkc CLKID_UART0>, <&xtal>;
1873                                 clock-names = "xtal", "pclk", "baud";
1874                                 fifo-size = <128>;
1875                         };
1876                 };
1877 
1878                 apb: bus@ffe00000 {
1879                         compatible = "simple-bus";
1880                         reg = <0x0 0xffe00000 0x0 0x200000>;
1881                         #address-cells = <2>;
1882                         #size-cells = <2>;
1883                         ranges = <0x0 0x0 0x0 0xffe00000 0x0 0x200000>;
1884 
1885                         sd_emmc_b: sd@5000 {
1886                                 compatible = "amlogic,meson-axg-mmc";
1887                                 reg = <0x0 0x5000 0x0 0x800>;
1888                                 interrupts = <GIC_SPI 217 IRQ_TYPE_EDGE_RISING>;
1889                                 status = "disabled";
1890                                 clocks = <&clkc CLKID_SD_EMMC_B>,
1891                                         <&clkc CLKID_SD_EMMC_B_CLK0>,
1892                                         <&clkc CLKID_FCLK_DIV2>;
1893                                 clock-names = "core", "clkin0", "clkin1";
1894                                 resets = <&reset RESET_SD_EMMC_B>;
1895                         };
1896 
1897                         sd_emmc_c: mmc@7000 {
1898                                 compatible = "amlogic,meson-axg-mmc";
1899                                 reg = <0x0 0x7000 0x0 0x800>;
1900                                 interrupts = <GIC_SPI 218 IRQ_TYPE_EDGE_RISING>;
1901                                 status = "disabled";
1902                                 clocks = <&clkc CLKID_SD_EMMC_C>,
1903                                         <&clkc CLKID_SD_EMMC_C_CLK0>,
1904                                         <&clkc CLKID_FCLK_DIV2>;
1905                                 clock-names = "core", "clkin0", "clkin1";
1906                                 resets = <&reset RESET_SD_EMMC_C>;
1907                         };
1908 
1909                         usb2_phy1: phy@9020 {
1910                                 compatible = "amlogic,meson-gxl-usb2-phy";
1911                                 #phy-cells = <0>;
1912                                 reg = <0x0 0x9020 0x0 0x20>;
1913                                 clocks = <&clkc CLKID_USB>;
1914                                 clock-names = "phy";
1915                                 resets = <&reset RESET_USB_OTG>;
1916                                 reset-names = "phy";
1917                         };
1918                 };
1919 
1920                 sram: sram@fffc0000 {
1921                         compatible = "mmio-sram";
1922                         reg = <0x0 0xfffc0000 0x0 0x20000>;
1923                         #address-cells = <1>;
1924                         #size-cells = <1>;
1925                         ranges = <0 0x0 0xfffc0000 0x20000>;
1926 
1927                         cpu_scp_lpri: scp-sram@13000 {
1928                                 compatible = "amlogic,meson-axg-scp-shmem";
1929                                 reg = <0x13000 0x400>;
1930                         };
1931 
1932                         cpu_scp_hpri: scp-sram@13400 {
1933                                 compatible = "amlogic,meson-axg-scp-shmem";
1934                                 reg = <0x13400 0x400>;
1935                         };
1936                 };
1937         };
1938 
1939         timer {
1940                 compatible = "arm,armv8-timer";
1941                 interrupts = <GIC_PPI 13
1942                         (GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>,
1943                              <GIC_PPI 14
1944                         (GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>,
1945                              <GIC_PPI 11
1946                         (GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>,
1947                              <GIC_PPI 10
1948                         (GIC_CPU_MASK_RAW(0xff) | IRQ_TYPE_LEVEL_LOW)>;
1949         };
1950 
1951         xtal: xtal-clk {
1952                 compatible = "fixed-clock";
1953                 clock-frequency = <24000000>;
1954                 clock-output-names = "xtal";
1955                 #clock-cells = <0>;
1956         };
1957 };