1*5def4c47SEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2*5def4c47SEmmanuel Vadot/* 3*5def4c47SEmmanuel Vadot * Copyright (c) 2018 Microsemi Corporation 4*5def4c47SEmmanuel Vadot */ 5*5def4c47SEmmanuel Vadot 6*5def4c47SEmmanuel Vadot/ { 7*5def4c47SEmmanuel Vadot #address-cells = <1>; 8*5def4c47SEmmanuel Vadot #size-cells = <1>; 9*5def4c47SEmmanuel Vadot compatible = "mscc,serval"; 10*5def4c47SEmmanuel Vadot 11*5def4c47SEmmanuel Vadot cpus { 12*5def4c47SEmmanuel Vadot #address-cells = <1>; 13*5def4c47SEmmanuel Vadot #size-cells = <0>; 14*5def4c47SEmmanuel Vadot 15*5def4c47SEmmanuel Vadot cpu@0 { 16*5def4c47SEmmanuel Vadot compatible = "mips,mips24KEc"; 17*5def4c47SEmmanuel Vadot device_type = "cpu"; 18*5def4c47SEmmanuel Vadot clocks = <&cpu_clk>; 19*5def4c47SEmmanuel Vadot reg = <0>; 20*5def4c47SEmmanuel Vadot }; 21*5def4c47SEmmanuel Vadot }; 22*5def4c47SEmmanuel Vadot 23*5def4c47SEmmanuel Vadot aliases { 24*5def4c47SEmmanuel Vadot serial0 = &uart0; 25*5def4c47SEmmanuel Vadot gpio0 = &gpio; 26*5def4c47SEmmanuel Vadot }; 27*5def4c47SEmmanuel Vadot 28*5def4c47SEmmanuel Vadot cpuintc: interrupt-controller { 29*5def4c47SEmmanuel Vadot #address-cells = <0>; 30*5def4c47SEmmanuel Vadot #interrupt-cells = <1>; 31*5def4c47SEmmanuel Vadot interrupt-controller; 32*5def4c47SEmmanuel Vadot compatible = "mti,cpu-interrupt-controller"; 33*5def4c47SEmmanuel Vadot }; 34*5def4c47SEmmanuel Vadot 35*5def4c47SEmmanuel Vadot cpu_clk: cpu-clock { 36*5def4c47SEmmanuel Vadot compatible = "fixed-clock"; 37*5def4c47SEmmanuel Vadot #clock-cells = <0>; 38*5def4c47SEmmanuel Vadot clock-frequency = <416666666>; 39*5def4c47SEmmanuel Vadot }; 40*5def4c47SEmmanuel Vadot 41*5def4c47SEmmanuel Vadot ahb_clk: ahb-clk { 42*5def4c47SEmmanuel Vadot compatible = "fixed-factor-clock"; 43*5def4c47SEmmanuel Vadot #clock-cells = <0>; 44*5def4c47SEmmanuel Vadot clocks = <&cpu_clk>; 45*5def4c47SEmmanuel Vadot clock-div = <2>; 46*5def4c47SEmmanuel Vadot clock-mult = <1>; 47*5def4c47SEmmanuel Vadot }; 48*5def4c47SEmmanuel Vadot 49*5def4c47SEmmanuel Vadot ahb: ahb { 50*5def4c47SEmmanuel Vadot compatible = "simple-bus"; 51*5def4c47SEmmanuel Vadot #address-cells = <1>; 52*5def4c47SEmmanuel Vadot #size-cells = <1>; 53*5def4c47SEmmanuel Vadot ranges; 54*5def4c47SEmmanuel Vadot 55*5def4c47SEmmanuel Vadot interrupt-parent = <&intc>; 56*5def4c47SEmmanuel Vadot 57*5def4c47SEmmanuel Vadot cpu_ctrl: syscon@70000000 { 58*5def4c47SEmmanuel Vadot compatible = "mscc,ocelot-cpu-syscon", "syscon"; 59*5def4c47SEmmanuel Vadot reg = <0x70000000 0x2c>; 60*5def4c47SEmmanuel Vadot }; 61*5def4c47SEmmanuel Vadot 62*5def4c47SEmmanuel Vadot intc: interrupt-controller@70000070 { 63*5def4c47SEmmanuel Vadot compatible = "mscc,serval-icpu-intr"; 64*5def4c47SEmmanuel Vadot reg = <0x70000070 0x70>; 65*5def4c47SEmmanuel Vadot #interrupt-cells = <1>; 66*5def4c47SEmmanuel Vadot interrupt-controller; 67*5def4c47SEmmanuel Vadot interrupt-parent = <&cpuintc>; 68*5def4c47SEmmanuel Vadot interrupts = <2>; 69*5def4c47SEmmanuel Vadot }; 70*5def4c47SEmmanuel Vadot 71*5def4c47SEmmanuel Vadot uart0: serial@70100000 { 72*5def4c47SEmmanuel Vadot pinctrl-0 = <&uart_pins>; 73*5def4c47SEmmanuel Vadot pinctrl-names = "default"; 74*5def4c47SEmmanuel Vadot compatible = "ns16550a"; 75*5def4c47SEmmanuel Vadot reg = <0x70100000 0x20>; 76*5def4c47SEmmanuel Vadot interrupts = <6>; 77*5def4c47SEmmanuel Vadot clocks = <&ahb_clk>; 78*5def4c47SEmmanuel Vadot reg-io-width = <4>; 79*5def4c47SEmmanuel Vadot reg-shift = <2>; 80*5def4c47SEmmanuel Vadot 81*5def4c47SEmmanuel Vadot status = "disabled"; 82*5def4c47SEmmanuel Vadot }; 83*5def4c47SEmmanuel Vadot 84*5def4c47SEmmanuel Vadot uart2: serial@70100800 { 85*5def4c47SEmmanuel Vadot pinctrl-0 = <&uart2_pins>; 86*5def4c47SEmmanuel Vadot pinctrl-names = "default"; 87*5def4c47SEmmanuel Vadot compatible = "ns16550a"; 88*5def4c47SEmmanuel Vadot reg = <0x70100800 0x20>; 89*5def4c47SEmmanuel Vadot interrupts = <7>; 90*5def4c47SEmmanuel Vadot clocks = <&ahb_clk>; 91*5def4c47SEmmanuel Vadot reg-io-width = <4>; 92*5def4c47SEmmanuel Vadot reg-shift = <2>; 93*5def4c47SEmmanuel Vadot 94*5def4c47SEmmanuel Vadot status = "disabled"; 95*5def4c47SEmmanuel Vadot }; 96*5def4c47SEmmanuel Vadot 97*5def4c47SEmmanuel Vadot gpio: pinctrl@71070034 { 98*5def4c47SEmmanuel Vadot compatible = "mscc,serval-pinctrl"; 99*5def4c47SEmmanuel Vadot reg = <0x71070034 0x28>; 100*5def4c47SEmmanuel Vadot gpio-controller; 101*5def4c47SEmmanuel Vadot #gpio-cells = <2>; 102*5def4c47SEmmanuel Vadot gpio-ranges = <&gpio 0 0 22>; 103*5def4c47SEmmanuel Vadot 104*5def4c47SEmmanuel Vadot sgpio_pins: sgpio-pins { 105*5def4c47SEmmanuel Vadot pins = "GPIO_0", "GPIO_2", "GPIO_3", "GPIO_1"; 106*5def4c47SEmmanuel Vadot function = "sg0"; 107*5def4c47SEmmanuel Vadot }; 108*5def4c47SEmmanuel Vadot 109*5def4c47SEmmanuel Vadot i2c_pins: i2c-pins { 110*5def4c47SEmmanuel Vadot pins = "GPIO_6", "GPIO_7"; 111*5def4c47SEmmanuel Vadot function = "twi"; 112*5def4c47SEmmanuel Vadot }; 113*5def4c47SEmmanuel Vadot 114*5def4c47SEmmanuel Vadot uart_pins: uart-pins { 115*5def4c47SEmmanuel Vadot pins = "GPIO_26", "GPIO_27"; 116*5def4c47SEmmanuel Vadot function = "uart"; 117*5def4c47SEmmanuel Vadot }; 118*5def4c47SEmmanuel Vadot 119*5def4c47SEmmanuel Vadot uart2_pins: uart2-pins { 120*5def4c47SEmmanuel Vadot pins = "GPIO_13", "GPIO_14"; 121*5def4c47SEmmanuel Vadot function = "uart2"; 122*5def4c47SEmmanuel Vadot }; 123*5def4c47SEmmanuel Vadot 124*5def4c47SEmmanuel Vadot cs1_pins: cs1-pins { 125*5def4c47SEmmanuel Vadot pins = "GPIO_8"; 126*5def4c47SEmmanuel Vadot function = "si"; 127*5def4c47SEmmanuel Vadot }; 128*5def4c47SEmmanuel Vadot 129*5def4c47SEmmanuel Vadot irqext0_pins: irqext0-pins { 130*5def4c47SEmmanuel Vadot pins = "GPIO_28"; 131*5def4c47SEmmanuel Vadot function = "irq0"; 132*5def4c47SEmmanuel Vadot }; 133*5def4c47SEmmanuel Vadot 134*5def4c47SEmmanuel Vadot irqext1_pins: irqext1-pins { 135*5def4c47SEmmanuel Vadot pins = "GPIO_29"; 136*5def4c47SEmmanuel Vadot function = "irq1"; 137*5def4c47SEmmanuel Vadot }; 138*5def4c47SEmmanuel Vadot }; 139*5def4c47SEmmanuel Vadot 140*5def4c47SEmmanuel Vadot i2c0: i2c@70100400 { 141*5def4c47SEmmanuel Vadot compatible = "mscc,ocelot-i2c", "snps,designware-i2c"; 142*5def4c47SEmmanuel Vadot status = "disabled"; 143*5def4c47SEmmanuel Vadot pinctrl-0 = <&i2c_pins>; 144*5def4c47SEmmanuel Vadot pinctrl-names = "default"; 145*5def4c47SEmmanuel Vadot reg = <0x70100400 0x100>, <0x70000190 0x8>; 146*5def4c47SEmmanuel Vadot #address-cells = <1>; 147*5def4c47SEmmanuel Vadot #size-cells = <0>; 148*5def4c47SEmmanuel Vadot interrupts = <8>; 149*5def4c47SEmmanuel Vadot clock-frequency = <100000>; 150*5def4c47SEmmanuel Vadot clocks = <&ahb_clk>; 151*5def4c47SEmmanuel Vadot }; 152*5def4c47SEmmanuel Vadot }; 153*5def4c47SEmmanuel Vadot}; 154