16694aee0SLars Povlsen// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 26694aee0SLars Povlsen/* 36694aee0SLars Povlsen * Copyright (c) 2020 Microchip Technology Inc. and its subsidiaries. 46694aee0SLars Povlsen */ 56694aee0SLars Povlsen 66694aee0SLars Povlsen#include <dt-bindings/gpio/gpio.h> 76694aee0SLars Povlsen#include <dt-bindings/interrupt-controller/arm-gic.h> 845145406SLars Povlsen#include <dt-bindings/clock/microchip,sparx5.h> 96694aee0SLars Povlsen 106694aee0SLars Povlsen/ { 116694aee0SLars Povlsen compatible = "microchip,sparx5"; 126694aee0SLars Povlsen interrupt-parent = <&gic>; 136694aee0SLars Povlsen #address-cells = <2>; 146694aee0SLars Povlsen #size-cells = <1>; 156694aee0SLars Povlsen 166694aee0SLars Povlsen aliases { 1708ee16e9SLars Povlsen spi0 = &spi0; 186694aee0SLars Povlsen serial0 = &uart0; 196694aee0SLars Povlsen serial1 = &uart1; 206694aee0SLars Povlsen }; 216694aee0SLars Povlsen 226694aee0SLars Povlsen chosen { 236694aee0SLars Povlsen stdout-path = "serial0:115200n8"; 246694aee0SLars Povlsen }; 256694aee0SLars Povlsen 266694aee0SLars Povlsen cpus { 27*a34ebb17SRobert Marko #address-cells = <1>; 286694aee0SLars Povlsen #size-cells = <0>; 296694aee0SLars Povlsen cpu-map { 306694aee0SLars Povlsen cluster0 { 316694aee0SLars Povlsen core0 { 326694aee0SLars Povlsen cpu = <&cpu0>; 336694aee0SLars Povlsen }; 346694aee0SLars Povlsen core1 { 356694aee0SLars Povlsen cpu = <&cpu1>; 366694aee0SLars Povlsen }; 376694aee0SLars Povlsen }; 386694aee0SLars Povlsen }; 396694aee0SLars Povlsen cpu0: cpu@0 { 406694aee0SLars Povlsen compatible = "arm,cortex-a53"; 416694aee0SLars Povlsen device_type = "cpu"; 42*a34ebb17SRobert Marko reg = <0x0>; 436694aee0SLars Povlsen enable-method = "psci"; 446694aee0SLars Povlsen next-level-cache = <&L2_0>; 456694aee0SLars Povlsen }; 466694aee0SLars Povlsen cpu1: cpu@1 { 476694aee0SLars Povlsen compatible = "arm,cortex-a53"; 486694aee0SLars Povlsen device_type = "cpu"; 49*a34ebb17SRobert Marko reg = <0x1>; 506694aee0SLars Povlsen enable-method = "psci"; 516694aee0SLars Povlsen next-level-cache = <&L2_0>; 526694aee0SLars Povlsen }; 536694aee0SLars Povlsen L2_0: l2-cache0 { 546694aee0SLars Povlsen compatible = "cache"; 55f217d94fSKrzysztof Kozlowski cache-level = <2>; 56f217d94fSKrzysztof Kozlowski cache-unified; 576694aee0SLars Povlsen }; 586694aee0SLars Povlsen }; 596694aee0SLars Povlsen 606694aee0SLars Povlsen arm-pmu { 616694aee0SLars Povlsen compatible = "arm,cortex-a53-pmu"; 626694aee0SLars Povlsen interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH>; 636694aee0SLars Povlsen interrupt-affinity = <&cpu0>, <&cpu1>; 646694aee0SLars Povlsen }; 656694aee0SLars Povlsen 6670be8370SRobert Marko psci: psci { 676694aee0SLars Povlsen compatible = "arm,psci-0.2"; 686694aee0SLars Povlsen method = "smc"; 696694aee0SLars Povlsen }; 706694aee0SLars Povlsen 716694aee0SLars Povlsen timer { 726694aee0SLars Povlsen compatible = "arm,armv8-timer"; 736694aee0SLars Povlsen interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>, 746694aee0SLars Povlsen <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>, 756694aee0SLars Povlsen <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>, 766694aee0SLars Povlsen <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>; 776694aee0SLars Povlsen }; 786694aee0SLars Povlsen 79e4e06a50SLars Povlsen lcpll_clk: lcpll-clk { 80e4e06a50SLars Povlsen compatible = "fixed-clock"; 81e4e06a50SLars Povlsen #clock-cells = <0>; 82e4e06a50SLars Povlsen clock-frequency = <2500000000>; 83e4e06a50SLars Povlsen }; 84e4e06a50SLars Povlsen 85e4e06a50SLars Povlsen clks: clock-controller@61110000c { 86e4e06a50SLars Povlsen compatible = "microchip,sparx5-dpll"; 87e4e06a50SLars Povlsen #clock-cells = <1>; 88e4e06a50SLars Povlsen clocks = <&lcpll_clk>; 89e4e06a50SLars Povlsen reg = <0x6 0x1110000c 0x24>; 90e4e06a50SLars Povlsen }; 91e4e06a50SLars Povlsen 926694aee0SLars Povlsen ahb_clk: ahb-clk { 936694aee0SLars Povlsen compatible = "fixed-clock"; 946694aee0SLars Povlsen #clock-cells = <0>; 956694aee0SLars Povlsen clock-frequency = <250000000>; 966694aee0SLars Povlsen }; 97e4e06a50SLars Povlsen 986694aee0SLars Povlsen sys_clk: sys-clk { 996694aee0SLars Povlsen compatible = "fixed-clock"; 1006694aee0SLars Povlsen #clock-cells = <0>; 1016694aee0SLars Povlsen clock-frequency = <625000000>; 1026694aee0SLars Povlsen }; 1036694aee0SLars Povlsen 1046694aee0SLars Povlsen axi: axi@600000000 { 1056694aee0SLars Povlsen compatible = "simple-bus"; 1066694aee0SLars Povlsen #address-cells = <2>; 1076694aee0SLars Povlsen #size-cells = <1>; 1086694aee0SLars Povlsen ranges; 1096694aee0SLars Povlsen 1106694aee0SLars Povlsen gic: interrupt-controller@600300000 { 1116694aee0SLars Povlsen compatible = "arm,gic-v3"; 1126694aee0SLars Povlsen #interrupt-cells = <3>; 1136694aee0SLars Povlsen #address-cells = <2>; 1146694aee0SLars Povlsen #size-cells = <2>; 1156694aee0SLars Povlsen interrupt-controller; 1166694aee0SLars Povlsen reg = <0x6 0x00300000 0x10000>, /* GIC Dist */ 1176694aee0SLars Povlsen <0x6 0x00340000 0xc0000>, /* GICR */ 1186694aee0SLars Povlsen <0x6 0x00200000 0x2000>, /* GICC */ 1196694aee0SLars Povlsen <0x6 0x00210000 0x2000>, /* GICV */ 1206694aee0SLars Povlsen <0x6 0x00220000 0x2000>; /* GICH */ 1216694aee0SLars Povlsen interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 1226694aee0SLars Povlsen }; 1236694aee0SLars Povlsen 12408ee16e9SLars Povlsen cpu_ctrl: syscon@600000000 { 12508ee16e9SLars Povlsen compatible = "microchip,sparx5-cpu-syscon", "syscon", 12608ee16e9SLars Povlsen "simple-mfd"; 12708ee16e9SLars Povlsen reg = <0x6 0x00000000 0xd0>; 12808ee16e9SLars Povlsen mux: mux-controller { 12908ee16e9SLars Povlsen compatible = "mmio-mux"; 13008ee16e9SLars Povlsen #mux-control-cells = <0>; 13108ee16e9SLars Povlsen /* 13208ee16e9SLars Povlsen * SI_OWNER and SI2_OWNER in GENERAL_CTRL 13308ee16e9SLars Povlsen * SPI: value 9 - (SIMC,SIBM) = 0b1001 13408ee16e9SLars Povlsen * SPI2: value 6 - (SIBM,SIMC) = 0b0110 13508ee16e9SLars Povlsen */ 13608ee16e9SLars Povlsen mux-reg-masks = <0x88 0xf0>; 13708ee16e9SLars Povlsen }; 13808ee16e9SLars Povlsen }; 13908ee16e9SLars Povlsen 140d0f482bbSSteen Hegelund reset: reset-controller@611010008 { 141d0f482bbSSteen Hegelund compatible = "microchip,sparx5-switch-reset"; 1425ef399aaSLars Povlsen reg = <0x6 0x11010008 0x4>; 143d0f482bbSSteen Hegelund reg-names = "gcb"; 144d0f482bbSSteen Hegelund #reset-cells = <1>; 145d0f482bbSSteen Hegelund cpu-syscon = <&cpu_ctrl>; 1465ef399aaSLars Povlsen }; 1475ef399aaSLars Povlsen 1486694aee0SLars Povlsen uart0: serial@600100000 { 14914bc6703SLars Povlsen pinctrl-0 = <&uart_pins>; 15014bc6703SLars Povlsen pinctrl-names = "default"; 1516694aee0SLars Povlsen compatible = "ns16550a"; 1526694aee0SLars Povlsen reg = <0x6 0x00100000 0x20>; 1536694aee0SLars Povlsen clocks = <&ahb_clk>; 1546694aee0SLars Povlsen reg-io-width = <4>; 1556694aee0SLars Povlsen reg-shift = <2>; 1566694aee0SLars Povlsen interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>; 1576694aee0SLars Povlsen 1586694aee0SLars Povlsen status = "disabled"; 1596694aee0SLars Povlsen }; 1606694aee0SLars Povlsen 1616694aee0SLars Povlsen uart1: serial@600102000 { 16214bc6703SLars Povlsen pinctrl-0 = <&uart2_pins>; 16314bc6703SLars Povlsen pinctrl-names = "default"; 1646694aee0SLars Povlsen compatible = "ns16550a"; 1656694aee0SLars Povlsen reg = <0x6 0x00102000 0x20>; 1666694aee0SLars Povlsen clocks = <&ahb_clk>; 1676694aee0SLars Povlsen reg-io-width = <4>; 1686694aee0SLars Povlsen reg-shift = <2>; 1696694aee0SLars Povlsen interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 1706694aee0SLars Povlsen 1716694aee0SLars Povlsen status = "disabled"; 1726694aee0SLars Povlsen }; 1736694aee0SLars Povlsen 17408ee16e9SLars Povlsen spi0: spi@600104000 { 17508ee16e9SLars Povlsen #address-cells = <1>; 17608ee16e9SLars Povlsen #size-cells = <0>; 17708ee16e9SLars Povlsen compatible = "microchip,sparx5-spi"; 17808ee16e9SLars Povlsen reg = <0x6 0x00104000 0x40>; 17908ee16e9SLars Povlsen num-cs = <16>; 18008ee16e9SLars Povlsen reg-io-width = <4>; 18108ee16e9SLars Povlsen reg-shift = <2>; 18208ee16e9SLars Povlsen clocks = <&ahb_clk>; 18308ee16e9SLars Povlsen interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 18408ee16e9SLars Povlsen status = "disabled"; 18508ee16e9SLars Povlsen }; 18608ee16e9SLars Povlsen 1876694aee0SLars Povlsen timer1: timer@600105000 { 1886694aee0SLars Povlsen compatible = "snps,dw-apb-timer"; 1896694aee0SLars Povlsen reg = <0x6 0x00105000 0x1000>; 1906694aee0SLars Povlsen clocks = <&ahb_clk>; 1916694aee0SLars Povlsen clock-names = "timer"; 1926694aee0SLars Povlsen interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>; 1936694aee0SLars Povlsen }; 1946694aee0SLars Povlsen 19545145406SLars Povlsen sdhci0: mmc@600800000 { 19645145406SLars Povlsen compatible = "microchip,dw-sparx5-sdhci"; 19745145406SLars Povlsen status = "disabled"; 19845145406SLars Povlsen reg = <0x6 0x00800000 0x1000>; 19945145406SLars Povlsen pinctrl-0 = <&emmc_pins>; 20045145406SLars Povlsen pinctrl-names = "default"; 20145145406SLars Povlsen clocks = <&clks CLK_ID_AUX1>; 20245145406SLars Povlsen clock-names = "core"; 20345145406SLars Povlsen assigned-clocks = <&clks CLK_ID_AUX1>; 20445145406SLars Povlsen assigned-clock-rates = <800000000>; 20545145406SLars Povlsen interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>; 20645145406SLars Povlsen bus-width = <8>; 20745145406SLars Povlsen }; 20845145406SLars Povlsen 20914bc6703SLars Povlsen gpio: pinctrl@6110101e0 { 21014bc6703SLars Povlsen compatible = "microchip,sparx5-pinctrl"; 21114bc6703SLars Povlsen reg = <0x6 0x110101e0 0x90>, <0x6 0x10508010 0x100>; 21214bc6703SLars Povlsen gpio-controller; 21314bc6703SLars Povlsen #gpio-cells = <2>; 21414bc6703SLars Povlsen gpio-ranges = <&gpio 0 0 64>; 21514bc6703SLars Povlsen interrupt-controller; 21614bc6703SLars Povlsen interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; 21714bc6703SLars Povlsen #interrupt-cells = <2>; 21814bc6703SLars Povlsen 2195df50128SLars Povlsen cs1_pins: cs1-pins { 2205df50128SLars Povlsen pins = "GPIO_16"; 2215df50128SLars Povlsen function = "si"; 2225df50128SLars Povlsen }; 2235df50128SLars Povlsen 2245df50128SLars Povlsen cs2_pins: cs2-pins { 2255df50128SLars Povlsen pins = "GPIO_17"; 2265df50128SLars Povlsen function = "si"; 2275df50128SLars Povlsen }; 2285df50128SLars Povlsen 2295df50128SLars Povlsen cs3_pins: cs3-pins { 2305df50128SLars Povlsen pins = "GPIO_18"; 2315df50128SLars Povlsen function = "si"; 2325df50128SLars Povlsen }; 2335df50128SLars Povlsen 2345df50128SLars Povlsen si2_pins: si2-pins { 2355df50128SLars Povlsen pins = "GPIO_39", "GPIO_40", "GPIO_41"; 2365df50128SLars Povlsen function = "si2"; 2375df50128SLars Povlsen }; 2385df50128SLars Povlsen 2397e1f91cbSLars Povlsen sgpio0_pins: sgpio-pins { 2407e1f91cbSLars Povlsen pins = "GPIO_0", "GPIO_1", "GPIO_2", "GPIO_3"; 2417e1f91cbSLars Povlsen function = "sg0"; 2427e1f91cbSLars Povlsen }; 2437e1f91cbSLars Povlsen 2447e1f91cbSLars Povlsen sgpio1_pins: sgpio1-pins { 2457e1f91cbSLars Povlsen pins = "GPIO_4", "GPIO_5", "GPIO_12", "GPIO_13"; 2467e1f91cbSLars Povlsen function = "sg1"; 2477e1f91cbSLars Povlsen }; 2487e1f91cbSLars Povlsen 2497e1f91cbSLars Povlsen sgpio2_pins: sgpio2-pins { 2507e1f91cbSLars Povlsen pins = "GPIO_30", "GPIO_31", "GPIO_32", 2517e1f91cbSLars Povlsen "GPIO_33"; 2527e1f91cbSLars Povlsen function = "sg2"; 2537e1f91cbSLars Povlsen }; 2547e1f91cbSLars Povlsen 25514bc6703SLars Povlsen uart_pins: uart-pins { 25614bc6703SLars Povlsen pins = "GPIO_10", "GPIO_11"; 25714bc6703SLars Povlsen function = "uart"; 25814bc6703SLars Povlsen }; 25914bc6703SLars Povlsen 26014bc6703SLars Povlsen uart2_pins: uart2-pins { 26114bc6703SLars Povlsen pins = "GPIO_26", "GPIO_27"; 26214bc6703SLars Povlsen function = "uart2"; 26314bc6703SLars Povlsen }; 264623910f4SLars Povlsen 265623910f4SLars Povlsen i2c_pins: i2c-pins { 266623910f4SLars Povlsen pins = "GPIO_14", "GPIO_15"; 267623910f4SLars Povlsen function = "twi"; 268623910f4SLars Povlsen }; 269623910f4SLars Povlsen 270623910f4SLars Povlsen i2c2_pins: i2c2-pins { 271623910f4SLars Povlsen pins = "GPIO_28", "GPIO_29"; 272623910f4SLars Povlsen function = "twi2"; 273623910f4SLars Povlsen }; 27445145406SLars Povlsen 27545145406SLars Povlsen emmc_pins: emmc-pins { 27645145406SLars Povlsen pins = "GPIO_34", "GPIO_35", "GPIO_36", 27745145406SLars Povlsen "GPIO_37", "GPIO_38", "GPIO_39", 27845145406SLars Povlsen "GPIO_40", "GPIO_41", "GPIO_42", 27945145406SLars Povlsen "GPIO_43", "GPIO_44", "GPIO_45", 28045145406SLars Povlsen "GPIO_46", "GPIO_47"; 28145145406SLars Povlsen function = "emmc"; 28245145406SLars Povlsen }; 283d0f482bbSSteen Hegelund 284d0f482bbSSteen Hegelund miim1_pins: miim1-pins { 285d0f482bbSSteen Hegelund pins = "GPIO_56", "GPIO_57"; 286d0f482bbSSteen Hegelund function = "miim"; 287d0f482bbSSteen Hegelund }; 288d0f482bbSSteen Hegelund 289d0f482bbSSteen Hegelund miim2_pins: miim2-pins { 290d0f482bbSSteen Hegelund pins = "GPIO_58", "GPIO_59"; 291d0f482bbSSteen Hegelund function = "miim"; 292d0f482bbSSteen Hegelund }; 293d0f482bbSSteen Hegelund 294d0f482bbSSteen Hegelund miim3_pins: miim3-pins { 295d0f482bbSSteen Hegelund pins = "GPIO_52", "GPIO_53"; 296d0f482bbSSteen Hegelund function = "miim"; 297d0f482bbSSteen Hegelund }; 298623910f4SLars Povlsen }; 299623910f4SLars Povlsen 3007e1f91cbSLars Povlsen sgpio0: gpio@61101036c { 3017e1f91cbSLars Povlsen #address-cells = <1>; 3027e1f91cbSLars Povlsen #size-cells = <0>; 3037e1f91cbSLars Povlsen compatible = "microchip,sparx5-sgpio"; 3047e1f91cbSLars Povlsen status = "disabled"; 3057e1f91cbSLars Povlsen clocks = <&sys_clk>; 3067e1f91cbSLars Povlsen pinctrl-0 = <&sgpio0_pins>; 3077e1f91cbSLars Povlsen pinctrl-names = "default"; 308d0f482bbSSteen Hegelund resets = <&reset 0>; 309d0f482bbSSteen Hegelund reset-names = "switch"; 3107e1f91cbSLars Povlsen reg = <0x6 0x1101036c 0x100>; 3117e1f91cbSLars Povlsen sgpio_in0: gpio@0 { 3127e1f91cbSLars Povlsen compatible = "microchip,sparx5-sgpio-bank"; 3137e1f91cbSLars Povlsen reg = <0>; 3147e1f91cbSLars Povlsen gpio-controller; 3157e1f91cbSLars Povlsen #gpio-cells = <3>; 3167e1f91cbSLars Povlsen ngpios = <96>; 317d0f482bbSSteen Hegelund interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; 318d0f482bbSSteen Hegelund interrupt-controller; 319d0f482bbSSteen Hegelund #interrupt-cells = <3>; 3207e1f91cbSLars Povlsen }; 3217e1f91cbSLars Povlsen sgpio_out0: gpio@1 { 3227e1f91cbSLars Povlsen compatible = "microchip,sparx5-sgpio-bank"; 3237e1f91cbSLars Povlsen reg = <1>; 3247e1f91cbSLars Povlsen gpio-controller; 3257e1f91cbSLars Povlsen #gpio-cells = <3>; 3267e1f91cbSLars Povlsen ngpios = <96>; 3277e1f91cbSLars Povlsen }; 3287e1f91cbSLars Povlsen }; 3297e1f91cbSLars Povlsen 3307e1f91cbSLars Povlsen sgpio1: gpio@611010484 { 3317e1f91cbSLars Povlsen #address-cells = <1>; 3327e1f91cbSLars Povlsen #size-cells = <0>; 3337e1f91cbSLars Povlsen compatible = "microchip,sparx5-sgpio"; 3347e1f91cbSLars Povlsen status = "disabled"; 3357e1f91cbSLars Povlsen clocks = <&sys_clk>; 3367e1f91cbSLars Povlsen pinctrl-0 = <&sgpio1_pins>; 3377e1f91cbSLars Povlsen pinctrl-names = "default"; 338d0f482bbSSteen Hegelund resets = <&reset 0>; 339d0f482bbSSteen Hegelund reset-names = "switch"; 3407e1f91cbSLars Povlsen reg = <0x6 0x11010484 0x100>; 3417e1f91cbSLars Povlsen sgpio_in1: gpio@0 { 3427e1f91cbSLars Povlsen compatible = "microchip,sparx5-sgpio-bank"; 3437e1f91cbSLars Povlsen reg = <0>; 3447e1f91cbSLars Povlsen gpio-controller; 3457e1f91cbSLars Povlsen #gpio-cells = <3>; 3467e1f91cbSLars Povlsen ngpios = <96>; 347d0f482bbSSteen Hegelund interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>; 348d0f482bbSSteen Hegelund interrupt-controller; 349d0f482bbSSteen Hegelund #interrupt-cells = <3>; 3507e1f91cbSLars Povlsen }; 3517e1f91cbSLars Povlsen sgpio_out1: gpio@1 { 3527e1f91cbSLars Povlsen compatible = "microchip,sparx5-sgpio-bank"; 3537e1f91cbSLars Povlsen reg = <1>; 3547e1f91cbSLars Povlsen gpio-controller; 3557e1f91cbSLars Povlsen #gpio-cells = <3>; 3567e1f91cbSLars Povlsen ngpios = <96>; 3577e1f91cbSLars Povlsen }; 3587e1f91cbSLars Povlsen }; 3597e1f91cbSLars Povlsen 3607e1f91cbSLars Povlsen sgpio2: gpio@61101059c { 3617e1f91cbSLars Povlsen #address-cells = <1>; 3627e1f91cbSLars Povlsen #size-cells = <0>; 3637e1f91cbSLars Povlsen compatible = "microchip,sparx5-sgpio"; 3647e1f91cbSLars Povlsen status = "disabled"; 3657e1f91cbSLars Povlsen clocks = <&sys_clk>; 3667e1f91cbSLars Povlsen pinctrl-0 = <&sgpio2_pins>; 3677e1f91cbSLars Povlsen pinctrl-names = "default"; 368d0f482bbSSteen Hegelund resets = <&reset 0>; 369d0f482bbSSteen Hegelund reset-names = "switch"; 3707e1f91cbSLars Povlsen reg = <0x6 0x1101059c 0x100>; 3717e1f91cbSLars Povlsen sgpio_in2: gpio@0 { 3727e1f91cbSLars Povlsen reg = <0>; 3737e1f91cbSLars Povlsen compatible = "microchip,sparx5-sgpio-bank"; 3747e1f91cbSLars Povlsen gpio-controller; 3757e1f91cbSLars Povlsen #gpio-cells = <3>; 3767e1f91cbSLars Povlsen ngpios = <96>; 377d0f482bbSSteen Hegelund interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; 378d0f482bbSSteen Hegelund interrupt-controller; 379d0f482bbSSteen Hegelund #interrupt-cells = <3>; 3807e1f91cbSLars Povlsen }; 3817e1f91cbSLars Povlsen sgpio_out2: gpio@1 { 3827e1f91cbSLars Povlsen compatible = "microchip,sparx5-sgpio-bank"; 3837e1f91cbSLars Povlsen reg = <1>; 3847e1f91cbSLars Povlsen gpio-controller; 3857e1f91cbSLars Povlsen #gpio-cells = <3>; 3867e1f91cbSLars Povlsen ngpios = <96>; 3877e1f91cbSLars Povlsen }; 3887e1f91cbSLars Povlsen }; 3897e1f91cbSLars Povlsen 390623910f4SLars Povlsen i2c0: i2c@600101000 { 391623910f4SLars Povlsen compatible = "snps,designware-i2c"; 392623910f4SLars Povlsen status = "disabled"; 393623910f4SLars Povlsen pinctrl-0 = <&i2c_pins>; 394623910f4SLars Povlsen pinctrl-names = "default"; 395623910f4SLars Povlsen reg = <0x6 0x00101000 0x100>; 396623910f4SLars Povlsen #address-cells = <1>; 397623910f4SLars Povlsen #size-cells = <0>; 398623910f4SLars Povlsen interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>; 399623910f4SLars Povlsen i2c-sda-hold-time-ns = <300>; 400623910f4SLars Povlsen clock-frequency = <100000>; 401623910f4SLars Povlsen clocks = <&ahb_clk>; 402623910f4SLars Povlsen }; 403623910f4SLars Povlsen 404623910f4SLars Povlsen i2c1: i2c@600103000 { 405623910f4SLars Povlsen compatible = "snps,designware-i2c"; 406623910f4SLars Povlsen status = "disabled"; 407623910f4SLars Povlsen pinctrl-0 = <&i2c2_pins>; 408623910f4SLars Povlsen pinctrl-names = "default"; 409623910f4SLars Povlsen reg = <0x6 0x00103000 0x100>; 410623910f4SLars Povlsen #address-cells = <1>; 411623910f4SLars Povlsen #size-cells = <0>; 412623910f4SLars Povlsen interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; 413623910f4SLars Povlsen i2c-sda-hold-time-ns = <300>; 414623910f4SLars Povlsen clock-frequency = <100000>; 415623910f4SLars Povlsen clocks = <&ahb_clk>; 41614bc6703SLars Povlsen }; 417d14f6a1aSLars Povlsen 418d14f6a1aSLars Povlsen tmon0: tmon@610508110 { 419d14f6a1aSLars Povlsen compatible = "microchip,sparx5-temp"; 420d14f6a1aSLars Povlsen reg = <0x6 0x10508110 0xc>; 421d14f6a1aSLars Povlsen #thermal-sensor-cells = <0>; 422d14f6a1aSLars Povlsen clocks = <&ahb_clk>; 423d14f6a1aSLars Povlsen }; 424d0f482bbSSteen Hegelund 425d0f482bbSSteen Hegelund mdio0: mdio@6110102b0 { 426d0f482bbSSteen Hegelund compatible = "mscc,ocelot-miim"; 427d0f482bbSSteen Hegelund status = "disabled"; 428d0f482bbSSteen Hegelund #address-cells = <1>; 429d0f482bbSSteen Hegelund #size-cells = <0>; 430d0f482bbSSteen Hegelund reg = <0x6 0x110102b0 0x24>; 431d0f482bbSSteen Hegelund }; 432d0f482bbSSteen Hegelund 433d0f482bbSSteen Hegelund mdio1: mdio@6110102d4 { 434d0f482bbSSteen Hegelund compatible = "mscc,ocelot-miim"; 435d0f482bbSSteen Hegelund status = "disabled"; 436d0f482bbSSteen Hegelund pinctrl-0 = <&miim1_pins>; 437d0f482bbSSteen Hegelund pinctrl-names = "default"; 438d0f482bbSSteen Hegelund #address-cells = <1>; 439d0f482bbSSteen Hegelund #size-cells = <0>; 440d0f482bbSSteen Hegelund reg = <0x6 0x110102d4 0x24>; 441d0f482bbSSteen Hegelund }; 442d0f482bbSSteen Hegelund 443d0f482bbSSteen Hegelund mdio2: mdio@6110102f8 { 444d0f482bbSSteen Hegelund compatible = "mscc,ocelot-miim"; 445d0f482bbSSteen Hegelund status = "disabled"; 446d0f482bbSSteen Hegelund pinctrl-0 = <&miim2_pins>; 447d0f482bbSSteen Hegelund pinctrl-names = "default"; 448d0f482bbSSteen Hegelund #address-cells = <1>; 449d0f482bbSSteen Hegelund #size-cells = <0>; 450d0f482bbSSteen Hegelund reg = <0x6 0x110102d4 0x24>; 451d0f482bbSSteen Hegelund }; 452d0f482bbSSteen Hegelund 453d0f482bbSSteen Hegelund mdio3: mdio@61101031c { 454d0f482bbSSteen Hegelund compatible = "mscc,ocelot-miim"; 455d0f482bbSSteen Hegelund status = "disabled"; 456d0f482bbSSteen Hegelund pinctrl-0 = <&miim3_pins>; 457d0f482bbSSteen Hegelund pinctrl-names = "default"; 458d0f482bbSSteen Hegelund #address-cells = <1>; 459d0f482bbSSteen Hegelund #size-cells = <0>; 460d0f482bbSSteen Hegelund reg = <0x6 0x1101031c 0x24>; 461d0f482bbSSteen Hegelund }; 462d0f482bbSSteen Hegelund 463d0f482bbSSteen Hegelund serdes: serdes@10808000 { 464d0f482bbSSteen Hegelund compatible = "microchip,sparx5-serdes"; 465d0f482bbSSteen Hegelund #phy-cells = <1>; 466d0f482bbSSteen Hegelund clocks = <&sys_clk>; 467d0f482bbSSteen Hegelund reg = <0x6 0x10808000 0x5d0000>; 468d0f482bbSSteen Hegelund }; 469d0f482bbSSteen Hegelund 470e76d8a16SKrzysztof Kozlowski switch: switch@600000000 { 471d0f482bbSSteen Hegelund compatible = "microchip,sparx5-switch"; 472d0f482bbSSteen Hegelund reg = <0x6 0 0x401000>, 473d0f482bbSSteen Hegelund <0x6 0x10004000 0x7fc000>, 474d0f482bbSSteen Hegelund <0x6 0x11010000 0xaf0000>; 475d0f482bbSSteen Hegelund reg-names = "cpu", "dev", "gcb"; 4766015fb90SHoratiu Vultur interrupt-names = "xtr", "fdma", "ptp"; 477920c293aSSteen Hegelund interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>, 4786015fb90SHoratiu Vultur <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>, 4796015fb90SHoratiu Vultur <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; 480d0f482bbSSteen Hegelund resets = <&reset 0>; 481d0f482bbSSteen Hegelund reset-names = "switch"; 482d0f482bbSSteen Hegelund }; 4836694aee0SLars Povlsen }; 4846694aee0SLars Povlsen}; 485