Received: by 2002:ac0:946b:0:0:0:0:0 with SMTP id j40csp863223imj; Fri, 15 Feb 2019 08:03:25 -0800 (PST) X-Google-Smtp-Source: AHgI3Ia4o0h4utd13zClOItUWojUvy1hvy7EYii3hkobNnI+6FImNe4TJ3Drqs9Uxci7M48sVQhs X-Received: by 2002:a17:902:6948:: with SMTP id k8mr10843711plt.2.1550246604944; Fri, 15 Feb 2019 08:03:24 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1550246604; cv=none; d=google.com; s=arc-20160816; b=SSeV/5M812kuCUS3tk5JKKe97NQ9oUFLOr+w8IXpT/2bssvWNwi7+CCt5eEU0NE4xj LkI2g1MQvZb9pk8kMzxvqpwbHJTrtQWi0NIP0qCzxPqZ1RAAgrcrtSsM5+mmtVoml2ET ucw86khD5ktsWb8dJOp7adis69sASdY/xY25vf0TgHmC46wmW0Gb6wsTsf8yEcG2WYA1 9Rfeeo04Hsxsx/Nv1vPmy1eG4GfTFmjnme7L5R2jtT9jNZR9KwdnrpI1GJPzFnHCCsmc KeTJxSGIe2higs4+5Ju7PeHrs6y9GYCGFD5lYEpjuoGRs+nmBIY9MxlJITwvzk/I1+0D w6vA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from; bh=Zd2B3sBugur3NRI8AdQVdr3m4k4MIy51n5keXfSFZAU=; b=mfYt5JIQj0hi2lJm5Anj1Wu0VOEXEHizZRbPSp6aiJa/ByBj/nga/jM/QqFfX873Ih p1g1FWdM9xJHyQ0LN7cL3MHfCBbui2eG5VYTt4n1tPIBc2G6LYrd4JfCtwwD9p0Oj+Xf +9ViXqtwjNO+w6KMmiPV5HDrf9zb9p6/7c9qAIO0CKwxp/0MBUK6dbB/DARVHEbT96Qh zcpRSXAP9FR36SPVKxLm2/7itcZj1pNkaVKq+bN3FMbnxMslukse0I5Jr2zWPUKR0sr2 wv6fqCwApuxTwl94q1REvJq4GnXeY870BnMPNR+tdIXITPpKFWgRZb+RHlv/tYWbAPXc QxOw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=nxp.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 6si5773235pfk.243.2019.02.15.08.03.08; Fri, 15 Feb 2019 08:03:24 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=nxp.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2393601AbfBOKKV (ORCPT + 99 others); Fri, 15 Feb 2019 05:10:21 -0500 Received: from inva020.nxp.com ([92.121.34.13]:55360 "EHLO inva020.nxp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726220AbfBOKKT (ORCPT ); Fri, 15 Feb 2019 05:10:19 -0500 Received: from inva020.nxp.com (localhost [127.0.0.1]) by inva020.eu-rdc02.nxp.com (Postfix) with ESMTP id 877A71A0056; Fri, 15 Feb 2019 11:10:16 +0100 (CET) Received: from inva024.eu-rdc02.nxp.com (inva024.eu-rdc02.nxp.com [134.27.226.22]) by inva020.eu-rdc02.nxp.com (Postfix) with ESMTP id 78EE41A00C2; Fri, 15 Feb 2019 11:10:16 +0100 (CET) Received: from fsr-ub1664-016.ea.freescale.net (fsr-ub1664-016.ea.freescale.net [10.171.71.216]) by inva024.eu-rdc02.nxp.com (Postfix) with ESMTP id 13DDC205EC; Fri, 15 Feb 2019 11:10:16 +0100 (CET) From: Claudiu Manoil To: Shawn Guo , Li Yang , "David S . Miller" Cc: alexandru.marginean@nxp.com, linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH net-next v2 1/3] arm64: dts: fsl: ls1028a: Add PCI IERC node and ENETC endpoints Date: Fri, 15 Feb 2019 12:10:12 +0200 Message-Id: <1550225414-12125-2-git-send-email-claudiu.manoil@nxp.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1550225414-12125-1-git-send-email-claudiu.manoil@nxp.com> References: <1550225414-12125-1-git-send-email-claudiu.manoil@nxp.com> X-Virus-Scanned: ClamAV using ClamSMTP Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The LS1028A SoC features a PCI Integrated Endpoint Root Complex (IERC) defining several integrated PCI devices, including the ENETC ethernet controller integrated endpoints (IEPs). The IERC implements ECAM (Enhanced Configuration Access Mechanism) to provide access to the PCIe config space of the IEPs. This means the the IEPs (including ENETC) do not support the standard PCIe BARs, instead the Enhanced Allocation (EA) capability structures in the ECAM space are used to fix the base addresses in the system, and the PCI subsystem uses these structures for device enumeration and discovery. The "ranges" entries contain basic information from these EA capabily structures required by the kernel for device enumeration. The current patch also enables the first 2 ENETC PFs (Physiscal Functions) and the associated VFs (Virtual Functions), 2 VFs for each PF. Each of these ENETC PFs has an external ethernet port on the LS1028A SoC. Signed-off-by: Alex Marginean Signed-off-by: Claudiu Manoil --- v2 - none arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi | 33 ++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi index a8cf92a..7f5a8e6 100644 --- a/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi +++ b/arch/arm64/boot/dts/freescale/fsl-ls1028a.dtsi @@ -335,5 +335,38 @@ , , , ; }; + + pcie@1f0000000 { /* Integrated Endpoint Root Complex */ + compatible = "pci-host-ecam-generic"; + reg = <0x01 0xf0000000 0x0 0x100000>; + #address-cells = <3>; + #size-cells = <2>; + #interrupt-cells = <1>; + msi-parent = <&its>; + device_type = "pci"; + bus-range = <0x0 0x0>; + dma-coherent; + msi-map = <0 &its 0x17 0xe>; + iommu-map = <0 &smmu 0x17 0xe>; + /* PF0-6 BAR0 - non-prefetchable memory */ + ranges = <0x82000000 0x0 0x00000000 0x1 0xf8000000 0x0 0x160000 + /* PF0-6 BAR2 - prefetchable memory */ + 0xc2000000 0x0 0x00000000 0x1 0xf8160000 0x0 0x070000 + /* PF0: VF0-1 BAR0 - non-prefetchable memory */ + 0x82000000 0x0 0x00000000 0x1 0xf81d0000 0x0 0x020000 + /* PF0: VF0-1 BAR2 - prefetchable memory */ + 0xc2000000 0x0 0x00000000 0x1 0xf81f0000 0x0 0x020000 + /* PF1: VF0-1 BAR0 - non-prefetchable memory */ + 0x82000000 0x0 0x00000000 0x1 0xf8210000 0x0 0x020000 + /* PF1: VF0-1 BAR2 - prefetchable memory */ + 0xc2000000 0x0 0x00000000 0x1 0xf8230000 0x0 0x020000>; + + enetc_port0: pci@0,0 { + reg = <0x000000 0 0 0 0>; + }; + enetc_port1: pci@0,1 { + reg = <0x000100 0 0 0 0>; + }; + }; }; }; -- 2.7.4