/dts-v1/; / { interrupt-parent = <0x01>; #address-cells = <0x02>; #size-cells = <0x02>; compatible = "libretech,aml-a311d-cc\0amlogic,a311d\0amlogic,g12b"; model = "Libre Computer AML-A311D-CC"; aliases { mmc0 = "/soc/mmc@ffe07000"; mmc1 = "/soc/mmc@ffe05000"; serial0 = "/soc/bus@ff800000/serial@3000"; ethernet0 = "/soc/ethernet@ff3f0000"; spi0 = "/soc/bus@ffd00000/spi@14000"; }; chosen { #address-cells = <0x02>; #size-cells = <0x02>; ranges; stdout-path = "serial0:115200n8"; framebuffer-cvbs { compatible = "amlogic,simple-framebuffer\0simple-framebuffer"; amlogic,pipeline = "vpu-cvbs"; clocks = <0x02 0xa8 0x02 0x35 0x02 0x3a>; status = "disabled"; power-domains = <0x03 0x00>; phandle = <0x64>; }; framebuffer-hdmi { compatible = "amlogic,simple-framebuffer\0simple-framebuffer"; amlogic,pipeline = "vpu-hdmi"; clocks = <0x02 0xa8 0x02 0x35 0x02 0x3a>; status = "disabled"; power-domains = <0x03 0x00>; phandle = <0x65>; }; }; efuse { compatible = "amlogic,meson-gxbb-efuse"; clocks = <0x02 0x6a>; #address-cells = <0x01>; #size-cells = <0x01>; read-only; secure-monitor = <0x04>; phandle = <0x66>; }; opp-table-gpu { compatible = "operating-points-v2"; phandle = <0x35>; opp-124999998 { opp-hz = <0x00 0x773593e>; opp-microvolt = "\0\f5"; }; opp-249999996 { opp-hz = <0x00 0xee6b27c>; opp-microvolt = "\0\f5"; }; opp-285714281 { opp-hz = <0x00 0x1107a769>; opp-microvolt = "\0\f5"; }; opp-399999994 { opp-hz = <0x00 0x17d783fa>; opp-microvolt = "\0\f5"; }; opp-499999992 { opp-hz = <0x00 0x1dcd64f8>; opp-microvolt = "\0\f5"; }; opp-666666656 { opp-hz = <0x00 0x27bc86a0>; opp-microvolt = "\0\f5"; }; opp-799999987 { opp-hz = <0x00 0x2faf07f3>; opp-microvolt = "\0\f5"; }; }; psci { compatible = "arm,psci-1.0"; method = "smc"; }; reserved-memory { #address-cells = <0x02>; #size-cells = <0x02>; ranges; secmon@5000000 { reg = <0x00 0x5000000 0x00 0x300000>; no-map; phandle = <0x67>; }; secmon@5300000 { reg = <0x00 0x5300000 0x00 0x2000000>; no-map; phandle = <0x68>; }; linux,cma { compatible = "shared-dma-pool"; reusable; size = <0x00 0x10000000>; alignment = <0x00 0x400000>; linux,cma-default; }; }; secure-monitor { compatible = "amlogic,meson-gxbb-sm"; phandle = <0x04>; }; soc { compatible = "simple-bus"; #address-cells = <0x02>; #size-cells = <0x02>; ranges; bootph-all; pcie@fc000000 { compatible = "amlogic,g12a-pcie\0snps,dw-pcie"; reg = <0x00 0xfc000000 0x00 0x400000 0x00 0xff648000 0x00 0x2000 0x00 0xfc400000 0x00 0x200000>; reg-names = "elbi\0cfg\0config"; interrupts = <0x00 0xdd 0x04>; #interrupt-cells = <0x01>; interrupt-map-mask = <0x00 0x00 0x00 0x00>; interrupt-map = <0x00 0x00 0x00 0x00 0x01 0x00 0xdf 0x04>; bus-range = <0x00 0xff>; #address-cells = <0x03>; #size-cells = <0x02>; device_type = "pci"; ranges = <0x81000000 0x00 0x00 0x00 0xfc600000 0x00 0x100000 0x82000000 0x00 0xfc700000 0x00 0xfc700000 0x00 0x1900000>; clocks = <0x02 0x30 0x02 0x2d 0x02 0xc9>; clock-names = "general\0pclk\0port"; resets = <0x05 0x0c 0x05 0x0f>; reset-names = "port\0apb"; num-lanes = <0x01>; phys = <0x06 0x02>; phy-names = "pcie"; status = "disabled"; phandle = <0x69>; }; ethernet@ff3f0000 { compatible = "amlogic,meson-g12a-dwmac\0snps,dwmac-3.70a\0snps,dwmac"; reg = <0x00 0xff3f0000 0x00 0x10000 0x00 0xff634540 0x00 0x08>; interrupts = <0x00 0x08 0x04>; interrupt-names = "macirq"; clocks = <0x02 0x26 0x02 0x02 0x02 0x0d 0x02 0x02>; clock-names = "stmmaceth\0clkin0\0clkin1\0timing-adjustment"; rx-fifo-depth = <0x1000>; tx-fifo-depth = <0x800>; status = "okay"; power-domains = <0x03 0x01>; pinctrl-0 = <0x07 0x08 0x09>; pinctrl-names = "default"; phy-mode = "rgmii"; phy-handle = <0x0a>; amlogic,tx-delay-ns = <0x02>; phandle = <0x6a>; mdio { #address-cells = <0x01>; #size-cells = <0x00>; compatible = "snps,dwmac-mdio"; phandle = <0x17>; }; }; bus@ff600000 { compatible = "simple-bus"; reg = <0x00 0xff600000 0x00 0x200000>; #address-cells = <0x02>; #size-cells = <0x02>; ranges = <0x00 0x00 0x00 0xff600000 0x00 0x200000>; phandle = <0x6b>; hdmi-tx@0 { compatible = "amlogic,meson-g12a-dw-hdmi"; reg = <0x00 0x00 0x00 0x10000 0x00 0x3c000 0x00 0x1000>; interrupts = <0x00 0x39 0x01>; resets = <0x05 0x13 0x05 0x42 0x05 0x4f>; reset-names = "hdmitx_apb\0hdmitx\0hdmitx_phy"; clocks = <0x02 0xa8 0x02 0x35 0x02 0x3a>; clock-names = "isfr\0iahb\0venci"; #address-cells = <0x01>; #size-cells = <0x00>; #sound-dai-cells = <0x00>; status = "okay"; pinctrl-0 = <0x0b 0x0c>; pinctrl-names = "default"; hdmi-supply = <0x0d>; reg-names = "hdmitx\0hhi"; phandle = <0x1e>; port@0 { reg = <0x00>; phandle = <0x6c>; endpoint { remote-endpoint = <0x0e>; phandle = <0x24>; }; }; port@1 { reg = <0x01>; phandle = <0x6d>; endpoint { remote-endpoint = <0x0f>; phandle = <0x49>; }; }; }; bus@30000 { compatible = "simple-bus"; reg = <0x00 0x30000 0x00 0x2000>; #address-cells = <0x02>; #size-cells = <0x02>; ranges = <0x00 0x00 0x00 0x30000 0x00 0x2000>; phandle = <0x6e>; rng@218 { compatible = "amlogic,meson-rng"; reg = <0x00 0x218 0x00 0x04>; clocks = <0x02 0x1b>; clock-names = "core"; phandle = <0x6f>; }; }; audio-controller@32000 { compatible = "amlogic,t9015"; reg = <0x00 0x32000 0x00 0x14>; #sound-dai-cells = <0x00>; sound-name-prefix = "ACODEC"; clocks = <0x02 0x24>; clock-names = "pclk"; resets = <0x05 0x3d>; status = "okay"; AVDD-supply = <0x10>; phandle = <0x5f>; }; bus@34400 { compatible = "simple-bus"; reg = <0x00 0x34400 0x00 0x400>; #address-cells = <0x02>; #size-cells = <0x02>; ranges = <0x00 0x00 0x00 0x34400 0x00 0x400>; phandle = <0x70>; pinctrl@40 { compatible = "amlogic,meson-g12a-periphs-pinctrl"; #address-cells = <0x02>; #size-cells = <0x02>; ranges; phandle = <0x11>; bank@40 { reg = <0x00 0x40 0x00 0x4c 0x00 0xe8 0x00 0x18 0x00 0x120 0x00 0x18 0x00 0x2c0 0x00 0x40 0x00 0x340 0x00 0x1c>; reg-names = "gpio\0pull\0pull-enable\0mux\0ds"; gpio-controller; #gpio-cells = <0x02>; gpio-ranges = <0x11 0x00 0x00 0x56>; phandle = <0x16>; }; cec_ao_a_h { phandle = <0x71>; mux { groups = "cec_ao_a_h"; function = "cec_ao_a_h"; bias-disable; }; }; cec_ao_b_h { phandle = <0x1d>; mux { groups = "cec_ao_b_h"; function = "cec_ao_b_h"; bias-disable; }; }; emmc-ctrl { phandle = <0x2b>; mux-0 { groups = "emmc_cmd"; function = "emmc"; bias-pull-up; drive-strength-microamp = <0xfa0>; }; mux-1 { groups = "emmc_clk"; function = "emmc"; bias-disable; drive-strength-microamp = <0xfa0>; }; }; emmc-data-4b { phandle = <0x72>; mux-0 { groups = "emmc_nand_d0\0emmc_nand_d1\0emmc_nand_d2\0emmc_nand_d3"; function = "emmc"; bias-pull-up; drive-strength-microamp = <0xfa0>; }; }; emmc-data-8b { phandle = <0x2c>; mux-0 { groups = "emmc_nand_d0\0emmc_nand_d1\0emmc_nand_d2\0emmc_nand_d3\0emmc_nand_d4\0emmc_nand_d5\0emmc_nand_d6\0emmc_nand_d7"; function = "emmc"; bias-pull-up; drive-strength-microamp = <0xfa0>; }; }; emmc-ds { phandle = <0x2d>; mux { groups = "emmc_nand_ds"; function = "emmc"; bias-pull-down; drive-strength-microamp = <0xfa0>; }; }; emmc_clk_gate { phandle = <0x2f>; mux { groups = "BOOT_8"; function = "gpio_periphs"; bias-pull-down; drive-strength-microamp = <0xfa0>; }; }; hdmitx_ddc { phandle = <0x0c>; mux { groups = "hdmitx_sda\0hdmitx_sck"; function = "hdmitx"; bias-disable; drive-strength-microamp = <0xfa0>; }; }; hdmitx_hpd { phandle = <0x0b>; mux { groups = "hdmitx_hpd_in"; function = "hdmitx"; bias-disable; }; }; i2c0-sda-c { phandle = <0x73>; mux { groups = "i2c0_sda_c"; function = "i2c0"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; i2c0-sck-c { phandle = <0x74>; mux { groups = "i2c0_sck_c"; function = "i2c0"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; i2c0-sda-z0 { phandle = <0x75>; mux { groups = "i2c0_sda_z0"; function = "i2c0"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; i2c0-sck-z1 { phandle = <0x76>; mux { groups = "i2c0_sck_z1"; function = "i2c0"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; i2c0-sda-z7 { phandle = <0x77>; mux { groups = "i2c0_sda_z7"; function = "i2c0"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; i2c0-sda-z8 { phandle = <0x78>; mux { groups = "i2c0_sda_z8"; function = "i2c0"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; i2c1-sda-x { phandle = <0x79>; mux { groups = "i2c1_sda_x"; function = "i2c1"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; i2c1-sck-x { phandle = <0x7a>; mux { groups = "i2c1_sck_x"; function = "i2c1"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; i2c1-sda-h2 { phandle = <0x7b>; mux { groups = "i2c1_sda_h2"; function = "i2c1"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; i2c1-sck-h3 { phandle = <0x7c>; mux { groups = "i2c1_sck_h3"; function = "i2c1"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; i2c1-sda-h6 { phandle = <0x7d>; mux { groups = "i2c1_sda_h6"; function = "i2c1"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; i2c1-sck-h7 { phandle = <0x7e>; mux { groups = "i2c1_sck_h7"; function = "i2c1"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; i2c2-sda-x { phandle = <0x7f>; mux { groups = "i2c2_sda_x"; function = "i2c2"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; i2c2-sck-x { phandle = <0x80>; mux { groups = "i2c2_sck_x"; function = "i2c2"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; i2c2-sda-z { phandle = <0x81>; mux { groups = "i2c2_sda_z"; function = "i2c2"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; i2c2-sck-z { phandle = <0x82>; mux { groups = "i2c2_sck_z"; function = "i2c2"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; i2c3-sda-h { phandle = <0x83>; mux { groups = "i2c3_sda_h"; function = "i2c3"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; i2c3-sck-h { phandle = <0x84>; mux { groups = "i2c3_sck_h"; function = "i2c3"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; i2c3-sda-a { phandle = <0x85>; mux { groups = "i2c3_sda_a"; function = "i2c3"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; i2c3-sck-a { phandle = <0x86>; mux { groups = "i2c3_sck_a"; function = "i2c3"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; mclk0-a { phandle = <0x87>; mux { groups = "mclk0_a"; function = "mclk0"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; mclk1-a { phandle = <0x88>; mux { groups = "mclk1_a"; function = "mclk1"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; mclk1-x { phandle = <0x89>; mux { groups = "mclk1_x"; function = "mclk1"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; mclk1-z { phandle = <0x8a>; mux { groups = "mclk1_z"; function = "mclk1"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; nor { phandle = <0x25>; mux { groups = "nor_d\0nor_q\0nor_c\0nor_cs"; function = "nor"; bias-disable; }; }; pdm-din0-a { phandle = <0x8b>; mux { groups = "pdm_din0_a"; function = "pdm"; bias-disable; }; }; pdm-din0-c { phandle = <0x8c>; mux { groups = "pdm_din0_c"; function = "pdm"; bias-disable; }; }; pdm-din0-x { phandle = <0x8d>; mux { groups = "pdm_din0_x"; function = "pdm"; bias-disable; }; }; pdm-din0-z { phandle = <0x8e>; mux { groups = "pdm_din0_z"; function = "pdm"; bias-disable; }; }; pdm-din1-a { phandle = <0x8f>; mux { groups = "pdm_din1_a"; function = "pdm"; bias-disable; }; }; pdm-din1-c { phandle = <0x90>; mux { groups = "pdm_din1_c"; function = "pdm"; bias-disable; }; }; pdm-din1-x { phandle = <0x91>; mux { groups = "pdm_din1_x"; function = "pdm"; bias-disable; }; }; pdm-din1-z { phandle = <0x92>; mux { groups = "pdm_din1_z"; function = "pdm"; bias-disable; }; }; pdm-din2-a { phandle = <0x93>; mux { groups = "pdm_din2_a"; function = "pdm"; bias-disable; }; }; pdm-din2-c { phandle = <0x94>; mux { groups = "pdm_din2_c"; function = "pdm"; bias-disable; }; }; pdm-din2-x { phandle = <0x95>; mux { groups = "pdm_din2_x"; function = "pdm"; bias-disable; }; }; pdm-din2-z { phandle = <0x96>; mux { groups = "pdm_din2_z"; function = "pdm"; bias-disable; }; }; pdm-din3-a { phandle = <0x97>; mux { groups = "pdm_din3_a"; function = "pdm"; bias-disable; }; }; pdm-din3-c { phandle = <0x98>; mux { groups = "pdm_din3_c"; function = "pdm"; bias-disable; }; }; pdm-din3-x { phandle = <0x99>; mux { groups = "pdm_din3_x"; function = "pdm"; bias-disable; }; }; pdm-din3-z { phandle = <0x9a>; mux { groups = "pdm_din3_z"; function = "pdm"; bias-disable; }; }; pdm-dclk-a { phandle = <0x9b>; mux { groups = "pdm_dclk_a"; function = "pdm"; bias-disable; drive-strength-microamp = <0x1f4>; }; }; pdm-dclk-c { phandle = <0x9c>; mux { groups = "pdm_dclk_c"; function = "pdm"; bias-disable; drive-strength-microamp = <0x1f4>; }; }; pdm-dclk-x { phandle = <0x9d>; mux { groups = "pdm_dclk_x"; function = "pdm"; bias-disable; drive-strength-microamp = <0x1f4>; }; }; pdm-dclk-z { phandle = <0x9e>; mux { groups = "pdm_dclk_z"; function = "pdm"; bias-disable; drive-strength-microamp = <0x1f4>; }; }; pwm-a { phandle = <0x9f>; mux { groups = "pwm_a"; function = "pwm_a"; bias-disable; }; }; pwm-b-x7 { phandle = <0xa0>; mux { groups = "pwm_b_x7"; function = "pwm_b"; bias-disable; }; }; pwm-b-x19 { phandle = <0xa1>; mux { groups = "pwm_b_x19"; function = "pwm_b"; bias-disable; }; }; pwm-c-c { phandle = <0xa2>; mux { groups = "pwm_c_c"; function = "pwm_c"; bias-disable; }; }; pwm-c-x5 { phandle = <0xa3>; mux { groups = "pwm_c_x5"; function = "pwm_c"; bias-disable; }; }; pwm-c-x8 { phandle = <0xa4>; mux { groups = "pwm_c_x8"; function = "pwm_c"; bias-disable; }; }; pwm-d-x3 { phandle = <0xa5>; mux { groups = "pwm_d_x3"; function = "pwm_d"; bias-disable; }; }; pwm-d-x6 { phandle = <0xa6>; mux { groups = "pwm_d_x6"; function = "pwm_d"; bias-disable; }; }; pwm-e { phandle = <0xa7>; mux { groups = "pwm_e"; function = "pwm_e"; bias-disable; }; }; pwm-f-z { phandle = <0xa8>; mux { groups = "pwm_f_z"; function = "pwm_f"; bias-disable; }; }; pwm-f-a { phandle = <0xa9>; mux { groups = "pwm_f_a"; function = "pwm_f"; bias-disable; }; }; pwm-f-x { phandle = <0xaa>; mux { groups = "pwm_f_x"; function = "pwm_f"; bias-disable; }; }; pwm-f-h { phandle = <0xab>; mux { groups = "pwm_f_h"; function = "pwm_f"; bias-disable; }; }; sdcard_c { phandle = <0x27>; mux-0 { groups = "sdcard_d0_c\0sdcard_d1_c\0sdcard_d2_c\0sdcard_d3_c\0sdcard_cmd_c"; function = "sdcard"; bias-pull-up; drive-strength-microamp = <0xfa0>; }; mux-1 { groups = "sdcard_clk_c"; function = "sdcard"; bias-disable; drive-strength-microamp = <0xfa0>; }; }; sdcard_clk_gate_c { phandle = <0x28>; mux { groups = "GPIOC_4"; function = "gpio_periphs"; bias-pull-down; drive-strength-microamp = <0xfa0>; }; }; sdcard_z { phandle = <0xac>; mux-0 { groups = "sdcard_d0_z\0sdcard_d1_z\0sdcard_d2_z\0sdcard_d3_z\0sdcard_cmd_z"; function = "sdcard"; bias-pull-up; drive-strength-microamp = <0xfa0>; }; mux-1 { groups = "sdcard_clk_z"; function = "sdcard"; bias-disable; drive-strength-microamp = <0xfa0>; }; }; sdcard_clk_gate_z { phandle = <0xad>; mux { groups = "GPIOZ_6"; function = "gpio_periphs"; bias-pull-down; drive-strength-microamp = <0xfa0>; }; }; sdio { phandle = <0xae>; mux { groups = "sdio_d0\0sdio_d1\0sdio_d2\0sdio_d3\0sdio_clk\0sdio_cmd"; function = "sdio"; bias-disable; drive-strength-microamp = <0xfa0>; }; }; sdio_clk_gate { phandle = <0xaf>; mux { groups = "GPIOX_4"; function = "gpio_periphs"; bias-pull-down; drive-strength-microamp = <0xfa0>; }; }; spdif-in-a10 { phandle = <0xb0>; mux { groups = "spdif_in_a10"; function = "spdif_in"; bias-disable; }; }; spdif-in-a12 { phandle = <0xb1>; mux { groups = "spdif_in_a12"; function = "spdif_in"; bias-disable; }; }; spdif-in-h { phandle = <0xb2>; mux { groups = "spdif_in_h"; function = "spdif_in"; bias-disable; }; }; spdif-out-h { phandle = <0xb3>; mux { groups = "spdif_out_h"; function = "spdif_out"; drive-strength-microamp = <0x1f4>; bias-disable; }; }; spdif-out-a11 { phandle = <0xb4>; mux { groups = "spdif_out_a11"; function = "spdif_out"; drive-strength-microamp = <0x1f4>; bias-disable; }; }; spdif-out-a13 { phandle = <0xb5>; mux { groups = "spdif_out_a13"; function = "spdif_out"; drive-strength-microamp = <0x1f4>; bias-disable; }; }; spicc0-x { phandle = <0xb6>; mux { groups = "spi0_mosi_x\0spi0_miso_x\0spi0_clk_x"; function = "spi0"; drive-strength-microamp = <0xfa0>; bias-disable; }; }; spicc0-ss0-x { phandle = <0xb7>; mux { groups = "spi0_ss0_x"; function = "spi0"; drive-strength-microamp = <0xfa0>; bias-disable; }; }; spicc0-c { phandle = <0xb8>; mux { groups = "spi0_mosi_c\0spi0_miso_c\0spi0_ss0_c\0spi0_clk_c"; function = "spi0"; drive-strength-microamp = <0xfa0>; bias-disable; }; }; spicc1 { phandle = <0xb9>; mux { groups = "spi1_mosi\0spi1_miso\0spi1_clk"; function = "spi1"; drive-strength-microamp = <0xfa0>; }; }; spicc1-ss0 { phandle = <0xba>; mux { groups = "spi1_ss0"; function = "spi1"; drive-strength-microamp = <0xfa0>; bias-disable; }; }; tdm-a-din0 { phandle = <0xbb>; mux { groups = "tdm_a_din0"; function = "tdm_a"; bias-disable; }; }; tdm-a-din1 { phandle = <0xbc>; mux { groups = "tdm_a_din1"; function = "tdm_a"; bias-disable; }; }; tdm-a-dout0 { phandle = <0xbd>; mux { groups = "tdm_a_dout0"; function = "tdm_a"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-a-dout1 { phandle = <0xbe>; mux { groups = "tdm_a_dout1"; function = "tdm_a"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-a-fs { phandle = <0xbf>; mux { groups = "tdm_a_fs"; function = "tdm_a"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-a-sclk { phandle = <0xc0>; mux { groups = "tdm_a_sclk"; function = "tdm_a"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-a-slv-fs { phandle = <0xc1>; mux { groups = "tdm_a_slv_fs"; function = "tdm_a"; bias-disable; }; }; tdm-a-slv-sclk { phandle = <0xc2>; mux { groups = "tdm_a_slv_sclk"; function = "tdm_a"; bias-disable; }; }; tdm-b-din0 { phandle = <0xc3>; mux { groups = "tdm_b_din0"; function = "tdm_b"; bias-disable; }; }; tdm-b-din1 { phandle = <0xc4>; mux { groups = "tdm_b_din1"; function = "tdm_b"; bias-disable; }; }; tdm-b-din2 { phandle = <0xc5>; mux { groups = "tdm_b_din2"; function = "tdm_b"; bias-disable; }; }; tdm-b-din3-a { phandle = <0xc6>; mux { groups = "tdm_b_din3_a"; function = "tdm_b"; bias-disable; }; }; tdm-b-din3-h { phandle = <0xc7>; mux { groups = "tdm_b_din3_h"; function = "tdm_b"; bias-disable; }; }; tdm-b-dout0 { phandle = <0xc8>; mux { groups = "tdm_b_dout0"; function = "tdm_b"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-b-dout1 { phandle = <0xc9>; mux { groups = "tdm_b_dout1"; function = "tdm_b"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-b-dout2 { phandle = <0xca>; mux { groups = "tdm_b_dout2"; function = "tdm_b"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-b-dout3-a { phandle = <0xcb>; mux { groups = "tdm_b_dout3_a"; function = "tdm_b"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-b-dout3-h { phandle = <0xcc>; mux { groups = "tdm_b_dout3_h"; function = "tdm_b"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-b-fs { phandle = <0xcd>; mux { groups = "tdm_b_fs"; function = "tdm_b"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-b-sclk { phandle = <0xce>; mux { groups = "tdm_b_sclk"; function = "tdm_b"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-b-slv-fs { phandle = <0xcf>; mux { groups = "tdm_b_slv_fs"; function = "tdm_b"; bias-disable; }; }; tdm-b-slv-sclk { phandle = <0xd0>; mux { groups = "tdm_b_slv_sclk"; function = "tdm_b"; bias-disable; }; }; tdm-c-din0-a { phandle = <0xd1>; mux { groups = "tdm_c_din0_a"; function = "tdm_c"; bias-disable; }; }; tdm-c-din0-z { phandle = <0xd2>; mux { groups = "tdm_c_din0_z"; function = "tdm_c"; bias-disable; }; }; tdm-c-din1-a { phandle = <0xd3>; mux { groups = "tdm_c_din1_a"; function = "tdm_c"; bias-disable; }; }; tdm-c-din1-z { phandle = <0xd4>; mux { groups = "tdm_c_din1_z"; function = "tdm_c"; bias-disable; }; }; tdm-c-din2-a { phandle = <0xd5>; mux { groups = "tdm_c_din2_a"; function = "tdm_c"; bias-disable; }; }; eth-leds { phandle = <0xd6>; mux { groups = "eth_link_led\0eth_act_led"; function = "eth"; bias-disable; }; }; eth { phandle = <0x07>; mux { groups = "eth_mdio\0eth_mdc\0eth_rgmii_rx_clk\0eth_rx_dv\0eth_rxd0\0eth_rxd1\0eth_txen\0eth_txd0\0eth_txd1"; function = "eth"; drive-strength-microamp = <0xfa0>; bias-disable; }; }; eth-rgmii { phandle = <0x08>; mux { groups = "eth_rxd2_rgmii\0eth_rxd3_rgmii\0eth_rgmii_tx_clk\0eth_txd2_rgmii\0eth_txd3_rgmii"; function = "eth"; drive-strength-microamp = <0xfa0>; bias-disable; }; }; tdm-c-din2-z { phandle = <0xd7>; mux { groups = "tdm_c_din2_z"; function = "tdm_c"; bias-disable; }; }; tdm-c-din3-a { phandle = <0xd8>; mux { groups = "tdm_c_din3_a"; function = "tdm_c"; bias-disable; }; }; tdm-c-din3-z { phandle = <0xd9>; mux { groups = "tdm_c_din3_z"; function = "tdm_c"; bias-disable; }; }; tdm-c-dout0-a { phandle = <0xda>; mux { groups = "tdm_c_dout0_a"; function = "tdm_c"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-c-dout0-z { phandle = <0xdb>; mux { groups = "tdm_c_dout0_z"; function = "tdm_c"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-c-dout1-a { phandle = <0xdc>; mux { groups = "tdm_c_dout1_a"; function = "tdm_c"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-c-dout1-z { phandle = <0xdd>; mux { groups = "tdm_c_dout1_z"; function = "tdm_c"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-c-dout2-a { phandle = <0xde>; mux { groups = "tdm_c_dout2_a"; function = "tdm_c"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-c-dout2-z { phandle = <0xdf>; mux { groups = "tdm_c_dout2_z"; function = "tdm_c"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-c-dout3-a { phandle = <0xe0>; mux { groups = "tdm_c_dout3_a"; function = "tdm_c"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-c-dout3-z { phandle = <0xe1>; mux { groups = "tdm_c_dout3_z"; function = "tdm_c"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-c-fs-a { phandle = <0xe2>; mux { groups = "tdm_c_fs_a"; function = "tdm_c"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-c-fs-z { phandle = <0xe3>; mux { groups = "tdm_c_fs_z"; function = "tdm_c"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-c-sclk-a { phandle = <0xe4>; mux { groups = "tdm_c_sclk_a"; function = "tdm_c"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-c-sclk-z { phandle = <0xe5>; mux { groups = "tdm_c_sclk_z"; function = "tdm_c"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-c-slv-fs-a { phandle = <0xe6>; mux { groups = "tdm_c_slv_fs_a"; function = "tdm_c"; bias-disable; }; }; tdm-c-slv-fs-z { phandle = <0xe7>; mux { groups = "tdm_c_slv_fs_z"; function = "tdm_c"; bias-disable; }; }; tdm-c-slv-sclk-a { phandle = <0xe8>; mux { groups = "tdm_c_slv_sclk_a"; function = "tdm_c"; bias-disable; }; }; tdm-c-slv-sclk-z { phandle = <0xe9>; mux { groups = "tdm_c_slv_sclk_z"; function = "tdm_c"; bias-disable; }; }; uart-a { phandle = <0xea>; mux { groups = "uart_a_tx\0uart_a_rx"; function = "uart_a"; bias-disable; }; }; uart-a-cts-rts { phandle = <0xeb>; mux { groups = "uart_a_cts\0uart_a_rts"; function = "uart_a"; bias-disable; }; }; uart-b { phandle = <0xec>; mux { groups = "uart_b_tx\0uart_b_rx"; function = "uart_b"; bias-disable; }; }; uart-c { phandle = <0xed>; mux { groups = "uart_c_tx\0uart_c_rx"; function = "uart_c"; bias-disable; }; }; uart-c-cts-rts { phandle = <0xee>; mux { groups = "uart_c_cts\0uart_c_rts"; function = "uart_c"; bias-disable; }; }; spi-cs-disable { phandle = <0x2e>; mux { groups = "BOOT_14"; function = "gpio_periphs"; bias-disable; output-high; }; }; eth-phy-irq { phandle = <0x09>; mux { groups = "GPIOZ_14"; function = "gpio_periphs"; bias-pull-up; output-disable; }; }; }; }; temperature-sensor@34800 { compatible = "amlogic,g12a-cpu-thermal\0amlogic,g12a-thermal"; reg = <0x00 0x34800 0x00 0x50>; interrupts = <0x00 0x23 0x01>; clocks = <0x02 0xd4>; #thermal-sensor-cells = <0x00>; amlogic,ao-secure = <0x12>; phandle = <0x36>; }; temperature-sensor@34c00 { compatible = "amlogic,g12a-ddr-thermal\0amlogic,g12a-thermal"; reg = <0x00 0x34c00 0x00 0x50>; interrupts = <0x00 0x24 0x01>; clocks = <0x02 0xd4>; #thermal-sensor-cells = <0x00>; amlogic,ao-secure = <0x12>; phandle = <0x3f>; }; phy@36000 { compatible = "amlogic,g12a-usb2-phy"; reg = <0x00 0x36000 0x00 0x2000>; clocks = <0x13>; clock-names = "xtal"; resets = <0x05 0x30>; reset-names = "phy"; #phy-cells = <0x00>; phandle = <0x33>; }; bus@38000 { compatible = "simple-bus"; #address-cells = <0x02>; #size-cells = <0x02>; ranges = <0x00 0x00 0x00 0x38000 0x00 0x2000>; phandle = <0xef>; video-lut@48 { compatible = "amlogic,canvas"; reg = <0x00 0x48 0x00 0x14>; phandle = <0x22>; }; pmu@80 { reg = <0x00 0x80 0x00 0x40 0x00 0xc00 0x00 0x40>; interrupts = <0x00 0x34 0x01>; compatible = "amlogic,g12b-ddr-pmu"; phandle = <0xf0>; }; }; phy@3a000 { compatible = "amlogic,g12a-usb2-phy"; reg = <0x00 0x3a000 0x00 0x2000>; clocks = <0x13>; clock-names = "xtal"; resets = <0x05 0x31>; reset-names = "phy"; #phy-cells = <0x00>; phy-supply = <0x14>; phandle = <0x34>; }; bus@3c000 { compatible = "simple-bus"; reg = <0x00 0x3c000 0x00 0x1400>; #address-cells = <0x02>; #size-cells = <0x02>; ranges = <0x00 0x00 0x00 0x3c000 0x00 0x1400>; phandle = <0xf1>; system-controller@0 { compatible = "amlogic,meson-gx-hhi-sysctrl\0simple-mfd\0syscon"; reg = <0x00 0x00 0x00 0x400>; phandle = <0xf2>; clock-controller { compatible = "amlogic,g12b-clkc"; #clock-cells = <0x01>; clocks = <0x13>; clock-names = "xtal"; phandle = <0x02>; }; power-controller { compatible = "amlogic,meson-g12a-pwrc"; #power-domain-cells = <0x01>; amlogic,ao-sysctrl = <0x15>; resets = <0x05 0x05 0x05 0x0a 0x05 0x0d 0x05 0x25 0x05 0x85 0x05 0x86 0x05 0x87 0x05 0x89 0x05 0x8c 0x05 0x8d 0x05 0xe7>; reset-names = "viu\0venc\0vcbus\0bt656\0rdma\0venci\0vencp\0vdac\0vdi6\0vencl\0vid_lock"; clocks = <0x02 0x74 0x02 0x7c>; clock-names = "vpu\0vapb"; assigned-clocks = <0x02 0x6e 0x02 0x70 0x02 0x74 0x02 0x75 0x02 0x77 0x02 0x7b>; assigned-clock-parents = <0x02 0x03 0x00 0x02 0x70 0x02 0x04 0x00 0x02 0x77>; assigned-clock-rates = <0x00 0x27bc86aa 0x00 0x00 0xee6b280 0x00>; phandle = <0x03>; }; }; }; phy@46000 { compatible = "amlogic,g12a-usb3-pcie-phy"; reg = <0x00 0x46000 0x00 0x2000>; clocks = <0x02 0xc9>; clock-names = "ref_clk"; resets = <0x05 0x0e>; reset-names = "phy"; assigned-clocks = <0x02 0xc9>; assigned-clock-rates = <0x5f5e100>; #phy-cells = <0x01>; #address-cells = <0x01>; #size-cells = <0x00>; phy-supply = <0x0d>; phandle = <0x06>; hub@1 { compatible = "usb5e3,626"; reg = <0x01>; reset-gpios = <0x16 0x30 0x07>; phandle = <0xf3>; }; }; mdio-multiplexer@4c000 { compatible = "amlogic,g12a-mdio-mux"; reg = <0x00 0x4c000 0x00 0xa4>; clocks = <0x02 0x13 0x13 0x02 0xb1>; clock-names = "pclk\0clkin0\0clkin1"; mdio-parent-bus = <0x17>; #address-cells = <0x01>; #size-cells = <0x00>; phandle = <0xf4>; mdio@0 { reg = <0x00>; #address-cells = <0x01>; #size-cells = <0x00>; phandle = <0xf5>; ethernet-phy@0 { reg = <0x00>; max-speed = <0x3e8>; reset-assert-us = <0x186a0>; reset-deassert-us = <0x186a0>; reset-gpios = <0x16 0x0f 0x07>; interrupt-parent = <0x18>; interrupts = <0x1a 0x08>; phandle = <0x0a>; }; }; mdio@1 { reg = <0x01>; #address-cells = <0x01>; #size-cells = <0x00>; phandle = <0xf6>; ethernet-phy@8 { compatible = "ethernet-phy-id0180.3301\0ethernet-phy-ieee802.3-c22"; interrupts = <0x00 0x09 0x04>; reg = <0x08>; max-speed = <0x64>; phandle = <0xf7>; }; }; }; audio-controller@40000 { compatible = "amlogic,g12a-pdm\0amlogic,axg-pdm"; reg = <0x00 0x40000 0x00 0x34>; #sound-dai-cells = <0x00>; sound-name-prefix = "PDM"; clocks = <0x19 0x1e 0x19 0x39 0x19 0x3a>; clock-names = "pclk\0dclk\0sysclk"; resets = <0x19 0x00>; status = "disabled"; phandle = <0xf8>; }; bus@42000 { compatible = "simple-bus"; reg = <0x00 0x42000 0x00 0x2000>; #address-cells = <0x02>; #size-cells = <0x02>; ranges = <0x00 0x00 0x00 0x42000 0x00 0x2000>; phandle = <0xf9>; clock-controller@0 { status = "okay"; compatible = "amlogic,g12a-audio-clkc"; reg = <0x00 0x00 0x00 0xb4>; #clock-cells = <0x01>; #reset-cells = <0x01>; clocks = <0x02 0x25 0x02 0x0b 0x02 0x0c 0x02 0x0d 0x02 0x0e 0x02 0x4a 0x02 0x03 0x02 0x04 0x02 0x07>; clock-names = "pclk\0mst_in0\0mst_in1\0mst_in2\0mst_in3\0mst_in4\0mst_in5\0mst_in6\0mst_in7"; resets = <0x05 0x41>; phandle = <0x19>; }; audio-controller@100 { compatible = "amlogic,g12a-toddr\0amlogic,axg-toddr"; reg = <0x00 0x100 0x00 0x2c>; #sound-dai-cells = <0x00>; sound-name-prefix = "TODDR_A"; interrupts = <0x00 0x94 0x01>; clocks = <0x19 0x29>; resets = <0x1a 0x00 0x19 0x06>; reset-names = "arb\0rst"; amlogic,fifo-depth = <0x200>; status = "okay"; phandle = <0x57>; }; audio-controller@140 { compatible = "amlogic,g12a-toddr\0amlogic,axg-toddr"; reg = <0x00 0x140 0x00 0x2c>; #sound-dai-cells = <0x00>; sound-name-prefix = "TODDR_B"; interrupts = <0x00 0x95 0x01>; clocks = <0x19 0x2a>; resets = <0x1a 0x01 0x19 0x07>; reset-names = "arb\0rst"; amlogic,fifo-depth = <0x100>; status = "okay"; phandle = <0x58>; }; audio-controller@180 { compatible = "amlogic,g12a-toddr\0amlogic,axg-toddr"; reg = <0x00 0x180 0x00 0x2c>; #sound-dai-cells = <0x00>; sound-name-prefix = "TODDR_C"; interrupts = <0x00 0x96 0x01>; clocks = <0x19 0x2b>; resets = <0x1a 0x02 0x19 0x08>; reset-names = "arb\0rst"; amlogic,fifo-depth = <0x100>; status = "okay"; phandle = <0x59>; }; audio-controller@1c0 { compatible = "amlogic,g12a-frddr\0amlogic,axg-frddr"; reg = <0x00 0x1c0 0x00 0x2c>; #sound-dai-cells = <0x00>; sound-name-prefix = "FRDDR_A"; interrupts = <0x00 0x98 0x01>; clocks = <0x19 0x26>; resets = <0x1a 0x03 0x19 0x09>; reset-names = "arb\0rst"; amlogic,fifo-depth = <0x200>; status = "okay"; phandle = <0x54>; }; audio-controller@200 { compatible = "amlogic,g12a-frddr\0amlogic,axg-frddr"; reg = <0x00 0x200 0x00 0x2c>; #sound-dai-cells = <0x00>; sound-name-prefix = "FRDDR_B"; interrupts = <0x00 0x99 0x01>; clocks = <0x19 0x27>; resets = <0x1a 0x04 0x19 0x0a>; reset-names = "arb\0rst"; amlogic,fifo-depth = <0x100>; status = "okay"; phandle = <0x55>; }; audio-controller@240 { compatible = "amlogic,g12a-frddr\0amlogic,axg-frddr"; reg = <0x00 0x240 0x00 0x2c>; #sound-dai-cells = <0x00>; sound-name-prefix = "FRDDR_C"; interrupts = <0x00 0x9a 0x01>; clocks = <0x19 0x28>; resets = <0x1a 0x05 0x19 0x0b>; reset-names = "arb\0rst"; amlogic,fifo-depth = <0x100>; status = "okay"; phandle = <0x56>; }; reset-controller@280 { status = "okay"; compatible = "amlogic,meson-axg-audio-arb"; reg = <0x00 0x280 0x00 0x04>; #reset-cells = <0x01>; clocks = <0x19 0x1d>; phandle = <0x1a>; }; audio-controller@300 { compatible = "amlogic,g12a-tdmin\0amlogic,axg-tdmin"; reg = <0x00 0x300 0x00 0x40>; sound-name-prefix = "TDMIN_A"; resets = <0x19 0x01>; clocks = <0x19 0x1f 0x19 0x7b 0x19 0x74 0x19 0x82 0x19 0x82>; clock-names = "pclk\0sclk\0sclk_sel\0lrclk\0lrclk_sel"; status = "okay"; phandle = <0x50>; }; audio-controller@340 { compatible = "amlogic,g12a-tdmin\0amlogic,axg-tdmin"; reg = <0x00 0x340 0x00 0x40>; sound-name-prefix = "TDMIN_B"; resets = <0x19 0x02>; clocks = <0x19 0x20 0x19 0x7c 0x19 0x75 0x19 0x83 0x19 0x83>; clock-names = "pclk\0sclk\0sclk_sel\0lrclk\0lrclk_sel"; status = "okay"; phandle = <0x51>; }; audio-controller@380 { compatible = "amlogic,g12a-tdmin\0amlogic,axg-tdmin"; reg = <0x00 0x380 0x00 0x40>; sound-name-prefix = "TDMIN_C"; resets = <0x19 0x03>; clocks = <0x19 0x21 0x19 0x7d 0x19 0x76 0x19 0x84 0x19 0x84>; clock-names = "pclk\0sclk\0sclk_sel\0lrclk\0lrclk_sel"; status = "okay"; phandle = <0x52>; }; audio-controller@3c0 { compatible = "amlogic,g12a-tdmin\0amlogic,axg-tdmin"; reg = <0x00 0x3c0 0x00 0x40>; sound-name-prefix = "TDMIN_LB"; resets = <0x19 0x04>; clocks = <0x19 0x22 0x19 0x7e 0x19 0x77 0x19 0x85 0x19 0x85>; clock-names = "pclk\0sclk\0sclk_sel\0lrclk\0lrclk_sel"; status = "disabled"; phandle = <0xfa>; }; audio-controller@400 { compatible = "amlogic,g12a-spdifin\0amlogic,axg-spdifin"; reg = <0x00 0x400 0x00 0x30>; #sound-dai-cells = <0x00>; sound-name-prefix = "SPDIFIN"; interrupts = <0x00 0x97 0x01>; clocks = <0x19 0x2d 0x19 0x38>; clock-names = "pclk\0refclk"; resets = <0x19 0x11>; status = "okay"; phandle = <0x62>; }; audio-controller@480 { compatible = "amlogic,g12a-spdifout\0amlogic,axg-spdifout"; reg = <0x00 0x480 0x00 0x50>; #sound-dai-cells = <0x00>; sound-name-prefix = "SPDIFOUT"; clocks = <0x19 0x2e 0x19 0x37>; clock-names = "pclk\0mclk"; resets = <0x19 0x0f>; status = "okay"; phandle = <0x60>; }; audio-controller@500 { compatible = "amlogic,g12a-tdmout"; reg = <0x00 0x500 0x00 0x40>; sound-name-prefix = "TDMOUT_A"; resets = <0x19 0x0c>; clocks = <0x19 0x23 0x19 0x7f 0x19 0x78 0x19 0x86 0x19 0x86>; clock-names = "pclk\0sclk\0sclk_sel\0lrclk\0lrclk_sel"; status = "okay"; phandle = <0x4d>; }; audio-controller@540 { compatible = "amlogic,g12a-tdmout"; reg = <0x00 0x540 0x00 0x40>; sound-name-prefix = "TDMOUT_B"; resets = <0x19 0x0d>; clocks = <0x19 0x24 0x19 0x80 0x19 0x79 0x19 0x87 0x19 0x87>; clock-names = "pclk\0sclk\0sclk_sel\0lrclk\0lrclk_sel"; status = "okay"; phandle = <0x4e>; }; audio-controller@580 { compatible = "amlogic,g12a-tdmout"; reg = <0x00 0x580 0x00 0x40>; sound-name-prefix = "TDMOUT_C"; resets = <0x19 0x0e>; clocks = <0x19 0x25 0x19 0x81 0x19 0x7a 0x19 0x88 0x19 0x88>; clock-names = "pclk\0sclk\0sclk_sel\0lrclk\0lrclk_sel"; status = "okay"; phandle = <0x4f>; }; audio-controller@680 { compatible = "amlogic,g12a-spdifout\0amlogic,axg-spdifout"; reg = <0x00 0x680 0x00 0x50>; #sound-dai-cells = <0x00>; sound-name-prefix = "SPDIFOUT_B"; clocks = <0x19 0x97 0x19 0x98>; clock-names = "pclk\0mclk"; resets = <0x19 0x10>; status = "disabled"; phandle = <0xfb>; }; audio-controller@740 { compatible = "amlogic,g12a-toacodec"; reg = <0x00 0x740 0x00 0x04>; #sound-dai-cells = <0x01>; sound-name-prefix = "TOACODEC"; resets = <0x19 0x17>; status = "okay"; phandle = <0x5c>; }; audio-controller@744 { compatible = "amlogic,g12a-tohdmitx"; reg = <0x00 0x744 0x00 0x04>; #sound-dai-cells = <0x01>; sound-name-prefix = "TOHDMITX"; resets = <0x19 0x18>; status = "okay"; phandle = <0x5b>; }; }; }; bus@ff800000 { compatible = "simple-bus"; reg = <0x00 0xff800000 0x00 0x100000>; #address-cells = <0x02>; #size-cells = <0x02>; ranges = <0x00 0x00 0x00 0xff800000 0x00 0x100000>; phandle = <0xfc>; sys-ctrl@0 { compatible = "amlogic,meson-gx-ao-sysctrl\0simple-mfd\0syscon"; reg = <0x00 0x00 0x00 0x100>; #address-cells = <0x02>; #size-cells = <0x02>; ranges = <0x00 0x00 0x00 0x00 0x00 0x100>; phandle = <0x15>; clock-controller { compatible = "amlogic,meson-g12a-aoclkc"; #clock-cells = <0x01>; #reset-cells = <0x01>; clocks = <0x13 0x02 0x0a>; clock-names = "xtal\0mpeg-clk"; phandle = <0x1c>; }; pinctrl@14 { compatible = "amlogic,meson-g12a-aobus-pinctrl"; #address-cells = <0x02>; #size-cells = <0x02>; ranges; phandle = <0x1b>; bank@14 { reg = <0x00 0x14 0x00 0x08 0x00 0x1c 0x00 0x08 0x00 0x24 0x00 0x14>; reg-names = "mux\0ds\0gpio"; gpio-controller; #gpio-cells = <0x02>; gpio-ranges = <0x1b 0x00 0x00 0x0f>; phandle = <0x47>; }; i2c_ao_sck_pins { phandle = <0xfd>; mux { groups = "i2c_ao_sck"; function = "i2c_ao"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; i2c_ao_sda { phandle = <0xfe>; mux { groups = "i2c_ao_sda"; function = "i2c_ao"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; i2c_ao_sck_e { phandle = <0xff>; mux { groups = "i2c_ao_sck_e"; function = "i2c_ao"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; i2c_ao_sda_e { phandle = <0x100>; mux { groups = "i2c_ao_sda_e"; function = "i2c_ao"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; mclk0-ao { phandle = <0x101>; mux { groups = "mclk0_ao"; function = "mclk0_ao"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-ao-b-din0 { phandle = <0x102>; mux { groups = "tdm_ao_b_din0"; function = "tdm_ao_b"; bias-disable; }; }; spdif-ao-out { phandle = <0x103>; mux { groups = "spdif_ao_out"; function = "spdif_ao_out"; drive-strength-microamp = <0x1f4>; bias-disable; }; }; tdm-ao-b-din1 { phandle = <0x104>; mux { groups = "tdm_ao_b_din1"; function = "tdm_ao_b"; bias-disable; }; }; tdm-ao-b-din2 { phandle = <0x105>; mux { groups = "tdm_ao_b_din2"; function = "tdm_ao_b"; bias-disable; }; }; tdm-ao-b-dout0 { phandle = <0x106>; mux { groups = "tdm_ao_b_dout0"; function = "tdm_ao_b"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-ao-b-dout1 { phandle = <0x107>; mux { groups = "tdm_ao_b_dout1"; function = "tdm_ao_b"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-ao-b-dout2 { phandle = <0x108>; mux { groups = "tdm_ao_b_dout2"; function = "tdm_ao_b"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-ao-b-fs { phandle = <0x109>; mux { groups = "tdm_ao_b_fs"; function = "tdm_ao_b"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-ao-b-sclk { phandle = <0x10a>; mux { groups = "tdm_ao_b_sclk"; function = "tdm_ao_b"; bias-disable; drive-strength-microamp = <0xbb8>; }; }; tdm-ao-b-slv-fs { phandle = <0x10b>; mux { groups = "tdm_ao_b_slv_fs"; function = "tdm_ao_b"; bias-disable; }; }; tdm-ao-b-slv-sclk { phandle = <0x10c>; mux { groups = "tdm_ao_b_slv_sclk"; function = "tdm_ao_b"; bias-disable; }; }; uart-a-ao { phandle = <0x20>; mux { groups = "uart_ao_a_tx\0uart_ao_a_rx"; function = "uart_ao_a"; bias-disable; }; }; uart-ao-a-cts-rts { phandle = <0x10d>; mux { groups = "uart_ao_a_cts\0uart_ao_a_rts"; function = "uart_ao_a"; bias-disable; }; }; uart-ao-b-2-3 { phandle = <0x10e>; mux { groups = "uart_ao_b_tx_2\0uart_ao_b_rx_3"; function = "uart_ao_b"; bias-disable; }; }; uart-ao-b-8-9 { phandle = <0x10f>; mux { groups = "uart_ao_b_tx_8\0uart_ao_b_rx_9"; function = "uart_ao_b"; bias-disable; }; }; uart-ao-b-cts-rts { phandle = <0x110>; mux { groups = "uart_ao_b_cts\0uart_ao_b_rts"; function = "uart_ao_b"; bias-disable; }; }; pwm-a-e { phandle = <0x26>; mux { groups = "pwm_a_e"; function = "pwm_a_e"; bias-disable; }; }; pwm-ao-a { phandle = <0x111>; mux { groups = "pwm_ao_a"; function = "pwm_ao_a"; bias-disable; }; }; pwm-ao-b { phandle = <0x112>; mux { groups = "pwm_ao_b"; function = "pwm_ao_b"; bias-disable; }; }; pwm-ao-c-4 { phandle = <0x113>; mux { groups = "pwm_ao_c_4"; function = "pwm_ao_c"; bias-disable; }; }; pwm-ao-c-6 { phandle = <0x114>; mux { groups = "pwm_ao_c_6"; function = "pwm_ao_c"; bias-disable; }; }; pwm-ao-d-5 { phandle = <0x115>; mux { groups = "pwm_ao_d_5"; function = "pwm_ao_d"; bias-disable; }; }; pwm-ao-d-10 { phandle = <0x116>; mux { groups = "pwm_ao_d_10"; function = "pwm_ao_d"; bias-disable; }; }; pwm-ao-d-e { phandle = <0x1f>; mux { groups = "pwm_ao_d_e"; function = "pwm_ao_d"; }; }; remote-input-ao { phandle = <0x21>; mux { groups = "remote_ao_input"; function = "remote_ao_input"; bias-disable; }; }; }; }; rtc@a8 { compatible = "amlogic,meson-vrtc"; reg = <0x00 0xa8 0x00 0x04>; phandle = <0x117>; }; cec@100 { compatible = "amlogic,meson-gx-ao-cec"; reg = <0x00 0x100 0x00 0x14>; interrupts = <0x00 0xc7 0x01>; clocks = <0x1c 0x1b>; clock-names = "core"; status = "disabled"; phandle = <0x118>; }; ao-secure@140 { compatible = "amlogic,meson-gx-ao-secure\0syscon"; reg = <0x00 0x140 0x00 0x140>; amlogic,has-chip-id; phandle = <0x12>; }; cec@280 { compatible = "amlogic,meson-g12a-ao-cec"; reg = <0x00 0x280 0x00 0x1c>; interrupts = <0x00 0xcb 0x01>; clocks = <0x1c 0x13>; clock-names = "oscin"; status = "okay"; pinctrl-0 = <0x1d>; pinctrl-names = "default"; hdmi-phandle = <0x1e>; phandle = <0x119>; }; pwm@2000 { compatible = "amlogic,meson-g12a-ao-pwm-cd"; reg = <0x00 0x2000 0x00 0x20>; #pwm-cells = <0x03>; status = "okay"; pinctrl-0 = <0x1f>; pinctrl-names = "default"; clocks = <0x13>; clock-names = "clkin1"; phandle = <0x4c>; }; serial@3000 { compatible = "amlogic,meson-g12a-uart\0amlogic,meson-gx-uart\0amlogic,meson-ao-uart"; reg = <0x00 0x3000 0x00 0x18>; interrupts = <0x00 0xc1 0x01>; clocks = <0x13 0x1c 0x04 0x13>; clock-names = "xtal\0pclk\0baud"; status = "okay"; pinctrl-0 = <0x20>; pinctrl-names = "default"; phandle = <0x11a>; }; serial@4000 { compatible = "amlogic,meson-g12a-uart\0amlogic,meson-gx-uart\0amlogic,meson-ao-uart"; reg = <0x00 0x4000 0x00 0x18>; interrupts = <0x00 0xc5 0x01>; clocks = <0x13 0x1c 0x06 0x13>; clock-names = "xtal\0pclk\0baud"; status = "disabled"; phandle = <0x11b>; }; i2c@5000 { compatible = "amlogic,meson-axg-i2c"; status = "disabled"; reg = <0x00 0x5000 0x00 0x20>; interrupts = <0x00 0xc3 0x01>; #address-cells = <0x01>; #size-cells = <0x00>; clocks = <0x02 0x18>; phandle = <0x11c>; }; pwm@7000 { compatible = "amlogic,meson-g12a-ao-pwm-ab"; reg = <0x00 0x7000 0x00 0x20>; #pwm-cells = <0x03>; status = "disabled"; phandle = <0x11d>; }; ir@8000 { compatible = "amlogic,meson-gxbb-ir"; reg = <0x00 0x8000 0x00 0x20>; interrupts = <0x00 0xc4 0x01>; status = "okay"; pinctrl-0 = <0x21>; pinctrl-names = "default"; phandle = <0x11e>; }; adc@9000 { compatible = "amlogic,meson-g12a-saradc\0amlogic,meson-saradc"; reg = <0x00 0x9000 0x00 0x48>; #io-channel-cells = <0x01>; interrupts = <0x00 0xc8 0x01>; clocks = <0x13 0x1c 0x08 0x1c 0x12 0x1c 0x10>; clock-names = "clkin\0core\0adc_clk\0adc_sel"; status = "okay"; vref-supply = <0x10>; phandle = <0x11f>; }; }; video-decoder@ff620000 { compatible = "amlogic,g12a-vdec"; reg = <0x00 0xff620000 0x00 0x10000 0x00 0xffd0e180 0x00 0xe4>; reg-names = "dos\0esparser"; interrupts = <0x00 0x2c 0x01 0x00 0x20 0x01>; interrupt-names = "vdec\0esparser"; amlogic,ao-sysctrl = <0x15>; amlogic,canvas = <0x22>; clocks = <0x02 0x2e 0x02 0x10 0x02 0xcc 0x02 0xcf 0x02 0xd2>; clock-names = "dos_parser\0dos\0vdec_1\0vdec_hevc\0vdec_hevcf"; resets = <0x05 0x28>; reset-names = "esparser"; phandle = <0x120>; }; vpu@ff900000 { compatible = "amlogic,meson-g12a-vpu"; reg = <0x00 0xff900000 0x00 0x100000 0x00 0xff63c000 0x00 0x1000 0x00 0xff638000 0x00 0x400>; reg-names = "vpu\0hhi\0dmc"; interrupts = <0x00 0x03 0x01>; #address-cells = <0x01>; #size-cells = <0x00>; amlogic,canvas = <0x22>; power-domains = <0x03 0x00>; bootph-all; phandle = <0x121>; port@0 { reg = <0x00>; phandle = <0x122>; endpoint { remote-endpoint = <0x23>; phandle = <0x48>; }; }; port@1 { reg = <0x01>; phandle = <0x123>; endpoint { remote-endpoint = <0x24>; phandle = <0x0e>; }; }; }; interrupt-controller@ffc01000 { compatible = "arm,gic-400"; reg = <0x00 0xffc01000 0x00 0x1000 0x00 0xffc02000 0x00 0x2000 0x00 0xffc04000 0x00 0x2000 0x00 0xffc06000 0x00 0x2000>; interrupt-controller; interrupts = <0x01 0x09 0xff04>; #interrupt-cells = <0x03>; #address-cells = <0x00>; phandle = <0x01>; }; bus@ffd00000 { compatible = "simple-bus"; reg = <0x00 0xffd00000 0x00 0x100000>; #address-cells = <0x02>; #size-cells = <0x02>; ranges = <0x00 0x00 0x00 0xffd00000 0x00 0x100000>; phandle = <0x124>; reset-controller@1004 { compatible = "amlogic,meson-axg-reset"; reg = <0x00 0x1004 0x00 0x9c>; #reset-cells = <0x01>; phandle = <0x05>; }; interrupt-controller@f080 { compatible = "amlogic,meson-g12a-gpio-intc\0amlogic,meson-gpio-intc"; reg = <0x00 0xf080 0x00 0x10>; interrupt-controller; #interrupt-cells = <0x02>; amlogic,channel-interrupts = <0x40 0x41 0x42 0x43 0x44 0x45 0x46 0x47>; phandle = <0x18>; }; watchdog@f0d0 { compatible = "amlogic,meson-gxbb-wdt"; reg = <0x00 0xf0d0 0x00 0x10>; clocks = <0x13>; phandle = <0x125>; }; spi@13000 { compatible = "amlogic,meson-g12a-spicc"; reg = <0x00 0x13000 0x00 0x44>; interrupts = <0x00 0x51 0x04>; clocks = <0x02 0x17 0x02 0x102>; clock-names = "core\0pclk"; #address-cells = <0x01>; #size-cells = <0x00>; status = "disabled"; phandle = <0x126>; }; spi@15000 { compatible = "amlogic,meson-g12a-spicc"; reg = <0x00 0x15000 0x00 0x44>; interrupts = <0x00 0x5a 0x04>; clocks = <0x02 0x1d 0x02 0x105>; clock-names = "core\0pclk"; #address-cells = <0x01>; #size-cells = <0x00>; status = "disabled"; phandle = <0x127>; }; spi@14000 { compatible = "amlogic,meson-gxbb-spifc"; status = "disabled"; reg = <0x00 0x14000 0x00 0x80>; #address-cells = <0x01>; #size-cells = <0x00>; clocks = <0x02 0x0a>; pinctrl-0 = <0x25>; pinctrl-names = "default"; cs-gpios = <0x16 0x27 0x01>; phandle = <0x128>; flash@0 { compatible = "gd25lq128d\0jedec,spi-nor"; reg = <0x00>; #address-cells = <0x01>; #size-cells = <0x01>; spi-max-frequency = <0x4c4b400>; phandle = <0x129>; }; }; pwm@19000 { compatible = "amlogic,meson-g12a-ee-pwm"; reg = <0x00 0x19000 0x00 0x20>; #pwm-cells = <0x03>; status = "disabled"; phandle = <0x12a>; }; pwm@1a000 { compatible = "amlogic,meson-g12a-ee-pwm"; reg = <0x00 0x1a000 0x00 0x20>; #pwm-cells = <0x03>; status = "disabled"; phandle = <0x12b>; }; pwm@1b000 { compatible = "amlogic,meson-g12a-ee-pwm"; reg = <0x00 0x1b000 0x00 0x20>; #pwm-cells = <0x03>; status = "okay"; pinctrl-0 = <0x26>; pinctrl-names = "default"; clocks = <0x13>; clock-names = "clkin0"; phandle = <0x4b>; }; i2c@1c000 { compatible = "amlogic,meson-axg-i2c"; status = "disabled"; reg = <0x00 0x1c000 0x00 0x20>; interrupts = <0x00 0x27 0x01>; #address-cells = <0x01>; #size-cells = <0x00>; clocks = <0x02 0x18>; phandle = <0x12c>; }; i2c@1d000 { compatible = "amlogic,meson-axg-i2c"; status = "disabled"; reg = <0x00 0x1d000 0x00 0x20>; interrupts = <0x00 0xd7 0x01>; #address-cells = <0x01>; #size-cells = <0x00>; clocks = <0x02 0x18>; phandle = <0x12d>; }; i2c@1e000 { compatible = "amlogic,meson-axg-i2c"; status = "disabled"; reg = <0x00 0x1e000 0x00 0x20>; interrupts = <0x00 0xd6 0x01>; #address-cells = <0x01>; #size-cells = <0x00>; clocks = <0x02 0x18>; phandle = <0x12e>; }; i2c@1f000 { compatible = "amlogic,meson-axg-i2c"; status = "disabled"; reg = <0x00 0x1f000 0x00 0x20>; interrupts = <0x00 0x15 0x01>; #address-cells = <0x01>; #size-cells = <0x00>; clocks = <0x02 0x18>; phandle = <0x12f>; }; clock-measure@18000 { compatible = "amlogic,meson-g12a-clk-measure"; reg = <0x00 0x18000 0x00 0x10>; phandle = <0x130>; }; serial@22000 { compatible = "amlogic,meson-g12a-uart\0amlogic,meson-gx-uart"; reg = <0x00 0x22000 0x00 0x18>; interrupts = <0x00 0x5d 0x01>; clocks = <0x13 0x02 0x39 0x13>; clock-names = "xtal\0pclk\0baud"; status = "disabled"; phandle = <0x131>; }; serial@23000 { compatible = "amlogic,meson-g12a-uart\0amlogic,meson-gx-uart"; reg = <0x00 0x23000 0x00 0x18>; interrupts = <0x00 0x4b 0x01>; clocks = <0x13 0x02 0x2a 0x13>; clock-names = "xtal\0pclk\0baud"; status = "disabled"; phandle = <0x132>; }; serial@24000 { compatible = "amlogic,meson-g12a-uart\0amlogic,meson-gx-uart"; reg = <0x00 0x24000 0x00 0x18>; interrupts = <0x00 0x1a 0x01>; clocks = <0x13 0x02 0x1c 0x13>; clock-names = "xtal\0pclk\0baud"; status = "disabled"; fifo-size = <0x80>; phandle = <0x133>; }; }; mmc@ffe03000 { compatible = "amlogic,meson-axg-mmc"; reg = <0x00 0xffe03000 0x00 0x800>; interrupts = <0x00 0xbd 0x04>; status = "disabled"; clocks = <0x02 0x21 0x02 0x3c 0x02 0x02>; clock-names = "core\0clkin0\0clkin1"; resets = <0x05 0x2c>; amlogic,dram-access-quirk; phandle = <0x134>; }; mmc@ffe05000 { compatible = "amlogic,meson-axg-mmc"; reg = <0x00 0xffe05000 0x00 0x800>; interrupts = <0x00 0xbe 0x04>; status = "okay"; clocks = <0x02 0x22 0x02 0x3d 0x02 0x02>; clock-names = "core\0clkin0\0clkin1"; resets = <0x05 0x2d>; pinctrl-0 = <0x27>; pinctrl-1 = <0x28>; pinctrl-names = "default\0clk-gate"; bus-width = <0x04>; cap-sd-highspeed; sd-uhs-sdr50; sd-uhs-sdr104; max-frequency = <0xbebc200>; disable-wp; cd-gpios = <0x16 0x2f 0x01>; vmmc-supply = <0x29>; vqmmc-supply = <0x2a>; phandle = <0x135>; }; mmc@ffe07000 { compatible = "amlogic,meson-axg-mmc"; reg = <0x00 0xffe07000 0x00 0x800>; interrupts = <0x00 0xbf 0x04>; status = "okay"; clocks = <0x02 0x23 0x02 0x3e 0x02 0x02>; clock-names = "core\0clkin0\0clkin1"; resets = <0x05 0x2e>; pinctrl-0 = <0x2b 0x2c 0x2d 0x2e>; pinctrl-1 = <0x2f>; pinctrl-names = "default\0clk-gate"; bus-width = <0x08>; cap-mmc-highspeed; mmc-hs200-1_8v; max-frequency = <0xbebc200>; disable-wp; mmc-pwrseq = <0x30>; vmmc-supply = <0x31>; vqmmc-supply = <0x32>; phandle = <0x136>; }; usb@ffe09000 { status = "okay"; compatible = "amlogic,meson-g12a-usb-ctrl"; reg = <0x00 0xffe09000 0x00 0xa0>; interrupts = <0x00 0x10 0x04>; #address-cells = <0x02>; #size-cells = <0x02>; ranges; clocks = <0x02 0x2f>; resets = <0x05 0x22>; dr_mode = "otg"; phys = <0x33 0x34 0x06 0x04>; phy-names = "usb2-phy0\0usb2-phy1\0usb3-phy0"; phandle = <0x137>; usb@ff400000 { compatible = "amlogic,meson-g12a-usb\0snps,dwc2"; reg = <0x00 0xff400000 0x00 0x40000>; interrupts = <0x00 0x1f 0x04>; clocks = <0x02 0x37>; clock-names = "otg"; phys = <0x34>; phy-names = "usb2-phy"; dr_mode = "peripheral"; g-rx-fifo-size = <0xc0>; g-np-tx-fifo-size = <0x80>; g-tx-fifo-size = <0x80 0x80 0x10 0x10 0x10>; phandle = <0x138>; }; usb@ff500000 { compatible = "snps,dwc3"; reg = <0x00 0xff500000 0x00 0x100000>; interrupts = <0x00 0x1e 0x04>; dr_mode = "host"; snps,dis_u2_susphy_quirk; snps,quirk-frame-length-adjustment = <0x20>; snps,parkmode-disable-ss-quirk; phandle = <0x139>; }; }; gpu@ffe40000 { compatible = "amlogic,meson-g12a-mali\0arm,mali-bifrost"; reg = <0x00 0xffe40000 0x00 0x40000>; interrupt-parent = <0x01>; interrupts = <0x00 0xa2 0x04 0x00 0xa1 0x04 0x00 0xa0 0x04>; interrupt-names = "job\0mmu\0gpu"; clocks = <0x02 0xaf>; resets = <0x05 0x14 0x05 0x4e>; operating-points-v2 = <0x35>; #cooling-cells = <0x02>; dma-coherent; phandle = <0x41>; }; }; thermal-zones { cpu-thermal { polling-delay = <0x3e8>; polling-delay-passive = <0x64>; thermal-sensors = <0x36>; phandle = <0x13a>; trips { cpu-passive { temperature = <0xfde8>; hysteresis = <0x7d0>; type = "passive"; phandle = <0x37>; }; cpu-hot { temperature = <0x11170>; hysteresis = <0x7d0>; type = "hot"; phandle = <0x3e>; }; cpu-critical { temperature = <0x13880>; hysteresis = <0x7d0>; type = "critical"; phandle = <0x13b>; }; }; cooling-maps { map0 { trip = <0x37>; cooling-device = <0x38 0xffffffff 0xffffffff 0x39 0xffffffff 0xffffffff 0x3a 0xffffffff 0xffffffff 0x3b 0xffffffff 0xffffffff 0x3c 0xffffffff 0xffffffff 0x3d 0xffffffff 0xffffffff>; }; map1 { trip = <0x3e>; cooling-device = <0x38 0xffffffff 0xffffffff 0x39 0xffffffff 0xffffffff 0x3a 0xffffffff 0xffffffff 0x3b 0xffffffff 0xffffffff 0x3c 0xffffffff 0xffffffff 0x3d 0xffffffff 0xffffffff>; }; }; }; ddr-thermal { polling-delay = <0x3e8>; polling-delay-passive = <0x64>; thermal-sensors = <0x3f>; phandle = <0x13c>; trips { ddr-passive { temperature = <0xfde8>; hysteresis = <0x7d0>; type = "passive"; phandle = <0x40>; }; ddr-critical { temperature = <0x13880>; hysteresis = <0x7d0>; type = "critical"; phandle = <0x13d>; }; }; cooling-maps { map { trip = <0x40>; cooling-device = <0x41 0xffffffff 0xffffffff>; }; }; }; }; timer { compatible = "arm,armv8-timer"; interrupts = <0x01 0x0d 0xff08 0x01 0x0e 0xff08 0x01 0x0b 0xff08 0x01 0x0a 0xff08>; arm,no-tick-in-suspend; }; xtal-clk { compatible = "fixed-clock"; clock-frequency = <0x16e3600>; clock-output-names = "xtal"; #clock-cells = <0x00>; phandle = <0x13>; }; npu@ff100000 { compatible = "vivante,gc"; reg = <0x00 0xff100000 0x00 0x20000>; interrupts = <0x00 0x93 0x04>; clocks = <0x02 0x10b 0x02 0x108>; clock-names = "core\0bus"; assigned-clocks = <0x02 0x10b 0x02 0x108>; assigned-clock-rates = <0x2faf0800 0x2faf0800>; resets = <0x05 0x4c>; status = "disabled"; power-domains = <0x03 0x02>; phandle = <0x13e>; }; audio-controller-0 { compatible = "amlogic,axg-tdm-iface"; #sound-dai-cells = <0x00>; sound-name-prefix = "TDM_A"; clocks = <0x19 0x31 0x19 0x4f 0x19 0x56>; clock-names = "mclk\0sclk\0lrclk"; status = "okay"; phandle = <0x5a>; }; audio-controller-1 { compatible = "amlogic,axg-tdm-iface"; #sound-dai-cells = <0x00>; sound-name-prefix = "TDM_B"; clocks = <0x19 0x32 0x19 0x50 0x19 0x57>; clock-names = "mclk\0sclk\0lrclk"; status = "okay"; phandle = <0x5d>; }; audio-controller-2 { compatible = "amlogic,axg-tdm-iface"; #sound-dai-cells = <0x00>; sound-name-prefix = "TDM_C"; clocks = <0x19 0x33 0x19 0x51 0x19 0x58>; clock-names = "mclk\0sclk\0lrclk"; status = "okay"; phandle = <0x5e>; }; cpus { #address-cells = <0x02>; #size-cells = <0x00>; cpu-map { cluster0 { core0 { cpu = <0x38>; }; core1 { cpu = <0x39>; }; }; cluster1 { core0 { cpu = <0x3a>; }; core1 { cpu = <0x3b>; }; core2 { cpu = <0x3c>; }; core3 { cpu = <0x3d>; }; }; }; cpu@0 { device_type = "cpu"; compatible = "arm,cortex-a53"; reg = <0x00 0x00>; enable-method = "psci"; capacity-dmips-mhz = <0x250>; next-level-cache = <0x42>; #cooling-cells = <0x02>; cpu-supply = <0x43>; operating-points-v2 = <0x44>; clocks = <0x02 0xbb>; clock-latency = <0xc350>; phandle = <0x38>; }; cpu@1 { device_type = "cpu"; compatible = "arm,cortex-a53"; reg = <0x00 0x01>; enable-method = "psci"; capacity-dmips-mhz = <0x250>; next-level-cache = <0x42>; #cooling-cells = <0x02>; cpu-supply = <0x43>; operating-points-v2 = <0x44>; clocks = <0x02 0xbb>; clock-latency = <0xc350>; phandle = <0x39>; }; cpu@100 { device_type = "cpu"; compatible = "arm,cortex-a73"; reg = <0x00 0x100>; enable-method = "psci"; capacity-dmips-mhz = <0x400>; next-level-cache = <0x42>; #cooling-cells = <0x02>; cpu-supply = <0x45>; operating-points-v2 = <0x46>; clocks = <0x02 0xe0>; clock-latency = <0xc350>; phandle = <0x3a>; }; cpu@101 { device_type = "cpu"; compatible = "arm,cortex-a73"; reg = <0x00 0x101>; enable-method = "psci"; capacity-dmips-mhz = <0x400>; next-level-cache = <0x42>; #cooling-cells = <0x02>; cpu-supply = <0x45>; operating-points-v2 = <0x46>; clocks = <0x02 0xe0>; clock-latency = <0xc350>; phandle = <0x3b>; }; cpu@102 { device_type = "cpu"; compatible = "arm,cortex-a73"; reg = <0x00 0x102>; enable-method = "psci"; capacity-dmips-mhz = <0x400>; next-level-cache = <0x42>; #cooling-cells = <0x02>; cpu-supply = <0x45>; operating-points-v2 = <0x46>; clocks = <0x02 0xe0>; clock-latency = <0xc350>; phandle = <0x3c>; }; cpu@103 { device_type = "cpu"; compatible = "arm,cortex-a73"; reg = <0x00 0x103>; enable-method = "psci"; capacity-dmips-mhz = <0x400>; next-level-cache = <0x42>; #cooling-cells = <0x02>; cpu-supply = <0x45>; operating-points-v2 = <0x46>; clocks = <0x02 0xe0>; clock-latency = <0xc350>; phandle = <0x3d>; }; l2-cache0 { compatible = "cache"; cache-level = <0x02>; cache-unified; phandle = <0x42>; }; }; opp-table-0 { compatible = "operating-points-v2"; opp-shared; phandle = <0x44>; opp-100000000 { opp-hz = <0x00 0x5f5e100>; opp-microvolt = <0xb2778>; }; opp-250000000 { opp-hz = <0x00 0xee6b280>; opp-microvolt = <0xb2778>; }; opp-500000000 { opp-hz = <0x00 0x1dcd6500>; opp-microvolt = <0xb2778>; }; opp-667000000 { opp-hz = <0x00 0x27c19cc0>; opp-microvolt = <0xb2778>; }; opp-1000000000 { opp-hz = <0x00 0x3b9aca00>; opp-microvolt = <0xb9ca8>; }; opp-1200000000 { opp-hz = <0x00 0x47868c00>; opp-microvolt = <0xbeac8>; }; opp-1398000000 { opp-hz = <0x00 0x5353c980>; opp-microvolt = <0xc5ff8>; }; opp-1608000000 { opp-hz = <0x00 0x5fd82200>; opp-microvolt = <0xdbf88>; }; opp-1800000000 { opp-hz = <0x00 0x6b49d200>; opp-microvolt = <0xf4628>; }; opp-2016000000 { opp-hz = <0x00 0x7829b800>; opp-microvolt = <0xf6d38>; }; }; opp-table-1 { compatible = "operating-points-v2"; opp-shared; phandle = <0x46>; opp-100000000 { opp-hz = <0x00 0x5f5e100>; opp-microvolt = <0xb2778>; }; opp-250000000 { opp-hz = <0x00 0xee6b280>; opp-microvolt = <0xb2778>; }; opp-500000000 { opp-hz = <0x00 0x1dcd6500>; opp-microvolt = <0xb2778>; }; opp-667000000 { opp-hz = <0x00 0x27c19cc0>; opp-microvolt = <0xb2778>; }; opp-1000000000 { opp-hz = <0x00 0x3b9aca00>; opp-microvolt = <0xb2778>; }; opp-1200000000 { opp-hz = <0x00 0x47868c00>; opp-microvolt = <0xb7598>; }; opp-1398000000 { opp-hz = <0x00 0x5353c980>; opp-microvolt = <0xbc3b8>; }; opp-1608000000 { opp-hz = <0x00 0x5fd82200>; opp-microvolt = <0xbeac8>; }; opp-1800000000 { opp-hz = <0x00 0x6b49d200>; opp-microvolt = <0xcae18>; }; opp-2016000000 { opp-hz = <0x00 0x7829b800>; opp-microvolt = <0xde698>; }; opp-2208000000 { opp-hz = <0x00 0x839b6800>; opp-microvolt = <0xf6d38>; }; }; memory@0 { device_type = "memory"; reg = <0x00 0x00 0x00 0x80000000>; }; audio-amplifier-0 { compatible = "simple-audio-amplifier"; enable-gpios = <0x47 0x02 0x00>; VCC-supply = <0x0d>; sound-name-prefix = "10U2"; phandle = <0x53>; }; audio-codec-0 { #sound-dai-cells = <0x00>; compatible = "linux,spdif-dit"; status = "okay"; sound-name-prefix = "DIT"; phandle = <0x61>; }; audio-codec-1 { #sound-dai-cells = <0x00>; compatible = "linux,spdif-dir"; status = "okay"; sound-name-prefix = "DIR"; phandle = <0x63>; }; cvbs-connector { compatible = "composite-video-connector"; port { endpoint { remote-endpoint = <0x48>; phandle = <0x23>; }; }; }; emmc-pwrseq { compatible = "mmc-pwrseq-emmc"; reset-gpios = <0x16 0x25 0x01>; phandle = <0x30>; }; gpio-keys-polled { compatible = "gpio-keys-polled"; poll-interval = <0x64>; power-button { label = "power"; linux,code = <0x74>; gpios = <0x47 0x03 0x11>; }; }; hdmi-connector { compatible = "hdmi-connector"; type = "a"; port { endpoint { remote-endpoint = <0x49>; phandle = <0x0f>; }; }; }; leds { compatible = "gpio-leds"; led-orange-blue { color = <0x08>; function = "status"; gpios = <0x47 0x0b 0x01>; linux,default-trigger = "default-on"; panic-indicator; }; led-blue { color = <0x03>; function = "activity"; gpios = <0x47 0x09 0x01>; linux,default-trigger = "activity"; }; }; regulator-dc-in { compatible = "regulator-fixed"; regulator-name = "5V_IN"; regulator-min-microvolt = <0x4c4b40>; regulator-max-microvolt = <0x4c4b40>; regulator-always-on; phandle = <0x14>; }; regulator-flash-1v8 { compatible = "regulator-fixed"; regulator-name = "FLASH_1V8"; regulator-min-microvolt = <0x1b7740>; regulator-max-microvolt = <0x1b7740>; regulator-always-on; vin-supply = <0x31>; phandle = <0x32>; }; regulator-vcc-card { compatible = "regulator-fixed"; regulator-name = "VCC_CARD"; regulator-min-microvolt = <0x325aa0>; regulator-max-microvolt = <0x325aa0>; vin-supply = <0x4a>; gpio = <0x16 0x39 0x00>; enable-active-high; gpio-open-drain; phandle = <0x29>; }; regulator-vcc-3v3 { compatible = "regulator-fixed"; regulator-name = "VCC_3V3"; regulator-min-microvolt = <0x325aa0>; regulator-max-microvolt = <0x325aa0>; regulator-always-on; vin-supply = <0x4a>; phandle = <0x31>; }; regulator-vcc-5v { compatible = "regulator-fixed"; regulator-name = "VCC_5V"; regulator-min-microvolt = <0x4c4b40>; regulator-max-microvolt = <0x4c4b40>; regulator-always-on; vin-supply = <0x14>; gpio = <0x16 0x18 0x06>; gpio-open-drain; enable-active-high; phandle = <0x0d>; }; regulator-vddao_3v3 { compatible = "regulator-fixed"; regulator-name = "VDDAO_3V3"; regulator-min-microvolt = <0x325aa0>; regulator-max-microvolt = <0x325aa0>; regulator-always-on; vin-supply = <0x14>; phandle = <0x4a>; }; regulator-vddcpu-a { compatible = "pwm-regulator"; regulator-name = "VDDCPU_A"; regulator-min-microvolt = <0xb2390>; regulator-max-microvolt = <0xf6d38>; regulator-boot-on; regulator-always-on; pwm-supply = <0x14>; pwms = <0x4b 0x00 0x4e2 0x00>; pwm-dutycycle-range = <0x64 0x00>; phandle = <0x45>; }; regulator-vddcpu-b { compatible = "pwm-regulator"; regulator-name = "VDDCPU_B"; regulator-min-microvolt = <0xb2390>; regulator-max-microvolt = <0xf6d38>; regulator-boot-on; regulator-always-on; pwm-supply = <0x14>; pwms = <0x4c 0x01 0x4e2 0x00>; pwm-dutycycle-range = <0x64 0x00>; phandle = <0x43>; }; regulator-vddio_ao18 { compatible = "regulator-fixed"; regulator-name = "VDDIO_AO18"; regulator-min-microvolt = <0x1b7740>; regulator-max-microvolt = <0x1b7740>; regulator-always-on; vin-supply = <0x4a>; phandle = <0x10>; }; regulator-vddio_c { compatible = "regulator-gpio"; regulator-name = "VDDIO_C"; regulator-min-microvolt = <0x1b7740>; regulator-max-microvolt = <0x325aa0>; regulator-settling-time-up-us = <0xc8>; regulator-settling-time-down-us = <0xc350>; vin-supply = <0x4a>; gpios = <0x16 0x38 0x00>; states = <0x325aa0 0x00 0x1b7740 0x01>; phandle = <0x2a>; }; sound { compatible = "amlogic,axg-sound-card"; model = "Cottonwood"; audio-widgets = "Line\0Lineout"; audio-aux-devs = <0x4d 0x4e 0x4f 0x50 0x51 0x52 0x53>; audio-routing = "TDMOUT_A IN 0\0FRDDR_A OUT 0\0TDMOUT_A IN 1\0FRDDR_B OUT 0\0TDMOUT_A IN 2\0FRDDR_C OUT 0\0TDM_A Playback\0TDMOUT_A OUT\0TDMOUT_B IN 0\0FRDDR_A OUT 1\0TDMOUT_B IN 1\0FRDDR_B OUT 1\0TDMOUT_B IN 2\0FRDDR_C OUT 1\0TDM_B Playback\0TDMOUT_B OUT\0TDMOUT_C IN 0\0FRDDR_A OUT 2\0TDMOUT_C IN 1\0FRDDR_B OUT 2\0TDMOUT_C IN 2\0FRDDR_C OUT 2\0TDM_C Playback\0TDMOUT_C OUT\0SPDIFOUT IN 0\0FRDDR_A OUT 3\0SPDIFOUT IN 1\0FRDDR_B OUT 3\0SPDIFOUT IN 2\0FRDDR_C OUT 3\0TDMIN_A IN 0\0TDM_A Capture\0TDMIN_B IN 0\0TDM_A Capture\0TDMIN_C IN 0\0TDM_A Capture\0TDMIN_A IN 3\0TDM_A Loopback\0TDMIN_B IN 3\0TDM_A Loopback\0TDMIN_C IN 3\0TDM_A Loopback\0TDMIN_A IN 1\0TDM_B Capture\0TDMIN_B IN 1\0TDM_B Capture\0TDMIN_C IN 1\0TDM_B Capture\0TDMIN_A IN 4\0TDM_B Loopback\0TDMIN_B IN 4\0TDM_B Loopback\0TDMIN_C IN 4\0TDM_B Loopback\0TDMIN_A IN 2\0TDM_C Capture\0TDMIN_B IN 2\0TDM_C Capture\0TDMIN_C IN 2\0TDM_C Capture\0TDMIN_A IN 5\0TDM_C Loopback\0TDMIN_B IN 5\0TDM_C Loopback\0TDMIN_C IN 5\0TDM_C Loopback\0TODDR_A IN 0\0TDMIN_A OUT\0TODDR_B IN 0\0TDMIN_A OUT\0TODDR_C IN 0\0TDMIN_A OUT\0TODDR_A IN 1\0TDMIN_B OUT\0TODDR_B IN 1\0TDMIN_B OUT\0TODDR_C IN 1\0TDMIN_B OUT\0TODDR_A IN 2\0TDMIN_C OUT\0TODDR_B IN 2\0TDMIN_C OUT\0TODDR_C IN 2\0TDMIN_C OUT\0TODDR_A IN 3\0SPDIFIN Capture\0TODDR_B IN 3\0SPDIFIN Capture\0TODDR_C IN 3\0SPDIFIN Capture\0Lineout\0ACODEC LOLP\0Lineout\0ACODEC LORP"; assigned-clocks = <0x02 0x0d 0x02 0x0b 0x02 0x0c>; assigned-clock-parents = <0x00 0x00 0x00>; assigned-clock-rates = <0x11940000 0x10266000 0x17700000>; dai-link-0 { sound-dai = <0x54>; }; dai-link-1 { sound-dai = <0x55>; }; dai-link-2 { sound-dai = <0x56>; }; dai-link-3 { sound-dai = <0x57>; }; dai-link-4 { sound-dai = <0x58>; }; dai-link-5 { sound-dai = <0x59>; }; dai-link-6 { sound-dai = <0x5a>; dai-format = "dsp_a"; dai-tdm-slot-tx-mask-0 = <0x01 0x01>; mclk-fs = <0x100>; codec-0 { sound-dai = <0x5b 0x00>; }; codec-1 { sound-dai = <0x5c 0x00>; }; }; dai-link-7 { sound-dai = <0x5d>; dai-format = "i2s"; dai-tdm-slot-tx-mask-0 = <0x01 0x01>; dai-tdm-slot-rx-mask-1 = <0x01 0x01>; mclk-fs = <0x100>; codec-0 { sound-dai = <0x5b 0x01>; }; codec-1 { sound-dai = <0x5c 0x01>; }; }; dai-link-8 { sound-dai = <0x5e>; dai-format = "i2s"; dai-tdm-slot-tx-mask-0 = <0x01 0x01>; dai-tdm-slot-tx-mask-1 = <0x01 0x01>; dai-tdm-slot-tx-mask-2 = <0x01 0x01>; dai-tdm-slot-tx-mask-3 = <0x01 0x01>; mclk-fs = <0x100>; codec-0 { sound-dai = <0x5b 0x02>; }; codec-1 { sound-dai = <0x5c 0x02>; }; }; dai-link-9 { sound-dai = <0x5b 0x03>; codec { sound-dai = <0x1e>; }; }; dai-link-10 { sound-dai = <0x5c 0x03>; codec { sound-dai = <0x5f>; }; }; dai-link-11 { sound-dai = <0x60>; codec-0 { sound-dai = <0x61>; }; codec-1 { sound-dai = <0x5b 0x04>; }; }; dai-link-12 { sound-dai = <0x62>; codec { sound-dai = <0x63>; }; }; }; smbios { compatible = "u-boot,sysinfo-smbios"; smbios { system { manufacturer = "libre-computer"; product = "aml-a311d-cc-v01"; }; baseboard { manufacturer = "libre-computer"; product = "aml-a311d-cc-v01"; }; chassis { manufacturer = "libre-computer"; product = "aml-a311d-cc-v01"; }; }; }; __symbols__ { simplefb_cvbs = "/chosen/framebuffer-cvbs"; simplefb_hdmi = "/chosen/framebuffer-hdmi"; efuse = "/efuse"; gpu_opp_table = "/opp-table-gpu"; secmon_reserved = "/reserved-memory/secmon@5000000"; secmon_reserved_bl32 = "/reserved-memory/secmon@5300000"; sm = "/secure-monitor"; pcie = "/soc/pcie@fc000000"; ethmac = "/soc/ethernet@ff3f0000"; mdio0 = "/soc/ethernet@ff3f0000/mdio"; apb = "/soc/bus@ff600000"; hdmi_tx = "/soc/bus@ff600000/hdmi-tx@0"; hdmi_tx_venc_port = "/soc/bus@ff600000/hdmi-tx@0/port@0"; hdmi_tx_in = "/soc/bus@ff600000/hdmi-tx@0/port@0/endpoint"; hdmi_tx_tmds_port = "/soc/bus@ff600000/hdmi-tx@0/port@1"; hdmi_tx_tmds_out = "/soc/bus@ff600000/hdmi-tx@0/port@1/endpoint"; apb_efuse = "/soc/bus@ff600000/bus@30000"; hwrng = "/soc/bus@ff600000/bus@30000/rng@218"; acodec = "/soc/bus@ff600000/audio-controller@32000"; periphs = "/soc/bus@ff600000/bus@34400"; periphs_pinctrl = "/soc/bus@ff600000/bus@34400/pinctrl@40"; gpio = "/soc/bus@ff600000/bus@34400/pinctrl@40/bank@40"; cec_ao_a_h_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/cec_ao_a_h"; cec_ao_b_h_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/cec_ao_b_h"; emmc_ctrl_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/emmc-ctrl"; emmc_data_4b_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/emmc-data-4b"; emmc_data_8b_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/emmc-data-8b"; emmc_ds_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/emmc-ds"; emmc_clk_gate_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/emmc_clk_gate"; hdmitx_ddc_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/hdmitx_ddc"; hdmitx_hpd_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/hdmitx_hpd"; i2c0_sda_c_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/i2c0-sda-c"; i2c0_sck_c_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/i2c0-sck-c"; i2c0_sda_z0_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/i2c0-sda-z0"; i2c0_sck_z1_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/i2c0-sck-z1"; i2c0_sda_z7_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/i2c0-sda-z7"; i2c0_sda_z8_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/i2c0-sda-z8"; i2c1_sda_x_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/i2c1-sda-x"; i2c1_sck_x_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/i2c1-sck-x"; i2c1_sda_h2_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/i2c1-sda-h2"; i2c1_sck_h3_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/i2c1-sck-h3"; i2c1_sda_h6_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/i2c1-sda-h6"; i2c1_sck_h7_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/i2c1-sck-h7"; i2c2_sda_x_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/i2c2-sda-x"; i2c2_sck_x_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/i2c2-sck-x"; i2c2_sda_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/i2c2-sda-z"; i2c2_sck_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/i2c2-sck-z"; i2c3_sda_h_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/i2c3-sda-h"; i2c3_sck_h_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/i2c3-sck-h"; i2c3_sda_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/i2c3-sda-a"; i2c3_sck_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/i2c3-sck-a"; mclk0_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/mclk0-a"; mclk1_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/mclk1-a"; mclk1_x_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/mclk1-x"; mclk1_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/mclk1-z"; nor_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/nor"; pdm_din0_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pdm-din0-a"; pdm_din0_c_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pdm-din0-c"; pdm_din0_x_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pdm-din0-x"; pdm_din0_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pdm-din0-z"; pdm_din1_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pdm-din1-a"; pdm_din1_c_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pdm-din1-c"; pdm_din1_x_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pdm-din1-x"; pdm_din1_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pdm-din1-z"; pdm_din2_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pdm-din2-a"; pdm_din2_c_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pdm-din2-c"; pdm_din2_x_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pdm-din2-x"; pdm_din2_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pdm-din2-z"; pdm_din3_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pdm-din3-a"; pdm_din3_c_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pdm-din3-c"; pdm_din3_x_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pdm-din3-x"; pdm_din3_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pdm-din3-z"; pdm_dclk_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pdm-dclk-a"; pdm_dclk_c_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pdm-dclk-c"; pdm_dclk_x_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pdm-dclk-x"; pdm_dclk_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pdm-dclk-z"; pwm_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pwm-a"; pwm_b_x7_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pwm-b-x7"; pwm_b_x19_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pwm-b-x19"; pwm_c_c_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pwm-c-c"; pwm_c_x5_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pwm-c-x5"; pwm_c_x8_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pwm-c-x8"; pwm_d_x3_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pwm-d-x3"; pwm_d_x6_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pwm-d-x6"; pwm_e_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pwm-e"; pwm_f_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pwm-f-z"; pwm_f_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pwm-f-a"; pwm_f_x_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pwm-f-x"; pwm_f_h_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/pwm-f-h"; sdcard_c_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/sdcard_c"; sdcard_clk_gate_c_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/sdcard_clk_gate_c"; sdcard_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/sdcard_z"; sdcard_clk_gate_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/sdcard_clk_gate_z"; sdio_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/sdio"; sdio_clk_gate_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/sdio_clk_gate"; spdif_in_a10_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/spdif-in-a10"; spdif_in_a12_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/spdif-in-a12"; spdif_in_h_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/spdif-in-h"; spdif_out_h_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/spdif-out-h"; spdif_out_a11_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/spdif-out-a11"; spdif_out_a13_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/spdif-out-a13"; spicc0_x_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/spicc0-x"; spicc0_ss0_x_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/spicc0-ss0-x"; spicc0_c_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/spicc0-c"; spicc1_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/spicc1"; spicc1_ss0_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/spicc1-ss0"; tdm_a_din0_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-a-din0"; tdm_a_din1_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-a-din1"; tdm_a_dout0_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-a-dout0"; tdm_a_dout1_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-a-dout1"; tdm_a_fs_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-a-fs"; tdm_a_sclk_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-a-sclk"; tdm_a_slv_fs_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-a-slv-fs"; tdm_a_slv_sclk_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-a-slv-sclk"; tdm_b_din0_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-b-din0"; tdm_b_din1_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-b-din1"; tdm_b_din2_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-b-din2"; tdm_b_din3_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-b-din3-a"; tdm_b_din3_h_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-b-din3-h"; tdm_b_dout0_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-b-dout0"; tdm_b_dout1_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-b-dout1"; tdm_b_dout2_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-b-dout2"; tdm_b_dout3_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-b-dout3-a"; tdm_b_dout3_h_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-b-dout3-h"; tdm_b_fs_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-b-fs"; tdm_b_sclk_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-b-sclk"; tdm_b_slv_fs_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-b-slv-fs"; tdm_b_slv_sclk_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-b-slv-sclk"; tdm_c_din0_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-din0-a"; tdm_c_din0_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-din0-z"; tdm_c_din1_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-din1-a"; tdm_c_din1_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-din1-z"; tdm_c_din2_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-din2-a"; eth_leds_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/eth-leds"; eth_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/eth"; eth_rgmii_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/eth-rgmii"; tdm_c_din2_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-din2-z"; tdm_c_din3_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-din3-a"; tdm_c_din3_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-din3-z"; tdm_c_dout0_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-dout0-a"; tdm_c_dout0_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-dout0-z"; tdm_c_dout1_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-dout1-a"; tdm_c_dout1_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-dout1-z"; tdm_c_dout2_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-dout2-a"; tdm_c_dout2_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-dout2-z"; tdm_c_dout3_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-dout3-a"; tdm_c_dout3_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-dout3-z"; tdm_c_fs_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-fs-a"; tdm_c_fs_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-fs-z"; tdm_c_sclk_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-sclk-a"; tdm_c_sclk_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-sclk-z"; tdm_c_slv_fs_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-slv-fs-a"; tdm_c_slv_fs_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-slv-fs-z"; tdm_c_slv_sclk_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-slv-sclk-a"; tdm_c_slv_sclk_z_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/tdm-c-slv-sclk-z"; uart_a_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/uart-a"; uart_a_cts_rts_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/uart-a-cts-rts"; uart_b_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/uart-b"; uart_c_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/uart-c"; uart_c_cts_rts_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/uart-c-cts-rts"; spi_cs_disable_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/spi-cs-disable"; eth_phy_irq_pins = "/soc/bus@ff600000/bus@34400/pinctrl@40/eth-phy-irq"; cpu_temp = "/soc/bus@ff600000/temperature-sensor@34800"; ddr_temp = "/soc/bus@ff600000/temperature-sensor@34c00"; usb2_phy0 = "/soc/bus@ff600000/phy@36000"; dmc = "/soc/bus@ff600000/bus@38000"; canvas = "/soc/bus@ff600000/bus@38000/video-lut@48"; pmu = "/soc/bus@ff600000/bus@38000/pmu@80"; usb2_phy1 = "/soc/bus@ff600000/phy@3a000"; hiu = "/soc/bus@ff600000/bus@3c000"; hhi = "/soc/bus@ff600000/bus@3c000/system-controller@0"; clkc = "/soc/bus@ff600000/bus@3c000/system-controller@0/clock-controller"; pwrc = "/soc/bus@ff600000/bus@3c000/system-controller@0/power-controller"; usb3_pcie_phy = "/soc/bus@ff600000/phy@46000"; hub = "/soc/bus@ff600000/phy@46000/hub@1"; eth_phy = "/soc/bus@ff600000/mdio-multiplexer@4c000"; ext_mdio = "/soc/bus@ff600000/mdio-multiplexer@4c000/mdio@0"; external_phy = "/soc/bus@ff600000/mdio-multiplexer@4c000/mdio@0/ethernet-phy@0"; int_mdio = "/soc/bus@ff600000/mdio-multiplexer@4c000/mdio@1"; internal_ephy = "/soc/bus@ff600000/mdio-multiplexer@4c000/mdio@1/ethernet-phy@8"; pdm = "/soc/bus@ff600000/audio-controller@40000"; audio = "/soc/bus@ff600000/bus@42000"; clkc_audio = "/soc/bus@ff600000/bus@42000/clock-controller@0"; toddr_a = "/soc/bus@ff600000/bus@42000/audio-controller@100"; toddr_b = "/soc/bus@ff600000/bus@42000/audio-controller@140"; toddr_c = "/soc/bus@ff600000/bus@42000/audio-controller@180"; frddr_a = "/soc/bus@ff600000/bus@42000/audio-controller@1c0"; frddr_b = "/soc/bus@ff600000/bus@42000/audio-controller@200"; frddr_c = "/soc/bus@ff600000/bus@42000/audio-controller@240"; arb = "/soc/bus@ff600000/bus@42000/reset-controller@280"; tdmin_a = "/soc/bus@ff600000/bus@42000/audio-controller@300"; tdmin_b = "/soc/bus@ff600000/bus@42000/audio-controller@340"; tdmin_c = "/soc/bus@ff600000/bus@42000/audio-controller@380"; tdmin_lb = "/soc/bus@ff600000/bus@42000/audio-controller@3c0"; spdifin = "/soc/bus@ff600000/bus@42000/audio-controller@400"; spdifout = "/soc/bus@ff600000/bus@42000/audio-controller@480"; tdmout_a = "/soc/bus@ff600000/bus@42000/audio-controller@500"; tdmout_b = "/soc/bus@ff600000/bus@42000/audio-controller@540"; tdmout_c = "/soc/bus@ff600000/bus@42000/audio-controller@580"; spdifout_b = "/soc/bus@ff600000/bus@42000/audio-controller@680"; toacodec = "/soc/bus@ff600000/bus@42000/audio-controller@740"; tohdmitx = "/soc/bus@ff600000/bus@42000/audio-controller@744"; aobus = "/soc/bus@ff800000"; rti = "/soc/bus@ff800000/sys-ctrl@0"; clkc_AO = "/soc/bus@ff800000/sys-ctrl@0/clock-controller"; ao_pinctrl = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14"; gpio_ao = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/bank@14"; i2c_ao_sck_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/i2c_ao_sck_pins"; i2c_ao_sda_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/i2c_ao_sda"; i2c_ao_sck_e_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/i2c_ao_sck_e"; i2c_ao_sda_e_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/i2c_ao_sda_e"; mclk0_ao_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/mclk0-ao"; tdm_ao_b_din0_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/tdm-ao-b-din0"; spdif_ao_out_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/spdif-ao-out"; tdm_ao_b_din1_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/tdm-ao-b-din1"; tdm_ao_b_din2_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/tdm-ao-b-din2"; tdm_ao_b_dout0_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/tdm-ao-b-dout0"; tdm_ao_b_dout1_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/tdm-ao-b-dout1"; tdm_ao_b_dout2_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/tdm-ao-b-dout2"; tdm_ao_b_fs_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/tdm-ao-b-fs"; tdm_ao_b_sclk_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/tdm-ao-b-sclk"; tdm_ao_b_slv_fs_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/tdm-ao-b-slv-fs"; tdm_ao_b_slv_sclk_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/tdm-ao-b-slv-sclk"; uart_ao_a_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/uart-a-ao"; uart_ao_a_cts_rts_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/uart-ao-a-cts-rts"; uart_ao_b_2_3_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/uart-ao-b-2-3"; uart_ao_b_8_9_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/uart-ao-b-8-9"; uart_ao_b_cts_rts_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/uart-ao-b-cts-rts"; pwm_a_e_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/pwm-a-e"; pwm_ao_a_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/pwm-ao-a"; pwm_ao_b_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/pwm-ao-b"; pwm_ao_c_4_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/pwm-ao-c-4"; pwm_ao_c_6_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/pwm-ao-c-6"; pwm_ao_d_5_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/pwm-ao-d-5"; pwm_ao_d_10_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/pwm-ao-d-10"; pwm_ao_d_e_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/pwm-ao-d-e"; remote_input_ao_pins = "/soc/bus@ff800000/sys-ctrl@0/pinctrl@14/remote-input-ao"; vrtc = "/soc/bus@ff800000/rtc@a8"; cec_AO = "/soc/bus@ff800000/cec@100"; sec_AO = "/soc/bus@ff800000/ao-secure@140"; cecb_AO = "/soc/bus@ff800000/cec@280"; pwm_AO_cd = "/soc/bus@ff800000/pwm@2000"; uart_AO = "/soc/bus@ff800000/serial@3000"; uart_AO_B = "/soc/bus@ff800000/serial@4000"; i2c_AO = "/soc/bus@ff800000/i2c@5000"; pwm_AO_ab = "/soc/bus@ff800000/pwm@7000"; ir = "/soc/bus@ff800000/ir@8000"; saradc = "/soc/bus@ff800000/adc@9000"; vdec = "/soc/video-decoder@ff620000"; vpu = "/soc/vpu@ff900000"; cvbs_vdac_port = "/soc/vpu@ff900000/port@0"; cvbs_vdac_out = "/soc/vpu@ff900000/port@0/endpoint"; hdmi_tx_port = "/soc/vpu@ff900000/port@1"; hdmi_tx_out = "/soc/vpu@ff900000/port@1/endpoint"; gic = "/soc/interrupt-controller@ffc01000"; cbus = "/soc/bus@ffd00000"; reset = "/soc/bus@ffd00000/reset-controller@1004"; gpio_intc = "/soc/bus@ffd00000/interrupt-controller@f080"; watchdog = "/soc/bus@ffd00000/watchdog@f0d0"; spicc0 = "/soc/bus@ffd00000/spi@13000"; spicc1 = "/soc/bus@ffd00000/spi@15000"; spifc = "/soc/bus@ffd00000/spi@14000"; w25q128 = "/soc/bus@ffd00000/spi@14000/flash@0"; pwm_ef = "/soc/bus@ffd00000/pwm@19000"; pwm_cd = "/soc/bus@ffd00000/pwm@1a000"; pwm_ab = "/soc/bus@ffd00000/pwm@1b000"; i2c3 = "/soc/bus@ffd00000/i2c@1c000"; i2c2 = "/soc/bus@ffd00000/i2c@1d000"; i2c1 = "/soc/bus@ffd00000/i2c@1e000"; i2c0 = "/soc/bus@ffd00000/i2c@1f000"; clk_msr = "/soc/bus@ffd00000/clock-measure@18000"; uart_C = "/soc/bus@ffd00000/serial@22000"; uart_B = "/soc/bus@ffd00000/serial@23000"; uart_A = "/soc/bus@ffd00000/serial@24000"; sd_emmc_a = "/soc/mmc@ffe03000"; sd_emmc_b = "/soc/mmc@ffe05000"; sd_emmc_c = "/soc/mmc@ffe07000"; usb = "/soc/usb@ffe09000"; dwc2 = "/soc/usb@ffe09000/usb@ff400000"; dwc3 = "/soc/usb@ffe09000/usb@ff500000"; mali = "/soc/gpu@ffe40000"; cpu_thermal = "/thermal-zones/cpu-thermal"; cpu_passive = "/thermal-zones/cpu-thermal/trips/cpu-passive"; cpu_hot = "/thermal-zones/cpu-thermal/trips/cpu-hot"; cpu_critical = "/thermal-zones/cpu-thermal/trips/cpu-critical"; ddr_thermal = "/thermal-zones/ddr-thermal"; ddr_passive = "/thermal-zones/ddr-thermal/trips/ddr-passive"; ddr_critical = "/thermal-zones/ddr-thermal/trips/ddr-critical"; xtal = "/xtal-clk"; npu = "/npu@ff100000"; tdmif_a = "/audio-controller-0"; tdmif_b = "/audio-controller-1"; tdmif_c = "/audio-controller-2"; cpu0 = "/cpus/cpu@0"; cpu1 = "/cpus/cpu@1"; cpu100 = "/cpus/cpu@100"; cpu101 = "/cpus/cpu@101"; cpu102 = "/cpus/cpu@102"; cpu103 = "/cpus/cpu@103"; l2 = "/cpus/l2-cache0"; cpu_opp_table_0 = "/opp-table-0"; cpub_opp_table_1 = "/opp-table-1"; dioo2133 = "/audio-amplifier-0"; spdif_dit = "/audio-codec-0"; spdif_dir = "/audio-codec-1"; cvbs_connector_in = "/cvbs-connector/port/endpoint"; emmc_pwrseq = "/emmc-pwrseq"; hdmi_connector_in = "/hdmi-connector/port/endpoint"; dc_in = "/regulator-dc-in"; flash_1v8 = "/regulator-flash-1v8"; vcc_card = "/regulator-vcc-card"; vcc_3v3 = "/regulator-vcc-3v3"; vcc_5v = "/regulator-vcc-5v"; vddao_3v3 = "/regulator-vddao_3v3"; vddcpu_a = "/regulator-vddcpu-a"; vddcpu_b = "/regulator-vddcpu-b"; vddio_ao18 = "/regulator-vddio_ao18"; vddio_c = "/regulator-vddio_c"; }; };