From patchwork Sun May 20 13:49:45 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nipun Gupta X-Patchwork-Id: 917187 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=linux-pci-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="H69tdCJJ"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 40pjyY5myVz9s19 for ; Sun, 20 May 2018 23:52:21 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752528AbeETNuh (ORCPT ); Sun, 20 May 2018 09:50:37 -0400 Received: from mail-eopbgr40075.outbound.protection.outlook.com ([40.107.4.75]:20992 "EHLO EUR03-DB5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752509AbeETNua (ORCPT ); Sun, 20 May 2018 09:50:30 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=d9h3X6nH80a78dCyfgRM76QM/OR4gGACQP0YP49V334=; b=H69tdCJJjLLIvczQERk6XprWZdzkRLZOfJIOptHuVkF4pIJlhgHFOIqMwS+MjOboAyDJgNc3vMMWdjaj7tVw0X0JB4pkAr40VLwGnfLTB5/QxhS+14CrxO6QpeAfbBNak3IXIU9LYwVygVNGmzF7fS8bRkcH7lYN5K+RD+BFxVg= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=nipun.gupta@nxp.com; Received: from b27504-OptiPlex-790.ap.freescale.net (14.142.187.166) by VI1PR0401MB2429.eurprd04.prod.outlook.com (2603:10a6:800:2a::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.776.11; Sun, 20 May 2018 13:50:22 +0000 From: Nipun Gupta To: robin.murphy@arm.com, 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, Nipun Gupta Subject: [PATCH 1/7 v5] Docs: dt: add fsl-mc iommu-map device-tree binding Date: Sun, 20 May 2018 19:19:45 +0530 Message-Id: <1526824191-7000-2-git-send-email-nipun.gupta@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1526824191-7000-1-git-send-email-nipun.gupta@nxp.com> References: <1526824191-7000-1-git-send-email-nipun.gupta@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: BM1PR01CA0075.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:1::15) To VI1PR0401MB2429.eurprd04.prod.outlook.com (2603:10a6:800:2a::22) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(48565401081)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:VI1PR0401MB2429; X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 3:we2Q5nW4B1mvLfceGQH9xU+6HYy3A/8sh1aVn5VYtq7az+V23dhd2lW2cLh/+8j6YbOGTJ9esvrP2LbRPyizINL9NLYNwP7saQHiVlIe6aA1IJMr/Zz6oIaGqFmYAZYzvu0F22qFbEen6fBCkjQPR7J+Yuj9YPuh7IRaZq4wUSlvRne6++sPEDoLWr9Z9JL60/1NIWm4WS9UxAh62qtUN/bQFBj7NB79mm4RG9MbnzB/zCv/u98E6uJXBFmw0DAg; 25:DY9VXazCfKTbRcfD6ENcRw3ZWPJoPH7jYusXu2nsbzjIeb2S9NgMclGIWOj29Q3x7T/P8oeyQwt/rUdmRIw/1gnTXOsi54/aT61sFLKYB1qLF/Bo6YugJmd9rllNjqvF7DJZF2ygciv3+w7eoRd6VDuZ812RfGhAFJOzuAYqVpL2IMUPF0XSLkr+uW1l09PyqxydENIAYxpMY93fzIuHA+VvkfauNqyyum/4FPazw/Bm9pov5CZ6WxvELXibIn2Kp+U4HO/ga7cQ+td0XaTnBxpTYp0xnYpDtqQAB5o3DETDyVXxhmkvf7X3cQirR/hdFgakvWDzVzP06l++CsfTzw==; 31:coPLw2S4z7CM0sPNz/IP2yiYFdHFUJxo6/feMNmGM3vZvr7aJGAU+iqcm2j67zwgOKXWbKSNWj5cDvAkkAGAqbgEXXNGV7nS4kyeGjodr3yaY8bxEqe+1m0t0vlnm61Zi6KT6kcs0KzfcyB1/hepVCXYefLHD0AR/cFN4FNee/3G6G+vGjcdBk0a8rShYnx/MbrvdFx18TPAt73d3D6qLTVQJ5mPKSQvfrELjrOnSYI= X-MS-TrafficTypeDiagnostic: VI1PR0401MB2429: X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 20:LTDchMq2JKTizoAN5k8RDXWF4r99aBS3CsJbltkP3x8PhbhyLE+9uZFZBShbMj0Ttzs0rJSfOytC9DJzUliYsc1O2nemch6ct0bWW5+bRBI8yEVPyTmSffAN3s0S5Tob20n09gE36+tFmZHtnklnBRS4GaI5svyROmtOF+1RCk5xvuGh7X2z83xFy1brcEBusYz4yvrZ9qcfsZQsKKPVUfYNlGgiyPVizaxyGEcs9xefGbw/eNrCi++frGZ5tkI6ZjIY1NEJgGJBHIfzSQ2UgEb6YAc0Yy4/flmv3wXUQnR2VtKNbqpfaH87dEYegBc5hGUlkvd7tW5Jl87ibvgg++8rQQSwsJP3JH2N0K8CJd8MspQNIK30KviXgmOO1Kxbr09QCHcuxyR6WOe5kIw7qVc0Q5nb+s9+e33aNz8+2RPGw/LOlYeN/QiUO4mQhFn68PSM/FTUSkrW4NZ0z5BIzCYd5vwFkE2UWMeKqtK0E88JL5z9EWYDvdVoa0sjBtCi; 4:kMlrE1hjemaH3M+QOHQFXtDZVhJ+3d60E3fFJTUtsiK1v2h9pB40wFcsU9SSO/jtdFQYuB/PRrOFbiRmj2jU3A3Ec8X8DsonKyATu/o+yT2f2fT6SnL9pTRiK9AARJVpN6rXSneICc4UdzI58kesA1A5MZKs5sBIz93lWOXe+ensR+XsynBYZ+tTggLmXZRvlFIxN2QdIGgyZbv6Y000yoEjQvb7ZkXYXdSMvzytDFlxDkChcwc0QPWiciIIZzhYs6+kYx1bEncJS4sdOCRGDudJ01j3M7Y5Bu7O/dzHWz1s9z67e1QO2lFIBvzMMUa8BzSMnYrGTlfDUphzNTrz5hkdhlRSQ9FaDRYxofF/6CA= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197)(275809806118684); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(10201501046)(93006095)(93001095)(3231254)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(20161123560045)(20161123562045)(20161123558120)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016); SRVR:VI1PR0401MB2429; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0401MB2429; X-Forefront-PRVS: 06780E24F8 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(346002)(376002)(39860400002)(39380400002)(396003)(366004)(189003)(199004)(316002)(50466002)(50226002)(47776003)(3846002)(86362001)(39060400002)(66066001)(6116002)(8936002)(575784001)(16526019)(8676002)(7416002)(53936002)(6512007)(48376002)(486006)(186003)(26005)(44832011)(478600001)(81166006)(81156014)(76176011)(5660300001)(7736002)(52116002)(16586007)(51416003)(6486002)(97736004)(36756003)(68736007)(305945005)(4326008)(6666003)(106356001)(446003)(25786009)(5009440100003)(11346002)(55236004)(6506007)(386003)(105586002)(476003)(2616005)(2906002)(956004)(110426005); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0401MB2429; H:b27504-OptiPlex-790.ap.freescale.net; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 23:IIi7cf+T9eafLAcvcHVCuzXKPjYyBPOL38lq/+uJwoHu30NoM7NikpCvmIbzYfmCE2Lq1qOlW8tpGeybS7yixVIfqguuFMx5ddjrh4VU3kjIM16yFZvqni4MSOs/amsAqIw7BfXn87hYiIeT2PAXXkWie7DzHx34x82DiHFbB922GSfW1FOPd0Yia4gpqBD3cdXcuHS6Iw0P+tqT6uel//yMCkR5R8uRfQvjNpdiX2/khDMD1LEslUo5Gi0matYIoAIC91YmO+1NohVj/9/YxxHu2YxbHfqh4XRmiN8P4etnUWfFhi9mvEggieVDgFV9BcStPdLh4+VR+Rw6LaU25Ew9j2Lm0vh9KbBYS3deEqcoGkpELAan8pgSX7uRapbMa4D57fzxnuZrJ4oWf3ge3ai2bUowgss3k3TrkKMs7K1sQR0K7/R6nDmRcf+M9Ue0pTk//ZvN6NKg/PPmU460sTZfX5e0G/W4CKl6WAGpdmoO1HSBrl7AuM5doLZA4DLnxD5BhKmmgsTMC+oCRt7+ZgRad8utmQUoWNJXYd5xAEjL/wSnxFnE2yRTSbWgtTEB6j/QhBEfrnx8+lcH7Uui2SZ5k+sGZ26GNJ+pyVaNS086Ix7C2eqQcsWAIOY3vbC2xLkrQSdO8UeQ3ZtneEIVXq2aJaiPg5n9KDZ5mCo2WkRpsBHyDJ+/lWCrz6nvDh2iZNErzWqFu5UJZ+wbG+lTXf8zJznUUot6mCoSKESFYo7BiL0qxqybrnJH5J+JIJqFvublfSKcRt/495kxZZyX/YpcqeJXsDTcrCT+PZIW+BX/eAq3V83o4IKQcMjxpaVbNeFpfdk9xvSr+xpAMEI0xrlS0dADBCl1FEMb1SM7GpkZ03/nYB7JZT92HNtiZtEE1jC+MxEWdq1dbnpHiSDow5yEVnP8lq5LJiIkf/Qw/H4PZdQUaXi+OyPW9NNIDb2YS/YQtu7x1Hv92dfYqWKTr1X5HfXUBZtMd6aIQYQfGyZ6+UzAnxtosTuBHVCY99pEvhadqxwVqACuwoO50hqNzwgYHAtyzIsPd0b+HrhHjD7VdiH6kdwu4CkEF8LVNu/tWwBVWNMGfDO961aPIp+zLG0HzS+4nmIow/EQnCT3UfnDuzgzKkYN4alaTPrKvsj9zzYTwctA8W5yBpkm2evTpiBWka4k6PAxACfqoOMLu9znzMt/p3vjGvrEv2ttWzU1ffaFeheJ1izCu2AjaSxFLcDz7B6sY/97DMuPnsVnSeQtWAiM9bnZ1uLS6IYYpsGAMfkfTXkIiSTzNcgQ+81BSUbQtxC08fR1/28sQrppZZiBnUjnlgN0sfFLfN43U0Dc X-Microsoft-Antispam-Message-Info: TB4xoZUN5ed9dlJIXe06+BujYYFtIjzcypuQ9C3d647k6XQF6m4pn9yIxNQUxstZRY8tAQ6Y0bVlwOYrKaJU6M+LsZBQa+GjcBHNAhYrSPBv+wj0ELyDKxRBjHzV+pVpFNGTvoYfuXbehFEPbJ4eLIkti4i8HGWG112wpUCgsqh1osXMtRxJ5RzryxvujN+C X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 6:5Zl7B7+dNRH5CYX+tXKhnEEHZYVHNzMZqzKWffoDMIMfUmqabqJBvRa8a4WizN0p4EXf+7HIyK8H0FlN5Oab7ssJrY1EcNNFlKNFHkBEK8tQqxfDVuvY47p+Oj0WK2ThqZkC62r1jUDN+uzVXGr+W/B7+PYmiFv85e6mUO8Fm5xdk4hiu6tZOdWLpDi8s2Oc897YqtQd0EBZMuAx7a7RRJQpPpxIwE2iTZn7udzpC2abxIp7u5Ys2no7qMSIWeVPfUEikaOjOqYTOyvaPdvBQsP52WeBFZuaYw+LB0Vt1GNirk3+Irflq1plAE4m5Hl73fCN6ZVOXDABXimxSSvT7rcnJsBASlZhZxrQNOlR9ivYoJvU/Bv5ZtF8I46norQ6EOplV+p+XYaWoUhlOWeykATBS1LbDvq58QzbSNIy1d2jfMat1vlNRVDYGO/HXnMLpPhyf2ZF03c7mbeZAJ2rwQ==; 5:6No1LtH8Fk8JPvHZLoIsud3V3MN5mDZ2YSsIsOvuqLDqsaKnn3/LJ3lJJLLDY04dapq7UH+HKCAuLc02VdppxTqfNoq3ugJciaymdU206vCk/auHGxB2nTlafW2Ec6EcZa9/diWOgZwaI6FsaNY/9BHSC8lMfYMqpAkQel1N7o4=; 24:oEatpSkJEyGVCCPk7gSWWswza+NTENZcSK/7iY39tNSurE3cTjru9k1cwKsP274Jf2EpFEFqBGyrq6xb23Dsp33iyyINEKj8FGMDSZSenVY= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 7:DR0rWUQKIO9tPbwoI7MBYhJ7a8Kb0kdfcty0HWxUqruGNxS9X4McNctkDTsZmIIwGdS+4SG4jc9cn1VwEQF/bHWz+n+2XVJxqxjEcEn8Bu+tX8mIfoco4QDl9f2W4vNVU9JeD4YE2upuQCK/2DauIDWcgQGckUz3BZ41UhfFpZoAijw2AbxpZXHKBlf4mMzwTSOf64M3QK0YlIhujCys1IAqT/Ex1Sh45LO3UrdBa4pO9oaVhvLlMycuN+Gxe4A4 X-MS-Office365-Filtering-Correlation-Id: c4045ca5-77ba-42b2-fe90-08d5be58a407 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 May 2018 13:50:22.3992 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: c4045ca5-77ba-42b2-fe90-08d5be58a407 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0401MB2429 Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org 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 + +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>; + 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>; From patchwork Sun May 20 13:49:46 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nipun Gupta X-Patchwork-Id: 917179 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=linux-pci-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="EBjKFnDG"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 40pjwg0swvz9s3X for ; Sun, 20 May 2018 23:50:43 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752509AbeETNuj (ORCPT ); Sun, 20 May 2018 09:50:39 -0400 Received: from mail-eopbgr40060.outbound.protection.outlook.com ([40.107.4.60]:15951 "EHLO EUR03-DB5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752526AbeETNuf (ORCPT ); Sun, 20 May 2018 09:50:35 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YEnXkCyuIXhRmeIMuc++ss/rSwgf/nEPp6oKwxuKaCI=; b=EBjKFnDGUw7TPpspFMC99icvbNmvSfMawkINhRC30WFmgeYhRnTCefs6NX9t30zVfvPUn1Qv7k7nvGnQc9ezhICchk0zN8QZ3argIDso46kxSssS5+2jgRjS2+ZOBbbtnelRVbTwJEvL65Ll4nlAiOnodA167QpwevgIBoG7zvE= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=nipun.gupta@nxp.com; Received: from b27504-OptiPlex-790.ap.freescale.net (14.142.187.166) by VI1PR0401MB2429.eurprd04.prod.outlook.com (2603:10a6:800:2a::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.776.11; Sun, 20 May 2018 13:50:27 +0000 From: Nipun Gupta To: robin.murphy@arm.com, 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, Nipun Gupta Subject: [PATCH 2/7 v5] iommu: of: make of_pci_map_rid() available for other devices too Date: Sun, 20 May 2018 19:19:46 +0530 Message-Id: <1526824191-7000-3-git-send-email-nipun.gupta@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1526824191-7000-1-git-send-email-nipun.gupta@nxp.com> References: <1526824191-7000-1-git-send-email-nipun.gupta@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: BM1PR01CA0075.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:1::15) To VI1PR0401MB2429.eurprd04.prod.outlook.com (2603:10a6:800:2a::22) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(48565401081)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:VI1PR0401MB2429; X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 3:30s0h96jwgNV+1eRt0hBH+8POsOQO8VjJ8cq72kz4m5zlYacNvwFZSgRBaaBXo48E1teJ2Q4TopgO9oEgGi545fJVIsrA2h0dDcJKvZGhQhwWfwLbOaT6b5/Ns2/dJBaC693L0SWq5D4QQc6Gtm2kTHgauWwfluzsKTLkJZYGdaeNR+SzcXGztCpucfMZ+Vt+UGQNnzYr4t85arT6otcq04KDtrL/4Z20jnTeMg7javSl1pmF3WdJF2t+6H3FH73; 25:qvxn5bu/RQa8fOmryszSoCitqcPVJhUSmf+vRiyi8yxNJQ+pmF1gBO2zvYup4M5OainehX/REvmUCTXj8Q6Y1FWFa1loeKhCJKaPOd8wD1pFUT6QTxEcJigtZxQY8Gy//EiSsdmj+4otOe+Gvx5ZRU4cBO5Uylrww6/7phks90jSMJH+sO3/GMDp6M0KwQ5AGmKMdZ0YI0URoP1t9qoz5pY8fXtCUNRKFDrEOJb+XSsLCgsJGvl2euYnowDq7FJvqPKNfnuoONhPrNmNDSnFTDjwiIVGrG8Q3KMKFtt11RRSiv6knYrENECEtuu+EIsvEcI+Zn9XK3Es6pehcPRFfA==; 31:hVuAO2VsT7tCav5U/+dZm8WzgnbW3qg39Mho//9ADEXlMK9q90A8raK5jV6xHj/JrFyFmMYobLN0dQhdF2luHSZD880mSV3PESdveta2GRgQtxs+mX7lwqpymUOsfn6gDyRFOdg9H4BHQqhxsrDGKbL9xhVCOZ1x1Kt90MMZINpgkLUtiv3eESchIsC/6K/gKWUYq1xmiSsvFecvIBBSJGg6bck80zlEQDS5DC+6Pss= X-MS-TrafficTypeDiagnostic: VI1PR0401MB2429: X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 20:+UrQ+6ppPRlbHxrbFsz0zsnPBm7uRRIu7Cg1dzYkupNU91HAALYqtU86GA7dMx14PcPcb8LojMRokQ64tV9Y3YzdO1UtinM/nIf77xxGAtEwb9PJhpGaUH9o9BB/xF8NeDaRkop3TQ/3OOigNhjswRvIH/KQoIDYYqMSsQxSIVNM5BaVQ11anF5AX7cCNbKLU3QventaX+NghfiPPWC9kIQXQ7ItOnlcuaMfEKuZvMm6iM+GXMeNd6EqcfKFUUA01LYQ9Rv5Ep+qNDFcs0yVNmNVuwcHFUTb7oe/CI10TnDEUEireQx4qo67cxMPRLWdIZfTw+Se0ay1qV6V9nSnEfM1BP0sBjf9ZdcjWTNDYRkO8wPLVAD62CHC/KhKMc0WhNM+zIowcH322rh1fAbDRFzCuxjUxjol6EVSHKR9HjQ7dKLYnS1EQwhHtQik15F0sxd5fAWYsvoLB3IxSPxo+OLZQn8sekmw7Zy5YoiLW7lN/K3Syq0BFjc3dd53FUmO; 4:4faS6QJO/u4m60RZfRkUO4aaX7sYOBlZZdXHr7VtNIiPKcilmBmB1RbijlYJ2lolU6VP+LHUvY2rC/BxiAuLPjLa6zHH88A8Rx4sDlHn/NLSNP19EFnfqD9JKz3trQdQ6gtFJlPFG+er2YGQeSSAmBG2Nh5A+mqETfW+o5Elz2F3NUlPqcKOjALDc8Oo2g78ktoc8Aw+2Y78h9Cl09GZMl7PFwh6gt3q26W8+on6fM9FpTss98uAFZPneIAMYSPxUs7cGHMDAy2PmAPl/mOLISJR2APYbShz8boT25ed8N3YW0onEBooXGmURgPSFc2jX1sIOM90XQFW8j4RcvCULy3pUbNH4W/fMtkbzLKR0rwT557gQkDiZnPOPJ18QYxy X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197)(211936372134217)(153496737603132); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(10201501046)(93006095)(93001095)(3231254)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(20161123560045)(20161123562045)(20161123558120)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016); SRVR:VI1PR0401MB2429; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0401MB2429; X-Forefront-PRVS: 06780E24F8 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(346002)(376002)(39860400002)(39380400002)(396003)(366004)(189003)(199004)(316002)(50466002)(50226002)(47776003)(3846002)(86362001)(39060400002)(66066001)(6116002)(8936002)(16526019)(8676002)(7416002)(53936002)(6512007)(48376002)(486006)(186003)(26005)(44832011)(478600001)(81166006)(81156014)(76176011)(5660300001)(7736002)(52116002)(16586007)(51416003)(6486002)(97736004)(36756003)(68736007)(305945005)(4326008)(6666003)(106356001)(446003)(25786009)(5009440100003)(11346002)(55236004)(6506007)(386003)(105586002)(476003)(2616005)(59450400001)(2906002)(956004)(110426005); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0401MB2429; H:b27504-OptiPlex-790.ap.freescale.net; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 23:SXXY93+WBBvwDnrIRvMVXlbSf9JLKMx7zPavRsV3FCCi73/s76JNNQnARubZTSdmfudCiv4UkuMVbkeXPcjElyNQ8gxCEDp7kXgxWJX70aLOuJNjaZxWpqFeYkfXwHZAnidOf7aWIjTfEt0RAtKuGuUA1Wy3JYA6r50VDk4etJNPB+LK6UdKiiQHbtRmGPcdL3y5im1yTkMgZ4Os/JNweEqDOFT/2GC9xUnvMVQtSgjExvvS0bt+sp7Zdon+mp6RCK4kK9XKTwYzxakTNHSEi1zawDisIaNMM+Q89GsbMuwEQRBo1EZj8TR8w3V23O9di9nOGSyLYT9jchpPn6kXwtKTDXl/ZiR8BouWzYrXTVuAvXUs0li2IYSZP/Fq6s1jhhhkLKgSGDgVq07vfy5v89qwGdavY6wv1jqCrXFCOBp6flEpbf5Doi4M8/SkFLceFYaHLz2u2Kfm4Hwwykod1OZDOs54UHDfvMzsMQVdV1HRgPFkKtRGMBfsVsWGHvRLtoE44VJYEdgyJeLP/+W1i/pYHiYvxJ3M8mGiRitjBP2MRKyThLgSf5lSXZT9NHBqEPAqJXdgI5HYLeZfA3EAKPT0bepsHfWLWBXg42D+VnV7bdxhR0Wz3gn6LpfyupgEjSCl55LAq75unVp5bV406apiKCGv2OVO0OchxpTTTUV+nWkVgxvNQgzceZ8sXO4Ehft/WO7yACLOo2PEvcg82hbwLK1V8NAJjkGwmvnsdadpCclcrRMvAXK/q2mPPNT7qHj/Gu0wXL86Xup+BfhzqqdyLJg26LhlqJ2SQC0nj3eZq3TWNFl9Pof/dqunFkKm51ksUZ1v/NLGYG2MgyZEYXvc8bemJnTo3vgySPmSVFlpYzaN9n3rwlC2QgTpTlqTpLROENLtitKsADhdnLco2gNSet4bQXxmWXdaNVWFzypGk7duc/zGugVX010/sNOBaFzI1KOSXIxCKlR6TgaolsqkSACv1FScOVEfNfSscPNFIOjJ/ctrC5zMYAEAmzY9lYdVZO+GIme0qLC1zfKy9fVgi0vaNiLnFO4tUHbjsMnX6j1SpPtlqYweM+2EAdrf8VH8bpLbgsUa1wWNwhuDCH9QBkSmk+jwSMg8ptgAFhqzl6O0IagxTaZxdsIPvE+PHrO5sDuGVtUXZD5/4jwnzGDJ9sYPP8pjnAJ6wifgK5jyjLihNrIPOTOW9xPVUyiAVhWs9LdLBZLLODvdT+nplH6u1S3tkXM81JostUW6cnbgGZHTk/BP6JKTbj30GxuEBZGDss3Am+H349f1RAiXy3K7uWhqh+alaMmJbkty1jr61tFVS2WNR2j9mESobHc5 X-Microsoft-Antispam-Message-Info: ewe7pZpvO2eFY/gcPeTbqvKAmSHcIQYqVt5kHmvfaNXeqDsQwQ2+QIA8FX3ULbQivfZr/4EHeubJ27xSdMOpeT3gzqRkDc7xLVeN/VgCZePaHsrBnKBjG9pB6W2p8FqvrggVJUcKDV7MaynebkN18rEpzJBVP2jauqdf/00aeYJ1a8KDniFcZtbbS/jhBwv3 X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 6:pWmq7zYo0xDnNW+UcSRORYeL2XQcpX3Cn6bpImH8fWQ5nkNtP7u7rZg8LheFRbcHaChBsTQ3FrWg1UZWWUfH+b+SEoyVdkNDif9IkNdPXQTsKno0IgXZzSs/2aSseKCvjw/eB579g60FU7KsLu14JGfd4AONV61ERDADLT29IP4FczTC1N/W7xTt0UO3rXo31j6aO/IruHXqFO5erKSYMtxuhWmgH3Zz5RqnadeLABLFih7WXJEcN+SEbapVaWy4WzfbS8g0DZ4Cer1jFiTFFEco2TMG9cCGaQdM9lzQlfjch61OEck5tXKR6Y35bW6O1p5uCsY8EQ1PFVQVkU6mCjYV/Fe6bUZ3b6lX78+AgogNJkrPRsotNzC1mGT6qYS6okj6Xz+pTuG7X05aZrkqQYnBD2V1pNWOt0C+kBt9BgWDWJ43cwOm3pLlthqEzcb9LttYhTJZy3T6mR2ktJScGg==; 5:2pcX2wFMcHyuB/vBAeJm73b5Huq7syUBgcm8N8M4TQXvcFd8zRR7/R1TnO2ImdKjKuayhpbJlPct7HfFUBn0RXy89PMgdcRd0XFxZXhkhlcRlmZLa0JWvkR9xGFn66xgFdMFssnosDkXtQKvOqxW3ikuk0dY+Tos52GdJmrHazA=; 24:4c8vWN8hT5vZfvmXsy9tY1NMkjOGeOS+8Ezdciu5tnocZ8Fuwv7pFY3lLplFzRpNnJGge01PKGc4j77ZYE4vsMWGPXL6Ep1p7maaFwaNDKs= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 7:Fy4q4Me9VEObjK/1h6Ud5rNMqF9iY4sxIQKJ3QLalaqxwFhfgNJL9zJ6XStNjau89knF5DIjSx2TLTefiTqAy4MoyPE+ZPpqUUSJDGk6lABTEkzXa7eFDrbrNlEM3xjLq+CQicr/0XyFGX3SAP8yMZh9DSTmjS0Ip4HwDkBGyyhkGmYpxtCZtXQOvdiQ1QSSSVmr7rOOs3xaDWPreYPAn/ap5/Be1pCAOJ4iPpA3WvEod4/HdVNJQrh6FLF9DwPb X-MS-Office365-Filtering-Correlation-Id: 769f4ce6-93f5-46ff-65ca-08d5be58a718 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 May 2018 13:50:27.5398 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 769f4ce6-93f5-46ff-65ca-08d5be58a718 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0401MB2429 Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org iommu-map property is also used by devices with fsl-mc. This patch moves the of_pci_map_rid to generic location, so that it can be used by other busses too. 'of_pci_map_rid' is renamed here to 'of_map_rid' and there is no functional change done in the API. Signed-off-by: Nipun Gupta Reviewed-by: Rob Herring Acked-by: Bjorn Helgaas Reviewed-by: Robin Murphy --- drivers/iommu/of_iommu.c | 5 +-- drivers/of/base.c | 102 +++++++++++++++++++++++++++++++++++++++++++++++ drivers/of/irq.c | 5 +-- drivers/pci/of.c | 101 ---------------------------------------------- include/linux/of.h | 11 +++++ include/linux/of_pci.h | 10 ----- 6 files changed, 117 insertions(+), 117 deletions(-) diff --git a/drivers/iommu/of_iommu.c b/drivers/iommu/of_iommu.c index 5c36a8b..811e160 100644 --- a/drivers/iommu/of_iommu.c +++ b/drivers/iommu/of_iommu.c @@ -149,9 +149,8 @@ static int of_pci_iommu_init(struct pci_dev *pdev, u16 alias, void *data) struct of_phandle_args iommu_spec = { .args_count = 1 }; int err; - err = of_pci_map_rid(info->np, alias, "iommu-map", - "iommu-map-mask", &iommu_spec.np, - iommu_spec.args); + err = of_map_rid(info->np, alias, "iommu-map", "iommu-map-mask", + &iommu_spec.np, iommu_spec.args); if (err) return err == -ENODEV ? NO_IOMMU : err; diff --git a/drivers/of/base.c b/drivers/of/base.c index 848f549..c7aac81 100644 --- a/drivers/of/base.c +++ b/drivers/of/base.c @@ -1995,3 +1995,105 @@ int of_find_last_cache_level(unsigned int cpu) return cache_level; } + +/** + * of_map_rid - Translate a requester ID through a downstream mapping. + * @np: root complex device node. + * @rid: device requester ID to map. + * @map_name: property name of the map to use. + * @map_mask_name: optional property name of the mask to use. + * @target: optional pointer to a target device node. + * @id_out: optional pointer to receive the translated ID. + * + * Given a device requester ID, look up the appropriate implementation-defined + * platform ID and/or the target device which receives transactions on that + * ID, as per the "iommu-map" and "msi-map" bindings. Either of @target or + * @id_out may be NULL if only the other is required. If @target points to + * a non-NULL device node pointer, only entries targeting that node will be + * matched; if it points to a NULL value, it will receive the device node of + * the first matching target phandle, with a reference held. + * + * Return: 0 on success or a standard error code on failure. + */ +int of_map_rid(struct device_node *np, u32 rid, + const char *map_name, const char *map_mask_name, + struct device_node **target, u32 *id_out) +{ + u32 map_mask, masked_rid; + int map_len; + const __be32 *map = NULL; + + if (!np || !map_name || (!target && !id_out)) + return -EINVAL; + + map = of_get_property(np, map_name, &map_len); + if (!map) { + if (target) + return -ENODEV; + /* Otherwise, no map implies no translation */ + *id_out = rid; + return 0; + } + + if (!map_len || map_len % (4 * sizeof(*map))) { + pr_err("%pOF: Error: Bad %s length: %d\n", np, + map_name, map_len); + return -EINVAL; + } + + /* The default is to select all bits. */ + map_mask = 0xffffffff; + + /* + * Can be overridden by "{iommu,msi}-map-mask" property. + * If of_property_read_u32() fails, the default is used. + */ + if (map_mask_name) + of_property_read_u32(np, map_mask_name, &map_mask); + + masked_rid = map_mask & rid; + for ( ; map_len > 0; map_len -= 4 * sizeof(*map), map += 4) { + struct device_node *phandle_node; + u32 rid_base = be32_to_cpup(map + 0); + u32 phandle = be32_to_cpup(map + 1); + u32 out_base = be32_to_cpup(map + 2); + u32 rid_len = be32_to_cpup(map + 3); + + if (rid_base & ~map_mask) { + pr_err("%pOF: Invalid %s translation - %s-mask (0x%x) ignores rid-base (0x%x)\n", + np, map_name, map_name, + map_mask, rid_base); + return -EFAULT; + } + + if (masked_rid < rid_base || masked_rid >= rid_base + rid_len) + continue; + + phandle_node = of_find_node_by_phandle(phandle); + if (!phandle_node) + return -ENODEV; + + if (target) { + if (*target) + of_node_put(phandle_node); + else + *target = phandle_node; + + if (*target != phandle_node) + continue; + } + + if (id_out) + *id_out = masked_rid - rid_base + out_base; + + pr_debug("%pOF: %s, using mask %08x, rid-base: %08x, out-base: %08x, length: %08x, rid: %08x -> %08x\n", + np, map_name, map_mask, rid_base, out_base, + rid_len, rid, masked_rid - rid_base + out_base); + return 0; + } + + pr_err("%pOF: Invalid %s translation - no match for rid 0x%x on %pOF\n", + np, map_name, rid, target && *target ? *target : NULL); + return -EFAULT; +} +EXPORT_SYMBOL_GPL(of_map_rid); diff --git a/drivers/of/irq.c b/drivers/of/irq.c index 02ad93a..e1f6f39 100644 --- a/drivers/of/irq.c +++ b/drivers/of/irq.c @@ -22,7 +22,6 @@ #include #include #include -#include #include #include @@ -588,8 +587,8 @@ static u32 __of_msi_map_rid(struct device *dev, struct device_node **np, * "msi-map" property. */ for (parent_dev = dev; parent_dev; parent_dev = parent_dev->parent) - if (!of_pci_map_rid(parent_dev->of_node, rid_in, "msi-map", - "msi-map-mask", np, &rid_out)) + if (!of_map_rid(parent_dev->of_node, rid_in, "msi-map", + "msi-map-mask", np, &rid_out)) break; return rid_out; } diff --git a/drivers/pci/of.c b/drivers/pci/of.c index a28355c..d2cebbe 100644 --- a/drivers/pci/of.c +++ b/drivers/pci/of.c @@ -362,107 +362,6 @@ int of_pci_get_host_bridge_resources(struct device_node *dev, EXPORT_SYMBOL_GPL(of_pci_get_host_bridge_resources); #endif /* CONFIG_OF_ADDRESS */ -/** - * of_pci_map_rid - Translate a requester ID through a downstream mapping. - * @np: root complex device node. - * @rid: PCI requester ID to map. - * @map_name: property name of the map to use. - * @map_mask_name: optional property name of the mask to use. - * @target: optional pointer to a target device node. - * @id_out: optional pointer to receive the translated ID. - * - * Given a PCI requester ID, look up the appropriate implementation-defined - * platform ID and/or the target device which receives transactions on that - * ID, as per the "iommu-map" and "msi-map" bindings. Either of @target or - * @id_out may be NULL if only the other is required. If @target points to - * a non-NULL device node pointer, only entries targeting that node will be - * matched; if it points to a NULL value, it will receive the device node of - * the first matching target phandle, with a reference held. - * - * Return: 0 on success or a standard error code on failure. - */ -int of_pci_map_rid(struct device_node *np, u32 rid, - const char *map_name, const char *map_mask_name, - struct device_node **target, u32 *id_out) -{ - u32 map_mask, masked_rid; - int map_len; - const __be32 *map = NULL; - - if (!np || !map_name || (!target && !id_out)) - return -EINVAL; - - map = of_get_property(np, map_name, &map_len); - if (!map) { - if (target) - return -ENODEV; - /* Otherwise, no map implies no translation */ - *id_out = rid; - return 0; - } - - if (!map_len || map_len % (4 * sizeof(*map))) { - pr_err("%pOF: Error: Bad %s length: %d\n", np, - map_name, map_len); - return -EINVAL; - } - - /* The default is to select all bits. */ - map_mask = 0xffffffff; - - /* - * Can be overridden by "{iommu,msi}-map-mask" property. - * If of_property_read_u32() fails, the default is used. - */ - if (map_mask_name) - of_property_read_u32(np, map_mask_name, &map_mask); - - masked_rid = map_mask & rid; - for ( ; map_len > 0; map_len -= 4 * sizeof(*map), map += 4) { - struct device_node *phandle_node; - u32 rid_base = be32_to_cpup(map + 0); - u32 phandle = be32_to_cpup(map + 1); - u32 out_base = be32_to_cpup(map + 2); - u32 rid_len = be32_to_cpup(map + 3); - - if (rid_base & ~map_mask) { - pr_err("%pOF: Invalid %s translation - %s-mask (0x%x) ignores rid-base (0x%x)\n", - np, map_name, map_name, - map_mask, rid_base); - return -EFAULT; - } - - if (masked_rid < rid_base || masked_rid >= rid_base + rid_len) - continue; - - phandle_node = of_find_node_by_phandle(phandle); - if (!phandle_node) - return -ENODEV; - - if (target) { - if (*target) - of_node_put(phandle_node); - else - *target = phandle_node; - - if (*target != phandle_node) - continue; - } - - if (id_out) - *id_out = masked_rid - rid_base + out_base; - - pr_debug("%pOF: %s, using mask %08x, rid-base: %08x, out-base: %08x, length: %08x, rid: %08x -> %08x\n", - np, map_name, map_mask, rid_base, out_base, - rid_len, rid, masked_rid - rid_base + out_base); - return 0; - } - - pr_err("%pOF: Invalid %s translation - no match for rid 0x%x on %pOF\n", - np, map_name, rid, target && *target ? *target : NULL); - return -EFAULT; -} - #if IS_ENABLED(CONFIG_OF_IRQ) /** * of_irq_parse_pci - Resolve the interrupt for a PCI device diff --git a/include/linux/of.h b/include/linux/of.h index 4d25e4f..f4251c3 100644 --- a/include/linux/of.h +++ b/include/linux/of.h @@ -545,6 +545,10 @@ const __be32 *of_prop_next_u32(struct property *prop, const __be32 *cur, extern int of_cpu_node_to_id(struct device_node *np); +int of_map_rid(struct device_node *np, u32 rid, + const char *map_name, const char *map_mask_name, + struct device_node **target, u32 *id_out); + #else /* CONFIG_OF */ static inline void of_core_init(void) @@ -931,6 +935,13 @@ static inline int of_cpu_node_to_id(struct device_node *np) return -ENODEV; } +static inline int of_map_rid(struct device_node *np, u32 rid, + const char *map_name, const char *map_mask_name, + struct device_node **target, u32 *id_out) +{ + return -EINVAL; +} + #define of_match_ptr(_ptr) NULL #define of_match_node(_matches, _node) NULL #endif /* CONFIG_OF */ diff --git a/include/linux/of_pci.h b/include/linux/of_pci.h index 091033a..a23b44a 100644 --- a/include/linux/of_pci.h +++ b/include/linux/of_pci.h @@ -17,9 +17,6 @@ struct device_node *of_pci_find_child_device(struct device_node *parent, int of_get_pci_domain_nr(struct device_node *node); int of_pci_get_max_link_speed(struct device_node *node); void of_pci_check_probe_only(void); -int of_pci_map_rid(struct device_node *np, u32 rid, - const char *map_name, const char *map_mask_name, - struct device_node **target, u32 *id_out); #else static inline struct device_node *of_pci_find_child_device(struct device_node *parent, unsigned int devfn) @@ -44,13 +41,6 @@ static inline int of_pci_get_devfn(struct device_node *np) return -1; } -static inline int of_pci_map_rid(struct device_node *np, u32 rid, - const char *map_name, const char *map_mask_name, - struct device_node **target, u32 *id_out) -{ - return -EINVAL; -} - static inline int of_pci_get_max_link_speed(struct device_node *node) { From patchwork Sun May 20 13:49:47 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nipun Gupta X-Patchwork-Id: 917186 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=linux-pci-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="eYlPT4DA"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 40pjyM5pM8z9s19 for ; Sun, 20 May 2018 23:52:11 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751637AbeETNv5 (ORCPT ); Sun, 20 May 2018 09:51:57 -0400 Received: from mail-eopbgr40077.outbound.protection.outlook.com ([40.107.4.77]:11440 "EHLO EUR03-DB5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751426AbeETNuj (ORCPT ); Sun, 20 May 2018 09:50:39 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0Z8HFz6n+SBUqmyVNWhulRVqMt+a1OtQdtnx2a4wRXE=; b=eYlPT4DAxx+smx87bmAdMFQSQ0t3evQq+f/zuCDuusRTTf5SZy2fpPWg8F2xsbZCKw+AGxnehKpKoeujmG2VoxRJNv2YLLdg3hYougyho2K/l6+9UDECCnB2G2WKDOBrNNUOtRMYSyfxaFvxanvf2D7gE7WSCvONP1wpzim2n9I= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=nipun.gupta@nxp.com; Received: from b27504-OptiPlex-790.ap.freescale.net (14.142.187.166) by VI1PR0401MB2429.eurprd04.prod.outlook.com (2603:10a6:800:2a::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.776.11; Sun, 20 May 2018 13:50:32 +0000 From: Nipun Gupta To: robin.murphy@arm.com, 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, Nipun Gupta Subject: [PATCH 3/7 v5] iommu: support iommu configuration for fsl-mc devices Date: Sun, 20 May 2018 19:19:47 +0530 Message-Id: <1526824191-7000-4-git-send-email-nipun.gupta@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1526824191-7000-1-git-send-email-nipun.gupta@nxp.com> References: <1526824191-7000-1-git-send-email-nipun.gupta@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: BM1PR01CA0075.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:1::15) To VI1PR0401MB2429.eurprd04.prod.outlook.com (2603:10a6:800:2a::22) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(48565401081)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:VI1PR0401MB2429; X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 3:jZw0upvJNcZDKpHE7R9/fXJekA0f+E+wNFjkbIWEMiKp5oEaKuaa5zCpmn9jWvvT/E2CddNbV4+tjB6Ls9s2hC+GYR39X9gkFl1fD7h8LyrODN6ikk+V9C+hRkJkCjsKqCSBPfNJr9HY0zKC4W7Mm1hUcrcqxZ0WVTc7KS6OD+RX7R4HzgRWQmxAv5gmKNJq/G6SbnjXDyhDuGHTHbYvNV7irBgTgYHNK1Lj8SVIZG18TfbvYJH+7xzu4ZGtej3m; 25:XIXGPWaACRWnpUn6haR+AWkCqanRy7UHqkepNgVYOr6RrA+3wSXyZW8+I1JJIS+fX6wHflyCWJBp3K+KTo8mjSqB5OCvQA2gJPVLDFL7Bbgns1Sho4J6QXNNXAK6FxlMAK/e1GIv8nPdGHzgQtX9O7dc5puzLJjYdRvwNecw9s2zBf70dc2beX/UBi3anJXrZtjK5KgQkCIaXtw/btBwIWmYLxy4SDm63vY+pLJlGE/OcayviaThlo3CVtOVM0tDYN0uufP8eDwdST6NLhZHQsjlFB3X0Ycv5HP2G+vapdv2VT416VT04cjHlnPlx4B7YlL/6P1w6G4LKnVZ1qcBvg==; 31:332AYmaBsw/ZHz4bWWe72vYWKtKk0QhicJnsjtguDIQJA3ZA9loe0oBMQcgGMilpiq6l7iapqTnYJXropzvokGEukeNv7tjDFoXqEgUmujCXGy//+fchyhnsLtRDZgEnxFERKutaAGIJXOrEhFV/tXUo0iLBohgMEnlQQzjFv8d3dVj9cyLTJ4515gnL45x19kEYASEc8uHptMiFffpVB/w1VO6NZyTvjjLVHNajYSs= X-MS-TrafficTypeDiagnostic: VI1PR0401MB2429: X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 20:bU2zmr2OrHPObWe5aeo9Av47UymIhPp1Ew7Y5bF3GFSP+uPFaOUlUeLvExf6K64zTqMCb8w/st8xY9WpsuF93BkFemKJl9llpNZKAlH5cynlmYsiTVlO8IrTG6IKa/LokkXSbcBUmdkh3vPQ/RfqHBLUbTQBZs8C8OhQ5uOZl2qmltFlNsYuK/FwEHC1eui+4OGNhZlBkMyaw6MSmlx074u976EuB3qdClyv73QEHqnauB3nZ6WW6jQxHYiZZV5K8nv64oq3OUX/5GlbmOfLMARXTcAlOAq0JR2QSDCLj2/dYT8ah98Ig7oS/1avFKmXLaxYAN6N7ha6QEjsDuR+jBZZZRRzfapetfSvck31upPE69YBRsgW/gmBgAejTLn+PKxfaGmARWnG5PG38gndpD8OkBxoYzVe7SjhWDGTaNi/5+uIPo49Ey8ABrKUP7ZfsduYEvbNaxS0wltqeuP43xO7P9CwthZsW/4NP38ckrcx9C/kriWq8mRhyYtwYbwr; 4:64wFo6Nabcp/s3pDjgMhqo2OhMpSUg52OZPze5kf+dAXse5MDUReJ/Miz0tibyhXfzg5plgEjAgEmrpjxo7yi8xc5cVPDzc9X254Jb3wLaVVWaOkU0+oFWou/Gii2sxSjvLYR6RVTbHRe3Ujyu9K050Ts/FkqIVBpv8p/UySfvXgG50F//x/V9A9dH53u0S0YZLZL7nx3vpLCm1+bjLhNY/pdROgFAK23WJSN43I44gelyqEEL7tcp3wUXeITjaORczVdhKMjcsBg2/RTQoBUsgKRpsIKOrnHao1LEm4BEPWavH/vHw/A1s2VsXlvK57 X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(10201501046)(93006095)(93001095)(3231254)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(20161123560045)(20161123562045)(20161123558120)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016); SRVR:VI1PR0401MB2429; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0401MB2429; X-Forefront-PRVS: 06780E24F8 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(346002)(376002)(39860400002)(39380400002)(396003)(366004)(189003)(199004)(316002)(50466002)(50226002)(47776003)(3846002)(86362001)(39060400002)(66066001)(6116002)(8936002)(16526019)(8676002)(7416002)(53936002)(6512007)(48376002)(486006)(186003)(26005)(44832011)(478600001)(81166006)(81156014)(76176011)(5660300001)(7736002)(52116002)(16586007)(51416003)(6486002)(97736004)(36756003)(68736007)(305945005)(4326008)(6666003)(106356001)(446003)(25786009)(5009440100003)(11346002)(55236004)(6506007)(386003)(105586002)(476003)(2616005)(2906002)(956004)(110426005); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0401MB2429; H:b27504-OptiPlex-790.ap.freescale.net; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 23:L8PiDj4ZJ79Gby980t6MI7UruMw71j/z98l9NwTAOldSdNenAJaJD0KNSIQ0nt6Q7KllwfkvOFI2NwBMb2w8wlM9WVmG7d25X/qNpkFon0fm6qkcUrwRH+cwqtRp359wxA6Ce7oqDVTlJJb5ZULfEX8iZ4ZTxaNwNr0Xq78ixTqF7jSjD0s8NYy8XJAp/KIwRWf5H1WxgC5SXbqpM5BQo8y/9pCCXfLHpnLikOWl8FaJLlT/5khsE8Uwiw9XgbETaPV9RSzpdENhNVKiaAoeU3yNsqAZC22uXnOqY+v8y/ohjq3gPeh4TkGrzIokM8/rW+IM1W3YTeUO7zhJ57/LP+DWy6P7wJM3DtAtL8arF6xNST7Pr/Iu5rVtTApB66iiQShYSE2w7uaekEwomjWaNzKktbuL7HRiGqUfmxeRb5M5XPUe48O4av0Bil9z3Y8EtjRIqjKRI5eDWybOTAyGmjtuK+q2hWTspH/OnPxKRFlncQ/z5//qmikOBSEBBBK+Te9fTNp0mYMjilI+MVdJ2pbUk99vl00ouKhm6gt5FhyC8WqC0XvL0WzSFXgEUuuY4EIzzfFsPDMxZjbyiR9gVN7z/zwlCFW1lcnxRiyMbIgZXykSn5ld6XzPxgj6npm/5tZbgwfVR/xeEXE3wo+DCNXnb3Hvt3FFjxSm8A350EfI/dEu/O4nc4UH/vopKbmOlh/pzwRu/Mb2FYiDKHMsZ/oCeYno/I2G2BDCkJGjvG9lwDXXM21J8aoLrhCiNRonoUnTVJRkrFp7Hg2CFeb22++m5bqTeda9VuyH5lQinLfQmc7urszVUujZkgXekI0m/olVCFxa+4uXOYVJr7AF5wJqtH5baRmP0S9zwFAmysqHHUuM0pg/HvpwAt0kOy0fnlxZ2bl2Ws7LGjPKDr9ekCcCWeT3eBuVY+4cTm6mprPkD1B2GNCvJJjZXneMsvE3XnLPC/rjcfxxNi9E9jXtinYznIrX9pOICfAZWLFa7RS8cTEQKgebWr/hLArYHJLELYGFXzkkLN4qppGyfRFCrUjgi4F6jWzrTgF8s1IuG+PkkSsIrT1/Z2eTI+0mejDBsz4kGm5spF9zQqrAa6k2OY/wpv25EU4Ul97xIHn7AB/ZfD7CPk/+lmhM6GSn79Mo6TvlyO6xI65t1GYq0WJV7LxJZlu2x7TXPooxrF2smTFQnoOatASz9AoL32Yl+Cmyy+m9lD5zSCDypo9fmCoJdCax1nm0GPgyAU1qOIi6OZAJHw1PONKei8CsPw9TCqGEpub6Dh+LPkzV4ZHZccLo/FbYAbXr+FD1kLGuV3CpB+s= X-Microsoft-Antispam-Message-Info: r2G6OLg/13bJ8KwwnbMbCd1/EanYFVQoM/AGFSoyODn9GpPRxWHMOUi7tIEPuz9x9jrX+m+SLHcMJQpYTWOe2p2QZjZ6JN80STPdRVhSf70aFYzKkKvl7dY23lue8iIkkr13vF4Bn6mJ9OKlxbO3eJuADwQtoTvphYZw2LK/MHxgJIgZ/Ef17QJlN760Wymi X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 6:qex4KaoMtIm27svYz9ND5LJgMyRh5mY1uw/tOqvZ8gcPmqjLA+dk7Qb+rrt7YyoIkGhF6FbsstTvFOyVy/r8QyW03mYoVs6GOZ6nzh0WbUE5lKIQ5hojGkSpKsP4sioM0V/edaQ544coeT5GfXhnppjjZnvN89TV9EXMyDEBcmBNvBJbCXowGr775Y3tf4WL7yXq4+AGaGWN0TIinhge2RnToaTYd9FFJgTuQWFpsd4gPNsHuJzRUuPex0qqT9pin6rNC4yBHPfqZx/6gdA3abofSZEnycAl1hdqz79nPeiUZaYpmZPMOIQUgNAaGMLka77Wr7npYPwbhcPi52FsspMZTJ5r082UiSOmt5jJtSwCpPcFpfaHAb3UiHtGuLvE5eywQMGknWNwTKyomUMrVuNil9nQfhWJmjVxwpKVlTDB5/9Nwylwj/1O6pgAo21hZuN9XE7BeseZwfEEW7qciA==; 5:SffnWW5Jr++/LQMMcyUo7MndXDwBjvqAVw9DAcftomB1OnIvMqTs//nprtUttc75JSAumVSSkzDh4Kc1ZhUuXshfPj1xcHHjWazHdrVreXLqFNGph9FzLTWFhhXtNgb/A8XS8Ek6gNlgK2+FT2NEi2SURopAJK7wnoTS24Z765g=; 24:iJP36Tx5RlMlFsCyyaUcqxY601/qEhkEf9E1coaklFKnmXxUK6I13GlQLXSCqaBdQhl8mSuVxJWxS6BeXEBi9HBCjxEHfXP/dDwWHBvu3+c= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 7:j/TKq3Fm5eVoGQjj5Pqz5oV3MvRncSSWPxMu7fUC7oruwcNAA3Tok5ZhesBASs+QnQVxIour9Ro8vSoSIDudXAYb3O9wJ7lmAI4BAu2NwrK1ne2igwUmQyDHX5f07eapEJJ2GbdEePKvjIWI+DbswoUP4dAZDpDdeBzCerB2tgbNRflFAB0UHpzulEEDANJqcF8kwp0ZoSrFm80FvDKSCiq4teC9OjM2WVlmrU3oqBQG3KzfSL2M/5eNT0Gs2qHn X-MS-Office365-Filtering-Correlation-Id: 6986a2cf-0b29-438c-9314-08d5be58aa0e X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 May 2018 13:50:32.5086 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 6986a2cf-0b29-438c-9314-08d5be58aa0e X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0401MB2429 Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org With of_pci_map_rid available for all the busses, use the function for configuration of devices on fsl-mc bus Signed-off-by: Nipun Gupta Reviewed-by: Robin Murphy --- drivers/iommu/of_iommu.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/drivers/iommu/of_iommu.c b/drivers/iommu/of_iommu.c index 811e160..284474d 100644 --- a/drivers/iommu/of_iommu.c +++ b/drivers/iommu/of_iommu.c @@ -24,6 +24,7 @@ #include #include #include +#include #define NO_IOMMU 1 @@ -159,6 +160,23 @@ static int of_pci_iommu_init(struct pci_dev *pdev, u16 alias, void *data) return err; } +static int of_fsl_mc_iommu_init(struct fsl_mc_device *mc_dev, + struct device_node *master_np) +{ + struct of_phandle_args iommu_spec = { .args_count = 1 }; + int err; + + err = of_map_rid(master_np, mc_dev->icid, "iommu-map", + "iommu-map-mask", &iommu_spec.np, + iommu_spec.args); + if (err) + return err == -ENODEV ? NO_IOMMU : err; + + err = of_iommu_xlate(&mc_dev->dev, &iommu_spec); + of_node_put(iommu_spec.np); + return err; +} + const struct iommu_ops *of_iommu_configure(struct device *dev, struct device_node *master_np) { @@ -190,6 +208,8 @@ const struct iommu_ops *of_iommu_configure(struct device *dev, err = pci_for_each_dma_alias(to_pci_dev(dev), of_pci_iommu_init, &info); + } else if (dev_is_fsl_mc(dev)) { + err = of_fsl_mc_iommu_init(to_fsl_mc_device(dev), master_np); } else { struct of_phandle_args iommu_spec; int idx = 0; From patchwork Sun May 20 13:49:48 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nipun Gupta X-Patchwork-Id: 917182 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=linux-pci-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="gdKoPW+Q"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 40pjwr6jT2z9s4k for ; Sun, 20 May 2018 23:50:52 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751421AbeETNuu (ORCPT ); Sun, 20 May 2018 09:50:50 -0400 Received: from mail-eopbgr40083.outbound.protection.outlook.com ([40.107.4.83]:12149 "EHLO EUR03-DB5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751428AbeETNup (ORCPT ); Sun, 20 May 2018 09:50:45 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=qVeDFBdK2ZXg1A9kjdH58jcDdysu3NfmqWLh2ByHBu0=; b=gdKoPW+Qu6Ep2Obdmf9SktqRPs9SbgsHMMxE69RU+bdgWAAPmWuy1YCX2fyOhsUTRG3kxoK3141uMME4F+RFQU339h5KhSJrQeNgx2IDABirxg80Zjnckx6IyKEeMF2MyQzTdRpM6D62svA4dncaphLNFIjlYrGojaKYb/RyiLg= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=nipun.gupta@nxp.com; Received: from b27504-OptiPlex-790.ap.freescale.net (14.142.187.166) by VI1PR0401MB2429.eurprd04.prod.outlook.com (2603:10a6:800:2a::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.776.11; Sun, 20 May 2018 13:50:37 +0000 From: Nipun Gupta To: robin.murphy@arm.com, 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, Nipun Gupta Subject: [PATCH 4/7 v5] iommu: arm-smmu: Add support for the fsl-mc bus Date: Sun, 20 May 2018 19:19:48 +0530 Message-Id: <1526824191-7000-5-git-send-email-nipun.gupta@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1526824191-7000-1-git-send-email-nipun.gupta@nxp.com> References: <1526824191-7000-1-git-send-email-nipun.gupta@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: BM1PR01CA0075.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:1::15) To VI1PR0401MB2429.eurprd04.prod.outlook.com (2603:10a6:800:2a::22) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(48565401081)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:VI1PR0401MB2429; X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 3:lYaS+PX+sZ5bVtAzuVTH1S0NDVU79Zptm68XIgnt01fT6LMxDN8xRbn4GqMIkEr4TBCVr+VTN2GoX1NEm+Iz4zTYW6q6MV0Cm5TA4QzfNgrzG7wYP5Qggs5IRxzMS5lIdBtCqE6vHRbVuM42cHKCg1Mips6MvBSu9g0Ih0bT/Wuq38EOYPzAOXdZtH4b9KFI6bAxduBo5flkfZxonCxIisxIeqZBhxkkeHJRANYy4GXY3C7QDUwLXRXIyUT4ceQa; 25:n2/v5JGPDLGZ3zYyUeSa3NDV932IdWGlXCUe3GYNQ0zeEab1QHR/Ye+FHTCsG3N1gRhkNeuM6C4hSkXOMyIQniDkeKFbbVPCGJkSwppQdzMglfPYAKyVeI1gX5zNL6xwfgGymijKEByWJamhfsrcuGLphO5Z4+/J6o4e5CMSgTn1+Cxzm4+V9e3FdJma7ZMNCMRKCnX7T8KD8+Vjjo1SUXCix7Dv9i/Jv8yA4UsenAIthdkXqBzkFGlbwmula1mC/eL9WKgvTmC6yfw7VqKHvxBS55BXaO9RbJTzF0867lKmPouX2qT8WQyGMUnxnuubfsNktV0DdtlV+fu7GDS1rA==; 31:cg/WEbccTE3PHFXO/nlPO+J4bNfUrXzgtMRMMa21WcnyxOmTs42mvh7K68rgEZ9iAYDAr/3ySV+TWkVwPo9Rr0STJAtGMM55SyEojF/u2swd3VYd4WZyB57p4o2Ly8ofsXT5f/+wl6Uo3aQRBl2WdnoJy17EgNuemY0R+FVo2huNSDqCz+MJNwhPBVz+TBLixClGTeHJ1/4dLGKWhYevl2FPyrts2EimUFjWc9GvTcc= X-MS-TrafficTypeDiagnostic: VI1PR0401MB2429: X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 20:uHyE2NKbPsrRPKrT3BPXIbM2QDNCy0e9COirTuqDU/dK8kGx1MMLdsJxkYRuGdOCgtr/tJOHi8zCMddH5MomfH+nUubkwm5cA0IOqIInnK+fjAeZFdEEHw2ATrjIwWV4MGju2Oi6M8rZEa1Mts1Vm9WTYnZl7BMzAU1SZJVDfK1VBKJ0joKZv1JglGZuENRpgz0+KuoVBVQB8CYMDhkpRXIb4o6dsb3456tuqqNg3EislYfUkOFezNuRwynK1eAgbvrvRkmdUBDJMoc0VNbUrCnx0tQY+tB4Hd12aq4MDpWiL/I7G0ds2Kfi4oToHEZ1c/jkGgeR+cFFHLLbElDVFOeAt3+CQvH4MjEkVg1Hx+zF94S7U3tUrZiL7IG3JUrcMjU0jpulOVBkc6iVl9Zo+3lF8OLN6R6yYZcBFUkpvIjeF8s8L2dHpbwu1U+xWCtEnKdK5RXPhfvtgHxpTzP7/UK8Y0vxF85pBwkH8/eMU/8l8fx/HbzKC6LFml5rwTeP; 4:2QwdjYEd7QzgqTJww1NgUfe/pU3ALMHj5ucrf+NWdY094ihLJDWqU5Q3XR7InCU9UzSiMZt8f0PmWnHOosk0wyHidoyS+0dN+GqD4xDgPfS0cApZAe04uqM+Q0BF1y8XR5oJpzQvx5TCRiHfzFa61I9goBf6u7Qmxejsh8CCAwzydKir+hRDVjYI5oxSBnN6DXZoIV5WqM8685OIVtkiTMgPFBfoZKXW0VrS6D/n3wd0UNsUIobAk+TvXDLeOxMJCkYwD2hfc6DiTX1dLO77F7eJo8j/1ZhMIhgHaEDoWRMIP97coIIiJJixLRg/aE/y X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(10201501046)(93006095)(93001095)(3231254)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(20161123560045)(20161123562045)(20161123558120)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016); SRVR:VI1PR0401MB2429; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0401MB2429; X-Forefront-PRVS: 06780E24F8 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(346002)(376002)(39860400002)(39380400002)(396003)(366004)(189003)(199004)(316002)(50466002)(50226002)(47776003)(3846002)(86362001)(39060400002)(66066001)(6116002)(8936002)(16526019)(8676002)(7416002)(53936002)(6512007)(48376002)(486006)(186003)(26005)(44832011)(478600001)(81166006)(81156014)(76176011)(5660300001)(7736002)(52116002)(16586007)(51416003)(6486002)(97736004)(36756003)(68736007)(305945005)(4326008)(6666003)(106356001)(446003)(25786009)(5009440100003)(11346002)(55236004)(6506007)(386003)(105586002)(476003)(2616005)(2906002)(956004)(110426005); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0401MB2429; H:b27504-OptiPlex-790.ap.freescale.net; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 23:YxIozB+zTkYFzRWw3X3089wcgyZ0peP6i7URXaex0GmxUmpu34nz59kn0aQGLg6mtqznyL2PNQmK/oC9fy/JXjTAdtF+YJfs+BPZYRKTDbT+OvH69eV8xZW5PYO47TY3EjZNSPLHUVvhBnhunV7PdZlXEq0BIDv9KYWVdksznLX4MGQSb/pvnSIbEkIFbDV2U0IjGKMzIgG4jezIyFXOyi4VD+H5r8YFqgV81icPeopQGYS9y7RU6wG2Xv/Mev0SvmQpOYnqg8yiJRVY9a1vkNLXux0c/2NjFPFv58MJ3a0+AvfBNlG8Sy1qM3cy5nreyJ/Xb41NovRs1oYXcCXb6v9FVZjtHBiTqgHOg+14nkqwxRMY86dy6K7Pxk6TqScSkOjNJWiPs9BMywC78aVbXJHJi6uqBlPjQGXLf8vMdr3NKCQWdS8j7pNMu+movQLASiSoolHehk+Ovk+uUY+nsmL5RdjAG6wsvyIlZWpQv2g8RC/Z51JHxeXjUu+yreDcP9nM8sAQ0PO0WyN4YrGhhW0QlbMzMBX1oGegrFYJ9pWsoFROzidlaTYTjuMpWIAb78qZtFTkn4inH6egjaMQzs8TJ0JEC4PUWcPn5VdsaHDh/TQ+ePc+JZJ7Yb98z4YCNMIaSOYUZ/Y77p7fzFdAu61/BnT8fJgo0uYF1yM1pXnS2bWT7zdVznc1tsvnUg/7iCJQeET8cLJYPfddGolDCUPJrmhwVcP5z/DXuepeeqWGcAtuyue2gfxaZewlUqax56vM2+h2MPK2+ARjLzaQHy08CeMkSiB7usKISs7KJvG8JbEYZK1L7HJ5F8kASB81ZzmbKW/AEjC+Dste562vRpxO5NDowqJSarsb/45PuO3XN9zFJrbcn1AaYptYbuMzHajs/0k6sie7+3EgocZUDcYdFY5CNa9Sw6MSbZXEG5C0wKEV74CUlMdIHDufOP3rW/W70214jl2EbZfEeryqIcdPbBBTgahfo6gIwSxLAp2C1RsfLsaYOPJvI7uoAH4OgmXFuXuo/5r8MICOWIbwsg59MekKrFSfRSmi96T9ssFprKYJREk4UpIT5qESypZFo5kVXW4llk6z/8DGlepgFAi3UbaddS7E3rPI+4bIzIQql+JmTBwNMdY6WIGQtXlbKRwmXsD+xFYD8F2k2QVrZpABPt/uoUqZ+7Sw5FpirUgdQWvr9aStdE5lumo9BLsk9dbdbrKTli34a2XxNHtsIyOxkR9Uzqq2N418OeK435bTWYHLm9MKT+YvCcpv6avf0VJbVtDO07a88jQb4t8Gg+yzyXhQ/xva5rWM/Px0EgY= X-Microsoft-Antispam-Message-Info: r8pNtpE0LC2WjogLQnUYGrNbYzeAfaSieZkGE8CQd6rGTMTu3VzDWjbGsXBRI4fcrhr/zJiEM1HFIiKbh7NQS5sEar3KYEgcq53ZDsxQnnUAlAevN0tXpO3RR+I2JWft0V/5oAltBqVIYMJfJ8ovP5CUi7kDF0HJcrIypSYGO4Ts41XEdlhfOcjZtGsb4vud X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 6:uaBwluNuKbMatYPMOD0BdovjFcF3L9/yc5zxslvQtmwXJXdodfKgD1zKTuqc+K3q8zE9CkwUsI3edq53E6c0b1F5JNZsx85bnCtzH+NFw6KYD+C7lJMMJHkJ1920DWoba7ifEq7Y3FxoZBcYWKk1cvDIvayGneZvoCF095JGiloDpbsNzvT8IPEEZiKzZPLgm6oBVZO9INQIo5s2Ka/u6r7pTpgmhBEocg17aCQNkICNXrmHHIBjoHGgovFpvF55uLDjAq1HEVQOPHZsGNHvpPW+FTjiigRV9gexN4MZ8/OoV5UceyvwvldJaH+sNDd3BIbf+iJ2mRY08coWBGxejf8adD9hPtVn19GumcNY6WCyROKvo1JpEsGzqUrT4J5V8gowN51291l8+K9XjfB5B7e9BB+NDXqB9aDbabLeQIdEinDQoBtvX62afm0HufvgSIhBk0zVbLkAlALGgMFxeg==; 5:s/Xv62MRWG2NhyH+joKGdpta3RJIonb6R1/pwhdxLxs3eixnA+uRSMaGPVVMxjjVRmEydiJYnyFJ2yimSePrOoLjXy/3o3GHMwVrQA9Ig+1BJ+M0oyqTCAeoYWgyEx56r/rYotVZMRuYG6MJpuWn2RbjDUWHwwf4g2hyzei7bzw=; 24:HwRAwMfXhSsZjK50A7caBPrFiD2xAYx6xJLeLeBnyR2MPh1KAluY4eFkyKMlyu9eFtVyFyldiUS0yS4yGfxh8nr+R1uOSpVvNEwW/EhTLi8= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 7:8uoxSNnFhDLSl9Kd/6syNv+xf1qN54nsqmZ4LJU4q0xxf9Vf+afp1H+w0pJ76EZhKffH07i3XSQSAWqT6MHqW/uByPsM0q7Ro0FABU7lJ17v+2XtZ8pb6xh9m9Uw0lCAIiUYpDHJFpgJ9yyZ59WBakMHA+IZiAIMGmAHVjd1rprGkyQIWuh9VNsfYa8uL3ottrT1aHR683MDKMuVQzt8iU5MvYjWQ84SkT8GUyTyluvzdf/UGI7a8wEkjlOQrsgM X-MS-Office365-Filtering-Correlation-Id: df4ab331-5b47-45c1-0e85-08d5be58ad13 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 May 2018 13:50:37.5712 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: df4ab331-5b47-45c1-0e85-08d5be58ad13 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0401MB2429 Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org Implement bus specific support for the fsl-mc bus including registering arm_smmu_ops and bus specific device add operations. Signed-off-by: Nipun Gupta --- drivers/iommu/arm-smmu.c | 7 +++++++ drivers/iommu/iommu.c | 21 +++++++++++++++++++++ include/linux/fsl/mc.h | 8 ++++++++ include/linux/iommu.h | 2 ++ 4 files changed, 38 insertions(+) diff --git a/drivers/iommu/arm-smmu.c b/drivers/iommu/arm-smmu.c index 69e7c60..e1d5090 100644 --- a/drivers/iommu/arm-smmu.c +++ b/drivers/iommu/arm-smmu.c @@ -52,6 +52,7 @@ #include #include +#include #include "io-pgtable.h" #include "arm-smmu-regs.h" @@ -1459,6 +1460,8 @@ static struct iommu_group *arm_smmu_device_group(struct device *dev) if (dev_is_pci(dev)) group = pci_device_group(dev); + else if (dev_is_fsl_mc(dev)) + group = fsl_mc_device_group(dev); else group = generic_device_group(dev); @@ -2037,6 +2040,10 @@ static void arm_smmu_bus_init(void) bus_set_iommu(&pci_bus_type, &arm_smmu_ops); } #endif +#ifdef CONFIG_FSL_MC_BUS + if (!iommu_present(&fsl_mc_bus_type)) + bus_set_iommu(&fsl_mc_bus_type, &arm_smmu_ops); +#endif } static int arm_smmu_device_probe(struct platform_device *pdev) diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c index d2aa2320..6d4ce35 100644 --- a/drivers/iommu/iommu.c +++ b/drivers/iommu/iommu.c @@ -32,6 +32,7 @@ #include #include #include +#include #include static struct kset *iommu_group_kset; @@ -987,6 +988,26 @@ struct iommu_group *pci_device_group(struct device *dev) return iommu_group_alloc(); } +/* Get the IOMMU group for device on fsl-mc bus */ +struct iommu_group *fsl_mc_device_group(struct device *dev) +{ + struct device *cont_dev = fsl_mc_cont_dev(dev); + struct iommu_group *group; + + /* Container device is responsible for creating the iommu group */ + if (fsl_mc_is_cont_dev(dev)) { + group = iommu_group_alloc(); + if (IS_ERR(group)) + return NULL; + } else { + get_device(cont_dev); + group = iommu_group_get(cont_dev); + put_device(cont_dev); + } + + return group; +} + /** * iommu_group_get_for_dev - Find or create the IOMMU group for a device * @dev: target device diff --git a/include/linux/fsl/mc.h b/include/linux/fsl/mc.h index f27cb14..dddaca1 100644 --- a/include/linux/fsl/mc.h +++ b/include/linux/fsl/mc.h @@ -351,6 +351,14 @@ struct fsl_mc_io { #define dev_is_fsl_mc(_dev) (0) #endif +/* Macro to check if a device is a container device */ +#define fsl_mc_is_cont_dev(_dev) (to_fsl_mc_device(_dev)->flags & \ + FSL_MC_IS_DPRC) + +/* Macro to get the container device of a MC device */ +#define fsl_mc_cont_dev(_dev) (fsl_mc_is_cont_dev(_dev) ? \ + (_dev) : (_dev)->parent) + /* * module_fsl_mc_driver() - Helper macro for drivers that don't do * anything special in module init/exit. This eliminates a lot of diff --git a/include/linux/iommu.h b/include/linux/iommu.h index 19938ee..2981200 100644 --- a/include/linux/iommu.h +++ b/include/linux/iommu.h @@ -389,6 +389,8 @@ static inline size_t iommu_map_sg(struct iommu_domain *domain, extern struct iommu_group *pci_device_group(struct device *dev); /* Generic device grouping function */ extern struct iommu_group *generic_device_group(struct device *dev); +/* FSL-MC device grouping function */ +struct iommu_group *fsl_mc_device_group(struct device *dev); /** * struct iommu_fwspec - per-device IOMMU instance data From patchwork Sun May 20 13:49:49 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nipun Gupta X-Patchwork-Id: 917185 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=linux-pci-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="TLyeN4zx"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 40pjxl3D47z9s19 for ; Sun, 20 May 2018 23:51:39 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752566AbeETNvh (ORCPT ); Sun, 20 May 2018 09:51:37 -0400 Received: from mail-eopbgr40065.outbound.protection.outlook.com ([40.107.4.65]:65469 "EHLO EUR03-DB5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751410AbeETNuu (ORCPT ); Sun, 20 May 2018 09:50:50 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=xfY5RYQhQgu+isysu/060FKeJFwq+ihpMMXav4s+AUE=; b=TLyeN4zxfsqb7/0xnPZN5474iZuVHqa2eLsUfmYON4H7StnB/z+N7eXmK3tkKK2Wjdd8+bvvJJwTB82EbX9vVTKaA2+logMIjXkkIRjEUn+Qk5SwOiRD1peYOeF0QbvGUUeceWKx/zd3x6heyE4TCzv+2GPyVWQj7ypvTDNuaSM= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=nipun.gupta@nxp.com; Received: from b27504-OptiPlex-790.ap.freescale.net (14.142.187.166) by VI1PR0401MB2429.eurprd04.prod.outlook.com (2603:10a6:800:2a::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.776.11; Sun, 20 May 2018 13:50:42 +0000 From: Nipun Gupta To: robin.murphy@arm.com, 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, Nipun Gupta Subject: [PATCH 5/7 v5] bus: fsl-mc: support dma configure for devices on fsl-mc bus Date: Sun, 20 May 2018 19:19:49 +0530 Message-Id: <1526824191-7000-6-git-send-email-nipun.gupta@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1526824191-7000-1-git-send-email-nipun.gupta@nxp.com> References: <1526824191-7000-1-git-send-email-nipun.gupta@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: BM1PR01CA0075.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:1::15) To VI1PR0401MB2429.eurprd04.prod.outlook.com (2603:10a6:800:2a::22) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(48565401081)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:VI1PR0401MB2429; X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 3:MzZxNRa+0UhPSRBxTHSDB+gIlElMnYbc/L70/VdR6f+Wi9zsMFZBwUA2rNn0Jw4RhAUyFJPvIsFS0ymCFrOjFl3zRVkNi+AoheeD22FmnlSb8gc2f3wro/Tc4RK/Av2GtbZztbZIF3cebDZsphCbmVRjtMiEtg1RMgMaaEZ6skLUqocmDQ5mce0HBHobmJ4cAkzCnPE5YOHTutQ68g4+Sw/Qadn5O19lP5NEPl2pLljkgohZ22sak3v1aeqxn1op; 25:EQ6JfTgjApUt/QXgtykducOCo/Q34JJ3Zz9bqjbC42LRMsQQhUU4bhbyR6tLe56OEVuiRr1VeCOGGOkdEiGNk/UJ3jCdrCYSLc4t8N9pCW7b4kqqAW+ZiuAsVXD4fk6lPTq+xEB08MlSFS/vZrnURQq0YJzjvbjEpkaI3PIeRUwuv+XGT1efMQKD7ZnJnld+3weNGwtWfyIot3LJXyHoXm1out+6v05W90XvOBnDn0qHcwRdwT9JT5gx5BQB3lKGGXnz2Tw9xOUT2sB1o1yQ1TWJpZUPA1UDvm9SX+s3ZU9PAJvMxRomLYlsg/wc7oLNPyfqwbi8JuALUUaiYqS2lw==; 31:7Inxn1hvNk8jOd0pOpKvTmuWjuwLoRLiiSh1s2oVLXgkqOIuAVK3A/1RowQJ7E0EgQ+jQdsOhYvkRIvKqNTFCREJphk8If7ernCtAy7jP03U4RgrpWAlnERPQtrgJvrbwgu0s97sekm2d7SZQ20I48qHj+aBzr2Wa1FMacGzO4QA61uMZRr9t7ULSLjXVsY4nlRuQMHdKMLtXvaAkXlIXgMb5oZMbMS0ycsOsEpaUdY= X-MS-TrafficTypeDiagnostic: VI1PR0401MB2429: X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 20:hE4W886UkMl8sgmRHs7OxH2nCAPdHeI5GGbNSArr2CdiqgTK841IbvSYA31UmNTB21VOuTBvklVCoSeaes0ktUFGXmhKXmJEaReaTFffrPM536dh5shDvnuyJPnDESIh510dF7RxQV6n7SO9Mrm6RvCvtJ/4cqG6LUCUV25quHz/TkzWx2kjKRSA2HXXCtTA5tqOx8I4tFw320Up8kRG689VQtrhJL4AU+s1LRInkjm3eqqKTgTIHhspm3FcmfmbFeIZF8VFDG0E9fg4MHC03ZYT9ScA+LitwMuSiJPY16RKwpAP9ygQ6J6YpMqPcL1XgeaI0HGHldRPrF6/nJFlT89OUslyHzxVPn82LFWEPB1V+ERi7gv2hnPzU3BWuoCRU95GuzX/c5Rm6HDi1Z2umXnt5OkvCm394TXxApehCH/5fGMVJWfqHeSO9fuoGqpmHqReRs9bbwwsqihq3MhSEYsRhVq4f9tSeCHwG+HafSmpFHp4jpnSygfT+s0gZxGW; 4:i/6VITjjYPwvuX73hpSxF/F3oJ9LAH+Rn3fjNCiVz90kzOhQs/4rGUMuKNxGTvGkMVgZpYriMHTC50GEgFkJk/cWd9peUc0h+L/L0rD9pAuyVClWwtCgShvEA7EqVJ4P5FfIURfFHUvpZP8hHC/XAAF4IWWfnwRT09MfSZf/7UB0gNepkZW9llIQhzinPIF+eBaiynS5Bfm2OqfIQ9ZmrO2WhS0hQ0OBiEiR3ZCGWKapDoJQF0Z3Pg3RoDRx3YMNO7CAXkwlnQMCDq6zl30r0uQuHJGBFbJ8cIq+lGJ6Ed8ZYoznRR6O3rj8T9lLT4qQ X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(10201501046)(93006095)(93001095)(3231254)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(20161123560045)(20161123562045)(20161123558120)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016); SRVR:VI1PR0401MB2429; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0401MB2429; X-Forefront-PRVS: 06780E24F8 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(346002)(376002)(39860400002)(39380400002)(396003)(366004)(189003)(199004)(316002)(50466002)(50226002)(47776003)(3846002)(86362001)(39060400002)(66066001)(6116002)(8936002)(16526019)(8676002)(7416002)(53936002)(6512007)(48376002)(486006)(186003)(26005)(44832011)(478600001)(81166006)(81156014)(76176011)(5660300001)(7736002)(52116002)(16586007)(51416003)(6486002)(97736004)(36756003)(68736007)(305945005)(4326008)(106356001)(446003)(25786009)(5009440100003)(11346002)(55236004)(6506007)(386003)(105586002)(476003)(2616005)(2906002)(956004)(110426005); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0401MB2429; H:b27504-OptiPlex-790.ap.freescale.net; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 23:dg21S0xLPraw+JFZGkDwWGeTp/2Ja8YuRNYt4iSdJx7ivCoqtRrYsJ0YWLWlu3U0+e1tzrOZvZLZQ+Cp8c35G/6npNB6nU+41cKsiLfIOv4lPpiNYSj2jiMAuF0WtTlBOb1G5OW1Xsfejwjkc3FhpL3ELuhEFtxxqmdoMMUL0b+XKYBIqIE1CeGB030g5pY45JJfzDfcZ28YATA1DXynJXh8n1hAFmjMCZJFDmqAa8DtVtaqSDUpax/ZA322AIvadEQJB/FoHLrs8gZUOEC5wd4f5EurEKxDTAbURTb3/s8a4YAUe2QntiTRtN9QwiOXkl/xLUC05gTH0Lp86M0xW+Iw6oDXNwzWtC/+J6Nsqqj4I4SQ+mRxuyMwUqWmJOkgmhsFisERwzeUObxwOwPYQkvc79zeyXKns6cQq1abkoDVf5suW/6jvErFtXu9c0VVNgpJ+rkJaNcIDmgRqAWr54UXkWu8X2wFikx/iAw+NP8ovGHwi88lGpDO4rluCChk1zhMVNRp0q68VMTy8AKKPUeVuPgGrKTAzrXM7d9Mw1VT4CqrZqqAbg8nDhMqk0hUHNHH/elqSwDP+Ld0N/ltM61bnen/MrsOm/VI17Wv7VlWiVd7aRwUU9K74IayChXBaMf5SI0hTGwvYeHQ1dtgeqEguQDfaG1K7ikMp69RGMsbUXXhN1cZTQXORjepbcuycNpSwMnQ5XlYx9JArdCUh+8dJQE+HTea5EdNA/U6lIxeI48zLSnkT3fT8rzWCQutJPuWxLJLzLWb45T3wVONgAbsJYbnHHh5AagYhUisY28Mo1LB7BS0Hqb+gs0tkzkW98zz4IR3ZwvUMYvu+IfHB2eo/N0swVQI8thIO70ijYii1sLTwJkK3YcYEjC4lgN2SzT4gfIkWu4KXseA3TivDVuJLO0KbuyQLhh2QaY5YIovbVjopD6c0yyWSw0DDcpkw9NSky1LqVBMghcq5hgeUxY3fnd+6MIKXYmZ2So2a4lmFnmPx3tTbUJkkygbTbdTTdZCwR+eU8KVHagH6CBfOyMBQcFVarFs60tllInYvSI6ExFajGljXcP7VUXQEnO1qgIE9nZ0RPKnKKe9PQqPtJ2LOELy2zHeNYxpHdYrUzlQ+Pld4n9MxL5QJAWqHBWcCt/a7p1jL9fIQT6kBQVEhpsd5RVuQdQPouGAa7soAmcHUZ8QqckgxbePfxt/y7x6t9xtbhbD123prp1MccY+kUpWrhuyDMra33IVNRorJd0nm+duQf/mg/133buuKs9E9J31X49TKFXMpwBoLxuvpg== X-Microsoft-Antispam-Message-Info: aXE+ubPGZ8gmNg5ikMfy6x6Uo1FXXhdSo4AVUwsnhgVJs9DRnDJMlPKXey45+yVyh+OYONR9csD32xbFitL5A7j484PDf1PlxKd1eoWj/OBYg42FWjJY7Ju7cRXIKxQoCb7PYenBP+lZ9eKlA0eSEyN5oE0XIZgpYtXVUYZuiX1XZZXuqQkM1HiOT2J5phcT X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 6:RiO3+C2y9XZF9F0aw97EUYhijOw+bMIJfzE6qY5vf28YY1FtFbvfyJfE7k+C1FlF1nwTPXHZWMUc0vlso8gDfZfsdtOg7PbZLjLBaJlRh3W22IpkbQFBB8U3Old1W45+Ct3U5VWDq4jFjobqRuQumWttlu4o9xQEvGnhN9tZIAEai5PwjNO208J7wtNCBE1Iz55OhIPciwsE/Oey0ZNqYvlV36oPZRGXUseR26ENbELqQd0FoIRtKuL5Mq3prcDZpjplfngQBC69ks9KsTxs6cl/AOELujYV13tRNpQAMNtyV2JomnmpWa5B0HLNA0YVbva1Q1poMhaX/wMilY2SAvUqzf5jpDmq2rj4coozqXSNdV9blPn5vTlcibOELDjNgFgg66kN3yhF5F3VvzZTZ1BwsngvYAOAX3AgqmonHFgd4+mLc2GJZgySobaBX3/lI4laqztZ2dVB+hSsu/BjlA==; 5:NZa29Tqp79rodAqIis5jSw3O9eAi9hxQZiVeNqhZgMxRXuoaFimQQEMl0qAELKT/G/4sZ+ALB6rcCfTTRdSnsEFRHqXXRFD0rhsokJuIXhpr7NU2EKO1+wGjzllJ7qODm5P6fjbjkeUZ7UoaqmY49tcOas1EhLyEaPEYOVPhVdA=; 24:CxKnKGllRJFwqXl/L+pHVXP3BDlF0lVP5q+YDvVWSKYRGiTSimfUEMIM66KKOJEdqwoPimW77uYjiXOXym2e327yphmwgij81nnuGXdxCS8= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 7:EdrjtVmsXzBmf8jlIWE3kw6f8NuwWFWGq/I9syznZ9GFzK7NEhpomQW4jjTmGtJ0tSmIVzpL0oV6sfcLIZmzRTgjHPK2Gx3JPyZ6aTdDUKSlsV6luAV6AN36kNj1AW302kz38RJGo311wqXI5e/6EOZ6ZFzzExIZ966bOob+p8CP9vY1j2/kA+yJG1ZJhzKBmvPfjXpJydcqc+CTPqiUvoSZHrSu2sgmMDx1PEkvjoqW1Fv6+1dnNGH0vtrlxQIv X-MS-Office365-Filtering-Correlation-Id: 7b8fac6d-6f46-490e-0086-08d5be58b00e X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 May 2018 13:50:42.5712 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 7b8fac6d-6f46-490e-0086-08d5be58b00e X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0401MB2429 Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org This patch adds support of dma configuration for devices on fsl-mc bus using 'dma_configure' callback for busses. Also, directly calling arch_setup_dma_ops is removed from the fsl-mc bus. Signed-off-by: Nipun Gupta Reviewed-by: Laurentiu Tudor --- drivers/bus/fsl-mc/fsl-mc-bus.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/drivers/bus/fsl-mc/fsl-mc-bus.c b/drivers/bus/fsl-mc/fsl-mc-bus.c index 5d8266c..fa43c7d 100644 --- a/drivers/bus/fsl-mc/fsl-mc-bus.c +++ b/drivers/bus/fsl-mc/fsl-mc-bus.c @@ -127,6 +127,16 @@ static int fsl_mc_bus_uevent(struct device *dev, struct kobj_uevent_env *env) return 0; } +static int fsl_mc_dma_configure(struct device *dev) +{ + struct device *dma_dev = dev; + + while (dev_is_fsl_mc(dma_dev)) + dma_dev = dma_dev->parent; + + return of_dma_configure(dev, dma_dev->of_node, 0); +} + static ssize_t modalias_show(struct device *dev, struct device_attribute *attr, char *buf) { @@ -148,6 +158,7 @@ struct bus_type fsl_mc_bus_type = { .name = "fsl-mc", .match = fsl_mc_bus_match, .uevent = fsl_mc_bus_uevent, + .dma_configure = fsl_mc_dma_configure, .dev_groups = fsl_mc_dev_groups, }; EXPORT_SYMBOL_GPL(fsl_mc_bus_type); @@ -633,10 +644,6 @@ int fsl_mc_device_add(struct fsl_mc_obj_desc *obj_desc, goto error_cleanup_dev; } - /* Objects are coherent, unless 'no shareability' flag set. */ - if (!(obj_desc->flags & FSL_MC_OBJ_FLAG_NO_MEM_SHAREABILITY)) - arch_setup_dma_ops(&mc_dev->dev, 0, 0, NULL, true); - /* * The device-specific probe callback will get invoked by device_add() */ From patchwork Sun May 20 13:49:50 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nipun Gupta X-Patchwork-Id: 917184 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=linux-pci-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="AlcbpzXb"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 40pjxf1bhmz9s19 for ; Sun, 20 May 2018 23:51:34 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752583AbeETNvE (ORCPT ); Sun, 20 May 2018 09:51:04 -0400 Received: from mail-eopbgr40059.outbound.protection.outlook.com ([40.107.4.59]:52069 "EHLO EUR03-DB5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752572AbeETNuz (ORCPT ); Sun, 20 May 2018 09:50:55 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=fu9O8S8AlD986hYP5KngLGdwBtdmisYzAMxEXguZLaw=; b=AlcbpzXbkKj0W/fwP5DGnGB2LgipBXTt2vYtmuoguL9n7pCRF5Wnu2Z7VXOP9y9MpEljiuqNQ1WGFwKW7RU6uWCxWfa0LG6wfv3Id0nuiVgnjkNLTIMqHDfqtZe/q0n5R2fz858QZjatbh4IWPnCFtLBQWnkg5Onxf939S+IPsA= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=nipun.gupta@nxp.com; Received: from b27504-OptiPlex-790.ap.freescale.net (14.142.187.166) by VI1PR0401MB2429.eurprd04.prod.outlook.com (2603:10a6:800:2a::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.776.11; Sun, 20 May 2018 13:50:47 +0000 From: Nipun Gupta To: robin.murphy@arm.com, 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, Nipun Gupta Subject: [PATCH 6/7 v5] bus: fsl-mc: set coherent dma mask for devices on fsl-mc bus Date: Sun, 20 May 2018 19:19:50 +0530 Message-Id: <1526824191-7000-7-git-send-email-nipun.gupta@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1526824191-7000-1-git-send-email-nipun.gupta@nxp.com> References: <1526824191-7000-1-git-send-email-nipun.gupta@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: BM1PR01CA0075.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:1::15) To VI1PR0401MB2429.eurprd04.prod.outlook.com (2603:10a6:800:2a::22) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(48565401081)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:VI1PR0401MB2429; X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 3:my3anuCLv4l/9eZeQRB/Cdd8loHflxsboMhW2V5x4iK2IM/jH8OGorr/sV5Kk3inaYnpba9SdfLk9Rvd2rHl3DRHRcDlbyavCrRkG7Jsw6mY5oPNyAtp+i3iCDsmRPPJqlbXoCvIhHucSzXv0JPc1EToTyBpEH2IipnvXDFHSIN/j/vf0uKl4XeGNW7Mhh0NU/Gpis5o6wU1D2atSCAjJirTQFFmDhE6n7/nObTbF8T2ybYrqnibPFTC1RgSgrdd; 25:APHKcZVcFrLZn3k8inhJ4OOWRFppoH5XkkpjaN3PB5AvokzFz5XnJXbZcsHBv88nile2LLXJqtVWOaravit7yY6dz6KRi7fpAiLn8q5nXt7+NwvZvfpSNXSBmA5GQwyZ0Fo+Kcy2LpClEusRS0XTzZRCPXicwOkeQ483kQA7YmLeRe9MafZ0nkXymSV8RLi4s0FY9113puOURbo+whu3i4awQhEOuvQmvpXgErfxCEitc+dnUl3KkpW1Lz/BTsuwjla82QPcSYdOhXztOwoEkupmYYNqU3zM3vgBlbaHmJwBxx9LbwQs5NUpSqyIp10ceJH+J5qi3sxarN105mr3rw==; 31:YzhN7y1Iqr4H0govaW4U2OiBzYsMeK79AhIrZVHHtgV/+IW04LxmEIRgZRb2X8PQV97EOsAgNXzSdScqU3j3K9zlZnRkgQLfa3n6w0fGyhANZhpJIcFnUly3BcNsw/77aLpTrUG7zqtXm0tAGbO9cz2X9MCAIj0jdL8fwd/XZ99Gs8mzwJIbVaZCbybVvwLaxMJKpk21x2Gu6tCRVuUQtOZldxjiYJBG1hvrG14jEKk= X-MS-TrafficTypeDiagnostic: VI1PR0401MB2429: X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 20:NGAXSRDneiJmH61tnvmfYXwlIsbpBKnQv4sfv6AzOHAiBtw0Hzr8n++3PAg60+74PDhSloXRbQqmnE5QkSipOpYV2QPYhOJfcUQcVJ94P+M4+oikdfGFpBdMNkUf0KPOxL37f7bC9EZ9jQ1j0tVWYvTA/Oe2a1SnydDXXDMyMgLLE07MCGxM3tgZJpYHLTXjjzX2JhtEXEzdG2KouzicJXmr9v7N38IR4TNhYPQS3Q3R4uE+OtDe+cpdu2gbhqgUYOa4Z78r/xZY/NGlR8UFO7Ani/STTu7K2r2fQzmT+oWmrUuI0Bayk/CEYtJN+Xh4UwoxEzmuNJJfMIAINmM8zYWIlxOmDmjQ0EciiCpRE56a8ixpEKf6UX9Kd9ToJGVvFbRoZwZyUeB23q9i7LKlFd15NbDDwaarNryewemwYXYZjK06JSu9xQ9KpHgVqfWni9c9b7uDpjTDWznitbwNrqbXP8gxSMDGqBBez6Fb+SSUTrW3HPlv+zJeQ/cyL/pU; 4:Ixx2B/ANygZXt+zKTwvqUmUGSo6bPuvEFYFzbWTtFb0nA5rQb3pxIVx7wlaQ7ahdPVll0Q2iZLS1eWvlw7mEbLlOlu9IApV7FXA8AgkiiaORT78X5ktfR4avtcOKxan2n78b2RGAwXD2WNIUAqV+IbpO1Hjz879xwxdOK/XOATryRxc6e8t1weYGiDNe/JyVIZHMCH18tiVw8IRHDw/OMH6FeGl1SAIH8UWJ+6b8b40OOlQ4JayE7Mnf98/idwl4+CatTQo6xnujUos/jl0U/aReTtgGWRliymgIA/qbBLiBxjZ8IXv6/sMF+ygBEkau X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(10201501046)(93006095)(93001095)(3231254)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(20161123560045)(20161123562045)(20161123558120)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016); SRVR:VI1PR0401MB2429; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0401MB2429; X-Forefront-PRVS: 06780E24F8 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(346002)(376002)(39860400002)(39380400002)(396003)(366004)(189003)(199004)(316002)(50466002)(50226002)(47776003)(3846002)(86362001)(39060400002)(66066001)(6116002)(8936002)(16526019)(8676002)(7416002)(53936002)(6512007)(48376002)(486006)(186003)(26005)(44832011)(478600001)(81166006)(81156014)(76176011)(5660300001)(7736002)(52116002)(16586007)(51416003)(6486002)(97736004)(36756003)(68736007)(305945005)(4326008)(6666003)(106356001)(446003)(25786009)(5009440100003)(11346002)(55236004)(6506007)(386003)(105586002)(476003)(2616005)(2906002)(956004)(110426005); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0401MB2429; H:b27504-OptiPlex-790.ap.freescale.net; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 23:CNayr+z3Vy2CI9VORyK8AD0jB+Y2YvjV1/foUiA1KPPEqMH+tQCuXK1nkbmxYL2DpNjn5l0/nXhOix1UPYC6rIoJTdpsrWzqsuPtuOTCwA0o8UgOSvDRV2xLzPnHtfv3c+hBPchCoBz2u3wOmbgxvlzZ1ZQhYzO0OnYLe6EOIowOIiwK2/wTKztj2SFXMmh/So5j6uYnzNZ/tBaZC35Io014VIFfsMyx8dMOEiCefvFIR+J/9qOwqjxRiBrfUzreZUMNz8CzXGsoMhqTj5wdjg+3R+Q663LMQWa6IfjryKcIjRkwip2azJWjqmrTU4NVUXufoGQIWVfu0p+y59sca0K+WrdutDz/UE9EMKhtdwSZSwrIw0qbthLGjZROKa7uzrImbpdMpGlaHROrFC1g6d2iLz7lrlYkBULgIqPRvwgEgRO0QTGV/7mkJwLLSHe/rSkds8iJOVaVqCz0Z5I3eBA2Re6/ptEa5I3dwAcSZC1CdIyTDIexZ2kguFP2PZUfh0WyszeuOXxVyjsWb4U6STFQFqP3fdL/E9WqcwUjS4ypUUw7OlnOuCArRMrV6a3seG7Ij+6ptmMBJKnvodb9bmz0fqBcPO8FU6c3+Kv3Rgju1pva7cH3ReMVgbBBr5KeYPGI8RVxcwygb7NFIw78XZcpS8FjHSJvgq3Y3+ajehRbg4bxQoHxcEA80hKA05ox77qUX3McRSR/VgKKnjQlJwBrN0syw/XVtz0wmZdcND3gpQGF29dEcX8wj+EbM/uPMTxX2ee1I2AoPBdJQzi0IJoiPPVfE6uWlZjeeRNhYXpa/R9bXqf72kJB0jYiRl1KX9mQ9iYMVG/t5OJf/9IukafEzNuaoKMFgFbIYBsTw/z4JB6ztb/oT6NSKgotkP1I0Gvkybw/+D/5arLJ1/luBMf5b1es1yNh1GygdavoW5iYn5J6yH+hHnLYNParSHE2D6Xxivh0c1fMkCJBNl1MjxloqKvupBAWguLgoWa9piJ//b13N67f1fFKzeFO0PAX3HoIHrlEKUshprd1xLUHYt+4HignFBny6mNddBhK1cjMd58mSswB7Py3EV3wgtcLJpVgnzAAnPgQfa2nJmtJRNLuUjyzVcvWhcoG7ysYQvudCmC3cqS8Pd4zFAo46FIE47A9UV2aKdOdoSt1e1pwusx1u4RjIhkeiFi/CPTOQvPN9heU+QqzxXbZWqfT/l5dcMr2h2kmv9BQoBJeqhozTJIDtHiJ1e4uvGOsNFxk+1JZ4NUY3ubgWSV49Nq1m3DkwZOAaVgyn2yitwR08iUVIGkb1Vh2x50KzkLrbb0glJQ= X-Microsoft-Antispam-Message-Info: aSXHDBTdA4etERHV+b43p8zV5jkxLQGsPCTrjHIFh88834vIpFz1TWo5uVFDMWP5a13GKIa5sjhlLd7xlLC/pKGIbD4r9QZORRnYM098s6AZ4nSxvA0VkGDGgrZpVzai34lNhePhKUQrO9Q3yOJaetMI/c1p9anb3aPAR8DHIK1ayEpDjK1+gK0Xth00LfZs X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 6:mSr1y07QjEnoyvgxUjTzUeWPJnusrAcQacplOSWn1SHbyXltTICX/E7E6ukM4oq+fMb5bdATmNyoHDV+a9KDl24SYaBDx4QH9GIQfkee5T5P5uJQaV+JYFt307OvoSaX/L4+BTKifnFnTsaDB8ZDPC+Dfawd8J4nKUAejjhh2IRmeXptPB1mX53WnH9s/iPnmapQbpZLqXgpDc3xIkdZoRrnRN4yWoBjtJhqD8inNDKtEQfGblmSnemW2rOg9V5lFiYEwtG676Yd4ZFcDCpiiJzwIZDTl0PEobna7Z83es3hVPIMq9Qt7yA6Zc7eSKtkRGj8QeTvzXYt4goa3pPLzGQ+SieSQGKFj0NscUrYK85g6WVZ0XVBTS8rau/bZ7MTzTwTczmGFm74CKWOzUVrV3McXZitBjDxCndawYcvVNGdevps6lqlGObwWIzjChZlgQpGJ3RMcdE51Go0SxJ3Jg==; 5:TLNuGWABi4ecQMQanSwYis/CIrPKrnuEj2m/WX1DnXuBHOhUZKNugjrAYn8mng4R7EgRsl/gZX+TOidFKLxfVdQeOIgFmojlZHrUoLMcbgje1/WHFb8sBn47TYxXNe8vK2cAGx66na5v5f1+/CLS7nwFFuNwm7pw3kHWVTBAYf0=; 24:PkmMNCKbfsui5/X1ISR5ycpeEFVQspPtSAMs2hEAUJ6zrX4ldSb5x8x6+NuO/zzlw2rSgZgZ9xTomHjrIka/UpJHrZeu36gVmiBwIE4RKN4= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 7:L+H8v4rxZROTglmgSytovCcqZT24hgsmNXnHCmjKcVoBPAc2D6rS4qSJst68HyAqN08T7DzyBcdiaiwc6+2L3K6dcpuKkQc4t/sXL7c7SU/AV7UDVTLiXYl458/22PmGXfoiAdCi5DFp1brK6bQZH9NBmVh6Y8XVXcHIEX9mnfVzFMv/j1ZtUK08NNIB26YGdsMSAyRxwZwBVn2MLBOdmTRNqULoEBk8zsGU0Cw2D3NdRv8C9nKT2UkzNZ/ROcR/ X-MS-Office365-Filtering-Correlation-Id: 1c659ded-069f-4e5d-3f4f-08d5be58b336 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 May 2018 13:50:47.8681 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 1c659ded-069f-4e5d-3f4f-08d5be58b336 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0401MB2429 Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org of_dma_configure() API expects coherent_dma_mask to be correctly set in the devices. This patch does the needful. Signed-off-by: Nipun Gupta Acked-by: Laurentiu Tudor Reviewed-by: Robin Murphy --- drivers/bus/fsl-mc/fsl-mc-bus.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/bus/fsl-mc/fsl-mc-bus.c b/drivers/bus/fsl-mc/fsl-mc-bus.c index fa43c7d..624828b 100644 --- a/drivers/bus/fsl-mc/fsl-mc-bus.c +++ b/drivers/bus/fsl-mc/fsl-mc-bus.c @@ -627,6 +627,7 @@ int fsl_mc_device_add(struct fsl_mc_obj_desc *obj_desc, mc_dev->icid = parent_mc_dev->icid; mc_dev->dma_mask = FSL_MC_DEFAULT_DMA_MASK; mc_dev->dev.dma_mask = &mc_dev->dma_mask; + mc_dev->dev.coherent_dma_mask = mc_dev->dma_mask; dev_set_msi_domain(&mc_dev->dev, dev_get_msi_domain(&parent_mc_dev->dev)); } From patchwork Sun May 20 13:49:51 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nipun Gupta X-Patchwork-Id: 917183 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=linux-pci-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=nxp.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=nxp.com header.i=@nxp.com header.b="G6BXyhfK"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 40pjx80zfQz9s3X for ; Sun, 20 May 2018 23:51:08 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752588AbeETNvG (ORCPT ); Sun, 20 May 2018 09:51:06 -0400 Received: from mail-eopbgr40059.outbound.protection.outlook.com ([40.107.4.59]:52069 "EHLO EUR03-DB5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751597AbeETNvB (ORCPT ); Sun, 20 May 2018 09:51:01 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9acdZ95RT7obV4sayx5SPOgTXTt7woiLPk713QQhMhQ=; b=G6BXyhfKe/TmFeHdv1/YNsVW61kS0Gv34nmqqg/z0L8AhRcYIqfBp5YafyTsawOrSvpIkHeuF03rl6W9FxwTU0Enxf8zXoQWUTkOjuCHyXq+m5n8KAq9Z205AQqgM5iLiddCajDRxCZ5HFJCckOC46e6nv+umksu72IDKzdCefk= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=nipun.gupta@nxp.com; Received: from b27504-OptiPlex-790.ap.freescale.net (14.142.187.166) by VI1PR0401MB2429.eurprd04.prod.outlook.com (2603:10a6:800:2a::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.776.11; Sun, 20 May 2018 13:50:52 +0000 From: Nipun Gupta To: robin.murphy@arm.com, 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, Nipun Gupta Subject: [PATCH 7/7 v5] arm64: dts: ls208xa: comply with the iommu map binding for fsl_mc Date: Sun, 20 May 2018 19:19:51 +0530 Message-Id: <1526824191-7000-8-git-send-email-nipun.gupta@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1526824191-7000-1-git-send-email-nipun.gupta@nxp.com> References: <1526824191-7000-1-git-send-email-nipun.gupta@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: BM1PR01CA0075.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:1::15) To VI1PR0401MB2429.eurprd04.prod.outlook.com (2603:10a6:800:2a::22) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(48565401081)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:VI1PR0401MB2429; X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 3:dE4JfL9KbMf2TGLIuXOpVefZqO6268McfSCcN/LQSCxqxzMj6laYPI78wAPtucoGJdF01RabLP7phxFEf88GJz/NiDxCAEukJkOX4Pf7da6iMwsAtYS+kcYHb58x4tHJPjIqRx6Osnv8fYlf6j0IsVRp77trPHlOsY4qJVohssMDcUXSDQujHidVGrDyt11PvdycTO50LmPd0Il+ITFFqmEbdp5UQDrJLxQ5k81uWP1kf+4/b+Rx5fT2Zyt0zwt3; 25:7pMn/H7nOrmVAf9mUHMM/6PzhTJeDcAu1jpRFTSZiMJLpxMLmUUX8bK7nY4hNyWyUkW6d4H+gcCW0CIAK9qqbhnri1ODpgRw6C5EzhjY70V3qqiPfzOW4w12ih/q4H7Y9Q0OwbZlsyaRTauwyoHS2w8etmCT+o/P8tEafHPbejNvZemevsqk6yy0/pjaH39Ob2X+LBn9ZA6i0mj1NV4mQ41buPMuwhONnkD52387f3tCRhzIughTzVsfksq1BcR4nolPjpPpQwDtGUBudD9iOTOmQJyIMVKApyNR2GIFe8t4FuoQm0iTPg+FG/995xR3Os59gmXVtoOnV+dSUHUclA==; 31:Jsto3q0IdCbCJORTD9FJRQjB6VugFLMlWDbvc37IcpUhSMn45oKd5sKRWXF3I2tcU/ynvno07Q5/b5CfpnRGkyK2YM9IKBN8CdVf59boTwtvqlDZ8FQc4NnI11YxBg7pm6VujjrxXQfPIMw2tPzuJ7uAMa6YWR71icRkp194PgXYpnqX7jWu0oPj1HREJaL6qAqr/xVgIexyrRbd5oazoDu0opSbRbQFZJl+3/lD1KM= X-MS-TrafficTypeDiagnostic: VI1PR0401MB2429: X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 20:JUHhwRiGBhIWyPM46cT4NOVm3Ue64R6ArNcmNBYN9t9KwYsY4O4Tg7HC4FrQNhWIlGeViONZ8lB69pkZbe9EOOQh0I6SXuSC8Gjvrx7U0S7pu6OCzgk2+D/TlYu7ailnt5/e0oLDDOFH5YOMpBRKgMwHuGQiqu6nviS92FWkn3ra/2i9QdWXlN6FZifkIjhtPcoQHVe3F8DMkIa3o0RTcGbMlA3xcWBc23DQz6RR1u8oy4gRcWHgUWHoSiMzvf8JIKCRM3SOxWYLM3KjOEXj4MszI2CkRirYZTYT96SRoim+95Cfffuf8weYyjlG1HbPdLS1o+72Xu73/T2VzjAs5wzG1xbfG5EXkjQLSb2aMDJqHNC9+mv1NMclaK3Xx5/STk8lIKOLcGfcZm5oFWSDehj3zViinDHv/hXLj+NsX6qQqcbT9s8HP72pmKl4a9anwo5iAXwn6tGVrAvCzKb/UfekriiNXxHD2tCAdqT0/Ssd8QCvdULcjKmQSC+BsRzf; 4:VfwlPbVtBH1D+XaYuQJOBcs2ewsSzrVck751/YeHoxssruZttFQo0loV+nsJ9fsIa9MJMXmZzfqFcgSU1tR15Fd+cdTi1qwbwpw6tCHHj8fq1MvPKRbsCsotp37c1vESisCkApBg0DfSRAhegxiHKuxpbDxIIUnWK46DhcCz3K/SLlMcnl2fswz6bRrOufwyS5cxi0CjfrV5RF5u7yl5gg4Os6gawyGBlk1qi3VUvWF9Hp2OnsAUm7/0nN1Vg30X3aZT62Oh93nZSZFxCfb+jwRJ0i0hG3M7ThaKPX3O/uWsppqs64CKBClLnB5/TRkS6+sLG2RHOWwPDp4un8yZJBQ7+effxeuP4xG0coNcaK0= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197)(275809806118684); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(10201501046)(93006095)(93001095)(3231254)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(20161123560045)(20161123562045)(20161123558120)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016); SRVR:VI1PR0401MB2429; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0401MB2429; X-Forefront-PRVS: 06780E24F8 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(346002)(376002)(39860400002)(39380400002)(396003)(366004)(189003)(199004)(316002)(50466002)(50226002)(47776003)(3846002)(86362001)(39060400002)(66066001)(6116002)(8936002)(575784001)(16526019)(8676002)(7416002)(53936002)(6512007)(48376002)(486006)(186003)(26005)(44832011)(478600001)(81166006)(81156014)(76176011)(5660300001)(7736002)(52116002)(16586007)(51416003)(6486002)(97736004)(36756003)(68736007)(305945005)(4326008)(106356001)(446003)(25786009)(5009440100003)(11346002)(55236004)(6506007)(386003)(105586002)(476003)(2616005)(59450400001)(2906002)(956004)(110426005); DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0401MB2429; H:b27504-OptiPlex-790.ap.freescale.net; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; Received-SPF: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 23:khBVxrty8CNTb7+jhLXCI51+KMPAy12wdumsUp6plUhuYU8ewT53DsouVWi3jkMVmzFusJJ6OgByiyXulCnMunyFnJJcEDSchSfzOifOvBNSEUf/HNWGoz+frntmcJlwFRYqtLBxP1C277ReCe9mbXe8EgJ8oW0VBr1lrjBQsNvLP5FZ86vo/ZVhd0QnqCQIN3u+tU5SuVNT5vjrER8v4AyuS+q+F4PuJfU93aHAff3uw1hprMGiZnP5iUeq31vbNOZuYgTO6eBwvPhraq7Qz3Zr7MnHSzG6EA3//lw65itv03ECD7Cm7ltxP1m06u3u3xXevLw5uazjM0AuooOd9MVilxXofa8yeXOwN8qofZiBXKWBSe8ejl7zo3gvUWNHbPHJCqj/cLq2DkEbWmSoJHuR26Yp9s1RM7yZZ5WZdpJ+f292L7ON+CYra01GNtZphGBQM3dLmg6fRh3WnCN57gpfm4HVIVcxc5Vh81VS2jvv8sgCWoJiBpfMoQN0TkeSseMp65BAwSYNZVbb56s3bFmJqVu9GcZrMRw7ypZ8GbFzeZQZjEiEQykAtUFJqd4s5dGXEl7ZYSL7MQFccuo7cpaP4+pIY4fxDGCClakVYsftBaYdYm7DItNYaiZoJnIpyN28NACl5IVKaM47FDsCIsJrv5qbOcGiqxIru9OCAV99XwLPiiVy+9wYQ7+opxC0n1RSooS+ofiXfTpYkb+quqEkSTUybfUvuXVJQ2XbKV/mNbpJcUOKEQ0mwHW7k0m7UxOY9Q+/grXJPrbAjDQimoLeK66/E+dhjxQbgo18/3bx4UMMvSxpU+uTCh/z/EqCZo3AvIJxh2/4RZ2wpzlyyrzaQKNgqf8ARF/JBpHfMFDOXy2gK0s4H/CGBHdZIDQjXeiUW8sAmn8Iyk/Cs2w18YUCvf//3RTuAhlUturg8JyeuR3lhJrywBvtQP7qhkHYe/TLH0dRqGHcKRp9eqpY5p4u0S6okhcpjCC80mPNA3YBmASBAUvswvdwtGFgvmFVqhVbdnGVmBGqYwvsbOhd28orjZTeRlVXk3Xg7zZO1zy7BJ6hU9zxtMu5S8QJnR4WKtrTTelmf4Fz/ZhHvpXCfYmFdz5Dfke7ilCi6UVNSR+fNvqAmwnVbopRuR7E9aN6ZAAIpTIrWSma3TyPrbdl+H8oPpA1Xn8S9LZTtTJ46xWROr87nOyeL7EH++QxOjmefz+v2M/KhZ4tGVmRGEMS3aY0AclXE6tbCo1GicktKp3J1wJC4j7wnvXm17Q4VOp+8Yt4K9vFEqTtbqHPubJJJAN+hWuynoLsfV9HN3sx/PVFA8NRl0Lvqun7eGQgK+it X-Microsoft-Antispam-Message-Info: yx4TnyveVVvi3PBol6SBCvEh/Pn0jijQKMBhjUAJjgNGdZpPuPQfz57ZneuRNsD7EtaPSTMcXpr+FrNVrFpOiwv29u2MbOCPn4Wv0E07D0pHr3fAOShKvNaFl8lbE4zbp4sS0dEOiOSPlEszfNa0Itz7nhLtaWAbbMStLZvbk9NH8d+bKH317QkqTxmRPN+u X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 6:Ra34URWLJS/DloWWwR6uqYtt/w6f5klU4eqRjRpyvFZi5JWDQYD7Kui/Uv/X3hCcvIX0d+TxngBFb1llx4+fAVZkZrpXPCgE6wVRiAEKg2vA+pLLz/ui5QNZb42gsA6TBfWCJQHoDzvY1/Qj53s2qBCo/trlDBEISmnK48w7cDhrAivy6vcn3CKECcgBiW2+JFUQpSaqLs3K3Yu8x/kJHFJJxBtk7EBVqbx7vFmAq65wj2RQ9ZeZlVJpOA15v1VWgGxaoFJRL9dam1qiYGfC+aTRRPZ8AfpOUaeEYSR+tTLjKcpHBKyPs6BqvraIDrn04+X1HLJxjrNOrrbisVUKzKCckTynMZJPZqxf9k7lyD3j7wh474Z2XCDq8rhbwVJxOmThA9QbXolXM1H5IKuKJxP2i80gLdY0fzycWKsKvZ10/Uc562yMhg5d61mhH3ZSWuGMxfj70XJ5LApTYgwIww==; 5:S7lOFglQFVN2LG2UhhMHGq17Fq2m5OnieI0Er53jqJCrnIN/HCxD0NxHRZo6/7GycX0Gc7obAvd/Uz6iTWgd+5igBnaArW8HN/Dc/5rIOkRri0FDLkgvOg2Gv1rChxbFauZHObtWhLMxEE9QU/E5SrCNN38trESwnnBCJNLCu1M=; 24:K1bZ7XftMXEg2aRLUXTP2ZVmySQdb5QzySjj8v41QI+6L/yjyQDWjnKFmLvj8IeMkkHPmj2yLAOayAy+Qk+fThRTzurPsHY9xoQJKFPF8OU= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; VI1PR0401MB2429; 7:eEp+XM72wdr3FQaOtebsEq9TalKv2i1TY3bKqGSr+7daEkvpsdauu8Yxp5tvxNov09Q5BOEuawQ6Ha0G+w/+cEc3NhFtZ73i3sEV1eHH4TBUwPYupfvn5IHCgzpV7AznbIcgNFHjHVACAGdqzXIX4nAnOVQRCQ4Lyy6o+42+Ewr6sBguKc1Xb+gRVacHAcf21O9tyUau3kJm3MJnXK4n35atkvS890lInEadOBfkxXZ+kDnhQbk3VyM4jouhrgS4 X-MS-Office365-Filtering-Correlation-Id: 2e2431e4-1371-4d14-1d0f-08d5be58b63d X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 May 2018 13:50:52.9463 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 2e2431e4-1371-4d14-1d0f-08d5be58b63d X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0401MB2429 Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org fsl-mc bus support the new iommu-map property. Comply to this binding for fsl_mc bus. Signed-off-by: Nipun Gupta Reviewed-by: Laurentiu Tudor --- arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi b/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi index 137ef4d..6010505 100644 --- a/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi +++ b/arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi @@ -184,6 +184,7 @@ #address-cells = <2>; #size-cells = <2>; ranges; + dma-ranges = <0x0 0x0 0x0 0x0 0x10000 0x00000000>; clockgen: clocking@1300000 { compatible = "fsl,ls2080a-clockgen"; @@ -357,6 +358,8 @@ reg = <0x00000008 0x0c000000 0 0x40>, /* MC portal base */ <0x00000000 0x08340000 0 0x40000>; /* MC control reg */ msi-parent = <&its>; + iommu-map = <0 &smmu 0 0>; /* This is fixed-up by u-boot */ + dma-coherent; #address-cells = <3>; #size-cells = <1>; @@ -460,6 +463,8 @@ compatible = "arm,mmu-500"; reg = <0 0x5000000 0 0x800000>; #global-interrupts = <12>; + #iommu-cells = <1>; + stream-match-mask = <0x7C00>; interrupts = <0 13 4>, /* global secure fault */ <0 14 4>, /* combined secure interrupt */ <0 15 4>, /* global non-secure fault */ @@ -502,7 +507,6 @@ <0 204 4>, <0 205 4>, <0 206 4>, <0 207 4>, <0 208 4>, <0 209 4>; - mmu-masters = <&fsl_mc 0x300 0>; }; dspi: dspi@2100000 {