1f8c8ceddSGregory CLEMENT// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2f8c8ceddSGregory CLEMENT/* 3f8c8ceddSGregory CLEMENT * Copyright (c) 2018 Microsemi Corporation 4f8c8ceddSGregory CLEMENT */ 5f8c8ceddSGregory CLEMENT 6f8c8ceddSGregory CLEMENT#include <dt-bindings/gpio/gpio.h> 7f8c8ceddSGregory CLEMENT 8f8c8ceddSGregory CLEMENT/ { 9f8c8ceddSGregory CLEMENT #address-cells = <1>; 10f8c8ceddSGregory CLEMENT #size-cells = <1>; 11f8c8ceddSGregory CLEMENT compatible = "mscc,luton"; 12f8c8ceddSGregory CLEMENT 13f8c8ceddSGregory CLEMENT cpus { 14f8c8ceddSGregory CLEMENT #address-cells = <1>; 15f8c8ceddSGregory CLEMENT #size-cells = <0>; 16f8c8ceddSGregory CLEMENT 17f8c8ceddSGregory CLEMENT cpu@0 { 18f8c8ceddSGregory CLEMENT compatible = "mips,mips24KEc"; 19f8c8ceddSGregory CLEMENT device_type = "cpu"; 20f8c8ceddSGregory CLEMENT reg = <0>; 21f8c8ceddSGregory CLEMENT }; 22f8c8ceddSGregory CLEMENT }; 23f8c8ceddSGregory CLEMENT 24f8c8ceddSGregory CLEMENT aliases { 25f8c8ceddSGregory CLEMENT serial0 = &uart0; 26f8c8ceddSGregory CLEMENT }; 27f8c8ceddSGregory CLEMENT 28738f2b14SLars Povlsen sys_clk: sys-clk { 29738f2b14SLars Povlsen compatible = "fixed-clock"; 30738f2b14SLars Povlsen #clock-cells = <0>; 31738f2b14SLars Povlsen clock-frequency = <250000000>; 32738f2b14SLars Povlsen }; 33f8c8ceddSGregory CLEMENT ahb_clk: ahb-clk { 34f8c8ceddSGregory CLEMENT compatible = "fixed-clock"; 35f8c8ceddSGregory CLEMENT #clock-cells = <0>; 36f8c8ceddSGregory CLEMENT clock-frequency = <208333333>; 37f8c8ceddSGregory CLEMENT }; 38f8c8ceddSGregory CLEMENT 39f8c8ceddSGregory CLEMENT ahb { 40f8c8ceddSGregory CLEMENT compatible = "simple-bus"; 41f8c8ceddSGregory CLEMENT #address-cells = <1>; 42f8c8ceddSGregory CLEMENT #size-cells = <1>; 43f8c8ceddSGregory CLEMENT ranges = <0 0x60000000 0x10200000>; 44f8c8ceddSGregory CLEMENT 45f8c8ceddSGregory CLEMENT uart0: serial@10100000 { 46f8c8ceddSGregory CLEMENT pinctrl-0 = <&uart_pins>; 47f8c8ceddSGregory CLEMENT pinctrl-names = "default"; 48f8c8ceddSGregory CLEMENT 49f8c8ceddSGregory CLEMENT compatible = "ns16550a"; 50f8c8ceddSGregory CLEMENT reg = <0x10100000 0x20>; 51f8c8ceddSGregory CLEMENT clocks = <&ahb_clk>; 52f8c8ceddSGregory CLEMENT reg-io-width = <4>; 53f8c8ceddSGregory CLEMENT reg-shift = <2>; 54f8c8ceddSGregory CLEMENT 55f8c8ceddSGregory CLEMENT status = "disabled"; 56f8c8ceddSGregory CLEMENT }; 57f8c8ceddSGregory CLEMENT 58f8c8ceddSGregory CLEMENT gpio: pinctrl@70068 { 59f8c8ceddSGregory CLEMENT compatible = "mscc,luton-pinctrl"; 60f8c8ceddSGregory CLEMENT reg = <0x70068 0x68>; 61f8c8ceddSGregory CLEMENT gpio-controller; 62f8c8ceddSGregory CLEMENT #gpio-cells = <2>; 63f8c8ceddSGregory CLEMENT gpio-ranges = <&gpio 0 0 32>; 64f8c8ceddSGregory CLEMENT 65738f2b14SLars Povlsen sgpio_pins: sgpio-pins { 66738f2b14SLars Povlsen pins = "GPIO_0", "GPIO_1", "GPIO_2", "GPIO_3"; 67738f2b14SLars Povlsen function = "sio"; 68738f2b14SLars Povlsen }; 69f8c8ceddSGregory CLEMENT uart_pins: uart-pins { 70f8c8ceddSGregory CLEMENT pins = "GPIO_30", "GPIO_31"; 71f8c8ceddSGregory CLEMENT function = "uart"; 72f8c8ceddSGregory CLEMENT }; 73738f2b14SLars Povlsen }; 74f8c8ceddSGregory CLEMENT 75738f2b14SLars Povlsen sgpio: gpio@70130 { 76738f2b14SLars Povlsen compatible = "mscc,luton-sgpio"; 77738f2b14SLars Povlsen status = "disabled"; 78738f2b14SLars Povlsen clocks = <&sys_clk>; 79738f2b14SLars Povlsen pinctrl-0 = <&sgpio_pins>; 80738f2b14SLars Povlsen pinctrl-names = "default"; 81738f2b14SLars Povlsen reg = <0x0070130 0x100>; 82738f2b14SLars Povlsen gpio-controller; 83738f2b14SLars Povlsen #gpio-cells = <2>; 84738f2b14SLars Povlsen gpio-ranges = <&sgpio 0 0 64>; 85f8c8ceddSGregory CLEMENT }; 86f8c8ceddSGregory CLEMENT 87f8c8ceddSGregory CLEMENT spi0: spi-bitbang { 886492c916SLars Povlsen compatible = "mscc,luton-bb-spi"; 89f8c8ceddSGregory CLEMENT status = "okay"; 906492c916SLars Povlsen reg = <0x10000064 0x4>; 91f8c8ceddSGregory CLEMENT num-chipselects = <1>; 92f8c8ceddSGregory CLEMENT #address-cells = <1>; 93f8c8ceddSGregory CLEMENT #size-cells = <0>; 94f8c8ceddSGregory CLEMENT }; 95*ee7b65f2SHoratiu Vultur 96*ee7b65f2SHoratiu Vultur switch: switch@1010000 { 97*ee7b65f2SHoratiu Vultur compatible = "mscc,vsc7527-switch"; 98*ee7b65f2SHoratiu Vultur reg = <0x1e0000 0x0100>, // VTSS_TO_DEV_0 99*ee7b65f2SHoratiu Vultur <0x1f0000 0x0100>, // VTSS_TO_DEV_1 100*ee7b65f2SHoratiu Vultur <0x200000 0x0100>, // VTSS_TO_DEV_2 101*ee7b65f2SHoratiu Vultur <0x210000 0x0100>, // VTSS_TO_DEV_3 102*ee7b65f2SHoratiu Vultur <0x220000 0x0100>, // VTSS_TO_DEV_4 103*ee7b65f2SHoratiu Vultur <0x230000 0x0100>, // VTSS_TO_DEV_5 104*ee7b65f2SHoratiu Vultur <0x240000 0x0100>, // VTSS_TO_DEV_6 105*ee7b65f2SHoratiu Vultur <0x250000 0x0100>, // VTSS_TO_DEV_7 106*ee7b65f2SHoratiu Vultur <0x260000 0x0100>, // VTSS_TO_DEV_8 107*ee7b65f2SHoratiu Vultur <0x270000 0x0100>, // VTSS_TO_DEV_9 108*ee7b65f2SHoratiu Vultur <0x280000 0x0100>, // VTSS_TO_DEV_10 109*ee7b65f2SHoratiu Vultur <0x290000 0x0100>, // VTSS_TO_DEV_11 110*ee7b65f2SHoratiu Vultur <0x2a0000 0x0100>, // VTSS_TO_DEV_12 111*ee7b65f2SHoratiu Vultur <0x2b0000 0x0100>, // VTSS_TO_DEV_13 112*ee7b65f2SHoratiu Vultur <0x2c0000 0x0100>, // VTSS_TO_DEV_14 113*ee7b65f2SHoratiu Vultur <0x2d0000 0x0100>, // VTSS_TO_DEV_15 114*ee7b65f2SHoratiu Vultur <0x2e0000 0x0100>, // VTSS_TO_DEV_16 115*ee7b65f2SHoratiu Vultur <0x2f0000 0x0100>, // VTSS_TO_DEV_17 116*ee7b65f2SHoratiu Vultur <0x300000 0x0100>, // VTSS_TO_DEV_18 117*ee7b65f2SHoratiu Vultur <0x310000 0x0100>, // VTSS_TO_DEV_19 118*ee7b65f2SHoratiu Vultur <0x320000 0x0100>, // VTSS_TO_DEV_20 119*ee7b65f2SHoratiu Vultur <0x330000 0x0100>, // VTSS_TO_DEV_21 120*ee7b65f2SHoratiu Vultur <0x340000 0x0100>, // VTSS_TO_DEV_22 121*ee7b65f2SHoratiu Vultur <0x350000 0x0100>, // VTSS_TO_DEV_23 122*ee7b65f2SHoratiu Vultur <0x010000 0x1000>, // VTSS_TO_SYS 123*ee7b65f2SHoratiu Vultur <0x020000 0x1000>, // VTSS_TO_ANA 124*ee7b65f2SHoratiu Vultur <0x030000 0x1000>, // VTSS_TO_REW 125*ee7b65f2SHoratiu Vultur <0x070000 0x1000>, // VTSS_TO_DEVCPU_GCB 126*ee7b65f2SHoratiu Vultur <0x080000 0x0100>, // VTSS_TO_DEVCPU_QS 127*ee7b65f2SHoratiu Vultur <0x0a0000 0x0100>; // VTSS_TO_HSIO 128*ee7b65f2SHoratiu Vultur reg-names = "port0", "port1", "port2", "port3", 129*ee7b65f2SHoratiu Vultur "port4", "port5", "port6", "port7", 130*ee7b65f2SHoratiu Vultur "port8", "port9", "port10", "port11", 131*ee7b65f2SHoratiu Vultur "port12", "port13", "port14", "port15", 132*ee7b65f2SHoratiu Vultur "port16", "port17", "port18", "port19", 133*ee7b65f2SHoratiu Vultur "port20", "port21", "port22", "port23", 134*ee7b65f2SHoratiu Vultur "sys", "ana", "rew", "gcb", "qs", "hsio"; 135*ee7b65f2SHoratiu Vultur status = "okay"; 136*ee7b65f2SHoratiu Vultur 137*ee7b65f2SHoratiu Vultur ethernet-ports { 138*ee7b65f2SHoratiu Vultur #address-cells = <1>; 139*ee7b65f2SHoratiu Vultur #size-cells = <0>; 140*ee7b65f2SHoratiu Vultur 141*ee7b65f2SHoratiu Vultur port0: port@0 { 142*ee7b65f2SHoratiu Vultur reg = <0>; 143*ee7b65f2SHoratiu Vultur }; 144*ee7b65f2SHoratiu Vultur port1: port@1 { 145*ee7b65f2SHoratiu Vultur reg = <1>; 146*ee7b65f2SHoratiu Vultur }; 147*ee7b65f2SHoratiu Vultur port2: port@2 { 148*ee7b65f2SHoratiu Vultur reg = <2>; 149*ee7b65f2SHoratiu Vultur }; 150*ee7b65f2SHoratiu Vultur port3: port@3 { 151*ee7b65f2SHoratiu Vultur reg = <3>; 152*ee7b65f2SHoratiu Vultur }; 153*ee7b65f2SHoratiu Vultur port4: port@4 { 154*ee7b65f2SHoratiu Vultur reg = <4>; 155*ee7b65f2SHoratiu Vultur }; 156*ee7b65f2SHoratiu Vultur port5: port@5 { 157*ee7b65f2SHoratiu Vultur reg = <5>; 158*ee7b65f2SHoratiu Vultur }; 159*ee7b65f2SHoratiu Vultur port6: port@6 { 160*ee7b65f2SHoratiu Vultur reg = <6>; 161*ee7b65f2SHoratiu Vultur }; 162*ee7b65f2SHoratiu Vultur port7: port@7 { 163*ee7b65f2SHoratiu Vultur reg = <7>; 164*ee7b65f2SHoratiu Vultur }; 165*ee7b65f2SHoratiu Vultur port8: port@8 { 166*ee7b65f2SHoratiu Vultur reg = <8>; 167*ee7b65f2SHoratiu Vultur }; 168*ee7b65f2SHoratiu Vultur port9: port@9 { 169*ee7b65f2SHoratiu Vultur reg = <9>; 170*ee7b65f2SHoratiu Vultur }; 171*ee7b65f2SHoratiu Vultur port10: port@10 { 172*ee7b65f2SHoratiu Vultur reg = <10>; 173*ee7b65f2SHoratiu Vultur }; 174*ee7b65f2SHoratiu Vultur port11: port@11 { 175*ee7b65f2SHoratiu Vultur reg = <11>; 176*ee7b65f2SHoratiu Vultur }; 177*ee7b65f2SHoratiu Vultur port12: port@12 { 178*ee7b65f2SHoratiu Vultur reg = <12>; 179*ee7b65f2SHoratiu Vultur }; 180*ee7b65f2SHoratiu Vultur port13: port@13 { 181*ee7b65f2SHoratiu Vultur reg = <13>; 182*ee7b65f2SHoratiu Vultur }; 183*ee7b65f2SHoratiu Vultur port14: port@14 { 184*ee7b65f2SHoratiu Vultur reg = <14>; 185*ee7b65f2SHoratiu Vultur }; 186*ee7b65f2SHoratiu Vultur port15: port@15 { 187*ee7b65f2SHoratiu Vultur reg = <15>; 188*ee7b65f2SHoratiu Vultur }; 189*ee7b65f2SHoratiu Vultur port16: port@16 { 190*ee7b65f2SHoratiu Vultur reg = <16>; 191*ee7b65f2SHoratiu Vultur }; 192*ee7b65f2SHoratiu Vultur port17: port@17 { 193*ee7b65f2SHoratiu Vultur reg = <17>; 194*ee7b65f2SHoratiu Vultur }; 195*ee7b65f2SHoratiu Vultur port18: port@18 { 196*ee7b65f2SHoratiu Vultur reg = <18>; 197*ee7b65f2SHoratiu Vultur }; 198*ee7b65f2SHoratiu Vultur port19: port@19 { 199*ee7b65f2SHoratiu Vultur reg = <19>; 200*ee7b65f2SHoratiu Vultur }; 201*ee7b65f2SHoratiu Vultur port20: port@20 { 202*ee7b65f2SHoratiu Vultur reg = <20>; 203*ee7b65f2SHoratiu Vultur }; 204*ee7b65f2SHoratiu Vultur port21: port@21 { 205*ee7b65f2SHoratiu Vultur reg = <21>; 206*ee7b65f2SHoratiu Vultur }; 207*ee7b65f2SHoratiu Vultur port22: port@22 { 208*ee7b65f2SHoratiu Vultur reg = <22>; 209*ee7b65f2SHoratiu Vultur }; 210*ee7b65f2SHoratiu Vultur port23: port@23 { 211*ee7b65f2SHoratiu Vultur reg = <23>; 212*ee7b65f2SHoratiu Vultur }; 213*ee7b65f2SHoratiu Vultur }; 214*ee7b65f2SHoratiu Vultur }; 215*ee7b65f2SHoratiu Vultur 216*ee7b65f2SHoratiu Vultur mdio0: mdio@700a0 { 217*ee7b65f2SHoratiu Vultur #address-cells = <1>; 218*ee7b65f2SHoratiu Vultur #size-cells = <0>; 219*ee7b65f2SHoratiu Vultur compatible = "mscc,luton-miim"; 220*ee7b65f2SHoratiu Vultur reg = <0x700a0 0x24>; 221*ee7b65f2SHoratiu Vultur status = "disabled"; 222*ee7b65f2SHoratiu Vultur 223*ee7b65f2SHoratiu Vultur phy0: ethernet-phy@0 { 224*ee7b65f2SHoratiu Vultur reg = <0>; 225*ee7b65f2SHoratiu Vultur }; 226*ee7b65f2SHoratiu Vultur phy1: ethernet-phy@1 { 227*ee7b65f2SHoratiu Vultur reg = <1>; 228*ee7b65f2SHoratiu Vultur }; 229*ee7b65f2SHoratiu Vultur phy2: ethernet-phy@2 { 230*ee7b65f2SHoratiu Vultur reg = <2>; 231*ee7b65f2SHoratiu Vultur }; 232*ee7b65f2SHoratiu Vultur phy3: ethernet-phy@3 { 233*ee7b65f2SHoratiu Vultur reg = <3>; 234*ee7b65f2SHoratiu Vultur }; 235*ee7b65f2SHoratiu Vultur phy4: ethernet-phy@4 { 236*ee7b65f2SHoratiu Vultur reg = <4>; 237*ee7b65f2SHoratiu Vultur }; 238*ee7b65f2SHoratiu Vultur phy5: ethernet-phy@5 { 239*ee7b65f2SHoratiu Vultur reg = <5>; 240*ee7b65f2SHoratiu Vultur }; 241*ee7b65f2SHoratiu Vultur phy6: ethernet-phy@6 { 242*ee7b65f2SHoratiu Vultur reg = <6>; 243*ee7b65f2SHoratiu Vultur }; 244*ee7b65f2SHoratiu Vultur phy7: ethernet-phy@7 { 245*ee7b65f2SHoratiu Vultur reg = <7>; 246*ee7b65f2SHoratiu Vultur }; 247*ee7b65f2SHoratiu Vultur phy8: ethernet-phy@8 { 248*ee7b65f2SHoratiu Vultur reg = <8>; 249*ee7b65f2SHoratiu Vultur }; 250*ee7b65f2SHoratiu Vultur phy9: ethernet-phy@9 { 251*ee7b65f2SHoratiu Vultur reg = <9>; 252*ee7b65f2SHoratiu Vultur }; 253*ee7b65f2SHoratiu Vultur phy10: ethernet-phy@10 { 254*ee7b65f2SHoratiu Vultur reg = <10>; 255*ee7b65f2SHoratiu Vultur }; 256*ee7b65f2SHoratiu Vultur phy11: ethernet-phy@11 { 257*ee7b65f2SHoratiu Vultur reg = <11>; 258*ee7b65f2SHoratiu Vultur }; 259*ee7b65f2SHoratiu Vultur }; 260f8c8ceddSGregory CLEMENT }; 261f8c8ceddSGregory CLEMENT}; 262