102310be6SXianwei Zhao// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 202310be6SXianwei Zhao/* 302310be6SXianwei Zhao * Copyright (c) 2021 Amlogic, Inc. All rights reserved. 402310be6SXianwei Zhao */ 502310be6SXianwei Zhao 602310be6SXianwei Zhao#include <dt-bindings/interrupt-controller/irq.h> 702310be6SXianwei Zhao#include <dt-bindings/interrupt-controller/arm-gic.h> 802310be6SXianwei Zhao#include <dt-bindings/gpio/gpio.h> 91e75c227SZelong Dong#include <dt-bindings/reset/amlogic,c3-reset.h> 10520b792eSXianwei Zhao#include <dt-bindings/clock/amlogic,c3-pll-clkc.h> 11520b792eSXianwei Zhao#include <dt-bindings/clock/amlogic,c3-scmi-clkc.h> 12520b792eSXianwei Zhao#include <dt-bindings/clock/amlogic,c3-peripherals-clkc.h> 13520b792eSXianwei Zhao#include <dt-bindings/power/amlogic,c3-pwrc.h> 14520b792eSXianwei Zhao#include <dt-bindings/gpio/amlogic-c3-gpio.h> 1502310be6SXianwei Zhao 1602310be6SXianwei Zhao/ { 1702310be6SXianwei Zhao cpus { 1802310be6SXianwei Zhao #address-cells = <2>; 1902310be6SXianwei Zhao #size-cells = <0>; 2002310be6SXianwei Zhao 2102310be6SXianwei Zhao cpu0: cpu@0 { 2202310be6SXianwei Zhao device_type = "cpu"; 2302310be6SXianwei Zhao compatible = "arm,cortex-a35"; 2402310be6SXianwei Zhao reg = <0x0 0x0>; 2502310be6SXianwei Zhao enable-method = "psci"; 2602310be6SXianwei Zhao }; 2702310be6SXianwei Zhao 2802310be6SXianwei Zhao cpu1: cpu@1 { 2902310be6SXianwei Zhao device_type = "cpu"; 3002310be6SXianwei Zhao compatible = "arm,cortex-a35"; 3102310be6SXianwei Zhao reg = <0x0 0x1>; 3202310be6SXianwei Zhao enable-method = "psci"; 3302310be6SXianwei Zhao }; 3402310be6SXianwei Zhao }; 3502310be6SXianwei Zhao 3602310be6SXianwei Zhao timer { 3702310be6SXianwei Zhao compatible = "arm,armv8-timer"; 3802310be6SXianwei Zhao interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 3902310be6SXianwei Zhao <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 4002310be6SXianwei Zhao <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 4102310be6SXianwei Zhao <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; 4202310be6SXianwei Zhao }; 4302310be6SXianwei Zhao 4402310be6SXianwei Zhao psci { 4502310be6SXianwei Zhao compatible = "arm,psci-1.0"; 4602310be6SXianwei Zhao method = "smc"; 4702310be6SXianwei Zhao }; 4802310be6SXianwei Zhao 4902310be6SXianwei Zhao xtal: xtal-clk { 5002310be6SXianwei Zhao compatible = "fixed-clock"; 5102310be6SXianwei Zhao clock-frequency = <24000000>; 5202310be6SXianwei Zhao clock-output-names = "xtal"; 5302310be6SXianwei Zhao #clock-cells = <0>; 5402310be6SXianwei Zhao }; 5502310be6SXianwei Zhao 5622a9b2a4SXianwei Zhao sm: secure-monitor { 5722a9b2a4SXianwei Zhao compatible = "amlogic,meson-gxbb-sm"; 5822a9b2a4SXianwei Zhao 5922a9b2a4SXianwei Zhao pwrc: power-controller { 6022a9b2a4SXianwei Zhao compatible = "amlogic,c3-pwrc"; 6122a9b2a4SXianwei Zhao #power-domain-cells = <1>; 6222a9b2a4SXianwei Zhao }; 6322a9b2a4SXianwei Zhao }; 6422a9b2a4SXianwei Zhao 65520b792eSXianwei Zhao sram { 66520b792eSXianwei Zhao compatible = "mmio-sram"; 67520b792eSXianwei Zhao reg = <0x0 0x07f50e00 0x0 0x100>; 68520b792eSXianwei Zhao #address-cells = <1>; 69520b792eSXianwei Zhao #size-cells = <1>; 70520b792eSXianwei Zhao ranges = <0 0x0 0x07f50e00 0x100>; 71520b792eSXianwei Zhao 72520b792eSXianwei Zhao scmi_shmem: sram@0 { 73520b792eSXianwei Zhao compatible = "arm,scmi-shmem"; 74520b792eSXianwei Zhao reg = <0x0 0x100>; 75520b792eSXianwei Zhao }; 76520b792eSXianwei Zhao }; 77520b792eSXianwei Zhao 78520b792eSXianwei Zhao firmware { 79520b792eSXianwei Zhao scmi: scmi { 80520b792eSXianwei Zhao compatible = "arm,scmi-smc"; 81520b792eSXianwei Zhao arm,smc-id = <0x820000C1>; 82520b792eSXianwei Zhao shmem = <&scmi_shmem>; 83520b792eSXianwei Zhao #address-cells = <1>; 84520b792eSXianwei Zhao #size-cells = <0>; 85520b792eSXianwei Zhao 86520b792eSXianwei Zhao scmi_clk: protocol@14 { 87520b792eSXianwei Zhao reg = <0x14>; 88520b792eSXianwei Zhao #clock-cells = <1>; 89520b792eSXianwei Zhao }; 90520b792eSXianwei Zhao }; 91520b792eSXianwei Zhao }; 92520b792eSXianwei Zhao 9302310be6SXianwei Zhao soc { 9402310be6SXianwei Zhao compatible = "simple-bus"; 9502310be6SXianwei Zhao #address-cells = <2>; 9602310be6SXianwei Zhao #size-cells = <2>; 9702310be6SXianwei Zhao ranges; 9802310be6SXianwei Zhao 9902310be6SXianwei Zhao gic: interrupt-controller@fff01000 { 10002310be6SXianwei Zhao compatible = "arm,gic-400"; 10102310be6SXianwei Zhao #interrupt-cells = <3>; 10202310be6SXianwei Zhao #address-cells = <0>; 10302310be6SXianwei Zhao interrupt-controller; 10402310be6SXianwei Zhao reg = <0x0 0xfff01000 0 0x1000>, 10502310be6SXianwei Zhao <0x0 0xfff02000 0 0x2000>, 10602310be6SXianwei Zhao <0x0 0xfff04000 0 0x2000>, 10702310be6SXianwei Zhao <0x0 0xfff06000 0 0x2000>; 10802310be6SXianwei Zhao interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; 10902310be6SXianwei Zhao }; 11002310be6SXianwei Zhao 11102310be6SXianwei Zhao apb4: bus@fe000000 { 11202310be6SXianwei Zhao compatible = "simple-bus"; 11302310be6SXianwei Zhao reg = <0x0 0xfe000000 0x0 0x480000>; 11402310be6SXianwei Zhao #address-cells = <2>; 11502310be6SXianwei Zhao #size-cells = <2>; 11602310be6SXianwei Zhao ranges = <0x0 0x0 0x0 0xfe000000 0x0 0x480000>; 11702310be6SXianwei Zhao 118520b792eSXianwei Zhao clkc_periphs: clock-controller@0 { 119520b792eSXianwei Zhao compatible = "amlogic,c3-peripherals-clkc"; 120520b792eSXianwei Zhao reg = <0x0 0x0 0x0 0x49c>; 121520b792eSXianwei Zhao #clock-cells = <1>; 122520b792eSXianwei Zhao clocks = <&xtal>, 123520b792eSXianwei Zhao <&scmi_clk CLKID_OSC>, 124520b792eSXianwei Zhao <&scmi_clk CLKID_FIXED_PLL_OSC>, 125520b792eSXianwei Zhao <&clkc_pll CLKID_FCLK_DIV2>, 126520b792eSXianwei Zhao <&clkc_pll CLKID_FCLK_DIV2P5>, 127520b792eSXianwei Zhao <&clkc_pll CLKID_FCLK_DIV3>, 128520b792eSXianwei Zhao <&clkc_pll CLKID_FCLK_DIV4>, 129520b792eSXianwei Zhao <&clkc_pll CLKID_FCLK_DIV5>, 130520b792eSXianwei Zhao <&clkc_pll CLKID_FCLK_DIV7>, 131520b792eSXianwei Zhao <&clkc_pll CLKID_GP0_PLL>, 132520b792eSXianwei Zhao <&scmi_clk CLKID_GP1_PLL_OSC>, 133520b792eSXianwei Zhao <&clkc_pll CLKID_HIFI_PLL>, 134520b792eSXianwei Zhao <&scmi_clk CLKID_SYS_CLK>, 135520b792eSXianwei Zhao <&scmi_clk CLKID_AXI_CLK>, 136520b792eSXianwei Zhao <&scmi_clk CLKID_SYS_PLL_DIV16>, 137520b792eSXianwei Zhao <&scmi_clk CLKID_CPU_CLK_DIV16>; 138520b792eSXianwei Zhao clock-names = "xtal_24m", 139520b792eSXianwei Zhao "oscin", 140520b792eSXianwei Zhao "fix", 141520b792eSXianwei Zhao "fdiv2", 142520b792eSXianwei Zhao "fdiv2p5", 143520b792eSXianwei Zhao "fdiv3", 144520b792eSXianwei Zhao "fdiv4", 145520b792eSXianwei Zhao "fdiv5", 146520b792eSXianwei Zhao "fdiv7", 147520b792eSXianwei Zhao "gp0", 148520b792eSXianwei Zhao "gp1", 149520b792eSXianwei Zhao "hifi", 150520b792eSXianwei Zhao "sysclk", 151520b792eSXianwei Zhao "axiclk", 152520b792eSXianwei Zhao "sysplldiv16", 153520b792eSXianwei Zhao "cpudiv16"; 154520b792eSXianwei Zhao }; 155520b792eSXianwei Zhao 1561e75c227SZelong Dong reset: reset-controller@2000 { 1571e75c227SZelong Dong compatible = "amlogic,c3-reset"; 1581e75c227SZelong Dong reg = <0x0 0x2000 0x0 0x98>; 1591e75c227SZelong Dong #reset-cells = <1>; 1601e75c227SZelong Dong }; 1611e75c227SZelong Dong 162a30c7a73SHuqiang Qin watchdog@2100 { 163a30c7a73SHuqiang Qin compatible = "amlogic,c3-wdt", "amlogic,t7-wdt"; 164a30c7a73SHuqiang Qin reg = <0x0 0x2100 0x0 0x10>; 165a30c7a73SHuqiang Qin clocks = <&xtal>; 166a30c7a73SHuqiang Qin }; 167a30c7a73SHuqiang Qin 168cac34b2bSHuqiang Qin periphs_pinctrl: pinctrl@4000 { 169cac34b2bSHuqiang Qin compatible = "amlogic,c3-periphs-pinctrl"; 170cac34b2bSHuqiang Qin #address-cells = <2>; 171cac34b2bSHuqiang Qin #size-cells = <2>; 172cac34b2bSHuqiang Qin ranges; 173cac34b2bSHuqiang Qin 174cac34b2bSHuqiang Qin gpio: bank@4000 { 175cac34b2bSHuqiang Qin reg = <0x0 0x4000 0x0 0x004c>, 176cac34b2bSHuqiang Qin <0x0 0x4100 0x0 0x01de>; 177cac34b2bSHuqiang Qin reg-names = "mux", "gpio"; 178cac34b2bSHuqiang Qin gpio-controller; 179cac34b2bSHuqiang Qin #gpio-cells = <2>; 180cac34b2bSHuqiang Qin gpio-ranges = <&periphs_pinctrl 0 0 55>; 181cac34b2bSHuqiang Qin }; 182520b792eSXianwei Zhao 183520b792eSXianwei Zhao i2c0_pins1: i2c0-pins1 { 184520b792eSXianwei Zhao mux { 185520b792eSXianwei Zhao groups = "i2c0_sda_e", 186520b792eSXianwei Zhao "i2c0_scl_e"; 187520b792eSXianwei Zhao function = "i2c0"; 188520b792eSXianwei Zhao bias-disable; 189520b792eSXianwei Zhao drive-strength-microamp = <3000>; 190520b792eSXianwei Zhao }; 191520b792eSXianwei Zhao }; 192520b792eSXianwei Zhao 193520b792eSXianwei Zhao i2c0_pins2: i2c0-pins2 { 194520b792eSXianwei Zhao mux { 195520b792eSXianwei Zhao groups = "i2c0_sda_d", 196520b792eSXianwei Zhao "i2c0_scl_d"; 197520b792eSXianwei Zhao function = "i2c0"; 198520b792eSXianwei Zhao bias-disable; 199520b792eSXianwei Zhao drive-strength-microamp = <3000>; 200520b792eSXianwei Zhao }; 201520b792eSXianwei Zhao }; 202520b792eSXianwei Zhao 203520b792eSXianwei Zhao i2c1_pins1: i2c1-pins1 { 204520b792eSXianwei Zhao mux { 205520b792eSXianwei Zhao groups = "i2c1_sda_x", 206520b792eSXianwei Zhao "i2c1_scl_x"; 207520b792eSXianwei Zhao function = "i2c1"; 208520b792eSXianwei Zhao bias-disable; 209520b792eSXianwei Zhao drive-strength-microamp = <3000>; 210520b792eSXianwei Zhao }; 211520b792eSXianwei Zhao }; 212520b792eSXianwei Zhao 213520b792eSXianwei Zhao i2c1_pins2: i2c1-pins2 { 214520b792eSXianwei Zhao mux { 215520b792eSXianwei Zhao groups = "i2c1_sda_d", 216520b792eSXianwei Zhao "i2c1_scl_d"; 217520b792eSXianwei Zhao function = "i2c1"; 218520b792eSXianwei Zhao bias-disable; 219520b792eSXianwei Zhao drive-strength-microamp = <3000>; 220520b792eSXianwei Zhao }; 221520b792eSXianwei Zhao }; 222520b792eSXianwei Zhao 223520b792eSXianwei Zhao i2c1_pins3: i2c1-pins3 { 224520b792eSXianwei Zhao mux { 225520b792eSXianwei Zhao groups = "i2c1_sda_a", 226520b792eSXianwei Zhao "i2c1_scl_a"; 227520b792eSXianwei Zhao function = "i2c1"; 228520b792eSXianwei Zhao bias-disable; 229520b792eSXianwei Zhao drive-strength-microamp = <3000>; 230520b792eSXianwei Zhao }; 231520b792eSXianwei Zhao }; 232520b792eSXianwei Zhao 233520b792eSXianwei Zhao i2c1_pins4: i2c1-pins4 { 234520b792eSXianwei Zhao mux { 235520b792eSXianwei Zhao groups = "i2c1_sda_b", 236520b792eSXianwei Zhao "i2c1_scl_b"; 237520b792eSXianwei Zhao function = "i2c1"; 238520b792eSXianwei Zhao bias-disable; 239520b792eSXianwei Zhao drive-strength-microamp = <3000>; 240520b792eSXianwei Zhao }; 241520b792eSXianwei Zhao }; 242520b792eSXianwei Zhao 243520b792eSXianwei Zhao i2c2_pins1: i2c2-pins1 { 244520b792eSXianwei Zhao mux { 245520b792eSXianwei Zhao groups = "i2c2_sda", 246520b792eSXianwei Zhao "i2c2_scl"; 247520b792eSXianwei Zhao function = "i2c2"; 248520b792eSXianwei Zhao bias-disable; 249520b792eSXianwei Zhao drive-strength-microamp = <3000>; 250520b792eSXianwei Zhao }; 251520b792eSXianwei Zhao }; 252520b792eSXianwei Zhao 253520b792eSXianwei Zhao i2c3_pins1: i2c3-pins1 { 254520b792eSXianwei Zhao mux { 255520b792eSXianwei Zhao groups = "i2c3_sda_c", 256520b792eSXianwei Zhao "i2c3_scl_c"; 257520b792eSXianwei Zhao function = "i2c3"; 258520b792eSXianwei Zhao bias-disable; 259520b792eSXianwei Zhao drive-strength-microamp = <3000>; 260520b792eSXianwei Zhao }; 261520b792eSXianwei Zhao }; 262520b792eSXianwei Zhao 263520b792eSXianwei Zhao i2c3_pins2: i2c3-pins2 { 264520b792eSXianwei Zhao mux { 265520b792eSXianwei Zhao groups = "i2c3_sda_x", 266520b792eSXianwei Zhao "i2c3_scl_x"; 267520b792eSXianwei Zhao function = "i2c3"; 268520b792eSXianwei Zhao bias-disable; 269520b792eSXianwei Zhao drive-strength-microamp = <3000>; 270520b792eSXianwei Zhao }; 271520b792eSXianwei Zhao }; 272520b792eSXianwei Zhao 273520b792eSXianwei Zhao i2c3_pins3: i2c3-pins3 { 274520b792eSXianwei Zhao mux { 275520b792eSXianwei Zhao groups = "i2c3_sda_d", 276520b792eSXianwei Zhao "i2c3_scl_d"; 277520b792eSXianwei Zhao function = "i2c3"; 278520b792eSXianwei Zhao bias-disable; 279520b792eSXianwei Zhao drive-strength-microamp = <3000>; 280520b792eSXianwei Zhao }; 281520b792eSXianwei Zhao }; 282520b792eSXianwei Zhao 283520b792eSXianwei Zhao nand_pins: nand-pins { 284520b792eSXianwei Zhao mux { 285520b792eSXianwei Zhao groups = "emmc_nand_d0", 286520b792eSXianwei Zhao "emmc_nand_d1", 287520b792eSXianwei Zhao "emmc_nand_d2", 288520b792eSXianwei Zhao "emmc_nand_d3", 289520b792eSXianwei Zhao "emmc_nand_d4", 290520b792eSXianwei Zhao "emmc_nand_d5", 291520b792eSXianwei Zhao "emmc_nand_d6", 292520b792eSXianwei Zhao "emmc_nand_d7", 293520b792eSXianwei Zhao "nand_ce0", 294520b792eSXianwei Zhao "nand_ale", 295520b792eSXianwei Zhao "nand_cle", 296520b792eSXianwei Zhao "nand_wen_clk", 297520b792eSXianwei Zhao "nand_ren_wr"; 298520b792eSXianwei Zhao function = "nand"; 299520b792eSXianwei Zhao input-enable; 300520b792eSXianwei Zhao }; 301520b792eSXianwei Zhao }; 302520b792eSXianwei Zhao 303520b792eSXianwei Zhao sdcard_pins: sdcard-pins { 304520b792eSXianwei Zhao mux { 305520b792eSXianwei Zhao groups = "sdcard_d0", 306520b792eSXianwei Zhao "sdcard_d1", 307520b792eSXianwei Zhao "sdcard_d2", 308520b792eSXianwei Zhao "sdcard_d3", 309520b792eSXianwei Zhao "sdcard_clk", 310520b792eSXianwei Zhao "sdcard_cmd"; 311520b792eSXianwei Zhao function = "sdcard"; 312520b792eSXianwei Zhao bias-pull-up; 313520b792eSXianwei Zhao drive-strength-microamp = <4000>; 314520b792eSXianwei Zhao }; 315520b792eSXianwei Zhao }; 316520b792eSXianwei Zhao 317520b792eSXianwei Zhao sdcard_clk_gate_pins: sdcard-clk-cmd-pins { 318520b792eSXianwei Zhao mux { 319520b792eSXianwei Zhao groups = "GPIOC_4"; 320520b792eSXianwei Zhao function = "gpio_periphs"; 321520b792eSXianwei Zhao bias-pull-down; 322520b792eSXianwei Zhao drive-strength-microamp = <4000>; 323520b792eSXianwei Zhao }; 324520b792eSXianwei Zhao }; 325520b792eSXianwei Zhao 326520b792eSXianwei Zhao sdio_m_clk_gate_pins: sdio-m-clk-cmd-pins { 327520b792eSXianwei Zhao mux { 328520b792eSXianwei Zhao groups = "sdio_clk"; 329520b792eSXianwei Zhao function = "sdio"; 330520b792eSXianwei Zhao bias-pull-down; 331520b792eSXianwei Zhao drive-strength-microamp = <4000>; 332520b792eSXianwei Zhao }; 333520b792eSXianwei Zhao }; 334520b792eSXianwei Zhao 335520b792eSXianwei Zhao sdio_m_pins: sdio-m-all-pins { 336520b792eSXianwei Zhao mux { 337520b792eSXianwei Zhao groups = "sdio_d0", 338520b792eSXianwei Zhao "sdio_d1", 339520b792eSXianwei Zhao "sdio_d2", 340520b792eSXianwei Zhao "sdio_d3", 341520b792eSXianwei Zhao "sdio_clk", 342520b792eSXianwei Zhao "sdio_cmd"; 343520b792eSXianwei Zhao function = "sdio"; 344520b792eSXianwei Zhao input-enable; 345520b792eSXianwei Zhao bias-pull-up; 346520b792eSXianwei Zhao drive-strength-microamp = <4000>; 347520b792eSXianwei Zhao }; 348520b792eSXianwei Zhao }; 349520b792eSXianwei Zhao 350520b792eSXianwei Zhao spicc0_pins1: spicc0-pins1 { 351520b792eSXianwei Zhao mux { 352520b792eSXianwei Zhao groups = "spi_a_mosi_b", 353520b792eSXianwei Zhao "spi_a_miso_b", 354520b792eSXianwei Zhao "spi_a_clk_b"; 355520b792eSXianwei Zhao function = "spi_a"; 356520b792eSXianwei Zhao drive-strength-microamp = <3000>; 357520b792eSXianwei Zhao }; 358520b792eSXianwei Zhao }; 359520b792eSXianwei Zhao 360520b792eSXianwei Zhao spicc0_pins2: spicc0-pins2 { 361520b792eSXianwei Zhao mux { 362520b792eSXianwei Zhao groups = "spi_a_mosi_c", 363520b792eSXianwei Zhao "spi_a_miso_c", 364520b792eSXianwei Zhao "spi_a_clk_c"; 365520b792eSXianwei Zhao function = "spi_a"; 366520b792eSXianwei Zhao drive-strength-microamp = <3000>; 367520b792eSXianwei Zhao }; 368520b792eSXianwei Zhao }; 369520b792eSXianwei Zhao 370520b792eSXianwei Zhao spicc0_pins3: spicc0-pins3 { 371520b792eSXianwei Zhao mux { 372520b792eSXianwei Zhao groups = "spi_a_mosi_x", 373520b792eSXianwei Zhao "spi_a_miso_x", 374520b792eSXianwei Zhao "spi_a_clk_x"; 375520b792eSXianwei Zhao function = "spi_a"; 376520b792eSXianwei Zhao drive-strength-microamp = <3000>; 377520b792eSXianwei Zhao }; 378520b792eSXianwei Zhao }; 379520b792eSXianwei Zhao 380520b792eSXianwei Zhao spicc1_pins1: spicc1-pins1 { 381520b792eSXianwei Zhao mux { 382520b792eSXianwei Zhao groups = "spi_b_mosi_d", 383520b792eSXianwei Zhao "spi_b_miso_d", 384520b792eSXianwei Zhao "spi_b_clk_d"; 385520b792eSXianwei Zhao function = "spi_b"; 386520b792eSXianwei Zhao drive-strength-microamp = <3000>; 387520b792eSXianwei Zhao }; 388520b792eSXianwei Zhao }; 389520b792eSXianwei Zhao 390520b792eSXianwei Zhao spicc1_pins2: spicc1-pins2 { 391520b792eSXianwei Zhao mux { 392520b792eSXianwei Zhao groups = "spi_b_mosi_x", 393520b792eSXianwei Zhao "spi_b_miso_x", 394520b792eSXianwei Zhao "spi_b_clk_x"; 395520b792eSXianwei Zhao function = "spi_b"; 396520b792eSXianwei Zhao drive-strength-microamp = <3000>; 397520b792eSXianwei Zhao }; 398520b792eSXianwei Zhao }; 399520b792eSXianwei Zhao 400520b792eSXianwei Zhao spifc_pins: spifc-pins { 401520b792eSXianwei Zhao mux { 402520b792eSXianwei Zhao groups = "spif_mo", 403520b792eSXianwei Zhao "spif_mi", 404520b792eSXianwei Zhao "spif_clk", 405520b792eSXianwei Zhao "spif_cs", 406520b792eSXianwei Zhao "spif_hold", 407520b792eSXianwei Zhao "spif_wp", 408520b792eSXianwei Zhao "spif_clk_loop"; 409520b792eSXianwei Zhao function = "spif"; 410520b792eSXianwei Zhao drive-strength-microamp = <4000>; 411520b792eSXianwei Zhao }; 412520b792eSXianwei Zhao }; 413cac34b2bSHuqiang Qin }; 414cac34b2bSHuqiang Qin 415cac34b2bSHuqiang Qin gpio_intc: interrupt-controller@4080 { 416e5d4d006SNeil Armstrong compatible = "amlogic,c3-gpio-intc", "amlogic,meson-gpio-intc"; 417cac34b2bSHuqiang Qin reg = <0x0 0x4080 0x0 0x0020>; 418cac34b2bSHuqiang Qin interrupt-controller; 419cac34b2bSHuqiang Qin #interrupt-cells = <2>; 420cac34b2bSHuqiang Qin amlogic,channel-interrupts = 421cac34b2bSHuqiang Qin <10 11 12 13 14 15 16 17 18 19 20 21>; 422cac34b2bSHuqiang Qin }; 423cac34b2bSHuqiang Qin 424520b792eSXianwei Zhao clkc_pll: clock-controller@8000 { 425520b792eSXianwei Zhao compatible = "amlogic,c3-pll-clkc"; 426520b792eSXianwei Zhao reg = <0x0 0x8000 0x0 0x1a4>; 427520b792eSXianwei Zhao #clock-cells = <1>; 428520b792eSXianwei Zhao clocks = <&scmi_clk CLKID_TOP_PLL_OSC>, 429520b792eSXianwei Zhao <&scmi_clk CLKID_MCLK_PLL_OSC>, 430520b792eSXianwei Zhao <&scmi_clk CLKID_FIXED_PLL_OSC>; 431520b792eSXianwei Zhao clock-names = "top", 432520b792eSXianwei Zhao "mclk", 433520b792eSXianwei Zhao "fix"; 434520b792eSXianwei Zhao }; 435520b792eSXianwei Zhao 436520b792eSXianwei Zhao eth_phy: mdio-multiplexer@28000 { 437520b792eSXianwei Zhao compatible = "amlogic,g12a-mdio-mux"; 438520b792eSXianwei Zhao reg = <0x0 0x28000 0x0 0xa4>; 439520b792eSXianwei Zhao 440520b792eSXianwei Zhao clocks = <&clkc_periphs CLKID_SYS_ETH_PHY>, 441520b792eSXianwei Zhao <&xtal>, 442520b792eSXianwei Zhao <&clkc_pll CLKID_FCLK_50M>; 443520b792eSXianwei Zhao clock-names = "pclk", "clkin0", "clkin1"; 444520b792eSXianwei Zhao mdio-parent-bus = <&mdio0>; 445520b792eSXianwei Zhao #address-cells = <1>; 446520b792eSXianwei Zhao #size-cells = <0>; 447520b792eSXianwei Zhao 448520b792eSXianwei Zhao ext_mdio: mdio@0 { 449520b792eSXianwei Zhao reg = <0>; 450520b792eSXianwei Zhao #address-cells = <1>; 451520b792eSXianwei Zhao #size-cells = <0>; 452520b792eSXianwei Zhao }; 453520b792eSXianwei Zhao 454520b792eSXianwei Zhao int_mdio: mdio@1 { 455520b792eSXianwei Zhao reg = <1>; 456520b792eSXianwei Zhao #address-cells = <1>; 457520b792eSXianwei Zhao #size-cells = <0>; 458520b792eSXianwei Zhao 459520b792eSXianwei Zhao internal_ephy: ethernet_phy@8 { 460520b792eSXianwei Zhao compatible = "ethernet-phy-id0180.3301", 461520b792eSXianwei Zhao "ethernet-phy-ieee802.3-c22"; 462520b792eSXianwei Zhao interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; 463520b792eSXianwei Zhao reg = <8>; 464520b792eSXianwei Zhao max-speed = <100>; 465520b792eSXianwei Zhao }; 466520b792eSXianwei Zhao }; 467520b792eSXianwei Zhao }; 468520b792eSXianwei Zhao 469520b792eSXianwei Zhao spicc0: spi@50000 { 470520b792eSXianwei Zhao compatible = "amlogic,meson-g12a-spicc"; 471520b792eSXianwei Zhao reg = <0x0 0x50000 0x0 0x44>; 472520b792eSXianwei Zhao interrupts = <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>; 473520b792eSXianwei Zhao clocks = <&clkc_periphs CLKID_SYS_SPICC_0>, 474520b792eSXianwei Zhao <&clkc_periphs CLKID_SPICC_A>; 475520b792eSXianwei Zhao clock-names = "core", "pclk"; 476520b792eSXianwei Zhao #address-cells = <1>; 477520b792eSXianwei Zhao #size-cells = <0>; 478520b792eSXianwei Zhao status = "disabled"; 479520b792eSXianwei Zhao }; 480520b792eSXianwei Zhao 481520b792eSXianwei Zhao spicc1: spi@52000 { 482520b792eSXianwei Zhao compatible = "amlogic,meson-g12a-spicc"; 483520b792eSXianwei Zhao reg = <0x0 0x52000 0x0 0x44>; 484520b792eSXianwei Zhao interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>; 485520b792eSXianwei Zhao clocks = <&clkc_periphs CLKID_SYS_SPICC_1>, 486520b792eSXianwei Zhao <&clkc_periphs CLKID_SPICC_B>; 487520b792eSXianwei Zhao clock-names = "core", "pclk"; 488520b792eSXianwei Zhao #address-cells = <1>; 489520b792eSXianwei Zhao #size-cells = <0>; 490520b792eSXianwei Zhao status = "disabled"; 491520b792eSXianwei Zhao }; 492520b792eSXianwei Zhao 493520b792eSXianwei Zhao spifc: spi@56000 { 494520b792eSXianwei Zhao compatible = "amlogic,a1-spifc"; 495520b792eSXianwei Zhao reg = <0x0 0x56000 0x0 0x290>; 496520b792eSXianwei Zhao interrupts = <GIC_SPI 182 IRQ_TYPE_EDGE_RISING>; 497520b792eSXianwei Zhao clocks = <&clkc_periphs CLKID_SPIFC>; 498520b792eSXianwei Zhao clock-names = "core"; 499520b792eSXianwei Zhao status = "disabled"; 500520b792eSXianwei Zhao }; 501520b792eSXianwei Zhao 502520b792eSXianwei Zhao i2c0: i2c@66000 { 503520b792eSXianwei Zhao compatible = "amlogic,meson-axg-i2c"; 504520b792eSXianwei Zhao reg = <0x0 0x66000 0x0 0x24>; 505520b792eSXianwei Zhao interrupts = <GIC_SPI 160 IRQ_TYPE_EDGE_RISING>; 506520b792eSXianwei Zhao #address-cells = <1>; 507520b792eSXianwei Zhao #size-cells = <0>; 508520b792eSXianwei Zhao clocks = <&clkc_periphs CLKID_SYS_I2C_M_A>; 509520b792eSXianwei Zhao status = "disabled"; 510520b792eSXianwei Zhao }; 511520b792eSXianwei Zhao 512520b792eSXianwei Zhao i2c1: i2c@68000 { 513520b792eSXianwei Zhao compatible = "amlogic,meson-axg-i2c"; 514520b792eSXianwei Zhao reg = <0x0 0x68000 0x0 0x24>; 515520b792eSXianwei Zhao interrupts = <GIC_SPI 161 IRQ_TYPE_EDGE_RISING>; 516520b792eSXianwei Zhao #address-cells = <1>; 517520b792eSXianwei Zhao #size-cells = <0>; 518520b792eSXianwei Zhao clocks = <&clkc_periphs CLKID_SYS_I2C_M_B>; 519520b792eSXianwei Zhao status = "disabled"; 520520b792eSXianwei Zhao }; 521520b792eSXianwei Zhao 522520b792eSXianwei Zhao i2c2: i2c@6a000 { 523520b792eSXianwei Zhao compatible = "amlogic,meson-axg-i2c"; 524520b792eSXianwei Zhao reg = <0x0 0x6a000 0x0 0x24>; 525520b792eSXianwei Zhao interrupts = <GIC_SPI 162 IRQ_TYPE_EDGE_RISING>; 526520b792eSXianwei Zhao #address-cells = <1>; 527520b792eSXianwei Zhao #size-cells = <0>; 528520b792eSXianwei Zhao clocks = <&clkc_periphs CLKID_SYS_I2C_M_C>; 529520b792eSXianwei Zhao status = "disabled"; 530520b792eSXianwei Zhao }; 531520b792eSXianwei Zhao 532520b792eSXianwei Zhao i2c3: i2c@6c000 { 533520b792eSXianwei Zhao compatible = "amlogic,meson-axg-i2c"; 534520b792eSXianwei Zhao reg = <0x0 0x6c000 0x0 0x24>; 535520b792eSXianwei Zhao interrupts = <GIC_SPI 163 IRQ_TYPE_EDGE_RISING>; 536520b792eSXianwei Zhao #address-cells = <1>; 537520b792eSXianwei Zhao #size-cells = <0>; 538520b792eSXianwei Zhao clocks = <&clkc_periphs CLKID_SYS_I2C_M_D>; 539520b792eSXianwei Zhao status = "disabled"; 540520b792eSXianwei Zhao }; 541520b792eSXianwei Zhao 54202310be6SXianwei Zhao uart_b: serial@7a000 { 54302310be6SXianwei Zhao compatible = "amlogic,meson-s4-uart", 54402310be6SXianwei Zhao "amlogic,meson-ao-uart"; 54502310be6SXianwei Zhao reg = <0x0 0x7a000 0x0 0x18>; 54602310be6SXianwei Zhao interrupts = <GIC_SPI 169 IRQ_TYPE_EDGE_RISING>; 54702310be6SXianwei Zhao status = "disabled"; 548520b792eSXianwei Zhao clocks = <&xtal>, <&clkc_periphs CLKID_SYS_UART_B>, <&xtal>; 54902310be6SXianwei Zhao clock-names = "xtal", "pclk", "baud"; 55002310be6SXianwei Zhao }; 55102310be6SXianwei Zhao 55284ed73eeSXianwei Zhao sec_ao: ao-secure@10220 { 55384ed73eeSXianwei Zhao compatible = "amlogic,c3-ao-secure", 55484ed73eeSXianwei Zhao "amlogic,meson-gx-ao-secure", 55584ed73eeSXianwei Zhao "syscon"; 55684ed73eeSXianwei Zhao reg = <0x0 0x10220 0x0 0x140>; 55784ed73eeSXianwei Zhao amlogic,has-chip-id; 55884ed73eeSXianwei Zhao }; 559520b792eSXianwei Zhao 560520b792eSXianwei Zhao sdio: mmc@88000 { 561520b792eSXianwei Zhao compatible = "amlogic,meson-axg-mmc"; 562520b792eSXianwei Zhao reg = <0x0 0x88000 0x0 0x800>; 563520b792eSXianwei Zhao interrupts = <GIC_SPI 176 IRQ_TYPE_EDGE_RISING>; 564520b792eSXianwei Zhao power-domains = <&pwrc PWRC_C3_SDIOA_ID>; 565520b792eSXianwei Zhao clocks = <&clkc_periphs CLKID_SYS_SD_EMMC_A>, 566520b792eSXianwei Zhao <&clkc_periphs CLKID_SD_EMMC_A>, 567520b792eSXianwei Zhao <&clkc_pll CLKID_FCLK_DIV2>; 568520b792eSXianwei Zhao clock-names = "core","clkin0", "clkin1"; 569520b792eSXianwei Zhao no-mmc; 570520b792eSXianwei Zhao no-sd; 571520b792eSXianwei Zhao resets = <&reset RESET_SD_EMMC_A>; 572520b792eSXianwei Zhao status = "disabled"; 573520b792eSXianwei Zhao }; 574520b792eSXianwei Zhao 575520b792eSXianwei Zhao sd: mmc@8a000 { 576520b792eSXianwei Zhao compatible = "amlogic,meson-axg-mmc"; 577520b792eSXianwei Zhao reg = <0x0 0x8a000 0x0 0x800>; 578520b792eSXianwei Zhao interrupts = <GIC_SPI 177 IRQ_TYPE_EDGE_RISING>; 579520b792eSXianwei Zhao power-domains = <&pwrc PWRC_C3_SDCARD_ID>; 580520b792eSXianwei Zhao clocks = <&clkc_periphs CLKID_SYS_SD_EMMC_B>, 581520b792eSXianwei Zhao <&clkc_periphs CLKID_SD_EMMC_B>, 582520b792eSXianwei Zhao <&clkc_pll CLKID_FCLK_DIV2>; 583520b792eSXianwei Zhao clock-names = "core", "clkin0", "clkin1"; 584520b792eSXianwei Zhao no-mmc; 585520b792eSXianwei Zhao no-sdio; 586520b792eSXianwei Zhao resets = <&reset RESET_SD_EMMC_B>; 587520b792eSXianwei Zhao status = "disabled"; 588520b792eSXianwei Zhao }; 589520b792eSXianwei Zhao 590520b792eSXianwei Zhao nand: nand-controller@8d000 { 591520b792eSXianwei Zhao compatible = "amlogic,meson-axg-nfc"; 592520b792eSXianwei Zhao reg = <0x0 0x8d000 0x0 0x200>, 593520b792eSXianwei Zhao <0x0 0x8C000 0x0 0x4>; 594520b792eSXianwei Zhao reg-names = "nfc", "emmc"; 595520b792eSXianwei Zhao interrupts = <GIC_SPI 87 IRQ_TYPE_EDGE_RISING>; 596520b792eSXianwei Zhao clocks = <&clkc_periphs CLKID_SYS_SD_EMMC_C>, 597520b792eSXianwei Zhao <&clkc_pll CLKID_FCLK_DIV2>; 598520b792eSXianwei Zhao clock-names = "core", "device"; 599520b792eSXianwei Zhao status = "disabled"; 600520b792eSXianwei Zhao }; 601520b792eSXianwei Zhao }; 602520b792eSXianwei Zhao 603520b792eSXianwei Zhao ethmac: ethernet@fdc00000 { 604520b792eSXianwei Zhao compatible = "amlogic,meson-g12a-dwmac", 605520b792eSXianwei Zhao "snps,dwmac-3.70a", 606520b792eSXianwei Zhao "snps,dwmac"; 607520b792eSXianwei Zhao reg = <0x0 0xfdc00000 0x0 0x10000>, 608520b792eSXianwei Zhao <0x0 0xfe024000 0x0 0x8>; 609520b792eSXianwei Zhao interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; 610520b792eSXianwei Zhao interrupt-names = "macirq"; 611520b792eSXianwei Zhao power-domains = <&pwrc PWRC_C3_ETH_ID>; 612520b792eSXianwei Zhao clocks = <&clkc_periphs CLKID_SYS_ETH_MAC>, 613520b792eSXianwei Zhao <&clkc_pll CLKID_FCLK_DIV2>, 614520b792eSXianwei Zhao <&clkc_pll CLKID_FCLK_50M>; 615520b792eSXianwei Zhao clock-names = "stmmaceth", "clkin0", "clkin1"; 616520b792eSXianwei Zhao rx-fifo-depth = <4096>; 617520b792eSXianwei Zhao tx-fifo-depth = <2048>; 618520b792eSXianwei Zhao status = "disabled"; 619520b792eSXianwei Zhao 620520b792eSXianwei Zhao mdio0: mdio { 621520b792eSXianwei Zhao compatible = "snps,dwmac-mdio"; 622520b792eSXianwei Zhao #address-cells = <1>; 623520b792eSXianwei Zhao #size-cells = <0>; 624520b792eSXianwei Zhao }; 62502310be6SXianwei Zhao }; 62602310be6SXianwei Zhao }; 62702310be6SXianwei Zhao}; 628