Received: by 2002:ac0:a581:0:0:0:0:0 with SMTP id m1-v6csp1229329imm; Tue, 3 Jul 2018 07:41:05 -0700 (PDT) X-Google-Smtp-Source: ADUXVKIvdMzX2eUfeuARS1lyp0KvQVxhT6TnTfWE+psWWEdtz9SYmFUpeM6qkTQLqtMbV3EmEbal X-Received: by 2002:a63:a543:: with SMTP id r3-v6mr25844316pgu.336.1530628865238; Tue, 03 Jul 2018 07:41:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1530628865; cv=none; d=google.com; s=arc-20160816; b=PzJzycK7GxnqfloBSFVEgF+4v1lwB2PHQMaOKzSf9RRNxow5Da9J9EKb113Hpeof0w jeWGSsrnlDUgYGJdlSFbbV5M0rrK/OenPuaJPXAH9e5sPFmR9AtlTc2o3WIvkcriiaHK r6tSIIGkOFCj4OueqtmOPRLAKxKAy/vbU4oFkgnORTbW4dzIo/5npSYbZREfiRaigpZB kB+c9oAh4Z9lYbINvdEwo1nU9rBeiqb9BE6MjvuDCXAHFPaSgk29SxJVCmSW7mcfJvI+ raZDJaZTbf+EBSyAKxANCHqMYkXF6m0Js8coDIs/W1Fqt/DGaxwt7xECWwI3f1qFeb+T bMNQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:arc-authentication-results; bh=b/PrJnXiuwiZkpIKjRithXLi3mEiHuAmHCENKMOcLfA=; b=n81gqa3czsg5E3gO0vMRNH0uMQtLMNPOe2MIbat0tdn0Ix21/q7YIeiZilVEV6EK8X lyYC3Bq5phZ9Xhu5sBRa9T5PHb4Ht6nyzwy89t7C1fqnUPhyeNtiVyOM3pGFUnJb146p KCOyCv3wgmwZ/u38bx1hwOrORFjzmyBvBnEZFXHxBm52cR2NF4AdjmdQUNEtacOMaVMf h+Eon9KskrdER59SjakGD1OAwZWhJillO/+Nzi6hWvLu8wRel276CSk06Eu/VSDpui0i OWgJb7A03akIWgRNC8VKkSU78LboCSu7hIH9PZhu3vKPB/b35gyZStzfJjrQv+h+NOGp 8CRg== 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id q8-v6si1108586pgn.382.2018.07.03.07.40.50; Tue, 03 Jul 2018 07:41:05 -0700 (PDT) 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932409AbeGCOkG (ORCPT + 99 others); Tue, 3 Jul 2018 10:40:06 -0400 Received: from usa-sjc-mx-foss1.foss.arm.com ([217.140.101.70]:50224 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932234AbeGCOkF (ORCPT ); Tue, 3 Jul 2018 10:40:05 -0400 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id DD6A27A9; Tue, 3 Jul 2018 07:40:04 -0700 (PDT) Received: from [10.1.210.23] (e110467-lin.cambridge.arm.com [10.1.210.23]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 207A43F5AD; Tue, 3 Jul 2018 07:40:00 -0700 (PDT) Subject: Re: [PATCH 1/7 v5] Docs: dt: add fsl-mc iommu-map device-tree binding To: Nipun Gupta , will.deacon@arm.com, robh+dt@kernel.org, robh@kernel.org, mark.rutland@arm.com, catalin.marinas@arm.com, gregkh@linuxfoundation.org, laurentiu.tudor@nxp.com, bhelgaas@google.com Cc: hch@lst.de, joro@8bytes.org, m.szyprowski@samsung.com, shawnguo@kernel.org, frowand.list@gmail.com, iommu@lists.linux-foundation.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linuxppc-dev@lists.ozlabs.org, linux-pci@vger.kernel.org, bharat.bhushan@nxp.com, stuyoder@gmail.com, leoyang.li@nxp.com References: <1526824191-7000-1-git-send-email-nipun.gupta@nxp.com> <1526824191-7000-2-git-send-email-nipun.gupta@nxp.com> From: Robin Murphy Message-ID: Date: Tue, 3 Jul 2018 15:39:59 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0 MIME-Version: 1.0 In-Reply-To: <1526824191-7000-2-git-send-email-nipun.gupta@nxp.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-GB Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 20/05/18 14:49, Nipun Gupta wrote: > The existing IOMMU bindings cannot be used to specify the relationship > between fsl-mc devices and IOMMUs. This patch adds a generic binding for > mapping fsl-mc devices to IOMMUs, using iommu-map property. > > Signed-off-by: Nipun Gupta > Reviewed-by: Rob Herring > --- > .../devicetree/bindings/misc/fsl,qoriq-mc.txt | 39 ++++++++++++++++++++++ > 1 file changed, 39 insertions(+) > > diff --git a/Documentation/devicetree/bindings/misc/fsl,qoriq-mc.txt b/Documentation/devicetree/bindings/misc/fsl,qoriq-mc.txt > index 6611a7c..8cbed4f 100644 > --- a/Documentation/devicetree/bindings/misc/fsl,qoriq-mc.txt > +++ b/Documentation/devicetree/bindings/misc/fsl,qoriq-mc.txt > @@ -9,6 +9,25 @@ blocks that can be used to create functional hardware objects/devices > such as network interfaces, crypto accelerator instances, L2 switches, > etc. > > +For an overview of the DPAA2 architecture and fsl-mc bus see: > +drivers/staging/fsl-mc/README.txt Nit: Looks like that's Documentation/networking/dpaa2/overview.rst now. > + > +As described in the above overview, all DPAA2 objects in a DPRC share the > +same hardware "isolation context" and a 10-bit value called an ICID > +(isolation context id) is expressed by the hardware to identify > +the requester. > + > +The generic 'iommus' property is insufficient to describe the relationship > +between ICIDs and IOMMUs, so an iommu-map property is used to define > +the set of possible ICIDs under a root DPRC and how they map to > +an IOMMU. > + > +For generic IOMMU bindings, see > +Documentation/devicetree/bindings/iommu/iommu.txt. > + > +For arm-smmu binding, see: > +Documentation/devicetree/bindings/iommu/arm,smmu.txt. > + > Required properties: > > - compatible > @@ -88,14 +107,34 @@ Sub-nodes: > Value type: > Definition: Specifies the phandle to the PHY device node associated > with the this dpmac. > +Optional properties: > + > +- iommu-map: Maps an ICID to an IOMMU and associated iommu-specifier > + data. > + > + The property is an arbitrary number of tuples of > + (icid-base,iommu,iommu-base,length). > + > + Any ICID i in the interval [icid-base, icid-base + length) is > + associated with the listed IOMMU, with the iommu-specifier > + (i - icid-base + iommu-base). > > Example: > > + smmu: iommu@5000000 { > + compatible = "arm,mmu-500"; > + #iommu-cells = <2>; This should be 1 if stream-match-mask is present. Bad example is bad :) Robin. > + stream-match-mask = <0x7C00>; > + ... > + }; > + > fsl_mc: fsl-mc@80c000000 { > compatible = "fsl,qoriq-mc"; > reg = <0x00000008 0x0c000000 0 0x40>, /* MC portal base */ > <0x00000000 0x08340000 0 0x40000>; /* MC control reg */ > msi-parent = <&its>; > + /* define map for ICIDs 23-64 */ > + iommu-map = <23 &smmu 23 41>; > #address-cells = <3>; > #size-cells = <1>; > >