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