1114abfe1SNeil Armstrong// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 215abee8aSCarlo Caione/* 315abee8aSCarlo Caione * Copyright (c) 2016 Endless Computers, Inc. 415abee8aSCarlo Caione * Author: Carlo Caione <carlo@endlessm.com> 515abee8aSCarlo Caione */ 615abee8aSCarlo Caione 715abee8aSCarlo Caione#include "meson-gx.dtsi" 8973fbd55SNeil Armstrong#include <dt-bindings/clock/gxbb-clkc.h> 9b16c71c9SNeil Armstrong#include <dt-bindings/clock/gxbb-aoclkc.h> 101cf3df8aSKevin Hilman#include <dt-bindings/gpio/meson-gxl-gpio.h> 116939db7eSNeil Armstrong#include <dt-bindings/reset/amlogic,meson-gxbb-reset.h> 1215abee8aSCarlo Caione 1315abee8aSCarlo Caione/ { 1415abee8aSCarlo Caione compatible = "amlogic,meson-gxl"; 154ee8e51bSNeil Armstrong 168aec5fc1SMartin Blumenstingl soc { 172f9139c2SMartin Blumenstingl usb: usb@d0078080 { 182f9139c2SMartin Blumenstingl compatible = "amlogic,meson-gxl-usb-ctrl"; 192f9139c2SMartin Blumenstingl reg = <0x0 0xd0078080 0x0 0x20>; 202f9139c2SMartin Blumenstingl interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>; 218aec5fc1SMartin Blumenstingl #address-cells = <2>; 228aec5fc1SMartin Blumenstingl #size-cells = <2>; 238aec5fc1SMartin Blumenstingl ranges; 248aec5fc1SMartin Blumenstingl 252f9139c2SMartin Blumenstingl clocks = <&clkc CLKID_USB>, <&clkc CLKID_USB1_DDR_BRIDGE>; 262f9139c2SMartin Blumenstingl clock-names = "usb_ctrl", "ddr"; 278aec5fc1SMartin Blumenstingl resets = <&reset RESET_USB_OTG>; 288aec5fc1SMartin Blumenstingl 292f9139c2SMartin Blumenstingl dr_mode = "otg"; 302f9139c2SMartin Blumenstingl 312f9139c2SMartin Blumenstingl phys = <&usb2_phy0>, <&usb2_phy1>; 322f9139c2SMartin Blumenstingl phy-names = "usb2-phy0", "usb2-phy1"; 332f9139c2SMartin Blumenstingl 342f9139c2SMartin Blumenstingl dwc2: usb@c9100000 { 352f9139c2SMartin Blumenstingl compatible = "amlogic,meson-g12a-usb", "snps,dwc2"; 362f9139c2SMartin Blumenstingl reg = <0x0 0xc9100000 0x0 0x40000>; 372f9139c2SMartin Blumenstingl interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; 382f9139c2SMartin Blumenstingl clocks = <&clkc CLKID_USB1>; 392f9139c2SMartin Blumenstingl clock-names = "otg"; 402f9139c2SMartin Blumenstingl phys = <&usb2_phy1>; 412f9139c2SMartin Blumenstingl dr_mode = "peripheral"; 422f9139c2SMartin Blumenstingl g-rx-fifo-size = <192>; 432f9139c2SMartin Blumenstingl g-np-tx-fifo-size = <128>; 442f9139c2SMartin Blumenstingl g-tx-fifo-size = <128 128 16 16 16>; 452f9139c2SMartin Blumenstingl }; 462f9139c2SMartin Blumenstingl 472f9139c2SMartin Blumenstingl dwc3: usb@c9000000 { 488aec5fc1SMartin Blumenstingl compatible = "snps,dwc3"; 498aec5fc1SMartin Blumenstingl reg = <0x0 0xc9000000 0x0 0x100000>; 508aec5fc1SMartin Blumenstingl interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>; 518aec5fc1SMartin Blumenstingl dr_mode = "host"; 528aec5fc1SMartin Blumenstingl maximum-speed = "high-speed"; 538aec5fc1SMartin Blumenstingl snps,dis_u2_susphy_quirk; 548aec5fc1SMartin Blumenstingl }; 558aec5fc1SMartin Blumenstingl }; 56c4a0457eSCorentin Labbe 57a66d4ae3SJerome Brunet acodec: audio-controller@c8832000 { 58a66d4ae3SJerome Brunet compatible = "amlogic,t9015"; 59a66d4ae3SJerome Brunet reg = <0x0 0xc8832000 0x0 0x14>; 60a66d4ae3SJerome Brunet #sound-dai-cells = <0>; 61a66d4ae3SJerome Brunet sound-name-prefix = "ACODEC"; 62a66d4ae3SJerome Brunet clocks = <&clkc CLKID_ACODEC>; 63a66d4ae3SJerome Brunet clock-names = "pclk"; 64a66d4ae3SJerome Brunet resets = <&reset RESET_ACODEC>; 65a66d4ae3SJerome Brunet status = "disabled"; 66a66d4ae3SJerome Brunet }; 67a66d4ae3SJerome Brunet 68c4a0457eSCorentin Labbe crypto: crypto@c883e000 { 69c4a0457eSCorentin Labbe compatible = "amlogic,gxl-crypto"; 70c4a0457eSCorentin Labbe reg = <0x0 0xc883e000 0x0 0x36>; 71c4a0457eSCorentin Labbe interrupts = <GIC_SPI 188 IRQ_TYPE_EDGE_RISING>, 72c4a0457eSCorentin Labbe <GIC_SPI 189 IRQ_TYPE_EDGE_RISING>; 73c4a0457eSCorentin Labbe clocks = <&clkc CLKID_BLKMV>; 74c4a0457eSCorentin Labbe clock-names = "blkmv"; 75c4a0457eSCorentin Labbe status = "okay"; 76c4a0457eSCorentin Labbe }; 778aec5fc1SMartin Blumenstingl }; 788aec5fc1SMartin Blumenstingl}; 798aec5fc1SMartin Blumenstingl 804cc1b265SJerome Brunet&aiu { 814cc1b265SJerome Brunet compatible = "amlogic,aiu-gxl", "amlogic,aiu"; 824cc1b265SJerome Brunet clocks = <&clkc CLKID_AIU_GLUE>, 834cc1b265SJerome Brunet <&clkc CLKID_I2S_OUT>, 844cc1b265SJerome Brunet <&clkc CLKID_AOCLK_GATE>, 854cc1b265SJerome Brunet <&clkc CLKID_CTS_AMCLK>, 864cc1b265SJerome Brunet <&clkc CLKID_MIXER_IFACE>, 874cc1b265SJerome Brunet <&clkc CLKID_IEC958>, 884cc1b265SJerome Brunet <&clkc CLKID_IEC958_GATE>, 894cc1b265SJerome Brunet <&clkc CLKID_CTS_MCLK_I958>, 904cc1b265SJerome Brunet <&clkc CLKID_CTS_I958>; 914cc1b265SJerome Brunet clock-names = "pclk", 924cc1b265SJerome Brunet "i2s_pclk", 934cc1b265SJerome Brunet "i2s_aoclk", 944cc1b265SJerome Brunet "i2s_mclk", 954cc1b265SJerome Brunet "i2s_mixer", 964cc1b265SJerome Brunet "spdif_pclk", 974cc1b265SJerome Brunet "spdif_aoclk", 984cc1b265SJerome Brunet "spdif_mclk", 994cc1b265SJerome Brunet "spdif_mclk_sel"; 1004cc1b265SJerome Brunet resets = <&reset RESET_AIU>; 1014cc1b265SJerome Brunet}; 1024cc1b265SJerome Brunet 1038aec5fc1SMartin Blumenstingl&apb { 1048aec5fc1SMartin Blumenstingl usb2_phy0: phy@78000 { 1058aec5fc1SMartin Blumenstingl compatible = "amlogic,meson-gxl-usb2-phy"; 1068aec5fc1SMartin Blumenstingl #phy-cells = <0>; 1078aec5fc1SMartin Blumenstingl reg = <0x0 0x78000 0x0 0x20>; 1088aec5fc1SMartin Blumenstingl clocks = <&clkc CLKID_USB>; 1098aec5fc1SMartin Blumenstingl clock-names = "phy"; 1108aec5fc1SMartin Blumenstingl resets = <&reset RESET_USB_OTG>; 1118aec5fc1SMartin Blumenstingl reset-names = "phy"; 1128aec5fc1SMartin Blumenstingl status = "okay"; 1138aec5fc1SMartin Blumenstingl }; 1148aec5fc1SMartin Blumenstingl 1158aec5fc1SMartin Blumenstingl usb2_phy1: phy@78020 { 1168aec5fc1SMartin Blumenstingl compatible = "amlogic,meson-gxl-usb2-phy"; 1178aec5fc1SMartin Blumenstingl #phy-cells = <0>; 1188aec5fc1SMartin Blumenstingl reg = <0x0 0x78020 0x0 0x20>; 1198aec5fc1SMartin Blumenstingl clocks = <&clkc CLKID_USB>; 1208aec5fc1SMartin Blumenstingl clock-names = "phy"; 1218aec5fc1SMartin Blumenstingl resets = <&reset RESET_USB_OTG>; 1228aec5fc1SMartin Blumenstingl reset-names = "phy"; 1238aec5fc1SMartin Blumenstingl status = "okay"; 1248aec5fc1SMartin Blumenstingl }; 12515abee8aSCarlo Caione}; 126fb0fe922SNeil Armstrong 127eed5afc6SJerome Brunet&efuse { 128eed5afc6SJerome Brunet clocks = <&clkc CLKID_EFUSE>; 129eed5afc6SJerome Brunet}; 130eed5afc6SJerome Brunet 131e9e27c64SNeil Armstrongðmac { 132e9e27c64SNeil Armstrong clocks = <&clkc CLKID_ETH>, 133e9e27c64SNeil Armstrong <&clkc CLKID_FCLK_DIV2>, 13432b5f4b6SMartin Blumenstingl <&clkc CLKID_MPLL2>, 13532b5f4b6SMartin Blumenstingl <&clkc CLKID_FCLK_DIV2>; 13632b5f4b6SMartin Blumenstingl clock-names = "stmmaceth", "clkin0", "clkin1", "timing-adjustment"; 137e9e27c64SNeil Armstrong 138e9e27c64SNeil Armstrong mdio0: mdio { 139e9e27c64SNeil Armstrong #address-cells = <1>; 140e9e27c64SNeil Armstrong #size-cells = <0>; 141e9e27c64SNeil Armstrong compatible = "snps,dwmac-mdio"; 142e9e27c64SNeil Armstrong }; 143e9e27c64SNeil Armstrong}; 144e9e27c64SNeil Armstrong 145fb0fe922SNeil Armstrong&aobus { 146fb0fe922SNeil Armstrong pinctrl_aobus: pinctrl@14 { 147fb0fe922SNeil Armstrong compatible = "amlogic,meson-gxl-aobus-pinctrl"; 148fb0fe922SNeil Armstrong #address-cells = <2>; 149fb0fe922SNeil Armstrong #size-cells = <2>; 150fb0fe922SNeil Armstrong ranges; 151fb0fe922SNeil Armstrong 152fb0fe922SNeil Armstrong gpio_ao: bank@14 { 153fb0fe922SNeil Armstrong reg = <0x0 0x00014 0x0 0x8>, 154fb0fe922SNeil Armstrong <0x0 0x0002c 0x0 0x4>, 155fb0fe922SNeil Armstrong <0x0 0x00024 0x0 0x8>; 156fb0fe922SNeil Armstrong reg-names = "mux", "pull", "gpio"; 157fb0fe922SNeil Armstrong gpio-controller; 158fb0fe922SNeil Armstrong #gpio-cells = <2>; 15984412e4eSNeil Armstrong gpio-ranges = <&pinctrl_aobus 0 0 14>; 160fb0fe922SNeil Armstrong }; 161fb0fe922SNeil Armstrong 162fb0fe922SNeil Armstrong uart_ao_a_pins: uart_ao_a { 163fb0fe922SNeil Armstrong mux { 164fb0fe922SNeil Armstrong groups = "uart_tx_ao_a", "uart_rx_ao_a"; 165fb0fe922SNeil Armstrong function = "uart_ao"; 1661c5cc1c8SJerome Brunet bias-disable; 167fb0fe922SNeil Armstrong }; 168fb0fe922SNeil Armstrong }; 169fb0fe922SNeil Armstrong 170261e1d5cSMartin Blumenstingl uart_ao_a_cts_rts_pins: uart_ao_a_cts_rts { 171261e1d5cSMartin Blumenstingl mux { 172261e1d5cSMartin Blumenstingl groups = "uart_cts_ao_a", 173261e1d5cSMartin Blumenstingl "uart_rts_ao_a"; 174261e1d5cSMartin Blumenstingl function = "uart_ao"; 1751c5cc1c8SJerome Brunet bias-disable; 176261e1d5cSMartin Blumenstingl }; 177261e1d5cSMartin Blumenstingl }; 178261e1d5cSMartin Blumenstingl 179890a96a2SMartin Blumenstingl uart_ao_b_pins: uart_ao_b { 180890a96a2SMartin Blumenstingl mux { 181890a96a2SMartin Blumenstingl groups = "uart_tx_ao_b", "uart_rx_ao_b"; 182890a96a2SMartin Blumenstingl function = "uart_ao_b"; 1831c5cc1c8SJerome Brunet bias-disable; 184890a96a2SMartin Blumenstingl }; 185890a96a2SMartin Blumenstingl }; 186890a96a2SMartin Blumenstingl 187ca02e3f9SNeil Armstrong uart_ao_b_0_1_pins: uart_ao_b_0_1 { 188ca02e3f9SNeil Armstrong mux { 189ca02e3f9SNeil Armstrong groups = "uart_tx_ao_b_0", "uart_rx_ao_b_1"; 190ca02e3f9SNeil Armstrong function = "uart_ao_b"; 1911c5cc1c8SJerome Brunet bias-disable; 192ca02e3f9SNeil Armstrong }; 193ca02e3f9SNeil Armstrong }; 194ca02e3f9SNeil Armstrong 195261e1d5cSMartin Blumenstingl uart_ao_b_cts_rts_pins: uart_ao_b_cts_rts { 196261e1d5cSMartin Blumenstingl mux { 197261e1d5cSMartin Blumenstingl groups = "uart_cts_ao_b", 198261e1d5cSMartin Blumenstingl "uart_rts_ao_b"; 199261e1d5cSMartin Blumenstingl function = "uart_ao_b"; 2001c5cc1c8SJerome Brunet bias-disable; 201261e1d5cSMartin Blumenstingl }; 202261e1d5cSMartin Blumenstingl }; 203261e1d5cSMartin Blumenstingl 204fb0fe922SNeil Armstrong remote_input_ao_pins: remote_input_ao { 205fb0fe922SNeil Armstrong mux { 206fb0fe922SNeil Armstrong groups = "remote_input_ao"; 207fb0fe922SNeil Armstrong function = "remote_input_ao"; 2081c5cc1c8SJerome Brunet bias-disable; 209fb0fe922SNeil Armstrong }; 210fb0fe922SNeil Armstrong }; 211249a2243SMartin Blumenstingl 212ca02e3f9SNeil Armstrong i2c_ao_pins: i2c_ao { 213ca02e3f9SNeil Armstrong mux { 214ca02e3f9SNeil Armstrong groups = "i2c_sck_ao", 215ca02e3f9SNeil Armstrong "i2c_sda_ao"; 216ca02e3f9SNeil Armstrong function = "i2c_ao"; 2171c5cc1c8SJerome Brunet bias-disable; 218ca02e3f9SNeil Armstrong }; 219ca02e3f9SNeil Armstrong }; 220ca02e3f9SNeil Armstrong 221e98fd134SMartin Blumenstingl pwm_ao_a_3_pins: pwm_ao_a_3 { 222e98fd134SMartin Blumenstingl mux { 223e98fd134SMartin Blumenstingl groups = "pwm_ao_a_3"; 224e98fd134SMartin Blumenstingl function = "pwm_ao_a"; 2251c5cc1c8SJerome Brunet bias-disable; 226e98fd134SMartin Blumenstingl }; 227e98fd134SMartin Blumenstingl }; 228e98fd134SMartin Blumenstingl 229e98fd134SMartin Blumenstingl pwm_ao_a_8_pins: pwm_ao_a_8 { 230e98fd134SMartin Blumenstingl mux { 231e98fd134SMartin Blumenstingl groups = "pwm_ao_a_8"; 232e98fd134SMartin Blumenstingl function = "pwm_ao_a"; 2331c5cc1c8SJerome Brunet bias-disable; 234e98fd134SMartin Blumenstingl }; 235e98fd134SMartin Blumenstingl }; 236e98fd134SMartin Blumenstingl 237249a2243SMartin Blumenstingl pwm_ao_b_pins: pwm_ao_b { 238249a2243SMartin Blumenstingl mux { 239249a2243SMartin Blumenstingl groups = "pwm_ao_b"; 240249a2243SMartin Blumenstingl function = "pwm_ao_b"; 2411c5cc1c8SJerome Brunet bias-disable; 242249a2243SMartin Blumenstingl }; 243249a2243SMartin Blumenstingl }; 244ca02e3f9SNeil Armstrong 245ca02e3f9SNeil Armstrong pwm_ao_b_6_pins: pwm_ao_b_6 { 246ca02e3f9SNeil Armstrong mux { 247ca02e3f9SNeil Armstrong groups = "pwm_ao_b_6"; 248ca02e3f9SNeil Armstrong function = "pwm_ao_b"; 2491c5cc1c8SJerome Brunet bias-disable; 250ca02e3f9SNeil Armstrong }; 251ca02e3f9SNeil Armstrong }; 252c16fe9a1Sjbrunet 253c16fe9a1Sjbrunet i2s_out_ch23_ao_pins: i2s_out_ch23_ao { 254c16fe9a1Sjbrunet mux { 255c16fe9a1Sjbrunet groups = "i2s_out_ch23_ao"; 256c16fe9a1Sjbrunet function = "i2s_out_ao"; 2571c5cc1c8SJerome Brunet bias-disable; 258c16fe9a1Sjbrunet }; 259c16fe9a1Sjbrunet }; 260c16fe9a1Sjbrunet 261c16fe9a1Sjbrunet i2s_out_ch45_ao_pins: i2s_out_ch45_ao { 262c16fe9a1Sjbrunet mux { 263c16fe9a1Sjbrunet groups = "i2s_out_ch45_ao"; 264c16fe9a1Sjbrunet function = "i2s_out_ao"; 2651c5cc1c8SJerome Brunet bias-disable; 266c16fe9a1Sjbrunet }; 267c16fe9a1Sjbrunet }; 2689503062dSjbrunet 2699503062dSjbrunet spdif_out_ao_6_pins: spdif_out_ao_6 { 2709503062dSjbrunet mux { 2719503062dSjbrunet groups = "spdif_out_ao_6"; 2729503062dSjbrunet function = "spdif_out_ao"; 2731c5cc1c8SJerome Brunet bias-disable; 2749503062dSjbrunet }; 2759503062dSjbrunet }; 2769503062dSjbrunet 2779503062dSjbrunet spdif_out_ao_9_pins: spdif_out_ao_9 { 2789503062dSjbrunet mux { 2799503062dSjbrunet groups = "spdif_out_ao_9"; 2809503062dSjbrunet function = "spdif_out_ao"; 2811c5cc1c8SJerome Brunet bias-disable; 2829503062dSjbrunet }; 2839503062dSjbrunet }; 2846d717619SNeil Armstrong 2856d717619SNeil Armstrong ao_cec_pins: ao_cec { 2866d717619SNeil Armstrong mux { 2876d717619SNeil Armstrong groups = "ao_cec"; 2886d717619SNeil Armstrong function = "cec_ao"; 2891c5cc1c8SJerome Brunet bias-disable; 2906d717619SNeil Armstrong }; 2916d717619SNeil Armstrong }; 2926d717619SNeil Armstrong 2936d717619SNeil Armstrong ee_cec_pins: ee_cec { 2946d717619SNeil Armstrong mux { 2956d717619SNeil Armstrong groups = "ee_cec"; 2966d717619SNeil Armstrong function = "cec_ao"; 2971c5cc1c8SJerome Brunet bias-disable; 2986d717619SNeil Armstrong }; 2996d717619SNeil Armstrong }; 300fb0fe922SNeil Armstrong }; 301fb0fe922SNeil Armstrong}; 302fb0fe922SNeil Armstrong 303b16c71c9SNeil Armstrong&cec_AO { 304b16c71c9SNeil Armstrong clocks = <&clkc_AO CLKID_AO_CEC_32K>; 305b16c71c9SNeil Armstrong clock-names = "core"; 306b16c71c9SNeil Armstrong}; 307b16c71c9SNeil Armstrong 3087fd2c355SNeil Armstrong&clkc_AO { 3097fd2c355SNeil Armstrong compatible = "amlogic,meson-gxl-aoclkc", "amlogic,meson-gx-aoclkc"; 31016361ff2SJerome Brunet clocks = <&xtal>, <&clkc CLKID_CLK81>; 31116361ff2SJerome Brunet clock-names = "xtal", "mpeg-clk"; 3127fd2c355SNeil Armstrong}; 3137fd2c355SNeil Armstrong 3149dbb56eaSJerome Brunet&gpio_intc { 3154dcc844cSHeiner Kallweit compatible = "amlogic,meson-gxl-gpio-intc", 3164dcc844cSHeiner Kallweit "amlogic,meson-gpio-intc"; 3179dbb56eaSJerome Brunet status = "okay"; 3189dbb56eaSJerome Brunet}; 3199dbb56eaSJerome Brunet 3206a573c4eSAndreas Färber&hdmi_tx { 3216a573c4eSAndreas Färber compatible = "amlogic,meson-gxl-dw-hdmi", "amlogic,meson-gx-dw-hdmi"; 3226a573c4eSAndreas Färber resets = <&reset RESET_HDMITX_CAPB3>, 3236a573c4eSAndreas Färber <&reset RESET_HDMI_SYSTEM_RESET>, 3246a573c4eSAndreas Färber <&reset RESET_HDMI_TX>; 3256a573c4eSAndreas Färber reset-names = "hdmitx_apb", "hdmitx", "hdmitx_phy"; 3260602ba0dSJerome Brunet clocks = <&clkc CLKID_HDMI>, 3270602ba0dSJerome Brunet <&clkc CLKID_HDMI_PCLK>, 3286a573c4eSAndreas Färber <&clkc CLKID_GCLK_VENCI_INT0>; 3296a573c4eSAndreas Färber clock-names = "isfr", "iahb", "venci"; 330f1ab099dSJerome Brunet power-domains = <&pwrc PWRC_GXBB_VPU_ID>; 331*1443b6eaSJerome Brunet 332*1443b6eaSJerome Brunet assigned-clocks = <&clkc CLKID_HDMI_SEL>, 333*1443b6eaSJerome Brunet <&clkc CLKID_HDMI>; 334*1443b6eaSJerome Brunet assigned-clock-parents = <&xtal>, <0>; 335*1443b6eaSJerome Brunet assigned-clock-rates = <0>, <24000000>; 3366a573c4eSAndreas Färber}; 3376a573c4eSAndreas Färber 3386f95c8cdSJerome Brunet&sysctrl { 3396f95c8cdSJerome Brunet clkc: clock-controller { 34057ee9767SJerome Brunet compatible = "amlogic,gxl-clkc"; 3416a573c4eSAndreas Färber #clock-cells = <1>; 34216361ff2SJerome Brunet clocks = <&xtal>; 34316361ff2SJerome Brunet clock-names = "xtal"; 3446a573c4eSAndreas Färber }; 3456a573c4eSAndreas Färber}; 3466a573c4eSAndreas Färber 34795ca6f06SJerome Brunet&hwrng { 34895ca6f06SJerome Brunet clocks = <&clkc CLKID_RNG0>; 34995ca6f06SJerome Brunet clock-names = "core"; 35095ca6f06SJerome Brunet}; 35195ca6f06SJerome Brunet 3526a573c4eSAndreas Färber&i2c_A { 3536a573c4eSAndreas Färber clocks = <&clkc CLKID_I2C>; 3546a573c4eSAndreas Färber}; 3556a573c4eSAndreas Färber 3566a573c4eSAndreas Färber&i2c_AO { 3576a573c4eSAndreas Färber clocks = <&clkc CLKID_AO_I2C>; 3586a573c4eSAndreas Färber}; 3596a573c4eSAndreas Färber 3606a573c4eSAndreas Färber&i2c_B { 3616a573c4eSAndreas Färber clocks = <&clkc CLKID_I2C>; 3626a573c4eSAndreas Färber}; 3636a573c4eSAndreas Färber 3646a573c4eSAndreas Färber&i2c_C { 3656a573c4eSAndreas Färber clocks = <&clkc CLKID_I2C>; 3666a573c4eSAndreas Färber}; 3676a573c4eSAndreas Färber 368fb0fe922SNeil Armstrong&periphs { 369fb0fe922SNeil Armstrong pinctrl_periphs: pinctrl@4b0 { 370fb0fe922SNeil Armstrong compatible = "amlogic,meson-gxl-periphs-pinctrl"; 371fb0fe922SNeil Armstrong #address-cells = <2>; 372fb0fe922SNeil Armstrong #size-cells = <2>; 373fb0fe922SNeil Armstrong ranges; 374fb0fe922SNeil Armstrong 375fb0fe922SNeil Armstrong gpio: bank@4b0 { 376fb0fe922SNeil Armstrong reg = <0x0 0x004b0 0x0 0x28>, 377fb0fe922SNeil Armstrong <0x0 0x004e8 0x0 0x14>, 378f4c406d5SNeil Armstrong <0x0 0x00520 0x0 0x14>, 379fb0fe922SNeil Armstrong <0x0 0x00430 0x0 0x40>; 380fb0fe922SNeil Armstrong reg-names = "mux", "pull", "pull-enable", "gpio"; 381fb0fe922SNeil Armstrong gpio-controller; 382fb0fe922SNeil Armstrong #gpio-cells = <2>; 3837dbe78e5SJerome Brunet gpio-ranges = <&pinctrl_periphs 0 0 100>; 384fb0fe922SNeil Armstrong }; 385fb0fe922SNeil Armstrong 386fb0fe922SNeil Armstrong emmc_pins: emmc { 387b43033b1SJerome Brunet mux-0 { 388fb0fe922SNeil Armstrong groups = "emmc_nand_d07", 389b43033b1SJerome Brunet "emmc_cmd"; 390b43033b1SJerome Brunet function = "emmc"; 391b43033b1SJerome Brunet bias-pull-up; 392b43033b1SJerome Brunet }; 393b43033b1SJerome Brunet 394b43033b1SJerome Brunet mux-1 { 395b43033b1SJerome Brunet groups = "emmc_clk"; 396ab36be66SNeil Armstrong function = "emmc"; 39796a13691SJerome Brunet bias-disable; 398ab36be66SNeil Armstrong }; 399ab36be66SNeil Armstrong }; 400ab36be66SNeil Armstrong 401ab36be66SNeil Armstrong emmc_ds_pins: emmc-ds { 402ab36be66SNeil Armstrong mux { 403ab36be66SNeil Armstrong groups = "emmc_ds"; 404fb0fe922SNeil Armstrong function = "emmc"; 405b43033b1SJerome Brunet bias-pull-down; 406fb0fe922SNeil Armstrong }; 407fb0fe922SNeil Armstrong }; 408fb0fe922SNeil Armstrong 40967e7607fSJerome Brunet emmc_clk_gate_pins: emmc_clk_gate { 41067e7607fSJerome Brunet mux { 41167e7607fSJerome Brunet groups = "BOOT_8"; 41267e7607fSJerome Brunet function = "gpio_periphs"; 41367e7607fSJerome Brunet bias-pull-down; 41467e7607fSJerome Brunet }; 41567e7607fSJerome Brunet }; 41667e7607fSJerome Brunet 417ca02e3f9SNeil Armstrong nor_pins: nor { 418ca02e3f9SNeil Armstrong mux { 419ca02e3f9SNeil Armstrong groups = "nor_d", 420ca02e3f9SNeil Armstrong "nor_q", 421ca02e3f9SNeil Armstrong "nor_c", 422ca02e3f9SNeil Armstrong "nor_cs"; 423ca02e3f9SNeil Armstrong function = "nor"; 4241c5cc1c8SJerome Brunet bias-disable; 425ca02e3f9SNeil Armstrong }; 426ca02e3f9SNeil Armstrong }; 427ca02e3f9SNeil Armstrong 42868ecb5c1SRob Herring spi_pins: spi-pins { 42985b2e743SNeil Armstrong mux { 43085b2e743SNeil Armstrong groups = "spi_miso", 43185b2e743SNeil Armstrong "spi_mosi", 43285b2e743SNeil Armstrong "spi_sclk"; 43385b2e743SNeil Armstrong function = "spi"; 4341c5cc1c8SJerome Brunet bias-disable; 43585b2e743SNeil Armstrong }; 43685b2e743SNeil Armstrong }; 43785b2e743SNeil Armstrong 4382ba370bbSAmjad Ouled-Ameur spi_idle_high_pins: spi-idle-high-pins { 4392ba370bbSAmjad Ouled-Ameur mux { 4402ba370bbSAmjad Ouled-Ameur groups = "spi_sclk"; 4412ba370bbSAmjad Ouled-Ameur bias-pull-up; 4422ba370bbSAmjad Ouled-Ameur }; 4432ba370bbSAmjad Ouled-Ameur }; 4442ba370bbSAmjad Ouled-Ameur 4452ba370bbSAmjad Ouled-Ameur spi_idle_low_pins: spi-idle-low-pins { 4462ba370bbSAmjad Ouled-Ameur mux { 4472ba370bbSAmjad Ouled-Ameur groups = "spi_sclk"; 4482ba370bbSAmjad Ouled-Ameur bias-pull-down; 4492ba370bbSAmjad Ouled-Ameur }; 4502ba370bbSAmjad Ouled-Ameur }; 4512ba370bbSAmjad Ouled-Ameur 45285b2e743SNeil Armstrong spi_ss0_pins: spi-ss0 { 45385b2e743SNeil Armstrong mux { 45485b2e743SNeil Armstrong groups = "spi_ss0"; 45585b2e743SNeil Armstrong function = "spi"; 4561c5cc1c8SJerome Brunet bias-disable; 45785b2e743SNeil Armstrong }; 45885b2e743SNeil Armstrong }; 45985b2e743SNeil Armstrong 460fb0fe922SNeil Armstrong sdcard_pins: sdcard { 461b43033b1SJerome Brunet mux-0 { 462fb0fe922SNeil Armstrong groups = "sdcard_d0", 463fb0fe922SNeil Armstrong "sdcard_d1", 464fb0fe922SNeil Armstrong "sdcard_d2", 465fb0fe922SNeil Armstrong "sdcard_d3", 466b43033b1SJerome Brunet "sdcard_cmd"; 467b43033b1SJerome Brunet function = "sdcard"; 468b43033b1SJerome Brunet bias-pull-up; 469b43033b1SJerome Brunet }; 470b43033b1SJerome Brunet 471b43033b1SJerome Brunet mux-1 { 472b43033b1SJerome Brunet groups = "sdcard_clk"; 473fb0fe922SNeil Armstrong function = "sdcard"; 47496a13691SJerome Brunet bias-disable; 475fb0fe922SNeil Armstrong }; 476fb0fe922SNeil Armstrong }; 477fb0fe922SNeil Armstrong 47867e7607fSJerome Brunet sdcard_clk_gate_pins: sdcard_clk_gate { 47967e7607fSJerome Brunet mux { 48067e7607fSJerome Brunet groups = "CARD_2"; 48167e7607fSJerome Brunet function = "gpio_periphs"; 48267e7607fSJerome Brunet bias-pull-down; 48367e7607fSJerome Brunet }; 48467e7607fSJerome Brunet }; 48567e7607fSJerome Brunet 486fb0fe922SNeil Armstrong sdio_pins: sdio { 487b43033b1SJerome Brunet mux-0 { 488fb0fe922SNeil Armstrong groups = "sdio_d0", 489fb0fe922SNeil Armstrong "sdio_d1", 490fb0fe922SNeil Armstrong "sdio_d2", 491fb0fe922SNeil Armstrong "sdio_d3", 492b43033b1SJerome Brunet "sdio_cmd"; 493b43033b1SJerome Brunet function = "sdio"; 494b43033b1SJerome Brunet bias-pull-up; 495b43033b1SJerome Brunet }; 496b43033b1SJerome Brunet 497b43033b1SJerome Brunet mux-1 { 498b43033b1SJerome Brunet groups = "sdio_clk"; 499fb0fe922SNeil Armstrong function = "sdio"; 50096a13691SJerome Brunet bias-disable; 501fb0fe922SNeil Armstrong }; 502fb0fe922SNeil Armstrong }; 503fb0fe922SNeil Armstrong 50467e7607fSJerome Brunet sdio_clk_gate_pins: sdio_clk_gate { 50567e7607fSJerome Brunet mux { 50667e7607fSJerome Brunet groups = "GPIOX_4"; 50767e7607fSJerome Brunet function = "gpio_periphs"; 50867e7607fSJerome Brunet bias-pull-down; 50967e7607fSJerome Brunet }; 51067e7607fSJerome Brunet }; 51167e7607fSJerome Brunet 512fb0fe922SNeil Armstrong sdio_irq_pins: sdio_irq { 513fb0fe922SNeil Armstrong mux { 514fb0fe922SNeil Armstrong groups = "sdio_irq"; 515fb0fe922SNeil Armstrong function = "sdio"; 5161c5cc1c8SJerome Brunet bias-disable; 517fb0fe922SNeil Armstrong }; 518fb0fe922SNeil Armstrong }; 519fb0fe922SNeil Armstrong 520fb0fe922SNeil Armstrong uart_a_pins: uart_a { 521fb0fe922SNeil Armstrong mux { 522fb0fe922SNeil Armstrong groups = "uart_tx_a", 523fb0fe922SNeil Armstrong "uart_rx_a"; 524fb0fe922SNeil Armstrong function = "uart_a"; 5251c5cc1c8SJerome Brunet bias-disable; 526fb0fe922SNeil Armstrong }; 527fb0fe922SNeil Armstrong }; 528fb0fe922SNeil Armstrong 529261e1d5cSMartin Blumenstingl uart_a_cts_rts_pins: uart_a_cts_rts { 530261e1d5cSMartin Blumenstingl mux { 531261e1d5cSMartin Blumenstingl groups = "uart_cts_a", 532261e1d5cSMartin Blumenstingl "uart_rts_a"; 533261e1d5cSMartin Blumenstingl function = "uart_a"; 5341c5cc1c8SJerome Brunet bias-disable; 535261e1d5cSMartin Blumenstingl }; 536261e1d5cSMartin Blumenstingl }; 537261e1d5cSMartin Blumenstingl 538fb0fe922SNeil Armstrong uart_b_pins: uart_b { 539fb0fe922SNeil Armstrong mux { 540fb0fe922SNeil Armstrong groups = "uart_tx_b", 541fb0fe922SNeil Armstrong "uart_rx_b"; 542fb0fe922SNeil Armstrong function = "uart_b"; 5431c5cc1c8SJerome Brunet bias-disable; 544fb0fe922SNeil Armstrong }; 545fb0fe922SNeil Armstrong }; 546fb0fe922SNeil Armstrong 547261e1d5cSMartin Blumenstingl uart_b_cts_rts_pins: uart_b_cts_rts { 548261e1d5cSMartin Blumenstingl mux { 549261e1d5cSMartin Blumenstingl groups = "uart_cts_b", 550261e1d5cSMartin Blumenstingl "uart_rts_b"; 551261e1d5cSMartin Blumenstingl function = "uart_b"; 5521c5cc1c8SJerome Brunet bias-disable; 553261e1d5cSMartin Blumenstingl }; 554261e1d5cSMartin Blumenstingl }; 555261e1d5cSMartin Blumenstingl 556fb0fe922SNeil Armstrong uart_c_pins: uart_c { 557fb0fe922SNeil Armstrong mux { 558fb0fe922SNeil Armstrong groups = "uart_tx_c", 559fb0fe922SNeil Armstrong "uart_rx_c"; 560fb0fe922SNeil Armstrong function = "uart_c"; 5611c5cc1c8SJerome Brunet bias-disable; 562fb0fe922SNeil Armstrong }; 563fb0fe922SNeil Armstrong }; 564fb0fe922SNeil Armstrong 565261e1d5cSMartin Blumenstingl uart_c_cts_rts_pins: uart_c_cts_rts { 566261e1d5cSMartin Blumenstingl mux { 567261e1d5cSMartin Blumenstingl groups = "uart_cts_c", 568261e1d5cSMartin Blumenstingl "uart_rts_c"; 569261e1d5cSMartin Blumenstingl function = "uart_c"; 5701c5cc1c8SJerome Brunet bias-disable; 571261e1d5cSMartin Blumenstingl }; 572261e1d5cSMartin Blumenstingl }; 573261e1d5cSMartin Blumenstingl 574fb0fe922SNeil Armstrong i2c_a_pins: i2c_a { 575fb0fe922SNeil Armstrong mux { 576fb0fe922SNeil Armstrong groups = "i2c_sck_a", 577fb0fe922SNeil Armstrong "i2c_sda_a"; 578fb0fe922SNeil Armstrong function = "i2c_a"; 5791c5cc1c8SJerome Brunet bias-disable; 580fb0fe922SNeil Armstrong }; 581fb0fe922SNeil Armstrong }; 582fb0fe922SNeil Armstrong 583fb0fe922SNeil Armstrong i2c_b_pins: i2c_b { 584fb0fe922SNeil Armstrong mux { 585fb0fe922SNeil Armstrong groups = "i2c_sck_b", 586fb0fe922SNeil Armstrong "i2c_sda_b"; 587fb0fe922SNeil Armstrong function = "i2c_b"; 5881c5cc1c8SJerome Brunet bias-disable; 589fb0fe922SNeil Armstrong }; 590fb0fe922SNeil Armstrong }; 591fb0fe922SNeil Armstrong 592fb0fe922SNeil Armstrong i2c_c_pins: i2c_c { 593fb0fe922SNeil Armstrong mux { 594fb0fe922SNeil Armstrong groups = "i2c_sck_c", 595fb0fe922SNeil Armstrong "i2c_sda_c"; 596fb0fe922SNeil Armstrong function = "i2c_c"; 5971c5cc1c8SJerome Brunet bias-disable; 598fb0fe922SNeil Armstrong }; 599fb0fe922SNeil Armstrong }; 600fb0fe922SNeil Armstrong 6014e116975SJerome Brunet i2c_c_dv18_pins: i2c_c_dv18 { 6024e116975SJerome Brunet mux { 6034e116975SJerome Brunet groups = "i2c_sck_c_dv19", 6044e116975SJerome Brunet "i2c_sda_c_dv18"; 6054e116975SJerome Brunet function = "i2c_c"; 6064e116975SJerome Brunet bias-disable; 6074e116975SJerome Brunet }; 6084e116975SJerome Brunet }; 6094e116975SJerome Brunet 610fb0fe922SNeil Armstrong eth_pins: eth_c { 611fb0fe922SNeil Armstrong mux { 612fb0fe922SNeil Armstrong groups = "eth_mdio", 613fb0fe922SNeil Armstrong "eth_mdc", 614fb0fe922SNeil Armstrong "eth_clk_rx_clk", 615fb0fe922SNeil Armstrong "eth_rx_dv", 616fb0fe922SNeil Armstrong "eth_rxd0", 617fb0fe922SNeil Armstrong "eth_rxd1", 618fb0fe922SNeil Armstrong "eth_rxd2", 619fb0fe922SNeil Armstrong "eth_rxd3", 620fb0fe922SNeil Armstrong "eth_rgmii_tx_clk", 621fb0fe922SNeil Armstrong "eth_tx_en", 622fb0fe922SNeil Armstrong "eth_txd0", 623fb0fe922SNeil Armstrong "eth_txd1", 624fb0fe922SNeil Armstrong "eth_txd2", 625fb0fe922SNeil Armstrong "eth_txd3"; 626fb0fe922SNeil Armstrong function = "eth"; 6271c5cc1c8SJerome Brunet bias-disable; 628fb0fe922SNeil Armstrong }; 629fb0fe922SNeil Armstrong }; 630fb0fe922SNeil Armstrong 63144ddadc3SNeil Armstrong eth_link_led_pins: eth_link_led { 63244ddadc3SNeil Armstrong mux { 63344ddadc3SNeil Armstrong groups = "eth_link_led"; 63444ddadc3SNeil Armstrong function = "eth_led"; 6351c5cc1c8SJerome Brunet bias-disable; 63644ddadc3SNeil Armstrong }; 63744ddadc3SNeil Armstrong }; 63844ddadc3SNeil Armstrong 63944ddadc3SNeil Armstrong eth_act_led_pins: eth_act_led { 64044ddadc3SNeil Armstrong mux { 64144ddadc3SNeil Armstrong groups = "eth_act_led"; 64244ddadc3SNeil Armstrong function = "eth_led"; 64344ddadc3SNeil Armstrong }; 64444ddadc3SNeil Armstrong }; 64544ddadc3SNeil Armstrong 646e98fd134SMartin Blumenstingl pwm_a_pins: pwm_a { 647e98fd134SMartin Blumenstingl mux { 648e98fd134SMartin Blumenstingl groups = "pwm_a"; 649e98fd134SMartin Blumenstingl function = "pwm_a"; 6501c5cc1c8SJerome Brunet bias-disable; 651e98fd134SMartin Blumenstingl }; 652e98fd134SMartin Blumenstingl }; 653e98fd134SMartin Blumenstingl 654e98fd134SMartin Blumenstingl pwm_b_pins: pwm_b { 655e98fd134SMartin Blumenstingl mux { 656e98fd134SMartin Blumenstingl groups = "pwm_b"; 657e98fd134SMartin Blumenstingl function = "pwm_b"; 6581c5cc1c8SJerome Brunet bias-disable; 659e98fd134SMartin Blumenstingl }; 660e98fd134SMartin Blumenstingl }; 661e98fd134SMartin Blumenstingl 662e98fd134SMartin Blumenstingl pwm_c_pins: pwm_c { 663e98fd134SMartin Blumenstingl mux { 664e98fd134SMartin Blumenstingl groups = "pwm_c"; 665e98fd134SMartin Blumenstingl function = "pwm_c"; 6661c5cc1c8SJerome Brunet bias-disable; 667e98fd134SMartin Blumenstingl }; 668e98fd134SMartin Blumenstingl }; 669e98fd134SMartin Blumenstingl 670e98fd134SMartin Blumenstingl pwm_d_pins: pwm_d { 671e98fd134SMartin Blumenstingl mux { 672e98fd134SMartin Blumenstingl groups = "pwm_d"; 673e98fd134SMartin Blumenstingl function = "pwm_d"; 6741c5cc1c8SJerome Brunet bias-disable; 675e98fd134SMartin Blumenstingl }; 676e98fd134SMartin Blumenstingl }; 677e98fd134SMartin Blumenstingl 678fb0fe922SNeil Armstrong pwm_e_pins: pwm_e { 679fb0fe922SNeil Armstrong mux { 680fb0fe922SNeil Armstrong groups = "pwm_e"; 681fb0fe922SNeil Armstrong function = "pwm_e"; 6821c5cc1c8SJerome Brunet bias-disable; 683fb0fe922SNeil Armstrong }; 684fb0fe922SNeil Armstrong }; 685b949165cSNeil Armstrong 686e98fd134SMartin Blumenstingl pwm_f_clk_pins: pwm_f_clk { 687e98fd134SMartin Blumenstingl mux { 688e98fd134SMartin Blumenstingl groups = "pwm_f_clk"; 689e98fd134SMartin Blumenstingl function = "pwm_f"; 6901c5cc1c8SJerome Brunet bias-disable; 691e98fd134SMartin Blumenstingl }; 692e98fd134SMartin Blumenstingl }; 693e98fd134SMartin Blumenstingl 694e98fd134SMartin Blumenstingl pwm_f_x_pins: pwm_f_x { 695e98fd134SMartin Blumenstingl mux { 696e98fd134SMartin Blumenstingl groups = "pwm_f_x"; 697e98fd134SMartin Blumenstingl function = "pwm_f"; 6981c5cc1c8SJerome Brunet bias-disable; 699e98fd134SMartin Blumenstingl }; 700e98fd134SMartin Blumenstingl }; 701e98fd134SMartin Blumenstingl 702b949165cSNeil Armstrong hdmi_hpd_pins: hdmi_hpd { 703b949165cSNeil Armstrong mux { 704b949165cSNeil Armstrong groups = "hdmi_hpd"; 705b949165cSNeil Armstrong function = "hdmi_hpd"; 7061c5cc1c8SJerome Brunet bias-disable; 707b949165cSNeil Armstrong }; 708b949165cSNeil Armstrong }; 709b949165cSNeil Armstrong 710b949165cSNeil Armstrong hdmi_i2c_pins: hdmi_i2c { 711b949165cSNeil Armstrong mux { 712b949165cSNeil Armstrong groups = "hdmi_sda", "hdmi_scl"; 713b949165cSNeil Armstrong function = "hdmi_i2c"; 7141c5cc1c8SJerome Brunet bias-disable; 715b949165cSNeil Armstrong }; 716b949165cSNeil Armstrong }; 717c16fe9a1Sjbrunet 718c16fe9a1Sjbrunet i2s_am_clk_pins: i2s_am_clk { 719c16fe9a1Sjbrunet mux { 720c16fe9a1Sjbrunet groups = "i2s_am_clk"; 721c16fe9a1Sjbrunet function = "i2s_out"; 7221c5cc1c8SJerome Brunet bias-disable; 723c16fe9a1Sjbrunet }; 724c16fe9a1Sjbrunet }; 725c16fe9a1Sjbrunet 726c16fe9a1Sjbrunet i2s_out_ao_clk_pins: i2s_out_ao_clk { 727c16fe9a1Sjbrunet mux { 728c16fe9a1Sjbrunet groups = "i2s_out_ao_clk"; 729c16fe9a1Sjbrunet function = "i2s_out"; 7301c5cc1c8SJerome Brunet bias-disable; 731c16fe9a1Sjbrunet }; 732c16fe9a1Sjbrunet }; 733c16fe9a1Sjbrunet 734c16fe9a1Sjbrunet i2s_out_lr_clk_pins: i2s_out_lr_clk { 735c16fe9a1Sjbrunet mux { 736c16fe9a1Sjbrunet groups = "i2s_out_lr_clk"; 737c16fe9a1Sjbrunet function = "i2s_out"; 7381c5cc1c8SJerome Brunet bias-disable; 739c16fe9a1Sjbrunet }; 740c16fe9a1Sjbrunet }; 741c16fe9a1Sjbrunet 742c16fe9a1Sjbrunet i2s_out_ch01_pins: i2s_out_ch01 { 743c16fe9a1Sjbrunet mux { 744c16fe9a1Sjbrunet groups = "i2s_out_ch01"; 745c16fe9a1Sjbrunet function = "i2s_out"; 7461c5cc1c8SJerome Brunet bias-disable; 747c16fe9a1Sjbrunet }; 748c16fe9a1Sjbrunet }; 749c16fe9a1Sjbrunet i2sout_ch23_z_pins: i2sout_ch23_z { 750c16fe9a1Sjbrunet mux { 751c16fe9a1Sjbrunet groups = "i2sout_ch23_z"; 752c16fe9a1Sjbrunet function = "i2s_out"; 7531c5cc1c8SJerome Brunet bias-disable; 754c16fe9a1Sjbrunet }; 755c16fe9a1Sjbrunet }; 756c16fe9a1Sjbrunet 757c16fe9a1Sjbrunet i2sout_ch45_z_pins: i2sout_ch45_z { 758c16fe9a1Sjbrunet mux { 759c16fe9a1Sjbrunet groups = "i2sout_ch45_z"; 760c16fe9a1Sjbrunet function = "i2s_out"; 7611c5cc1c8SJerome Brunet bias-disable; 762c16fe9a1Sjbrunet }; 763c16fe9a1Sjbrunet }; 764c16fe9a1Sjbrunet 765c16fe9a1Sjbrunet i2sout_ch67_z_pins: i2sout_ch67_z { 766c16fe9a1Sjbrunet mux { 767c16fe9a1Sjbrunet groups = "i2sout_ch67_z"; 768c16fe9a1Sjbrunet function = "i2s_out"; 7691c5cc1c8SJerome Brunet bias-disable; 770c16fe9a1Sjbrunet }; 771c16fe9a1Sjbrunet }; 7729503062dSjbrunet 7739503062dSjbrunet spdif_out_h_pins: spdif_out_ao_h { 7749503062dSjbrunet mux { 7759503062dSjbrunet groups = "spdif_out_h"; 7769503062dSjbrunet function = "spdif_out"; 7771c5cc1c8SJerome Brunet bias-disable; 7789503062dSjbrunet }; 7799503062dSjbrunet }; 780fb0fe922SNeil Armstrong }; 781e9e27c64SNeil Armstrong 782c2e9012bSJerome Brunet eth_phy_mux: mdio@558 { 783c2e9012bSJerome Brunet reg = <0x0 0x558 0x0 0xc>; 784c2e9012bSJerome Brunet compatible = "amlogic,gxl-mdio-mux"; 785e9e27c64SNeil Armstrong #address-cells = <1>; 786e9e27c64SNeil Armstrong #size-cells = <0>; 787c2e9012bSJerome Brunet clocks = <&clkc CLKID_FCLK_DIV4>; 788c2e9012bSJerome Brunet clock-names = "ref"; 789e9e27c64SNeil Armstrong mdio-parent-bus = <&mdio0>; 790e9e27c64SNeil Armstrong 791c2e9012bSJerome Brunet external_mdio: mdio@0 { 792c2e9012bSJerome Brunet reg = <0x0>; 793c2e9012bSJerome Brunet #address-cells = <1>; 794c2e9012bSJerome Brunet #size-cells = <0>; 795c2e9012bSJerome Brunet }; 796c2e9012bSJerome Brunet 797c2e9012bSJerome Brunet internal_mdio: mdio@1 { 798c2e9012bSJerome Brunet reg = <0x1>; 799e9e27c64SNeil Armstrong #address-cells = <1>; 800e9e27c64SNeil Armstrong #size-cells = <0>; 801e9e27c64SNeil Armstrong 802e9e27c64SNeil Armstrong internal_phy: ethernet-phy@8 { 80349ee7f85SNeil Armstrong compatible = "ethernet-phy-id0181.4400"; 8042363ec93SJerome Brunet interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>; 805e9e27c64SNeil Armstrong reg = <8>; 806e9e27c64SNeil Armstrong max-speed = <100>; 807e9e27c64SNeil Armstrong }; 808e9e27c64SNeil Armstrong }; 809e9e27c64SNeil Armstrong }; 810fb0fe922SNeil Armstrong}; 811973fbd55SNeil Armstrong 8125273d6caSMartin Blumenstingl&pwrc { 81374d1c6e9SNeil Armstrong resets = <&reset RESET_VIU>, 81474d1c6e9SNeil Armstrong <&reset RESET_VENC>, 81574d1c6e9SNeil Armstrong <&reset RESET_VCBUS>, 81674d1c6e9SNeil Armstrong <&reset RESET_BT656>, 81774d1c6e9SNeil Armstrong <&reset RESET_DVIN_RESET>, 81874d1c6e9SNeil Armstrong <&reset RESET_RDMA>, 81974d1c6e9SNeil Armstrong <&reset RESET_VENCI>, 82074d1c6e9SNeil Armstrong <&reset RESET_VENCP>, 82174d1c6e9SNeil Armstrong <&reset RESET_VDAC>, 82274d1c6e9SNeil Armstrong <&reset RESET_VDI6>, 82374d1c6e9SNeil Armstrong <&reset RESET_VENCL>, 82474d1c6e9SNeil Armstrong <&reset RESET_VID_LOCK>; 8255273d6caSMartin Blumenstingl reset-names = "viu", "venc", "vcbus", "bt656", 8265273d6caSMartin Blumenstingl "dvin", "rdma", "venci", "vencp", 8275273d6caSMartin Blumenstingl "vdac", "vdi6", "vencl", "vid_lock"; 82874d1c6e9SNeil Armstrong clocks = <&clkc CLKID_VPU>, 82974d1c6e9SNeil Armstrong <&clkc CLKID_VAPB>; 83074d1c6e9SNeil Armstrong clock-names = "vpu", "vapb"; 83174d1c6e9SNeil Armstrong /* 83274d1c6e9SNeil Armstrong * VPU clocking is provided by two identical clock paths 83374d1c6e9SNeil Armstrong * VPU_0 and VPU_1 muxed to a single clock by a glitch 83474d1c6e9SNeil Armstrong * free mux to safely change frequency while running. 83574d1c6e9SNeil Armstrong * Same for VAPB but with a final gate after the glitch free mux. 83674d1c6e9SNeil Armstrong */ 83774d1c6e9SNeil Armstrong assigned-clocks = <&clkc CLKID_VPU_0_SEL>, 83874d1c6e9SNeil Armstrong <&clkc CLKID_VPU_0>, 83974d1c6e9SNeil Armstrong <&clkc CLKID_VPU>, /* Glitch free mux */ 84074d1c6e9SNeil Armstrong <&clkc CLKID_VAPB_0_SEL>, 84174d1c6e9SNeil Armstrong <&clkc CLKID_VAPB_0>, 84274d1c6e9SNeil Armstrong <&clkc CLKID_VAPB_SEL>; /* Glitch free mux */ 84374d1c6e9SNeil Armstrong assigned-clock-parents = <&clkc CLKID_FCLK_DIV3>, 84474d1c6e9SNeil Armstrong <0>, /* Do Nothing */ 84574d1c6e9SNeil Armstrong <&clkc CLKID_VPU_0>, 84674d1c6e9SNeil Armstrong <&clkc CLKID_FCLK_DIV4>, 84774d1c6e9SNeil Armstrong <0>, /* Do Nothing */ 84874d1c6e9SNeil Armstrong <&clkc CLKID_VAPB_0>; 84974d1c6e9SNeil Armstrong assigned-clock-rates = <0>, /* Do Nothing */ 85074d1c6e9SNeil Armstrong <666666666>, 85174d1c6e9SNeil Armstrong <0>, /* Do Nothing */ 85274d1c6e9SNeil Armstrong <0>, /* Do Nothing */ 85374d1c6e9SNeil Armstrong <250000000>, 85474d1c6e9SNeil Armstrong <0>; /* Do Nothing */ 85574d1c6e9SNeil Armstrong}; 85674d1c6e9SNeil Armstrong 857bd80ef5eSMartin Blumenstingl&saradc { 858bd80ef5eSMartin Blumenstingl compatible = "amlogic,meson-gxl-saradc", "amlogic,meson-saradc"; 859bd80ef5eSMartin Blumenstingl clocks = <&xtal>, 860bd80ef5eSMartin Blumenstingl <&clkc CLKID_SAR_ADC>, 861bd80ef5eSMartin Blumenstingl <&clkc CLKID_SAR_ADC_CLK>, 862bd80ef5eSMartin Blumenstingl <&clkc CLKID_SAR_ADC_SEL>; 863e102da49SXingyu Chen clock-names = "clkin", "core", "adc_clk", "adc_sel"; 864bd80ef5eSMartin Blumenstingl}; 865bd80ef5eSMartin Blumenstingl 8666d489dc8SNeil Armstrong&sd_emmc_a { 8676d489dc8SNeil Armstrong clocks = <&clkc CLKID_SD_EMMC_A>, 86850662499SJerome Brunet <&clkc CLKID_SD_EMMC_A_CLK0>, 8696d489dc8SNeil Armstrong <&clkc CLKID_FCLK_DIV2>; 8706d489dc8SNeil Armstrong clock-names = "core", "clkin0", "clkin1"; 871098e5303SJerome Brunet resets = <&reset RESET_SD_EMMC_A>; 8726d489dc8SNeil Armstrong}; 8736d489dc8SNeil Armstrong 8746d489dc8SNeil Armstrong&sd_emmc_b { 8756d489dc8SNeil Armstrong clocks = <&clkc CLKID_SD_EMMC_B>, 87650662499SJerome Brunet <&clkc CLKID_SD_EMMC_B_CLK0>, 8776d489dc8SNeil Armstrong <&clkc CLKID_FCLK_DIV2>; 8786d489dc8SNeil Armstrong clock-names = "core", "clkin0", "clkin1"; 879098e5303SJerome Brunet resets = <&reset RESET_SD_EMMC_B>; 8806d489dc8SNeil Armstrong}; 8816d489dc8SNeil Armstrong 8826d489dc8SNeil Armstrong&sd_emmc_c { 8836d489dc8SNeil Armstrong clocks = <&clkc CLKID_SD_EMMC_C>, 88450662499SJerome Brunet <&clkc CLKID_SD_EMMC_C_CLK0>, 8856d489dc8SNeil Armstrong <&clkc CLKID_FCLK_DIV2>; 8866d489dc8SNeil Armstrong clock-names = "core", "clkin0", "clkin1"; 887098e5303SJerome Brunet resets = <&reset RESET_SD_EMMC_C>; 8886d489dc8SNeil Armstrong}; 889fafdbdf7SNeil Armstrong 89003b37035SMaxime Jourdan&simplefb_hdmi { 89103b37035SMaxime Jourdan clocks = <&clkc CLKID_HDMI_PCLK>, 89203b37035SMaxime Jourdan <&clkc CLKID_CLK81>, 89303b37035SMaxime Jourdan <&clkc CLKID_GCLK_VENCI_INT0>; 89403b37035SMaxime Jourdan}; 89503b37035SMaxime Jourdan 896fa808631SNeil Armstrong&spicc { 897fa808631SNeil Armstrong clocks = <&clkc CLKID_SPICC>; 898fa808631SNeil Armstrong clock-names = "core"; 899fa808631SNeil Armstrong resets = <&reset RESET_PERIPHS_SPICC>; 900fa808631SNeil Armstrong num-cs = <1>; 901fa808631SNeil Armstrong}; 902fa808631SNeil Armstrong 90304b36df4SNeil Armstrong&spifc { 90404b36df4SNeil Armstrong clocks = <&clkc CLKID_SPI>; 90504b36df4SNeil Armstrong}; 90604b36df4SNeil Armstrong 907f72d6f60SHelmut Klein&uart_A { 908f72d6f60SHelmut Klein clocks = <&xtal>, <&clkc CLKID_UART0>, <&xtal>; 90939005e56SNeil Armstrong clock-names = "xtal", "pclk", "baud"; 910f72d6f60SHelmut Klein}; 911f72d6f60SHelmut Klein 912f72d6f60SHelmut Klein&uart_AO { 9139adda353SYixun Lan clocks = <&xtal>, <&clkc_AO CLKID_AO_UART1>, <&xtal>; 914f72d6f60SHelmut Klein clock-names = "xtal", "pclk", "baud"; 915f72d6f60SHelmut Klein}; 916f72d6f60SHelmut Klein 917f72d6f60SHelmut Klein&uart_AO_B { 9189adda353SYixun Lan clocks = <&xtal>, <&clkc_AO CLKID_AO_UART2>, <&xtal>; 919f72d6f60SHelmut Klein clock-names = "xtal", "pclk", "baud"; 920f72d6f60SHelmut Klein}; 921f72d6f60SHelmut Klein 922f72d6f60SHelmut Klein&uart_B { 923f72d6f60SHelmut Klein clocks = <&xtal>, <&clkc CLKID_UART1>, <&xtal>; 92439005e56SNeil Armstrong clock-names = "xtal", "pclk", "baud"; 925f72d6f60SHelmut Klein}; 926f72d6f60SHelmut Klein 927f72d6f60SHelmut Klein&uart_C { 928f72d6f60SHelmut Klein clocks = <&xtal>, <&clkc CLKID_UART2>, <&xtal>; 92939005e56SNeil Armstrong clock-names = "xtal", "pclk", "baud"; 930f72d6f60SHelmut Klein}; 931f72d6f60SHelmut Klein 932fafdbdf7SNeil Armstrong&vpu { 933fafdbdf7SNeil Armstrong compatible = "amlogic,meson-gxl-vpu", "amlogic,meson-gx-vpu"; 9345273d6caSMartin Blumenstingl power-domains = <&pwrc PWRC_GXBB_VPU_ID>; 935fafdbdf7SNeil Armstrong}; 9364be247f7SMaxime Jourdan 9374be247f7SMaxime Jourdan&vdec { 9384be247f7SMaxime Jourdan compatible = "amlogic,gxl-vdec", "amlogic,gx-vdec"; 9394be247f7SMaxime Jourdan clocks = <&clkc CLKID_DOS_PARSER>, 9404be247f7SMaxime Jourdan <&clkc CLKID_DOS>, 9414be247f7SMaxime Jourdan <&clkc CLKID_VDEC_1>, 9424be247f7SMaxime Jourdan <&clkc CLKID_VDEC_HEVC>; 9434be247f7SMaxime Jourdan clock-names = "dos_parser", "dos", "vdec_1", "vdec_hevc"; 9444be247f7SMaxime Jourdan resets = <&reset RESET_PARSER>; 9454be247f7SMaxime Jourdan reset-names = "esparser"; 9464be247f7SMaxime Jourdan}; 947