1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2*f126890aSEmmanuel Vadot/* 3*f126890aSEmmanuel Vadot * Device Tree Include file for Marvell Armada 380 SoC. 4*f126890aSEmmanuel Vadot * 5*f126890aSEmmanuel Vadot * Copyright (C) 2014 Marvell 6*f126890aSEmmanuel Vadot * 7*f126890aSEmmanuel Vadot * Lior Amsalem <alior@marvell.com> 8*f126890aSEmmanuel Vadot * Gregory CLEMENT <gregory.clement@free-electrons.com> 9*f126890aSEmmanuel Vadot * Thomas Petazzoni <thomas.petazzoni@free-electrons.com> 10*f126890aSEmmanuel Vadot */ 11*f126890aSEmmanuel Vadot 12*f126890aSEmmanuel Vadot#include "armada-38x.dtsi" 13*f126890aSEmmanuel Vadot 14*f126890aSEmmanuel Vadot/ { 15*f126890aSEmmanuel Vadot model = "Marvell Armada 380 family SoC"; 16*f126890aSEmmanuel Vadot compatible = "marvell,armada380"; 17*f126890aSEmmanuel Vadot 18*f126890aSEmmanuel Vadot cpus { 19*f126890aSEmmanuel Vadot #address-cells = <1>; 20*f126890aSEmmanuel Vadot #size-cells = <0>; 21*f126890aSEmmanuel Vadot enable-method = "marvell,armada-380-smp"; 22*f126890aSEmmanuel Vadot 23*f126890aSEmmanuel Vadot cpu@0 { 24*f126890aSEmmanuel Vadot device_type = "cpu"; 25*f126890aSEmmanuel Vadot compatible = "arm,cortex-a9"; 26*f126890aSEmmanuel Vadot reg = <0>; 27*f126890aSEmmanuel Vadot }; 28*f126890aSEmmanuel Vadot }; 29*f126890aSEmmanuel Vadot 30*f126890aSEmmanuel Vadot soc { 31*f126890aSEmmanuel Vadot internal-regs { 32*f126890aSEmmanuel Vadot pinctrl@18000 { 33*f126890aSEmmanuel Vadot compatible = "marvell,mv88f6810-pinctrl"; 34*f126890aSEmmanuel Vadot }; 35*f126890aSEmmanuel Vadot }; 36*f126890aSEmmanuel Vadot 37*f126890aSEmmanuel Vadot pcie { 38*f126890aSEmmanuel Vadot compatible = "marvell,armada-370-pcie"; 39*f126890aSEmmanuel Vadot status = "disabled"; 40*f126890aSEmmanuel Vadot device_type = "pci"; 41*f126890aSEmmanuel Vadot 42*f126890aSEmmanuel Vadot #address-cells = <3>; 43*f126890aSEmmanuel Vadot #size-cells = <2>; 44*f126890aSEmmanuel Vadot 45*f126890aSEmmanuel Vadot msi-parent = <&mpic>; 46*f126890aSEmmanuel Vadot bus-range = <0x00 0xff>; 47*f126890aSEmmanuel Vadot 48*f126890aSEmmanuel Vadot ranges = 49*f126890aSEmmanuel Vadot <0x82000000 0 0x80000 MBUS_ID(0xf0, 0x01) 0x80000 0 0x00002000 50*f126890aSEmmanuel Vadot 0x82000000 0 0x40000 MBUS_ID(0xf0, 0x01) 0x40000 0 0x00002000 51*f126890aSEmmanuel Vadot 0x82000000 0 0x44000 MBUS_ID(0xf0, 0x01) 0x44000 0 0x00002000 52*f126890aSEmmanuel Vadot 0x82000000 0 0x48000 MBUS_ID(0xf0, 0x01) 0x48000 0 0x00002000 53*f126890aSEmmanuel Vadot 0x82000000 0x1 0 MBUS_ID(0x08, 0xe8) 0 1 0 /* Port 0 MEM */ 54*f126890aSEmmanuel Vadot 0x81000000 0x1 0 MBUS_ID(0x08, 0xe0) 0 1 0 /* Port 0 IO */ 55*f126890aSEmmanuel Vadot 0x82000000 0x2 0 MBUS_ID(0x04, 0xe8) 0 1 0 /* Port 1 MEM */ 56*f126890aSEmmanuel Vadot 0x81000000 0x2 0 MBUS_ID(0x04, 0xe0) 0 1 0 /* Port 1 IO */ 57*f126890aSEmmanuel Vadot 0x82000000 0x3 0 MBUS_ID(0x04, 0xd8) 0 1 0 /* Port 2 MEM */ 58*f126890aSEmmanuel Vadot 0x81000000 0x3 0 MBUS_ID(0x04, 0xd0) 0 1 0 /* Port 2 IO */>; 59*f126890aSEmmanuel Vadot 60*f126890aSEmmanuel Vadot /* x1 port */ 61*f126890aSEmmanuel Vadot pcie@1,0 { 62*f126890aSEmmanuel Vadot device_type = "pci"; 63*f126890aSEmmanuel Vadot assigned-addresses = <0x82000800 0 0x80000 0 0x2000>; 64*f126890aSEmmanuel Vadot reg = <0x0800 0 0 0 0>; 65*f126890aSEmmanuel Vadot #address-cells = <3>; 66*f126890aSEmmanuel Vadot #size-cells = <2>; 67*f126890aSEmmanuel Vadot interrupt-names = "intx"; 68*f126890aSEmmanuel Vadot interrupts-extended = <&gic GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; 69*f126890aSEmmanuel Vadot #interrupt-cells = <1>; 70*f126890aSEmmanuel Vadot ranges = <0x82000000 0 0 0x82000000 0x1 0 1 0 71*f126890aSEmmanuel Vadot 0x81000000 0 0 0x81000000 0x1 0 1 0>; 72*f126890aSEmmanuel Vadot bus-range = <0x00 0xff>; 73*f126890aSEmmanuel Vadot interrupt-map-mask = <0 0 0 7>; 74*f126890aSEmmanuel Vadot interrupt-map = <0 0 0 1 &pcie1_intc 0>, 75*f126890aSEmmanuel Vadot <0 0 0 2 &pcie1_intc 1>, 76*f126890aSEmmanuel Vadot <0 0 0 3 &pcie1_intc 2>, 77*f126890aSEmmanuel Vadot <0 0 0 4 &pcie1_intc 3>; 78*f126890aSEmmanuel Vadot marvell,pcie-port = <0>; 79*f126890aSEmmanuel Vadot marvell,pcie-lane = <0>; 80*f126890aSEmmanuel Vadot clocks = <&gateclk 8>; 81*f126890aSEmmanuel Vadot status = "disabled"; 82*f126890aSEmmanuel Vadot 83*f126890aSEmmanuel Vadot pcie1_intc: interrupt-controller { 84*f126890aSEmmanuel Vadot interrupt-controller; 85*f126890aSEmmanuel Vadot #interrupt-cells = <1>; 86*f126890aSEmmanuel Vadot }; 87*f126890aSEmmanuel Vadot }; 88*f126890aSEmmanuel Vadot 89*f126890aSEmmanuel Vadot /* x1 port */ 90*f126890aSEmmanuel Vadot pcie@2,0 { 91*f126890aSEmmanuel Vadot device_type = "pci"; 92*f126890aSEmmanuel Vadot assigned-addresses = <0x82001000 0 0x40000 0 0x2000>; 93*f126890aSEmmanuel Vadot reg = <0x1000 0 0 0 0>; 94*f126890aSEmmanuel Vadot #address-cells = <3>; 95*f126890aSEmmanuel Vadot #size-cells = <2>; 96*f126890aSEmmanuel Vadot interrupt-names = "intx"; 97*f126890aSEmmanuel Vadot interrupts-extended = <&gic GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>; 98*f126890aSEmmanuel Vadot #interrupt-cells = <1>; 99*f126890aSEmmanuel Vadot ranges = <0x82000000 0 0 0x82000000 0x2 0 1 0 100*f126890aSEmmanuel Vadot 0x81000000 0 0 0x81000000 0x2 0 1 0>; 101*f126890aSEmmanuel Vadot bus-range = <0x00 0xff>; 102*f126890aSEmmanuel Vadot interrupt-map-mask = <0 0 0 7>; 103*f126890aSEmmanuel Vadot interrupt-map = <0 0 0 1 &pcie2_intc 0>, 104*f126890aSEmmanuel Vadot <0 0 0 2 &pcie2_intc 1>, 105*f126890aSEmmanuel Vadot <0 0 0 3 &pcie2_intc 2>, 106*f126890aSEmmanuel Vadot <0 0 0 4 &pcie2_intc 3>; 107*f126890aSEmmanuel Vadot marvell,pcie-port = <1>; 108*f126890aSEmmanuel Vadot marvell,pcie-lane = <0>; 109*f126890aSEmmanuel Vadot clocks = <&gateclk 5>; 110*f126890aSEmmanuel Vadot status = "disabled"; 111*f126890aSEmmanuel Vadot 112*f126890aSEmmanuel Vadot pcie2_intc: interrupt-controller { 113*f126890aSEmmanuel Vadot interrupt-controller; 114*f126890aSEmmanuel Vadot #interrupt-cells = <1>; 115*f126890aSEmmanuel Vadot }; 116*f126890aSEmmanuel Vadot }; 117*f126890aSEmmanuel Vadot 118*f126890aSEmmanuel Vadot /* x1 port */ 119*f126890aSEmmanuel Vadot pcie@3,0 { 120*f126890aSEmmanuel Vadot device_type = "pci"; 121*f126890aSEmmanuel Vadot assigned-addresses = <0x82001800 0 0x44000 0 0x2000>; 122*f126890aSEmmanuel Vadot reg = <0x1800 0 0 0 0>; 123*f126890aSEmmanuel Vadot #address-cells = <3>; 124*f126890aSEmmanuel Vadot #size-cells = <2>; 125*f126890aSEmmanuel Vadot interrupt-names = "intx"; 126*f126890aSEmmanuel Vadot interrupts-extended = <&gic GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH>; 127*f126890aSEmmanuel Vadot #interrupt-cells = <1>; 128*f126890aSEmmanuel Vadot ranges = <0x82000000 0 0 0x82000000 0x3 0 1 0 129*f126890aSEmmanuel Vadot 0x81000000 0 0 0x81000000 0x3 0 1 0>; 130*f126890aSEmmanuel Vadot bus-range = <0x00 0xff>; 131*f126890aSEmmanuel Vadot interrupt-map-mask = <0 0 0 7>; 132*f126890aSEmmanuel Vadot interrupt-map = <0 0 0 1 &pcie3_intc 0>, 133*f126890aSEmmanuel Vadot <0 0 0 2 &pcie3_intc 1>, 134*f126890aSEmmanuel Vadot <0 0 0 3 &pcie3_intc 2>, 135*f126890aSEmmanuel Vadot <0 0 0 4 &pcie3_intc 3>; 136*f126890aSEmmanuel Vadot marvell,pcie-port = <2>; 137*f126890aSEmmanuel Vadot marvell,pcie-lane = <0>; 138*f126890aSEmmanuel Vadot clocks = <&gateclk 6>; 139*f126890aSEmmanuel Vadot status = "disabled"; 140*f126890aSEmmanuel Vadot 141*f126890aSEmmanuel Vadot pcie3_intc: interrupt-controller { 142*f126890aSEmmanuel Vadot interrupt-controller; 143*f126890aSEmmanuel Vadot #interrupt-cells = <1>; 144*f126890aSEmmanuel Vadot }; 145*f126890aSEmmanuel Vadot }; 146*f126890aSEmmanuel Vadot }; 147*f126890aSEmmanuel Vadot }; 148*f126890aSEmmanuel Vadot}; 149