115abee8aSCarlo Caione/* 215abee8aSCarlo Caione * Copyright (c) 2016 Endless Computers, Inc. 315abee8aSCarlo Caione * Author: Carlo Caione <carlo@endlessm.com> 415abee8aSCarlo Caione * 515abee8aSCarlo Caione * This file is dual-licensed: you can use it either under the terms 615abee8aSCarlo Caione * of the GPL or the X11 license, at your option. Note that this dual 715abee8aSCarlo Caione * licensing only applies to this file, and not this project as a 815abee8aSCarlo Caione * whole. 915abee8aSCarlo Caione * 1015abee8aSCarlo Caione * a) This library is free software; you can redistribute it and/or 1115abee8aSCarlo Caione * modify it under the terms of the GNU General Public License as 1215abee8aSCarlo Caione * published by the Free Software Foundation; either version 2 of the 1315abee8aSCarlo Caione * License, or (at your option) any later version. 1415abee8aSCarlo Caione * 1515abee8aSCarlo Caione * This library is distributed in the hope that it will be useful, 1615abee8aSCarlo Caione * but WITHOUT ANY WARRANTY; without even the implied warranty of 1715abee8aSCarlo Caione * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 1815abee8aSCarlo Caione * GNU General Public License for more details. 1915abee8aSCarlo Caione * 2015abee8aSCarlo Caione * Or, alternatively, 2115abee8aSCarlo Caione * 2215abee8aSCarlo Caione * b) Permission is hereby granted, free of charge, to any person 2315abee8aSCarlo Caione * obtaining a copy of this software and associated documentation 2415abee8aSCarlo Caione * files (the "Software"), to deal in the Software without 2515abee8aSCarlo Caione * restriction, including without limitation the rights to use, 2615abee8aSCarlo Caione * copy, modify, merge, publish, distribute, sublicense, and/or 2715abee8aSCarlo Caione * sell copies of the Software, and to permit persons to whom the 2815abee8aSCarlo Caione * Software is furnished to do so, subject to the following 2915abee8aSCarlo Caione * conditions: 3015abee8aSCarlo Caione * 3115abee8aSCarlo Caione * The above copyright notice and this permission notice shall be 3215abee8aSCarlo Caione * included in all copies or substantial portions of the Software. 3315abee8aSCarlo Caione * 3415abee8aSCarlo Caione * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 3515abee8aSCarlo Caione * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 3615abee8aSCarlo Caione * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 3715abee8aSCarlo Caione * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 3815abee8aSCarlo Caione * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 3915abee8aSCarlo Caione * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 4015abee8aSCarlo Caione * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 4115abee8aSCarlo Caione * OTHER DEALINGS IN THE SOFTWARE. 4215abee8aSCarlo Caione */ 4315abee8aSCarlo Caione 4415abee8aSCarlo Caione#include "meson-gx.dtsi" 45973fbd55SNeil Armstrong#include <dt-bindings/clock/gxbb-clkc.h> 461cf3df8aSKevin Hilman#include <dt-bindings/gpio/meson-gxl-gpio.h> 4715abee8aSCarlo Caione 4815abee8aSCarlo Caione/ { 4915abee8aSCarlo Caione compatible = "amlogic,meson-gxl"; 5015abee8aSCarlo Caione}; 51fb0fe922SNeil Armstrong 52e9e27c64SNeil Armstrongðmac { 53e9e27c64SNeil Armstrong reg = <0x0 0xc9410000 0x0 0x10000 54e9e27c64SNeil Armstrong 0x0 0xc8834540 0x0 0x4>; 55e9e27c64SNeil Armstrong 56e9e27c64SNeil Armstrong clocks = <&clkc CLKID_ETH>, 57e9e27c64SNeil Armstrong <&clkc CLKID_FCLK_DIV2>, 58e9e27c64SNeil Armstrong <&clkc CLKID_MPLL2>; 59e9e27c64SNeil Armstrong clock-names = "stmmaceth", "clkin0", "clkin1"; 60e9e27c64SNeil Armstrong 61e9e27c64SNeil Armstrong mdio0: mdio { 62e9e27c64SNeil Armstrong #address-cells = <1>; 63e9e27c64SNeil Armstrong #size-cells = <0>; 64e9e27c64SNeil Armstrong compatible = "snps,dwmac-mdio"; 65e9e27c64SNeil Armstrong }; 66e9e27c64SNeil Armstrong}; 67e9e27c64SNeil Armstrong 68fb0fe922SNeil Armstrong&aobus { 69fb0fe922SNeil Armstrong pinctrl_aobus: pinctrl@14 { 70fb0fe922SNeil Armstrong compatible = "amlogic,meson-gxl-aobus-pinctrl"; 71fb0fe922SNeil Armstrong #address-cells = <2>; 72fb0fe922SNeil Armstrong #size-cells = <2>; 73fb0fe922SNeil Armstrong ranges; 74fb0fe922SNeil Armstrong 75fb0fe922SNeil Armstrong gpio_ao: bank@14 { 76fb0fe922SNeil Armstrong reg = <0x0 0x00014 0x0 0x8>, 77fb0fe922SNeil Armstrong <0x0 0x0002c 0x0 0x4>, 78fb0fe922SNeil Armstrong <0x0 0x00024 0x0 0x8>; 79fb0fe922SNeil Armstrong reg-names = "mux", "pull", "gpio"; 80fb0fe922SNeil Armstrong gpio-controller; 81fb0fe922SNeil Armstrong #gpio-cells = <2>; 8284412e4eSNeil Armstrong gpio-ranges = <&pinctrl_aobus 0 0 14>; 83fb0fe922SNeil Armstrong }; 84fb0fe922SNeil Armstrong 85fb0fe922SNeil Armstrong uart_ao_a_pins: uart_ao_a { 86fb0fe922SNeil Armstrong mux { 87fb0fe922SNeil Armstrong groups = "uart_tx_ao_a", "uart_rx_ao_a"; 88fb0fe922SNeil Armstrong function = "uart_ao"; 89fb0fe922SNeil Armstrong }; 90fb0fe922SNeil Armstrong }; 91fb0fe922SNeil Armstrong 92261e1d5cSMartin Blumenstingl uart_ao_a_cts_rts_pins: uart_ao_a_cts_rts { 93261e1d5cSMartin Blumenstingl mux { 94261e1d5cSMartin Blumenstingl groups = "uart_cts_ao_a", 95261e1d5cSMartin Blumenstingl "uart_rts_ao_a"; 96261e1d5cSMartin Blumenstingl function = "uart_ao"; 97261e1d5cSMartin Blumenstingl }; 98261e1d5cSMartin Blumenstingl }; 99261e1d5cSMartin Blumenstingl 100890a96a2SMartin Blumenstingl uart_ao_b_pins: uart_ao_b { 101890a96a2SMartin Blumenstingl mux { 102890a96a2SMartin Blumenstingl groups = "uart_tx_ao_b", "uart_rx_ao_b"; 103890a96a2SMartin Blumenstingl function = "uart_ao_b"; 104890a96a2SMartin Blumenstingl }; 105890a96a2SMartin Blumenstingl }; 106890a96a2SMartin Blumenstingl 107ca02e3f9SNeil Armstrong uart_ao_b_0_1_pins: uart_ao_b_0_1 { 108ca02e3f9SNeil Armstrong mux { 109ca02e3f9SNeil Armstrong groups = "uart_tx_ao_b_0", "uart_rx_ao_b_1"; 110ca02e3f9SNeil Armstrong function = "uart_ao_b"; 111ca02e3f9SNeil Armstrong }; 112ca02e3f9SNeil Armstrong }; 113ca02e3f9SNeil Armstrong 114261e1d5cSMartin Blumenstingl uart_ao_b_cts_rts_pins: uart_ao_b_cts_rts { 115261e1d5cSMartin Blumenstingl mux { 116261e1d5cSMartin Blumenstingl groups = "uart_cts_ao_b", 117261e1d5cSMartin Blumenstingl "uart_rts_ao_b"; 118261e1d5cSMartin Blumenstingl function = "uart_ao_b"; 119261e1d5cSMartin Blumenstingl }; 120261e1d5cSMartin Blumenstingl }; 121261e1d5cSMartin Blumenstingl 122fb0fe922SNeil Armstrong remote_input_ao_pins: remote_input_ao { 123fb0fe922SNeil Armstrong mux { 124fb0fe922SNeil Armstrong groups = "remote_input_ao"; 125fb0fe922SNeil Armstrong function = "remote_input_ao"; 126fb0fe922SNeil Armstrong }; 127fb0fe922SNeil Armstrong }; 128249a2243SMartin Blumenstingl 129ca02e3f9SNeil Armstrong i2c_ao_pins: i2c_ao { 130ca02e3f9SNeil Armstrong mux { 131ca02e3f9SNeil Armstrong groups = "i2c_sck_ao", 132ca02e3f9SNeil Armstrong "i2c_sda_ao"; 133ca02e3f9SNeil Armstrong function = "i2c_ao"; 134ca02e3f9SNeil Armstrong }; 135ca02e3f9SNeil Armstrong }; 136ca02e3f9SNeil Armstrong 137e98fd134SMartin Blumenstingl pwm_ao_a_3_pins: pwm_ao_a_3 { 138e98fd134SMartin Blumenstingl mux { 139e98fd134SMartin Blumenstingl groups = "pwm_ao_a_3"; 140e98fd134SMartin Blumenstingl function = "pwm_ao_a"; 141e98fd134SMartin Blumenstingl }; 142e98fd134SMartin Blumenstingl }; 143e98fd134SMartin Blumenstingl 144e98fd134SMartin Blumenstingl pwm_ao_a_8_pins: pwm_ao_a_8 { 145e98fd134SMartin Blumenstingl mux { 146e98fd134SMartin Blumenstingl groups = "pwm_ao_a_8"; 147e98fd134SMartin Blumenstingl function = "pwm_ao_a"; 148e98fd134SMartin Blumenstingl }; 149e98fd134SMartin Blumenstingl }; 150e98fd134SMartin Blumenstingl 151249a2243SMartin Blumenstingl pwm_ao_b_pins: pwm_ao_b { 152249a2243SMartin Blumenstingl mux { 153249a2243SMartin Blumenstingl groups = "pwm_ao_b"; 154249a2243SMartin Blumenstingl function = "pwm_ao_b"; 155249a2243SMartin Blumenstingl }; 156249a2243SMartin Blumenstingl }; 157ca02e3f9SNeil Armstrong 158ca02e3f9SNeil Armstrong pwm_ao_b_6_pins: pwm_ao_b_6 { 159ca02e3f9SNeil Armstrong mux { 160ca02e3f9SNeil Armstrong groups = "pwm_ao_b_6"; 161ca02e3f9SNeil Armstrong function = "pwm_ao_b"; 162ca02e3f9SNeil Armstrong }; 163ca02e3f9SNeil Armstrong }; 164*c16fe9a1Sjbrunet 165*c16fe9a1Sjbrunet i2s_out_ch23_ao_pins: i2s_out_ch23_ao { 166*c16fe9a1Sjbrunet mux { 167*c16fe9a1Sjbrunet groups = "i2s_out_ch23_ao"; 168*c16fe9a1Sjbrunet function = "i2s_out_ao"; 169*c16fe9a1Sjbrunet }; 170*c16fe9a1Sjbrunet }; 171*c16fe9a1Sjbrunet 172*c16fe9a1Sjbrunet i2s_out_ch45_ao_pins: i2s_out_ch45_ao { 173*c16fe9a1Sjbrunet mux { 174*c16fe9a1Sjbrunet groups = "i2s_out_ch45_ao"; 175*c16fe9a1Sjbrunet function = "i2s_out_ao"; 176*c16fe9a1Sjbrunet }; 177*c16fe9a1Sjbrunet }; 178fb0fe922SNeil Armstrong }; 179fb0fe922SNeil Armstrong}; 180fb0fe922SNeil Armstrong 181fb0fe922SNeil Armstrong&periphs { 182fb0fe922SNeil Armstrong pinctrl_periphs: pinctrl@4b0 { 183fb0fe922SNeil Armstrong compatible = "amlogic,meson-gxl-periphs-pinctrl"; 184fb0fe922SNeil Armstrong #address-cells = <2>; 185fb0fe922SNeil Armstrong #size-cells = <2>; 186fb0fe922SNeil Armstrong ranges; 187fb0fe922SNeil Armstrong 188fb0fe922SNeil Armstrong gpio: bank@4b0 { 189fb0fe922SNeil Armstrong reg = <0x0 0x004b0 0x0 0x28>, 190fb0fe922SNeil Armstrong <0x0 0x004e8 0x0 0x14>, 191fb0fe922SNeil Armstrong <0x0 0x00120 0x0 0x14>, 192fb0fe922SNeil Armstrong <0x0 0x00430 0x0 0x40>; 193fb0fe922SNeil Armstrong reg-names = "mux", "pull", "pull-enable", "gpio"; 194fb0fe922SNeil Armstrong gpio-controller; 195fb0fe922SNeil Armstrong #gpio-cells = <2>; 19684412e4eSNeil Armstrong gpio-ranges = <&pinctrl_periphs 0 14 101>; 197fb0fe922SNeil Armstrong }; 198fb0fe922SNeil Armstrong 199fb0fe922SNeil Armstrong emmc_pins: emmc { 200fb0fe922SNeil Armstrong mux { 201fb0fe922SNeil Armstrong groups = "emmc_nand_d07", 202fb0fe922SNeil Armstrong "emmc_cmd", 203fb0fe922SNeil Armstrong "emmc_clk", 204fb0fe922SNeil Armstrong "emmc_ds"; 205fb0fe922SNeil Armstrong function = "emmc"; 206fb0fe922SNeil Armstrong }; 207fb0fe922SNeil Armstrong }; 208fb0fe922SNeil Armstrong 209ca02e3f9SNeil Armstrong nor_pins: nor { 210ca02e3f9SNeil Armstrong mux { 211ca02e3f9SNeil Armstrong groups = "nor_d", 212ca02e3f9SNeil Armstrong "nor_q", 213ca02e3f9SNeil Armstrong "nor_c", 214ca02e3f9SNeil Armstrong "nor_cs"; 215ca02e3f9SNeil Armstrong function = "nor"; 216ca02e3f9SNeil Armstrong }; 217ca02e3f9SNeil Armstrong }; 218ca02e3f9SNeil Armstrong 219fb0fe922SNeil Armstrong sdcard_pins: sdcard { 220fb0fe922SNeil Armstrong mux { 221fb0fe922SNeil Armstrong groups = "sdcard_d0", 222fb0fe922SNeil Armstrong "sdcard_d1", 223fb0fe922SNeil Armstrong "sdcard_d2", 224fb0fe922SNeil Armstrong "sdcard_d3", 225fb0fe922SNeil Armstrong "sdcard_cmd", 226fb0fe922SNeil Armstrong "sdcard_clk"; 227fb0fe922SNeil Armstrong function = "sdcard"; 228fb0fe922SNeil Armstrong }; 229fb0fe922SNeil Armstrong }; 230fb0fe922SNeil Armstrong 231fb0fe922SNeil Armstrong sdio_pins: sdio { 232fb0fe922SNeil Armstrong mux { 233fb0fe922SNeil Armstrong groups = "sdio_d0", 234fb0fe922SNeil Armstrong "sdio_d1", 235fb0fe922SNeil Armstrong "sdio_d2", 236fb0fe922SNeil Armstrong "sdio_d3", 237fb0fe922SNeil Armstrong "sdio_cmd", 238fb0fe922SNeil Armstrong "sdio_clk"; 239fb0fe922SNeil Armstrong function = "sdio"; 240fb0fe922SNeil Armstrong }; 241fb0fe922SNeil Armstrong }; 242fb0fe922SNeil Armstrong 243fb0fe922SNeil Armstrong sdio_irq_pins: sdio_irq { 244fb0fe922SNeil Armstrong mux { 245fb0fe922SNeil Armstrong groups = "sdio_irq"; 246fb0fe922SNeil Armstrong function = "sdio"; 247fb0fe922SNeil Armstrong }; 248fb0fe922SNeil Armstrong }; 249fb0fe922SNeil Armstrong 250fb0fe922SNeil Armstrong uart_a_pins: uart_a { 251fb0fe922SNeil Armstrong mux { 252fb0fe922SNeil Armstrong groups = "uart_tx_a", 253fb0fe922SNeil Armstrong "uart_rx_a"; 254fb0fe922SNeil Armstrong function = "uart_a"; 255fb0fe922SNeil Armstrong }; 256fb0fe922SNeil Armstrong }; 257fb0fe922SNeil Armstrong 258261e1d5cSMartin Blumenstingl uart_a_cts_rts_pins: uart_a_cts_rts { 259261e1d5cSMartin Blumenstingl mux { 260261e1d5cSMartin Blumenstingl groups = "uart_cts_a", 261261e1d5cSMartin Blumenstingl "uart_rts_a"; 262261e1d5cSMartin Blumenstingl function = "uart_a"; 263261e1d5cSMartin Blumenstingl }; 264261e1d5cSMartin Blumenstingl }; 265261e1d5cSMartin Blumenstingl 266fb0fe922SNeil Armstrong uart_b_pins: uart_b { 267fb0fe922SNeil Armstrong mux { 268fb0fe922SNeil Armstrong groups = "uart_tx_b", 269fb0fe922SNeil Armstrong "uart_rx_b"; 270fb0fe922SNeil Armstrong function = "uart_b"; 271fb0fe922SNeil Armstrong }; 272fb0fe922SNeil Armstrong }; 273fb0fe922SNeil Armstrong 274261e1d5cSMartin Blumenstingl uart_b_cts_rts_pins: uart_b_cts_rts { 275261e1d5cSMartin Blumenstingl mux { 276261e1d5cSMartin Blumenstingl groups = "uart_cts_b", 277261e1d5cSMartin Blumenstingl "uart_rts_b"; 278261e1d5cSMartin Blumenstingl function = "uart_b"; 279261e1d5cSMartin Blumenstingl }; 280261e1d5cSMartin Blumenstingl }; 281261e1d5cSMartin Blumenstingl 282fb0fe922SNeil Armstrong uart_c_pins: uart_c { 283fb0fe922SNeil Armstrong mux { 284fb0fe922SNeil Armstrong groups = "uart_tx_c", 285fb0fe922SNeil Armstrong "uart_rx_c"; 286fb0fe922SNeil Armstrong function = "uart_c"; 287fb0fe922SNeil Armstrong }; 288fb0fe922SNeil Armstrong }; 289fb0fe922SNeil Armstrong 290261e1d5cSMartin Blumenstingl uart_c_cts_rts_pins: uart_c_cts_rts { 291261e1d5cSMartin Blumenstingl mux { 292261e1d5cSMartin Blumenstingl groups = "uart_cts_c", 293261e1d5cSMartin Blumenstingl "uart_rts_c"; 294261e1d5cSMartin Blumenstingl function = "uart_c"; 295261e1d5cSMartin Blumenstingl }; 296261e1d5cSMartin Blumenstingl }; 297261e1d5cSMartin Blumenstingl 298fb0fe922SNeil Armstrong i2c_a_pins: i2c_a { 299fb0fe922SNeil Armstrong mux { 300fb0fe922SNeil Armstrong groups = "i2c_sck_a", 301fb0fe922SNeil Armstrong "i2c_sda_a"; 302fb0fe922SNeil Armstrong function = "i2c_a"; 303fb0fe922SNeil Armstrong }; 304fb0fe922SNeil Armstrong }; 305fb0fe922SNeil Armstrong 306fb0fe922SNeil Armstrong i2c_b_pins: i2c_b { 307fb0fe922SNeil Armstrong mux { 308fb0fe922SNeil Armstrong groups = "i2c_sck_b", 309fb0fe922SNeil Armstrong "i2c_sda_b"; 310fb0fe922SNeil Armstrong function = "i2c_b"; 311fb0fe922SNeil Armstrong }; 312fb0fe922SNeil Armstrong }; 313fb0fe922SNeil Armstrong 314fb0fe922SNeil Armstrong i2c_c_pins: i2c_c { 315fb0fe922SNeil Armstrong mux { 316fb0fe922SNeil Armstrong groups = "i2c_sck_c", 317fb0fe922SNeil Armstrong "i2c_sda_c"; 318fb0fe922SNeil Armstrong function = "i2c_c"; 319fb0fe922SNeil Armstrong }; 320fb0fe922SNeil Armstrong }; 321fb0fe922SNeil Armstrong 322fb0fe922SNeil Armstrong eth_pins: eth_c { 323fb0fe922SNeil Armstrong mux { 324fb0fe922SNeil Armstrong groups = "eth_mdio", 325fb0fe922SNeil Armstrong "eth_mdc", 326fb0fe922SNeil Armstrong "eth_clk_rx_clk", 327fb0fe922SNeil Armstrong "eth_rx_dv", 328fb0fe922SNeil Armstrong "eth_rxd0", 329fb0fe922SNeil Armstrong "eth_rxd1", 330fb0fe922SNeil Armstrong "eth_rxd2", 331fb0fe922SNeil Armstrong "eth_rxd3", 332fb0fe922SNeil Armstrong "eth_rgmii_tx_clk", 333fb0fe922SNeil Armstrong "eth_tx_en", 334fb0fe922SNeil Armstrong "eth_txd0", 335fb0fe922SNeil Armstrong "eth_txd1", 336fb0fe922SNeil Armstrong "eth_txd2", 337fb0fe922SNeil Armstrong "eth_txd3"; 338fb0fe922SNeil Armstrong function = "eth"; 339fb0fe922SNeil Armstrong }; 340fb0fe922SNeil Armstrong }; 341fb0fe922SNeil Armstrong 342e98fd134SMartin Blumenstingl pwm_a_pins: pwm_a { 343e98fd134SMartin Blumenstingl mux { 344e98fd134SMartin Blumenstingl groups = "pwm_a"; 345e98fd134SMartin Blumenstingl function = "pwm_a"; 346e98fd134SMartin Blumenstingl }; 347e98fd134SMartin Blumenstingl }; 348e98fd134SMartin Blumenstingl 349e98fd134SMartin Blumenstingl pwm_b_pins: pwm_b { 350e98fd134SMartin Blumenstingl mux { 351e98fd134SMartin Blumenstingl groups = "pwm_b"; 352e98fd134SMartin Blumenstingl function = "pwm_b"; 353e98fd134SMartin Blumenstingl }; 354e98fd134SMartin Blumenstingl }; 355e98fd134SMartin Blumenstingl 356e98fd134SMartin Blumenstingl pwm_c_pins: pwm_c { 357e98fd134SMartin Blumenstingl mux { 358e98fd134SMartin Blumenstingl groups = "pwm_c"; 359e98fd134SMartin Blumenstingl function = "pwm_c"; 360e98fd134SMartin Blumenstingl }; 361e98fd134SMartin Blumenstingl }; 362e98fd134SMartin Blumenstingl 363e98fd134SMartin Blumenstingl pwm_d_pins: pwm_d { 364e98fd134SMartin Blumenstingl mux { 365e98fd134SMartin Blumenstingl groups = "pwm_d"; 366e98fd134SMartin Blumenstingl function = "pwm_d"; 367e98fd134SMartin Blumenstingl }; 368e98fd134SMartin Blumenstingl }; 369e98fd134SMartin Blumenstingl 370fb0fe922SNeil Armstrong pwm_e_pins: pwm_e { 371fb0fe922SNeil Armstrong mux { 372fb0fe922SNeil Armstrong groups = "pwm_e"; 373fb0fe922SNeil Armstrong function = "pwm_e"; 374fb0fe922SNeil Armstrong }; 375fb0fe922SNeil Armstrong }; 376b949165cSNeil Armstrong 377e98fd134SMartin Blumenstingl pwm_f_clk_pins: pwm_f_clk { 378e98fd134SMartin Blumenstingl mux { 379e98fd134SMartin Blumenstingl groups = "pwm_f_clk"; 380e98fd134SMartin Blumenstingl function = "pwm_f"; 381e98fd134SMartin Blumenstingl }; 382e98fd134SMartin Blumenstingl }; 383e98fd134SMartin Blumenstingl 384e98fd134SMartin Blumenstingl pwm_f_x_pins: pwm_f_x { 385e98fd134SMartin Blumenstingl mux { 386e98fd134SMartin Blumenstingl groups = "pwm_f_x"; 387e98fd134SMartin Blumenstingl function = "pwm_f"; 388e98fd134SMartin Blumenstingl }; 389e98fd134SMartin Blumenstingl }; 390e98fd134SMartin Blumenstingl 391b949165cSNeil Armstrong hdmi_hpd_pins: hdmi_hpd { 392b949165cSNeil Armstrong mux { 393b949165cSNeil Armstrong groups = "hdmi_hpd"; 394b949165cSNeil Armstrong function = "hdmi_hpd"; 395b949165cSNeil Armstrong }; 396b949165cSNeil Armstrong }; 397b949165cSNeil Armstrong 398b949165cSNeil Armstrong hdmi_i2c_pins: hdmi_i2c { 399b949165cSNeil Armstrong mux { 400b949165cSNeil Armstrong groups = "hdmi_sda", "hdmi_scl"; 401b949165cSNeil Armstrong function = "hdmi_i2c"; 402b949165cSNeil Armstrong }; 403b949165cSNeil Armstrong }; 404*c16fe9a1Sjbrunet 405*c16fe9a1Sjbrunet i2s_am_clk_pins: i2s_am_clk { 406*c16fe9a1Sjbrunet mux { 407*c16fe9a1Sjbrunet groups = "i2s_am_clk"; 408*c16fe9a1Sjbrunet function = "i2s_out"; 409*c16fe9a1Sjbrunet }; 410*c16fe9a1Sjbrunet }; 411*c16fe9a1Sjbrunet 412*c16fe9a1Sjbrunet i2s_out_ao_clk_pins: i2s_out_ao_clk { 413*c16fe9a1Sjbrunet mux { 414*c16fe9a1Sjbrunet groups = "i2s_out_ao_clk"; 415*c16fe9a1Sjbrunet function = "i2s_out"; 416*c16fe9a1Sjbrunet }; 417*c16fe9a1Sjbrunet }; 418*c16fe9a1Sjbrunet 419*c16fe9a1Sjbrunet i2s_out_lr_clk_pins: i2s_out_lr_clk { 420*c16fe9a1Sjbrunet mux { 421*c16fe9a1Sjbrunet groups = "i2s_out_lr_clk"; 422*c16fe9a1Sjbrunet function = "i2s_out"; 423*c16fe9a1Sjbrunet }; 424*c16fe9a1Sjbrunet }; 425*c16fe9a1Sjbrunet 426*c16fe9a1Sjbrunet i2s_out_ch01_pins: i2s_out_ch01 { 427*c16fe9a1Sjbrunet mux { 428*c16fe9a1Sjbrunet groups = "i2s_out_ch01"; 429*c16fe9a1Sjbrunet function = "i2s_out"; 430*c16fe9a1Sjbrunet }; 431*c16fe9a1Sjbrunet }; 432*c16fe9a1Sjbrunet i2sout_ch23_z_pins: i2sout_ch23_z { 433*c16fe9a1Sjbrunet mux { 434*c16fe9a1Sjbrunet groups = "i2sout_ch23_z"; 435*c16fe9a1Sjbrunet function = "i2s_out"; 436*c16fe9a1Sjbrunet }; 437*c16fe9a1Sjbrunet }; 438*c16fe9a1Sjbrunet 439*c16fe9a1Sjbrunet i2sout_ch45_z_pins: i2sout_ch45_z { 440*c16fe9a1Sjbrunet mux { 441*c16fe9a1Sjbrunet groups = "i2sout_ch45_z"; 442*c16fe9a1Sjbrunet function = "i2s_out"; 443*c16fe9a1Sjbrunet }; 444*c16fe9a1Sjbrunet }; 445*c16fe9a1Sjbrunet 446*c16fe9a1Sjbrunet i2sout_ch67_z_pins: i2sout_ch67_z { 447*c16fe9a1Sjbrunet mux { 448*c16fe9a1Sjbrunet groups = "i2sout_ch67_z"; 449*c16fe9a1Sjbrunet function = "i2s_out"; 450*c16fe9a1Sjbrunet }; 451*c16fe9a1Sjbrunet }; 452fb0fe922SNeil Armstrong }; 453e9e27c64SNeil Armstrong 454e9e27c64SNeil Armstrong eth-phy-mux { 455e9e27c64SNeil Armstrong compatible = "mdio-mux-mmioreg", "mdio-mux"; 456e9e27c64SNeil Armstrong #address-cells = <1>; 457e9e27c64SNeil Armstrong #size-cells = <0>; 458e9e27c64SNeil Armstrong reg = <0x0 0x55c 0x0 0x4>; 459e9e27c64SNeil Armstrong mux-mask = <0xffffffff>; 460e9e27c64SNeil Armstrong mdio-parent-bus = <&mdio0>; 461e9e27c64SNeil Armstrong 462e9e27c64SNeil Armstrong internal_mdio: mdio@e40908ff { 463e9e27c64SNeil Armstrong reg = <0xe40908ff>; 464e9e27c64SNeil Armstrong #address-cells = <1>; 465e9e27c64SNeil Armstrong #size-cells = <0>; 466e9e27c64SNeil Armstrong 467e9e27c64SNeil Armstrong internal_phy: ethernet-phy@8 { 468e9e27c64SNeil Armstrong compatible = "ethernet-phy-id0181.4400", "ethernet-phy-ieee802.3-c22"; 469e9e27c64SNeil Armstrong reg = <8>; 470e9e27c64SNeil Armstrong max-speed = <100>; 471e9e27c64SNeil Armstrong }; 472e9e27c64SNeil Armstrong }; 473e9e27c64SNeil Armstrong 474e9e27c64SNeil Armstrong external_mdio: mdio@2009087f { 475e9e27c64SNeil Armstrong reg = <0x2009087f>; 476e9e27c64SNeil Armstrong #address-cells = <1>; 477e9e27c64SNeil Armstrong #size-cells = <0>; 478e9e27c64SNeil Armstrong }; 479e9e27c64SNeil Armstrong }; 480fb0fe922SNeil Armstrong}; 481973fbd55SNeil Armstrong 482973fbd55SNeil Armstrong&hiubus { 483973fbd55SNeil Armstrong clkc: clock-controller@0 { 484973fbd55SNeil Armstrong compatible = "amlogic,gxl-clkc", "amlogic,gxbb-clkc"; 485973fbd55SNeil Armstrong #clock-cells = <1>; 486973fbd55SNeil Armstrong reg = <0x0 0x0 0x0 0x3db>; 487973fbd55SNeil Armstrong }; 488973fbd55SNeil Armstrong}; 4895d28bb01SNeil Armstrong 4905d28bb01SNeil Armstrong&i2c_A { 4915d28bb01SNeil Armstrong clocks = <&clkc CLKID_I2C>; 4925d28bb01SNeil Armstrong}; 4935d28bb01SNeil Armstrong 49404b36df4SNeil Armstrong&i2c_AO { 49504b36df4SNeil Armstrong clocks = <&clkc CLKID_AO_I2C>; 49604b36df4SNeil Armstrong}; 49704b36df4SNeil Armstrong 4985d28bb01SNeil Armstrong&i2c_B { 4995d28bb01SNeil Armstrong clocks = <&clkc CLKID_I2C>; 5005d28bb01SNeil Armstrong}; 5015d28bb01SNeil Armstrong 5025d28bb01SNeil Armstrong&i2c_C { 5035d28bb01SNeil Armstrong clocks = <&clkc CLKID_I2C>; 5045d28bb01SNeil Armstrong}; 5056d489dc8SNeil Armstrong 506bd80ef5eSMartin Blumenstingl&saradc { 507bd80ef5eSMartin Blumenstingl compatible = "amlogic,meson-gxl-saradc", "amlogic,meson-saradc"; 508bd80ef5eSMartin Blumenstingl clocks = <&xtal>, 509bd80ef5eSMartin Blumenstingl <&clkc CLKID_SAR_ADC>, 510bd80ef5eSMartin Blumenstingl <&clkc CLKID_SANA>, 511bd80ef5eSMartin Blumenstingl <&clkc CLKID_SAR_ADC_CLK>, 512bd80ef5eSMartin Blumenstingl <&clkc CLKID_SAR_ADC_SEL>; 513bd80ef5eSMartin Blumenstingl clock-names = "clkin", "core", "sana", "adc_clk", "adc_sel"; 514bd80ef5eSMartin Blumenstingl}; 515bd80ef5eSMartin Blumenstingl 5166d489dc8SNeil Armstrong&sd_emmc_a { 5176d489dc8SNeil Armstrong clocks = <&clkc CLKID_SD_EMMC_A>, 5186d489dc8SNeil Armstrong <&xtal>, 5196d489dc8SNeil Armstrong <&clkc CLKID_FCLK_DIV2>; 5206d489dc8SNeil Armstrong clock-names = "core", "clkin0", "clkin1"; 5216d489dc8SNeil Armstrong}; 5226d489dc8SNeil Armstrong 5236d489dc8SNeil Armstrong&sd_emmc_b { 5246d489dc8SNeil Armstrong clocks = <&clkc CLKID_SD_EMMC_B>, 5256d489dc8SNeil Armstrong <&xtal>, 5266d489dc8SNeil Armstrong <&clkc CLKID_FCLK_DIV2>; 5276d489dc8SNeil Armstrong clock-names = "core", "clkin0", "clkin1"; 5286d489dc8SNeil Armstrong}; 5296d489dc8SNeil Armstrong 5306d489dc8SNeil Armstrong&sd_emmc_c { 5316d489dc8SNeil Armstrong clocks = <&clkc CLKID_SD_EMMC_C>, 5326d489dc8SNeil Armstrong <&xtal>, 5336d489dc8SNeil Armstrong <&clkc CLKID_FCLK_DIV2>; 5346d489dc8SNeil Armstrong clock-names = "core", "clkin0", "clkin1"; 5356d489dc8SNeil Armstrong}; 536fafdbdf7SNeil Armstrong 53704b36df4SNeil Armstrong&spifc { 53804b36df4SNeil Armstrong clocks = <&clkc CLKID_SPI>; 53904b36df4SNeil Armstrong}; 54004b36df4SNeil Armstrong 541fafdbdf7SNeil Armstrong&vpu { 542fafdbdf7SNeil Armstrong compatible = "amlogic,meson-gxl-vpu", "amlogic,meson-gx-vpu"; 543fafdbdf7SNeil Armstrong}; 544