From patchwork Mon Jul 9 11:18:17 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nipun Gupta X-Patchwork-Id: 941208 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="TM6Pd28G"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 41PNF870ncz9s19 for ; Mon, 9 Jul 2018 21:21:16 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932634AbeGILTO (ORCPT ); Mon, 9 Jul 2018 07:19:14 -0400 Received: from mail-eopbgr10060.outbound.protection.outlook.com ([40.107.1.60]:52736 "EHLO EUR02-HE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S932770AbeGILTK (ORCPT ); Mon, 9 Jul 2018 07:19:10 -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=BYQspJMUTiCUuLRtncdyrdec+hBVsV2eAvrASGYGbCU=; b=TM6Pd28Gl/y21s0XgU91pLi7HgiK3AZMli8zYhJYWuYjmE6lfsgJcTeJKaT+Tqz0ALcvRoEWcYq31NccSNFymb5vCZz4Ca2oI4BMDi4pJFe9xTXQp5Wdo1ThzSzs2pzCI/VPuETWrLY5btrEIXWePx+jPcnsEqvGBWqtJB/Nb1Q= 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 HE1PR0401MB2427.eurprd04.prod.outlook.com (2603:10a6:3:25::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.930.21; Mon, 9 Jul 2018 11:19:02 +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, hch@lst.de Cc: 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 v6] Documentation: fsl-mc: add iommu-map device-tree binding for fsl-mc bus Date: Mon, 9 Jul 2018 16:48:17 +0530 Message-Id: <1531135103-10699-2-git-send-email-nipun.gupta@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1531135103-10699-1-git-send-email-nipun.gupta@nxp.com> References: <1531135103-10699-1-git-send-email-nipun.gupta@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: BM1PR0101CA0068.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:19::30) To HE1PR0401MB2427.eurprd04.prod.outlook.com (2603:10a6:3:25::24) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 1d667d00-131c-47fe-61c7-08d5e58dc8ae X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(5600053)(711020)(48565401081)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(8990107)(2017052603328)(7153060)(7193020); SRVR:HE1PR0401MB2427; X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 3:R4P2Th7usN+GaKC+oDqQMrvEwjSCnuvcyoR3AdOqpZ5AJj7X9sHSZxs5WAPSK7QV8RkXrdyZ/EVj3KB5zppY3gJwgBt0hluMjKH1c+0CYlWtVTWCul6dVNu2itEySAqxbitvxQnKHjpJRJpgEvqel50N6qoagvF5u8b3uySGKrpI0fb9uzEManUGI1yacsGW0cHOduEEhTnIJIPMHXE4YAa1RC/0ccVcXLgvxpW+MsrPF34MiBow268cs+N7LERa; 25:3D17kELRCeOQF77FPkMZs7QOd6TgNQUOo/P3KxUexowiP7LKKR2U62WvCOx4dY4Oomkz8wgNYIM84UL42shKDlJC4arWdwL0keunYjM3iW5tnm5U0UwlCqD6RSGq903MfqxjBCUMe38Sm/mhVWtbhUKAHMboNhOnD81p8sXhQU0jwg4jaUDP9pz6vwjRPETvU1eAoBJ8UH4tVlwxVekD+4SvzB/1BgvQSg/ZRxYiLJX3TE5UGUlJ7nnfHl2RSSaKL6IO7ozWWobSrbNzgraTPxUHvWmJldQWT2Ld1SFRxjGhvfam3/JhPQQ1tkcHRPaVweAi6WlHZpPMcxGwQekGSQ==; 31:5PK8XTTmqL48FByliW27PKZLcjPdFTbi7Fpzwz67AdVmFoWgz6WYXf3E1gIw1aMzdFL0BaZBA7no51NUlA5irZj0A6mfrJsZjBxn5WXbQxkOO0qkeNIR0rV3cBSVFtjNYzjtABB3Uz6TOTpsqdH/kvNikblRB98dggcMAatLqE2/fgYYTQavGq4e8u73i8FMpkctu+YVt6CiehK+azQk4qEK4UEpFU/wOZeSwxZlpVE= X-MS-TrafficTypeDiagnostic: HE1PR0401MB2427: X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 20:XgJxO3F673+3L+CSPJDqX+1qzmyWdKSODLq2OfS63DXU2eShZ08jx8yVmNSdu8RjP0/42/GrBOxT7lxFwVJMDblFK4esVTMeKh7b16Q7v6yo8uX5hy7eU9r2zkupV+OSmpcrJWa7zb4/hbtogRi/z+Ep4eS0ooAIt4EIwy4xUMkcV8STVt02cVX2OO0Y3CEXdxaUWfg3E6YSMzJehrY9ZbDSwRhRxFIvspuwK9hLWwIGD/twf3F/0V5Bv997AeyvZooZPZOB/bZw4t7SPFDp2Abr9lkHY0CUaY/3+I8Zupg8BYnm1GD+zaxebtI21O8U/vFYPAtVpTuHhF+vfm+4h+p8VoNAnAoXs0IwwLyFwTK43c0fGaY54isZvHI3TPC7XsXjdVBO6S87Q2SW78KBLDG1sT2IhdgfbsV10V2MqJ3+Uluh+CMppK0LLvCnP7wdQ3IHKszazTtYxWN5kvuaA3XV7MxgP+oM6VUqhYSyh0A+MeekBF7Qid4Nc+mN1XUz; 4:QwkEqT8lDquxCeJVuw8Cgq0Myn8nB9pA3G8e/B26kfKhRNOJjbgBY6wbm1zaw65NVcGa5YBJUm+72BfkREcoe8afmoSPHfCndsQSv9H19RaCFxvVIdCLrTvVxhiMBA5VpAHtp856XqdEhfwb7iaVIRFW2p7OT/8DdqxhDpE4Xk3xfj9ui3DJMtsYXrYLUNlu0iAV4ekedpvNkbqzAazuJcH4GA30LjGXNrXGBoM89Dr3LA2G4KoLyXc9Do5BEHTVURAzw8byyxkUYpd6xBtnumIJB1MkQHwVTkFriYGIjV+B4CQ4fpp5X5n8eg927HIeJbZp15i+2p0odAnf4kMqRuPGKMdqtKIlpMTsFASBu8w= 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)(3231311)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123564045)(20161123562045)(6072148)(201708071742011)(7699016); SRVR:HE1PR0401MB2427; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0401MB2427; X-Forefront-PRVS: 07283408BE X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(376002)(396003)(136003)(346002)(39860400002)(366004)(189003)(199004)(44832011)(446003)(25786009)(51416003)(486006)(81156014)(81166006)(2906002)(39060400002)(6506007)(386003)(50226002)(7416002)(316002)(476003)(4326008)(2616005)(50466002)(11346002)(47776003)(8676002)(66066001)(68736007)(956004)(48376002)(5009440100003)(6486002)(7736002)(76176011)(16586007)(53936002)(26005)(478600001)(55236004)(106356001)(105586002)(5660300001)(186003)(52116002)(305945005)(97736004)(8936002)(16526019)(36756003)(575784001)(3846002)(6666003)(6512007)(86362001)(6116002)(110426005)(921003)(1121003); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0401MB2427; 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; HE1PR0401MB2427; 23:uGnhe90CoZNyXl3jG9AkeJtTdzqZeC/5kzE8X4Db4JXCLuuFFFkPraEbZnX5XYuN9e5X80mgInlOAYv3MR/REdjzIhK8XPGQoU/LsWhv32AqyGavF5SMoozAt/qefos6Ixyk2S/2qICHsUyEQIrudDcP/prkAz/oyTYQGdnAwQCAfTDEdaeeBdUUr1movGV1V9KV0doW0gJfcms6NolybJnq8zWmb5LDzvGZod5Zc4vU5GkAXeHBX1VOU26Ou4u/BDOtN1OBCK13j1Ar0/kbRPcvNE3CgqMcJUCKvDOBPoEmXvqAsBpeqwdC2jBiS1MiKf8torvimNks2jccH7jEczFsEebzltvp3H9ALht6pDCe2CRdqQR6mTbOzsGcgnhqHy+jYZOYa/wTf/E1m6IhPzeDSSt2R+Yg/jypEDF39p8QvLzhe0P0ItJLa2lO/E1rYWf/oNkYaaOxJO0nEiIIH1RfbmkzcEHXBC+CwiBeg7gEvmdtTpKKcZt0Fq4ZDv6zDuy3NMr6mKKSXuGPi7yRwu3At77AuMrUfamt+SceJObD7z3j4V5loCFd3gZ3mjKY92Vj7/wa5xnvNvHJQEohEFtNN8H3CHTya9nQZ64fkVHBD4NlZP2ykJTskjR7zf02EAjmicHo9nydvIsPsn4XLnbIw8HcoIsS6CtED/FqPqnfUu45MOfXMYnrZSZTVDmRVQ1w33duM2Xknc9FvHLI0e8VA0LcvUbNrN8MKaVDU9JQUTIRhc4D9hKbGq5eIgXkyZ4cTHC8g72y1PmdxB4QGSm5XJHdNYhfllbbguhbNb8YM2eyFP2VGEJ927ye0UE5rw+jlQmXUo6eqGTJ0PJvnDcolM0iSQSduUlfPdCLacExDEdPH3iS3TJcLmS/Y2r7pUrwiyLKRyIsoBnHuJ40CuU90rwNn+DoFVaPtDHHiFNFSJ+8RNhbSznlwCbmD2Bl4ENmTQMMghQdWHLAvsIVibnPipq/q9fp2BS1rguBYw+8U88XJ62pW1biF6EyXNsqTvI0FhapAcSshNEVKmMOTY32qQTmTtKBUyrZvRF3+ivmvygEwAqU0ZG9aQhR3OZDW2QWRNHvgF2nfDdGFNKoWebcLCjbMLcrUrKhQi6SbdsUUa7/b2gV8GDiTU48RBGRGidnINjliSoGj56UeVkGiS3GCw0Kxs6ZTx9wPRyEBACSQyaMcwf81rYVOMjbDyXVDqxfhHp3ARRaqqaH1S9Eix8OwAL1g1PToD2etXnb0fhCL1+PASC/DKsqGE9g2BQjqQApmL4E7OmDjajfIZFdHd2kyTwIpjIjEGJscPQsqDmQrz4v36I53lD+vu6oatMZKOsOIWbNoRnbtGLiMzN7gw== X-Microsoft-Antispam-Message-Info: stkkwH+r0Ry0YhvV1wodE6CZn+wLZHqeJeE619N6uT0k7wyFexM6m081z2jtwWvxYWP6II7eJKZZUbzQZ6pge4fzkLSrZ23ol/9AsgjrXeHgBeewrZ9kGwJrEbEr8AmOsUlfpqcmgQP74cwRsQYpvZIOgqWTozLwEiV5Vgjxjb3Ls7hTnQwmUhEzjlFGVH+XQsqSnyYh15CZ5LSQqCOoYwtD81aOKC2TWsKYGfwgo/MrdpzXAeDsY+FCFZrFiOQoBQWmaCvqUwLKmaar4UJZQWL6nxX9pX5uKSBIClHGjV2lxZmOpiOzSvnnmMuStjDOXiZIoyIsPZNOEzAraWV95XlAu0UpNu0kvoZpHhunSdM= X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 6:PSbSNq4UAoDevEUKKQymxowMl/TKKXU0m2+GEKehsB8VXyQ1fs8AXzSPy1rk2k2zdfD2iqByyARipgx826ogGcLR4JOLZMqCyuxJyLwzePK+HRW2dPokmEXj4OZ/yWdWZgLD5ror24SRReKGx7gvh03glbGmXDAvsshcb0cNarXOPQGzirzumAIjAeerk8zdGMQYAdlryDcZcflbujj2+UKQgogh2hM+gWYmPx9yYcnrodZxun9q5I/GXv6lfyjmsD7w/aw7+OyiOClvub0mkxfCCmyqaclYIuoUoWc41hDQl7CUtGc2xJOi8JMtGEPXqhkmqMyCJsB4HR6q/spdYRyd+55YQqN46pblOtmX4xTqPWrGBINuP8W8QM+RlQBteT/1EnEe98dLRAbASS9XYHeY9YNKyxwE3O1cyHyo0UrUZ8IuVwoYlMbRm5yc8xYQg45MPNKzh1n5aZ1EuAuHkw==; 5:Ir+MOof3ZD9FplZBciyGAe1SN6kM8+p6hm91QY5qDYQnvooecx2VL5812bNzqiMj0e76LamlG7RTFTTvwJn+yUFFWDtj5jdnl0agIJtzl+znOHvg/dfa6osXbIp45rNgss1OJbGjrxx0EDtWg0wF1X0sR/QVoDSGcnEpVRwRFxA=; 24:EsKgWcAaydei2bwCihmubukWY1CKecRyoa4t/9AdK+wltLvNx1EJrrmI8jY4txkPviSqv4JRLmNL6pm20i5FEm6MGJSE1fJ4xsNdn7msqiE= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 7:b59EbJvFW3Dsc8Kr9Hp1QaKuZXVH+SZDBtNz55x6OJvBhfDbej+FZfkmgzyTaHx8x3tx8U4Ik5LfiWBmfP8BiExT81aO2P12DlyfbN1nTZ8N4A5kE6dRkJcmgtdZKxRJBkdvEVo6xKMLRYMFjoOTqU+JH584G30vH7wiFLI27HODxtJNISivq5Mt9azRb9UUxTbvpqf0iITS+W5BduT1q2oY01TtSh4lI3u9OGHuB+K5FoB19bxfrNOrdMBZl5lJ X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jul 2018 11:19:02.0580 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 1d667d00-131c-47fe-61c7-08d5e58dc8ae X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0401MB2427 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 Acked-by: Robin Murphy --- .../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..01fdc33 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: +Documentation/networking/dpaa2/overview.rst + +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 = <1>; + 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 Mon Jul 9 11:18:18 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nipun Gupta X-Patchwork-Id: 941207 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="SIoL55n5"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 41PNF11T37z9s01 for ; Mon, 9 Jul 2018 21:21:09 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932994AbeGILTW (ORCPT ); Mon, 9 Jul 2018 07:19:22 -0400 Received: from mail-eopbgr10055.outbound.protection.outlook.com ([40.107.1.55]:11280 "EHLO EUR02-HE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S932770AbeGILTR (ORCPT ); Mon, 9 Jul 2018 07:19:17 -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=Ngj95YNmm4wbigjDBUZoc9Z6XrAr3QNi+1Mnz6jA708=; b=SIoL55n5TBRKPMvCEBWRSfrSEbo0cXnjK357PZt2FVhZ61M9CawNVfW+JJIkZV/uAUJBP8NipvFRgjsFNQRupebFOq9UFOIQM2uPR+ISUFv3q6tZ9uEwF+6NQ2+RyZcG7suZk+rV81C63BB9Kvm055LPwg6UyixiOEqpaPAP0BE= 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 HE1PR0401MB2427.eurprd04.prod.outlook.com (2603:10a6:3:25::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.930.21; Mon, 9 Jul 2018 11:19:08 +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, hch@lst.de Cc: 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 v6] iommu/of: make of_pci_map_rid() available for other devices too Date: Mon, 9 Jul 2018 16:48:18 +0530 Message-Id: <1531135103-10699-3-git-send-email-nipun.gupta@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1531135103-10699-1-git-send-email-nipun.gupta@nxp.com> References: <1531135103-10699-1-git-send-email-nipun.gupta@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: BM1PR0101CA0068.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:19::30) To HE1PR0401MB2427.eurprd04.prod.outlook.com (2603:10a6:3:25::24) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 4ce021de-9d95-45e3-663d-08d5e58dcc6d X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(5600053)(711020)(48565401081)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(8990107)(2017052603328)(7153060)(7193020); SRVR:HE1PR0401MB2427; X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 3:FzWugWILTAmIjqKmWTGb+y4/uYj+4KSd4+Jzr1p0z+bwssk2ev4RYh0fFh7M2E9vodYKMlchgqsjsoqzMRo/nR3gq3z34Ad9lT9NMdffngNua3YXXV4DAxoLw/8ksAKh3NKLs4eVVJA17WeDmmJyXFBEslYMANtfCBI9Qpi2/I7AKPugdAArvWdYqg2pQRaAWcrI3HxrZfVG/lr+WqGkLAVFipueePusd7g4PHMeSYsADxRKKR6rsTK4BTZ1ZwPI; 25:4lFlSIhIcp8pd1Aem1TBELm2JgvhSZumTmRcIpbq6zA3aJPSsEBR6k5qlqHnez1hdPU4RHk5zaRaCi4dZUywKRj7bg7osbGXXjwuQF1tbvKKkNM4YPDEOUxgc2Oloii8NXYA3nwHZiRit4mu077KJm2NgZJWbjgD1kkb+pscop5vm25hlo67Cwt9A1c6+DdnwA0wFRIs+ymNg4MdJIIJFViXvFvVSEACnfoSStCHR2O7hAQ+2ZDiWgOzf1F9P2D+fbRbLBBbrsR64n2cpbn/oL2KP7B+2KYaLmym+kmuGPmreZJhDf83a5XE6P6EVOPHspUSi5sCFGPNikZ2BajyvQ==; 31:f55ritRkcmw1r4eWcoNekIg73wowkhDOQHvZ3BmTJjIlbFIXDUEjYnZ7B+BzP0tlLZ5J5Vzjpczz0EC3qfSWkTdcXxjrWVCG5+rutihTTG2w0csUpC1gb/qWRDyrV6w1xb/q564bQSFYGgj9C3x6VmopN3RibPBStb2HyNGMYiuvdtKyhgd/zWurhF/4shAJYYHQw+cVZTEFQGetzjPBeAOSRuCuoVvym5Rr1e4z5Pc= X-MS-TrafficTypeDiagnostic: HE1PR0401MB2427: X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 20:ry8GUIi6hWJgOkswCx4EUKezU3sARYYAZuVwnngYQHR7NjjCyKJ97irJyJFv5RVJ9NLOFN7ODPkp8Dw7VxucQ9bQ47mb3TqLvOCxGkyCEErYdbchcBkipyjkBaWrNUTGI9hZMlVu2MbdCfoCz7u53gWUWRFtXRKSTNEbyvu+rdJpSN1CEJ60qB/naSe615wQBgiTSYXDMYpB4Xjyxy0rTIUtsehdb/LubxR6BOQW7WzO24K0N/ifYBFMqoFoyxIBBhOr3+GiOJ92LJSTeF2TfuOhIX1SYiKttTvS7MN3Ivb60PAWb3MOaCVKUDZDsw97V7gcgxCYihKpW2ua9+Fp8Vuzf5UUcR5DmvFR/cxXD69UbzUSNeAj9fyH6yrN/56fs6ArMqHR2Bj1TDwlElEkH5PyV7Rg9FrpzdGvjCLi870a4/6Fp2YGxFpAR2tjqMhOpJGUxOoBFM2rlKOtIiUUNUTZAXi75si/yfePnktBIJ1R7VukHVC0InlSvRr6xaRt; 4:bOkTEiAC9XfZnVFbmiLKxev58hWvhTg+mH535ApUdnzENH6ukz14sfj1GumB0TFe5YTOltydtDwDeSfaVGGGqI+3F3bXtTBWeAqkEOSJt8UBufVdZ5Atldp1/g/wE5WgF/fuwTTutYoTQws1xWCwk+lEcdy4tZExzB9STettmS5g0YMCFEoBwqACuWfRVhU1HK3xrkBcMdZqBUkokZL41MtnHDJfPbRB4jMrMaOoKkSTyp7umKERHG3BHq29BXpGtNPl1ZGTDxW1dHkllJe6o56l4aPn3PbxEmfFeJd8q/3p4JdmKdNddfKdvq/HVvQ1bA3mu53e13xY2i1pwishjBCMJ6k6pVFHDtPbb5TO+n4Me6KRW90gZbPf9KI6RLDQJ/7k5rCIQGF4p8+CD79ubWh6sWGrw6/bpOBSlMctQkY= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(180628864354917)(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)(3231311)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123564045)(20161123562045)(6072148)(201708071742011)(7699016); SRVR:HE1PR0401MB2427; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0401MB2427; X-Forefront-PRVS: 07283408BE X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(376002)(396003)(136003)(346002)(39860400002)(366004)(189003)(199004)(44832011)(446003)(25786009)(51416003)(486006)(81156014)(81166006)(2906002)(39060400002)(6506007)(386003)(50226002)(7416002)(316002)(476003)(4326008)(2616005)(50466002)(11346002)(47776003)(8676002)(66066001)(68736007)(956004)(48376002)(5009440100003)(6486002)(7736002)(76176011)(16586007)(53936002)(26005)(478600001)(55236004)(106356001)(105586002)(5660300001)(186003)(52116002)(305945005)(97736004)(8936002)(16526019)(36756003)(14444005)(3846002)(6666003)(6512007)(86362001)(6116002)(110426005)(921003)(1121003); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0401MB2427; 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; HE1PR0401MB2427; 23:72rz2jZ2a59AHrjNeU8KoK5KtRf4Ck84wafllmHgdyXpG9H9w5ByhGcQ7n3rBg4vhxDaRe6eayUDwMm9NfQiMYGtzXDYO0Hmhuoqv+fEng5rStYBx07tbNSc+NuftWW+zG8uv/XIXvng+Afsi1oQsaAi52FkoHSaH3WeOHc63PKDbJeVBdcORtLzJH4c037VCWYRpmB+YOTIInPguyVhkjm8tMHByvJIp5YoEv3MJeEPw/XX2WbCd//HE02wgFA7dgRdazwZnbc2kD9BKCA02x7t6pO5H0ud3uuaKyYOfHDz+6zwFQBqVFA1cbydXsHyUJdy8fAOtyf8mdsfWQCdgfJZ9J4xl7qM/4Y++gUOjqrAAchXJ19xsNjCOPu19MwQpTMftqmetuob+IuR36gbPo15joJvaO35xb7ZsvCXvuxeaaiO7LcokZUcRfpqcdf/Br5dXziNYgpjIrVcCCousSNOAprEsupXPhdcPiWgS2FH4RhJi1+3tX5bXLw1POchXVaE7Nu43yrBr1CbGOAVo0PqqYyntzED+pKj4QO3B63Tbblb9H1CuDYbzxvoBfTnjbQoAm55tieE3AmSJAZLxGeBlruB1l9LaRIs1m/zazmlfrZ6VvD5c0XMZAY/1I3R+a+l7wPzTQVdvHRAfoxbkl1HPq9SqCzsnqkrcegDMHqhAbF2L8CEs0a5MY7ELlDnfdiVfWHzq/FWA003sIQCtn0nOeEmQTqmhdbsmCTHX5jcAoJCVOPyCoSAJW9ayO6LV1yqJPLOkX/dOkWorFwpxxbaaRuGHE24vjlVH+iLxHNyy6DLQZ8MzetT8QxeDhgvYO/fiqYFHOQ1D1N0AMSFhhbvPrJs0ASEyDUG1AGFlwQ91s5x/q7QHcBp3lKKAHxHClRtuzjVhtXK0EzKTqFGnFLiIjWRiiJHUiAd7HqaKBw23Peu+RPpDaRx3Ndt6OEXEnij9X9mv30RSfyiX7sWvrphy6+P93ZyylTy/gbavFaqPuZOixCaiyWBKbmtXKIpEaQtxPtsFdJIoZ/xNHDWgcg7nAx/UKz5gK8EMVHSzo6YEruHT5st1unPwT3wdBaX6vsllBQrvImFEMJwI0yZ1Mvbs+iLYTVf3TW8Q6EzdYhdsRp4C0rvEZK192nqMSSbUKkjufaSfXU1cWci5fhwZbNtV2zUD8pwZe796e/4jMPX43HxE/M8qFxxE/3JO549fG91AJEiChi66Llp8wUsks8y/95zHN/PdljotzN1mGsBAEWIIP6Sfj3o3zqapMrVMnv7qlOFCX0sFBWefF8G+8tUIKkf4k8+FwF6l5MvAXd1cCTTZjd501GXRThyIheei5FPqYXl2woqTp461Ra7vw== X-Microsoft-Antispam-Message-Info: GbBwUVc/rsH7fJsi3SJobbUr1kRrkwIRsTCjeAk9zMJyjXFEHxajwdiMcxsQ+7ah9OKrScQTfluVmMdcWojVOFesHEN0jyklc7nP6RBZvW5orxD2DEuq1JVKggo/M40O8hI9xxd32k7P0lZsBU3Hs1AqjfHmkEoiwcN2xCzwghxXz5m0htkhHod4SJ5kpRnmzeUXwqX7f5vsQxG+73slMY4jDXGOZGIK4L+y2iLgdlDlDfVenRLihTiiXHy8o9otct4Sbv4l1pC6LQDY/4M3GUUAIaVCQjpidCw5mIo9ME+yBtFtDi/k3dD/q6qRrfcF76jXjFbzqruCNQwQwl76RwvX0VyCfiKCditDWgpdMVo= X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 6:oMKTuyjuL0N+K74+eCzmdXmyYbRlBvErNgwK3i5ye8yNcMoWJJ3tZJlPFrvlk9QrUap76veNte1PmjKH0VWuUsidS48jvxPquTg5FdJuKBMhWsut9s1hqIHvzX1bnDnzq5m5tFaLgB/sOVInvjTIrN32YkC562Mcd3hxMl19mEX1GWrVAiVEZLs1KRcgsjmkjJaSfHMFlg1Y9lbOTkh0COyUXGRb1qNwa6K2ef/IBAhPUYUTmmGcka7AB/pdWJDplDsjt8FSRWpx/PFQ87sQG3tXzHIxxbgAaerRsvD2QY40wTTPmx+XJ0sopXUswKXnFf8BZKjF4iRwgB+N/l8QzKbssAOLZVaFqxkeNc8sDhsARuIz9qVnozKZ3gX6WK47JNMQ/pZtioDkhpolV+6y8LVfVfDRf3wbVJxu9rc66Lny6g2HJzQRL6FE95MqOOnYYYOC5svoo5KGr7LQrKScuw==; 5:MMHRZ5lCpEzje63yJSh0tnweoIABR1x8QYnWUoEOuOXMtdCH3J2UeXKbPgXZCrGWs4KKNha5SwphxqD0BbTmsjQfKMdq5iqMfXTO61jfRXGnkHnpdrDUE813eRwylQaIv1Sv+ZdqI4ub1jIpwrDl4UxvlGSzh6dX1UZlJa0Zs94=; 24:ZAWTo4OE7CQh7Bs4PvPPbjDotg/dIfZO8TNl2FCMsbh8YxMgSPJLaa1ZdvHQbX5MCzOBOcU8fzTmJqS0HwqW4aExbpOF8XeWazMkI7UWg20= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 7:hZk+O5T/zSp8t6yhYGkgEEkenv78+Dtj8BA1fYYm58LjhbcssI7HTTLwgEcRDUB4Ekw0UcX/0r+witjjmScl/pbU7uEVdBEmk8LYJTFcwwNZJclOybdd3ZJojMRn9YNjJfT0xDUCEd/8b5RBtHDqEGEgQSAvvAsW8gV4kRO1wdvElDcDwzp/B2LCeytyrxA7FbhI3huMmi6bDuSS0Z2vxd3JsnFstRWTh2cT1RnmhF1+yqlKRKOQ3n/jW361xBR0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jul 2018 11:19:08.3280 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4ce021de-9d95-45e3-663d-08d5e58dcc6d X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0401MB2427 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 Reviewed-by: Robin Murphy Acked-by: Bjorn Helgaas --- 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 d088c91..91600e0 100644 --- a/drivers/pci/of.c +++ b/drivers/pci/of.c @@ -357,107 +357,6 @@ int devm_of_pci_get_host_bridge_resources(struct device *dev, EXPORT_SYMBOL_GPL(devm_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 e83d87f..21a89c4 100644 --- a/include/linux/of_pci.h +++ b/include/linux/of_pci.h @@ -14,9 +14,6 @@ struct device_node *of_pci_find_child_device(struct device_node *parent, unsigned int devfn); int of_pci_get_devfn(struct device_node *np); 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) @@ -29,13 +26,6 @@ static inline int of_pci_get_devfn(struct device_node *np) return -EINVAL; } -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 void of_pci_check_probe_only(void) { } #endif From patchwork Mon Jul 9 11:18:19 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nipun Gupta X-Patchwork-Id: 941202 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="e5zTuuH/"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 41PNC96mzyz9s1B for ; Mon, 9 Jul 2018 21:19:33 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932938AbeGILT1 (ORCPT ); Mon, 9 Jul 2018 07:19:27 -0400 Received: from mail-eopbgr10043.outbound.protection.outlook.com ([40.107.1.43]:42112 "EHLO EUR02-HE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S933036AbeGILTX (ORCPT ); Mon, 9 Jul 2018 07:19:23 -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=82G95c9pC1Xl03/ubgEUrmP+7qVW0vR6KbsmJmk3Fdw=; b=e5zTuuH/INQ+PpmNKGLa/DmAKzU9Z7kLum0VvDn5wDxSAABqNKks/mDG8d/dNPXy6DibEbJwkDcmX4chkKa4akQCds3wApykAooQNmtqsMnTj8ZS9CeD25W2XaxXiiQEAv3uWkGEz3BMUK57e9CJ1MVWS+dtcEyHH6ib7q2mVPY= 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 HE1PR0401MB2427.eurprd04.prod.outlook.com (2603:10a6:3:25::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.930.21; Mon, 9 Jul 2018 11:19:13 +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, hch@lst.de Cc: 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 v6] iommu/of: support iommu configuration for fsl-mc devices Date: Mon, 9 Jul 2018 16:48:19 +0530 Message-Id: <1531135103-10699-4-git-send-email-nipun.gupta@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1531135103-10699-1-git-send-email-nipun.gupta@nxp.com> References: <1531135103-10699-1-git-send-email-nipun.gupta@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: BM1PR0101CA0068.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:19::30) To HE1PR0401MB2427.eurprd04.prod.outlook.com (2603:10a6:3:25::24) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 8f8e55db-c7d2-43d3-19ed-08d5e58dcfe5 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(5600053)(711020)(48565401081)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(8990107)(2017052603328)(7153060)(7193020); SRVR:HE1PR0401MB2427; X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 3:V11S8dxWPR+8MrZQrLIRf1T3m1MAJIX2l2G2JO742gm1nniofCtnbZcbrabBzOWt7xf6AgiVC3eke5rvqs56nSHpcDuYnopjknbnAod2GwaHo+ax4KiQ+dXRvQ+aWY/JHB+T5kOkaTWSNsJhbiXn6l/TjX+LRb/3Z5Arbvckw9+tL9YqDbLNqrUENCGd0cmgfivcFj5iLLoDw5IPzZKjWJxCFsTQMvhgJtcYRm6BcROyJNcteoiPDp9e4KQyhx3z; 25:qZSQqON2Cli4UbkoHeP1sRaUEinun7hLvP12YvLxyPXVeYUKvs4REyXW0n5aNFYAN0j5U+XoNjBNL+V0N19DCEZ+ySGCDd1307FkR2dNKZLK/sc21dNBpvROy5rjA4fO5TMKmSus0Ol7s/SRot9CX55H3JXU/rM71kIZc4ErDeycXA7F0++8qCxb7rBvmovHnjTfzq0nJ8dFRr2a3Ge9mdNGtkwyXowIt15+hukDNAJ2E8HuQeE7uvBlPrr3bMe1a5c/XsHBXWoArHnrbswNSJLW2tIOSOTN0WyjZTQH7d1lmX0L8Ilm5GZCboJVVapmYIWPm9+WO4BhFiLMj2kEPA==; 31:PPa7rJESX+vqzNdbKdGpFjUplPtTdSXcTxR82xIkra4JUg0b38C1VeCHX2VMgSDxrIxXsMNMujvgghE/74SunNua9gdJKd0MFg8Kqx7V4wgQS5/OmfA1ZgXB7T1yLkbP78HfkdokOf28+MhbFEfBdMvXR05jSoeN8Xn4iHhOx3ERXYe72a0syjdgqiY62c3Bkk9THb/VA/VQMC6XJ85AFCwEerF7luV0zPqOyiAL7ck= X-MS-TrafficTypeDiagnostic: HE1PR0401MB2427: X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 20:aepJecO+MDnzUxuLWZxuigQ9WwTLlsat7p9C4tSSyBPc0/YjXGe3GMD9ynlWFKXI67MnlGFgAbUSAhLsAUC0SC1ZuTCepB3qua3e3aHJ2+i6EE9S2cAyjTg7PejvaKhQ7bk14jrgCUbpRWjaBjiG2SjmpWATCR5ngLs4NLeQ+DX5YWpXlpCF1yOSMmojD0tZrkyMMA86ZsqqYNjh+odkftBLMJNy8xn3UycxX1+HZNi8nd+GNOvRb52sdkKGWSyd3V/AVpIrz0gabdzbvlm0bKzcO29hahNWU0FcUelCIuXRRoIGUCc1UUx43mklK5A1fOPoh6omgzxqVUkIuE8U/iUW5G0Wx8+lBRmHG/5H0Db9IFwxuK147Uk+KDpKWd+MYazkRqpTw2savPgFCxJGbMbMWSmMa6ShDDQdB61Ixy66DJD05Qq/gxjRPQEgNLspWpr5k1QM9qcu4JYcZp3f7e4xkxs5Ie/e/CvAGE6vm8GkPJ+V4Y1IfgyHGxYqTxoT; 4:oUEGEiZEfqEEB0fqymqwDqbfpr0N8mhT/8nduO1dUx2ytis6VquCsuXMGvkckN3o2TFw+kxJaFJL+9GfMLxgNTwQeCnbd6dGKKzze2H0raixGdEF/ja0KZM6prWSLUzrktcEQyPQ714YNP8IINo97EOK1o0T9pSgzP/eWrHtaeCAPUIHQUicBfJD2JiOCv780m6gGLIN+eBzvpXCfpuDE67ofPagPMvskS6uy3EbJ333PPiIY8QM3poZlZZIGOV9BUyPuLZwlL3Bo52szpFybQ5skDQ+ML4A9T4KR7g4KRKa4eg+Xz1qjwOPtV/33wfga4ilOatvAPUF0Bj7SpOZxbpj6bt/GT2Qf9og4VqbVgA= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(180628864354917)(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)(3231311)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123564045)(20161123562045)(6072148)(201708071742011)(7699016); SRVR:HE1PR0401MB2427; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0401MB2427; X-Forefront-PRVS: 07283408BE X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(376002)(396003)(136003)(346002)(39860400002)(366004)(189003)(199004)(44832011)(446003)(25786009)(51416003)(486006)(81156014)(81166006)(2906002)(39060400002)(6506007)(386003)(50226002)(7416002)(316002)(476003)(4326008)(2616005)(50466002)(11346002)(47776003)(8676002)(66066001)(68736007)(956004)(48376002)(5009440100003)(6486002)(7736002)(76176011)(16586007)(53936002)(26005)(478600001)(55236004)(106356001)(105586002)(5660300001)(186003)(52116002)(305945005)(97736004)(8936002)(16526019)(36756003)(3846002)(6512007)(86362001)(6116002)(110426005)(921003)(1121003); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0401MB2427; 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; HE1PR0401MB2427; 23:b6CFJIF+qj1CLVSl28Nt7t/CUA8CuNtvB9jRnu/sLgu1fzwwCf7vYmdWXkrbAZ4WslrJipskvro+rd34W5p2HkY0/X2kYnjJ3oBlq8nje8H0E4hdsoQhurMWzfva0QZYiYq+unIDTHIT70chG1tks/h+5R2FAb5dhzhx6j92giLu3M0kCQb8SoKTkKQvX2B88+Pv7qx9V3CSqOoxxsQP6omJtInzrnFcBg5/PRd1TjpcwdeJjNnV+rriT0qBwe6wLonZF5IxM7O8ywLch2FXs81oldiImjO4OYoEUC5XUyh1Db0iygCniqCGPBlUr6IoKwKcvlH9a4WcbraQ5cgSs8XohQBUIvWUz8aU5UMFjwPKIDFHWVq7oVTYUEuf82NyZLnCA/2hMmYuDgnZgWVHkHiVP/Fz5dp76h+5usTbzorzz3s63+ZTHuNPWwm+910/gDEyTJw7HA1iyWmOg4iWz1s+XuSn+Rvdw8mbrP+u1xpzw2AG5EYC6WuvGYIB003YLg+I6UkeL9Ja9o8cHvrplEvI8TVd/5BRInvizUZVS5g5cvSt4xAE/S3KwMEmqUp6mWsBDdHvWfQuF3/aiVbWwioEWT1Ep8tQYpLFKdPbo+AemI/z9l1Qa+jeTMCXmg+FraRydCAf8fzIw1itqjkad+lPJdASMJYSfkag/3TJx7bwrBreO1RlAyEMA+/p6IgXz3syvbFmdEhuYe8LJijy+PaehMnrJWKAIb/+f+bammvOZ55R07aMMwo/i7RvtuFIcFFffvJNszxOHnlorAbxZ7+uZbJ+tz3yFNnek5eUcLUzdoQNWK84dGwNrIDb3YU2BsYTjBwAxgKS20qmIN2XRqfeiw5giZALy17nl4j8AHDeww1YkwRNp3HWlsfN5dxJNKyFl3aHZMpwyPiYh3uir7D/J6TAOsPJL9cOPfZhNO55qHPfxS8JzeNFWwOtq52+Um3gRG6bQoJPa2O2lVhsOF1bMPjAsWLZaTPX+f1MRKW3HlQ9NnyqFacqLMvqOmbY7gGZC78FVCDXLmx9ie7t9ETebNANH46GiDF5MsS8vLobvlQ+V5Ak2L1BuBnNYGsFT+h0zm8HHgu9uA3KmL7cJiS53A02hwTg3Cs/jRFoE5SQgEzIx57YPYZ8ITWUXp6/gP6xB9zwUHD/HAomss99HrXVWov+p1D6bitJfcK+j48gucpyg2e+58jJjdXyY2Lo5VS1BZfxo0ZByLf8XowJd8FZ/K4oiEWm/dSfwpfl6ouXkp8G/DvoJLBHidrUchAYR7aqiPaSWF6TVUd72JY4EIaKwztikAO1P/eSBhwNN78= X-Microsoft-Antispam-Message-Info: GeEpDC46HzQTkeNAOKc3E3LZsBh5tFTHO+vpAbCAjSDSzSPKGAlHhx0a8fU9cRx/bxZHhErCsHwRGZcawJU+OPZVs4YH6IO8I229oUrU30z+ZsJdI7hDGa/WyosRa2/8VwSPDKTg6zwDtJ1UMWF5p2lNOui4NP9eYsAbycL0sfJ0Qq6Ip9Z2eQSgqMLDkAyG361ryZ/WA5OfQL8LGfe/H1P3Vq/u1NdTifcPF4CLhZetpkjvV+9oJwUMsIHzsEo6nmXGnu6t7KNmww5lu3K0PlhMqWTWNckCs2mF7xrYoVY0LPYU95kyNPBHCP/2fqd4kbyQqvBydngmT2XXMocI8XVof/DTdjSg8OSuTqgoV9Y= X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 6:+CPUPwy/qt8GNMElDk7iHf2i6bAJPyI7+Y4EbpCOUQ6Xpl64tAYu2qAoJ9orxpEq/oSKGk6eUdWWf4DQXBrIUbuiPX4WZAhL7fyD/lVUYhISc0Se929tEPUMXTRGU9cJpZLrIte6jEjN47w51grlHhgY/c5/mV1w8efURm0qb7lmdj2NOAPzRKABhgFKdFOa07zaCMFNEtvMFtUujBK8L+d7SX9SFaaVqXO889OOsv/ABxn4bBEMZsx/b3VV4NeAHT96/DcdNadqX8f+N4lZDi3j+3qVsL7PqaQn4unfyb1JwuqmDP1xrVpjGIbkP5Fu/yKGRXo3PrI2LXkpKQAzNXfyav8S02IrMrpCcXadB3ynNC5S1vcI6x+ziwIYiPUk6vHXOQSJl72vj6maVv/Zv1qbnxr/78Y2EQP7Uj6JqQlv9h7VIAVAYFocZSIbYtflx8lZOITNWAgZ6ef48QdJRQ==; 5:BnJ+DgPlNIGteQYD/bcLzyYZvo4fmLHhk77kW2Rah7Si2YWen/rtiLpP54J93jdikgnjqHZbwNxhQE9vORkqo+Y9WnyHLUFZyI6NBs3pFrbpv9FWsrzz2tqFNVmjeUWVUBUT+fteouprwSusBAz0qgu3t3jqHUA+nEdY3oky5/8=; 24:pBmWt3yGplJ/Hg/lGWWXfMwMfJyKZzlxLPMeSZL7CvqsA5jZgmgE2UzsHGGe9Ihvzftp851DR7fG+oJEV7szPpB8NYyFtB1zbZA5qW8Yh0U= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 7:VOvWsZhVD70fYeaz4H+PaNKIS5cvYU6VLgwUwL6xR8EjbrMswu5k2BXGPUdcxCGleKpWFSUy/NbjLXQKT3eFXYizBURcCHCgS5O+uDHWqrfSUp+7Zw0PPp5MOJLwDzUUq5jcD0BtDQq6dDFAI8ix/Mn/Q6LAkUV8qpnLM4QxXRp9lnShSWk6CnZPUoPR94ENf3CnM1w8A/51/j0dx8le89xvPv1eBm68xgo/tW4SP+lzFPOaDXf0cPp7O9B/clj9 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jul 2018 11:19:13.8394 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 8f8e55db-c7d2-43d3-19ed-08d5e58dcfe5 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0401MB2427 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 Mon Jul 9 11:18:20 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nipun Gupta X-Patchwork-Id: 941203 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="qZ/fNjEm"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 41PNCB73BPz9s19 for ; Mon, 9 Jul 2018 21:19:34 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933182AbeGILTb (ORCPT ); Mon, 9 Jul 2018 07:19:31 -0400 Received: from mail-eopbgr10066.outbound.protection.outlook.com ([40.107.1.66]:19376 "EHLO EUR02-HE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S933135AbeGILT2 (ORCPT ); Mon, 9 Jul 2018 07:19:28 -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=hMSx8Dhyy1JKyyeXqfcnt5HnU7Sl5Tn8+j+KMffUUj0=; b=qZ/fNjEmWsOamsr26UH7uE2auFQpadYTK+h8Ktudz4KNL7EEDDUYHpFVSptrYEv9RYd+lTkmAdus8o4ds8uk2pTnBV96fyiE3/I5fD+gAKJYfrAaWqnuAqCY/O6jWk4+7KsczpnEVixQrzD33KLX2scWHaxjua+3omjqja0+GJ0= 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 HE1PR0401MB2427.eurprd04.prod.outlook.com (2603:10a6:3:25::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.930.21; Mon, 9 Jul 2018 11:19:19 +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, hch@lst.de Cc: 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 v6] iommu/arm-smmu: Add support for the fsl-mc bus Date: Mon, 9 Jul 2018 16:48:20 +0530 Message-Id: <1531135103-10699-5-git-send-email-nipun.gupta@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1531135103-10699-1-git-send-email-nipun.gupta@nxp.com> References: <1531135103-10699-1-git-send-email-nipun.gupta@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: BM1PR0101CA0068.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:19::30) To HE1PR0401MB2427.eurprd04.prod.outlook.com (2603:10a6:3:25::24) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 421beeb9-2e2c-443b-03d0-08d5e58dd336 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(5600053)(711020)(48565401081)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(8990107)(2017052603328)(7153060)(7193020); SRVR:HE1PR0401MB2427; X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 3:mmQA+yPlpGHMSPdNaNqcpUyaxKJYgRP6uFOMa46I42WNSuA5pTqzGGiF2+IGg7yaLbq8sndNJ8L/RnkvaxAixXBujgH008uqPk09dtEXMcDF7H5FMKarbLYXIO7uGbG6nSKDiN/LulDGbcM20cdoVzCVvMXF9R4sPTQZbb0m7wNEafz7h1DyPcHAdbp6072bD8TFo32z+czeA112yoZwXZxK0vXhLc+SQS0gD16MZ4wMoXQfYSSt7PRh7ibV2XJJ; 25:rkcl2DUxvxwCa4x2v5/iFHp0XeNPHSciY4CZe+V6K04OeqCke2MP+HNDYLfVo1nIjLEuzw2IjArvdRL/umMStW5yCrinAmrM1VgnzVlmPPdxyDhybKGLnr5j9+qKLpNMaLsqaF56pracwRnVlTUN4m3LGEbbWrHMpENMtSGgtZXDQmh9nIuzKswn+PTuFCqjogo8pE2TsFxv59G1nuna/Aiu5PwITIT1Qy/eKhanha3e9wLSyQRVxFuv/aFcjXNr21oFaHrTIY7Ca9Uwrtu4wxoDRUqgi/LoveBd9nbjG5bWCUq2KZtAHQs/t32bYaozcPsW84JdF5TBsuYmTXL/4w==; 31:/wG2oBYPXuQ1b2N3vbfkpzmWj9kNmJYqWP/cIAYgWO9sbXjr4x5ELxNNNNWSUd4eICVGID/Pj6v3XJyIdIyrSJJLkmYJduRxVU0ezBdU9Mb0B1Alhnzcgn5CvbjA795UI+c+m4I8pqN7Pqh6kXnQo564/jpI/7Pq8+x4T1YoQKOsPA1oLHKaH5qH+akzgCH4qCCkOLAILzKDMRCTQlasSgpz7GuGV9y2bIADiOpXeoo= X-MS-TrafficTypeDiagnostic: HE1PR0401MB2427: X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 20:xXCsu6+ZjOGL+NBwLxZ1dWWFzvClRY0b4ZxpuzzvKOBt0yWE+AQNEMTp1bdAMg73qGgT7fCqfrF/JRnhf6XNF1Cx9yUGwEwgAnQHu2Rz25XmWluTDrpe2tAauOxwl9vHHk7kd5osk8gsfir/swSZQVThovi6yndMbj7kng1D4tzJmCP3zC5WS9+zOnkAa4XKjflDQ/faWmybf79VA1O/8WVPb74eEhlK0E18ujaifGhbW2Y0O+U0HiOZJ8QGnH6EVpLxPjWEe5dnGFx8R63yrUKa+ozpZvV3wje9mDLL3YRzgE4fmsZTp9M07uaHhnQPv7HdETDiQdHtmTf+xxY8e1aO0O3wHyls/1d3U1Eos0vnbcY3JMH5Tn2ceupDetojSgKBBfrsRxoAjFOlY+bchWn25/KCft7K6Z/0WglmyTuKeQkyCMK+5cPZ29gpveAQDXHgQ5F+HBQBrayfOeyESnIkOEubEpyysP7s6hw9xjkXYwVfG+WRhszGPsbtTVhQ; 4:RMJ7vZNdfSSUQigVyBLzjCYagh2GYFPi/NemJ71ibNtvcVZ4Mqau2J1iEQEGQ8TLi/A5NWVBl4Bvuyd2M8OyO6BJ2bAdeIGJ5wEjlQUOpM7UcbKgPghfEgtpvYRfZAK4SeCojdUz4kSg7CKQsLDqhIHwydo9sehm79I/2GkopzzUoM40jcNafMAK2Q6NITK7HMfhgt2dKWL+mD0zmlMYwCsZezD0Gf40oyRXD5c3fg0oG9c/yLYER6BEfEDjA+vFY1lciBejKr5cODFZe4EmD63G61aGUqdHJaEk15Z6jU1TU0QR6N7yDp5H5LB/fOUT 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)(3231311)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123564045)(20161123562045)(6072148)(201708071742011)(7699016); SRVR:HE1PR0401MB2427; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0401MB2427; X-Forefront-PRVS: 07283408BE X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(376002)(396003)(136003)(346002)(39860400002)(366004)(189003)(199004)(44832011)(446003)(25786009)(51416003)(486006)(81156014)(81166006)(2906002)(39060400002)(6506007)(386003)(50226002)(7416002)(316002)(476003)(4326008)(2616005)(50466002)(11346002)(47776003)(8676002)(66066001)(68736007)(956004)(48376002)(5009440100003)(6486002)(7736002)(76176011)(16586007)(53936002)(26005)(478600001)(55236004)(106356001)(105586002)(5660300001)(186003)(52116002)(305945005)(97736004)(8936002)(16526019)(36756003)(575784001)(3846002)(6666003)(6512007)(86362001)(6116002)(110426005)(921003)(1121003); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0401MB2427; 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; HE1PR0401MB2427; 23:lwmqfNI0j5sz7CU915tke8D2XqIH3iMbc3R9kA0r843xzmOv5DPp6uyHna1dh+yLU979+AN4ghj7h0iAHKMmburbf5uGgk0el7XqzLLvnBIyy5xExcsp7VHuAXVxqKMQDJMeGpLBiXqnyIEBiwxe07cNrI6j2B8gC63HjyxkL6AN52erNgmv6P6z1PXY3UiAx523//Clv9u2sER35RIadGXYSnTmfFwr5+vbVh4TKqIWFlVrO8NYOkMqJKhMFkULIl07q1iSoppe0gblUWXYkX5L6oCZEfI8LJekK8PEMHw0iJkZWKWWyyzyIQbXxU4n51ycGrlD89fPJuL9ocuxecI2aq6gr9CHi7aklEmzrsgd3gHpwDs3MtY0UdaC285uDBfbpMHc/V6iVxC5q8fZx2zama2+KZgJZ/kBu50OjWXTveUELt9cSLikR8Xftf0Xkm+5YMbpI2+SNdbrm8C0fRnFIfotUrDz4ypA19WNyam1A3M7a4rVHo/ylXa3qIlYXM0B0ONsUzQUVVJpvBnWP5C1D4PrAEjwIt+0mjG3vZoVw6ykRfWRhj3OUQ18eC8wSA4jKtB6dxGhkxddJhrDGssS+l0ZoeHO8hbliEdBmye5ctJCNFdIrLMeLDm5nPAGkm798BLRGYH5nBLhdEZMq9Lzipdp07x3b5Y6OItIMlj+WnG67/cx0vNj/FeuHpCkgc6siwenKTcMyAeMB1bYHMtT3P7bcHX7mNCrTm3nv2oymG/UN0m5S8YII6MJthELTctHyJPqcQL868a0CScgGSrT/kflJJnYYj5mOA0nRNgcJ1nnqJKvgzem72KzQff6AnyCHS9tWF+LoMnK989m65lg0i3+3P3osxPon7T4fZB1FLsOsERA5teRPyZDoAGeCRM2dWIbhBQvKVbvkI0AbcfS8ezv9bXiQiRFc+eQxiFSh2cG787djFqxo91DYGlg+rHUs9EoDYmPr1OxlnSfqzKUNxiDMKd6tTgthMcvezN3Vx5VUaW53T8yXRLJWJSTl1d2omTrzn8b9dJyNFkV45I7hARWTUhtiMQ4uuZGjf6j19b3A0AZOKdGW1plxBK/C1krbaQ7O4j8wcNaINrVNT+3kS3n93dPkG8LNzlLl55hQQsqDC15QBEi2m/jiclKrf4d2AevkXkcTxNWQwFQtshJviY1YFgflkKD/mwQZS3GWhn1xY1aAc7Z8t5PhhsbKR2vFtT4JpzE4IDhX+HcGlLi/C5/El3dAtsMLByaAIq6mk910TUCMZXer4e+l0QMMhW6xOfj+rid9B1FYPbCsg656znNBX2W+3SVwomF9D7zpV1y2t3lFR8A7zBrvToBxMCWAQ5U0eKPy4KcAmiHow== X-Microsoft-Antispam-Message-Info: uGS/mDXoiXGMCYFe1B+Zazf+5y1al536Fejr4JiLVuNYnQHc6/6Y2FEqvgjwL6EK/vMP7pth0pSL3HWIRccJ062CJnD6aFf8Nu2bx39YKgADHIVbtnDn80W7zQxoZGSciW6I76/pPDEi5CWRAHl19LK5cqgD8QhnxgySCor8yJe1UcVyTi5o7JsL9T7EU8ZnvJmNgH2t4LPX/+F0bxxE2DLZe15E4Ix87gVlPbBGgluiary2O0YkjZaeflPYe+3d1p/O8hX7XxNg3wXUI6ErGaAjKGfzzMnpki3Vh4gQKERp4B/oDWs8dYYF3ff+hHnSRh6HJM2VWhUtXB6/2U3uIniHR3vFj3KO6TsSThk/B74= X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 6:rbmIsQ6ZFVlaFfcCtcnhgU5iQqEqhNfHVbaW5fZH7Z+XmU6l3PktCqweo8s9B0LgK3IEy881UXEAswf9mmxAiEuftzIH8ffFG4XyWpeyt9AieQazGN7oGo8741D8SXqrWWmvZnYIBfddf37kB/kLMntgoxArIhHb7evREXgTGUYLyG7MWHzdQ8jZGHFKibUiXmaiU1WKCbnqH1d5TB7U0K/DjScAETsgp8oLYOV68Gx2STBslFhMYXDPsgu7uvZApsKAvjmcid//c3tWlv47jZi7cHPDn3jaGlvmCwIL9h1zsZ338wtaW4ZjC8Ti+cREtyQAvQ1gQsE+D4HfH9wR/GFsuXirI1Y4W8/G+gyAIy9s4lPsXWYGi2dTvaskNL7FbmuBI966bg9EpQe4eRjn3tn9UpNXNOPGbDXYP+pNMYDYw4QkKvUPUwUsysHwYxUneV5oyrRFD1i+i2N8oOnvdQ==; 5:su4OfEH5nYp1KFPkkOGqoi2YtFIGRsqSLW7AHMRQM0sbNS8VruHZQpfDMD8eai1P0phU0x4V5FmRauXh6XXIii3KnWvBKJRdrso+Ouz7u6P9vx5X2o9jkcXwxy8GuJhbhT3s52ltjEJuE6ec+vkXpcnn4LsK1qr8U4U5iX9Yxew=; 24:qIon+AsU9wbnU/9sgSJ180+znHJrccKm6UqKKHhXgY7OOgaMeQ+03848Rm78WoW2wM/27IFBISbdnbxkAnEOOnE9y5BwcgefZLfVbh/ELos= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 7:XZue4BBgtkvM4EDodBnxqnucT0ViTs0XSUwUHZpdfBGFz36k/c4ENB0lDxK9sAernQ8rAtaG2f9nV4EOLQc+ziGv2d7iF3/7a7QL4yUp5LqBnjIdh3RnzwoO2kJSv6DuRFj17U/3D4Qb73A+cDVHTWOI+t8eBkRZxzhDFiIYRSdX28LLqQ4ywYg9ni93PjbgcMgA0gX8HuL9L5wj5tWPNIqUPMe3ur5/Rvbkx8fLvOyP0UjjK+V3zUEPmfbkHID6 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jul 2018 11:19:19.7191 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 421beeb9-2e2c-443b-03d0-08d5e58dd336 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0401MB2427 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 Reviewed-by: Robin Murphy --- drivers/iommu/arm-smmu.c | 7 +++++++ drivers/iommu/iommu.c | 13 +++++++++++++ include/linux/fsl/mc.h | 8 ++++++++ include/linux/iommu.h | 2 ++ 4 files changed, 30 insertions(+) diff --git a/drivers/iommu/arm-smmu.c b/drivers/iommu/arm-smmu.c index f7a96bc..a011bb6 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 d227b86..df2f49e 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; @@ -988,6 +989,18 @@ 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; + + group = iommu_group_get(cont_dev); + if (!group) + group = iommu_group_alloc(); + 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 7447b0b..209891d 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 Mon Jul 9 11:18:21 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nipun Gupta X-Patchwork-Id: 941206 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="i1fSEpVg"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 41PNDB6wY6z9s01 for ; Mon, 9 Jul 2018 21:20:26 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932898AbeGILTi (ORCPT ); Mon, 9 Jul 2018 07:19:38 -0400 Received: from mail-eopbgr10045.outbound.protection.outlook.com ([40.107.1.45]:51708 "EHLO EUR02-HE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S933207AbeGILTd (ORCPT ); Mon, 9 Jul 2018 07:19:33 -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=i1fSEpVgU9pMH2ZH6Dk9iJOUBtKhTGaWLchRPfytQyLdAEANfN4p7OGXJYdx8sUOUeCo1PFOnMBYs3PB9OxJTMsBS9bERLeNd+guzS8c5TjKnD+0161Q6YLOqy5CyObEaEhKYLun46S0VS6dNwXuQouEOatmWxoNsdRwnqJKQLU= 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 HE1PR0401MB2427.eurprd04.prod.outlook.com (2603:10a6:3:25::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.930.21; Mon, 9 Jul 2018 11:19:25 +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, hch@lst.de Cc: 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 v6] bus/fsl-mc: support dma configure for devices on fsl-mc bus Date: Mon, 9 Jul 2018 16:48:21 +0530 Message-Id: <1531135103-10699-6-git-send-email-nipun.gupta@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1531135103-10699-1-git-send-email-nipun.gupta@nxp.com> References: <1531135103-10699-1-git-send-email-nipun.gupta@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: BM1PR0101CA0068.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:19::30) To HE1PR0401MB2427.eurprd04.prod.outlook.com (2603:10a6:3:25::24) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: a604f963-abf0-49b9-096d-08d5e58dd66e X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(5600053)(711020)(48565401081)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(8990107)(2017052603328)(7153060)(7193020); SRVR:HE1PR0401MB2427; X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 3:9IAl/R4b27FuSAI/bUQVuhjG7+Oe/hbfHw8HupjtlieAzTKmImvyXsDNZm5UWu74b92Fi65ZXt176yI9cu5mpraIU9vbl8ez4y4GODeinXiaKgNJ4i2OSXH2NeIL604xIEToaaIMRsje1W3q9TdOvn0sRmG9fCTP2ZMsmjPpTF/1tW+2ghNC/bg4aiFY2plN3J7ePcmcuhpiV2wljBtwCOkC1MwGQZ8LqI5d2u1Eb2pJYBv7sYvbIvnlC+65OJgJ; 25:i4OSn+xA0tPfAYAirsKyilt1s3dOVGfDqNbUOiSVgOR/JFCv8GUiTcLxvNQK8c4SX01cD3nJL2Y9o9wJSovOgF5sO5lzHaCCPWLAAq9bqdKPQGxQ64ImEMhvrlDleaJo6iDECLYAjnNvmqW2YB0+5kw2jXu9Z7UabKMfJnQXodYUIsWh7N/2bKLXj2EPSU4DLYP9gOcD4SRpB9lWeEmM9f8586x7DRb/6GiwI/1NlU0ksGkegQ1UiDIgYcRil89mvutRnRbgVVaBLSMdkddtHaluz0kGmQQzDTgDqA+BHxo7uJlJmk6Ga/1J5l7aIKY9bBzdCViEwDoCT9F+/TOVDg==; 31:f2XSYSkDyDbPsNlJg9pm9ZkB55U5xmZ5skGsEpncjjATTBdOti2f/KpRU0gUOtm2QxZr6ZU495IaDBHE9uqqSZwsmGds7o9z2ml9jmmQh5s7rh5hsbbaOW4zYXjjhdXbxlrIkv6leViZFY/zUDA7FAf90VKpE6jyuURhaytpHgGHRMk4mtwk6k0uL0OhsXC39ODh+7PpberdRpD35EMTwtr9EWZxytAf8m0coG4XUaM= X-MS-TrafficTypeDiagnostic: HE1PR0401MB2427: X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 20:B7UbW+9kPl6xY1QXcfLGpsqSCvbn7UXNlGtAS4UcGBr3rExOVtt+/WvL9/EeUVkR7GT+1vapDnpJHkZmhriuOyC4j4p/fv47r90c7gL5y3o1pDLzHXCUm0iR8rzkcHXWpsJTIL7my/NSqQrJvWyHueu27up/ubh+DFeWX9PR17LTvumL8YivY0F7wUUWe2b88enX728J7JRerI8NxiiELczHgL0zIasN6HCaaTKIRzqRr/Gszl4SnR8XncKfIPyvyJewoPDkZ6qkFGATSynet7pc3vWLUhzfwOLHV7VVFsm9wMKkV/ubpD/DKJpiJCGP+vEaVH0GQvcQD7m5mdQ0XJlWoRSNkmsRI4st9Iw3NrY2IEEPhoxLNywFA0bN68+JqlsUAaNjsdpIbot5JgGsnrULlt/vjwvbyXWVpvhl/QdYl44/AIvUOUCOvBLQk+z6pdOj7QmVmA9XwmKpQmcNP66L+yhWIxOzKa2Wqli5Z+NXFMjiFdPTp4tsuw19dSWa; 4:OGcsvGUFTsi3b87YMMw+4g5NLuzd2buXZTq9EUdDwH2ZW0mQLkbK/HM9wOnec9V4aIiRsMsfpcZ8Q46OLljyYLDsEVB/uWuZzCeOj74KBfk9mLGV2RJhjabfsSTugL0hGO5MT85Z7cUWUYjBhUwTYjLsmSY9LkymgcBK9z2QDShb/K4y8ndcYXLeC8eOAkq6yIR4sYRnqWvKJg3U6WULmqFXjyiYzcGMIJm/+qTo5WRaX/swWuIa0O3CRgg61T/+kJMG5f1AgX9R1G/u6cGouH6MytJ6FhF2mvlTOZ8nqTe9oYr9mTNCvSgY2wLB6v8Q 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)(3231311)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123564045)(20161123562045)(6072148)(201708071742011)(7699016); SRVR:HE1PR0401MB2427; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0401MB2427; X-Forefront-PRVS: 07283408BE X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(376002)(396003)(136003)(346002)(39860400002)(366004)(189003)(199004)(44832011)(446003)(25786009)(51416003)(486006)(81156014)(81166006)(2906002)(39060400002)(6506007)(386003)(50226002)(7416002)(316002)(476003)(4326008)(2616005)(50466002)(11346002)(47776003)(8676002)(66066001)(68736007)(956004)(48376002)(5009440100003)(6486002)(7736002)(76176011)(16586007)(53936002)(26005)(478600001)(55236004)(106356001)(105586002)(5660300001)(186003)(52116002)(305945005)(97736004)(8936002)(16526019)(36756003)(3846002)(6666003)(6512007)(86362001)(6116002)(110426005)(921003)(1121003); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0401MB2427; 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; HE1PR0401MB2427; 23:3uuM8SjT08fKlYSqO60jb5MNNaVJS5HP7+PCFeJWZcc4gyA7+FXjEknBkhUmMEji/LB35HtCwsDDL2lUG4yutSGpaXuEkhMdutFmhnPARbMDF03MpMqqx5A4RWaB3+qxHXJkRlcb5cZpUQud6dFHuTpQloFfP98LT11ScAkE9GniCi3BCALWg0tM+InTm15UpwsO48M9W1eMKxRJnCjTuTlAMcM4ggX0LsUOirZVe5N/Lm0jBu3gXo5Hf8bZwzf5Bv9BEl7iez17cK8OxKpUForIiPU23ZSSxyy87iJ9WUSfBH72B1UhRsio1T0NdG7KH+uX2fdlPoB3rBLIoclcy+Bp/bUElqUdvg6Tv0CceziqGBnETVOet40QMhQ9C50l2oQ2muB/1PHeh34ZGwsTCD+B7WE3jlLRjupGpb5SNZQE8ZrUod/zdkmNt/8ltkfKxxVmnoNQnxvUISglSSbFXekj2h8oBF/4Sa6HfDhI/5Nly8jQl9BhpBIIACGrqaFz1FJNPHh69Vkx7qOWUEJ3X/N1Xevs/37+KCCcdgvAt/TjdcOG6pUld0ZDIufmPed1yVNbciQXAJt0VCG6vWl4MEe0+ncZ+R2W/EyxrQDHnIxWLKFOUnfq+n58D/QPKMQq54va37OHi9LsahW1QnHVFbKnVb4A1BNUi/U404SsjZf1cUdLKF8YA9ycsGSolqQdJ2RccA97xrXReKwC3rVN+3U9crJDHqXeNFLQsw+Z+kSx7N/A5W8LHV/UlcckSMI+VYKR2jpFuLmDWvVFdVlN7Q6ildc3LM/XFBr20ZzxjJrAetlrwsN4seCFh4lBKUpQxd4EIeZ9a4ea7lnKvwOInHhP/q+99RRZVMSgpJ6XwrmS/2ezwSS/wJrmXe0zIzgp/HuIjN2W06zajG/SaOX5LmR39eXpHSbmUzGzxltNzRXaKVIQyMCOYAAujKdOME1Qgo1bmXyU6FmfGrUN8y668CD2oo9352U1qsoTFNZTIoLJM87L4eWkEol/wCcglPBJlYWhUuFR/VtdIAYFBvgFNVGrXy6LTFfZkpFSd4ecCLu3i3S1RycWRQ620lkkoiZ4+n/VXPErD1FPN5DFQ/nfQgaxdsktsTfG+sonRo5GyM/BCLRs9JBLh0ZEZd0tOXonMUqRN/XyE2dqpZfPeS+DTfR5McQXz518KNTKsCdB5YO/y95pzymQ+3ZCCQfvqTZ4ydsc8yQebrJWXTKgm41R/CJiC32Fkr0xHuJxt40wi5jnq/LXIBRfBFlMC+BYYQpltQxwU3toBZBbC7XX7kr6EuLL7OCtphR/ugaDyPSGHJcsfDgqqUcFIqcFMg0bI3iK X-Microsoft-Antispam-Message-Info: YGDUwnMReEZprTqfzb2a+FCg4PBxumVtaJFKO5fFUdYDv4ALSqT5FUMR5sEDuTGmGsR5Z+SxOqlMa4w5MZeK/3G599CKIQRjl9scz0foEgwoJ1/3thLpEIznXu8u/w47SHZoBLCzPc+0I7bu/SlgK1xizdvQA9LAj7o3zXGQrMKJ2H77O216sRPl6e+itwB10enqr9KiXfTLCJl2AmN9snlJhb7rxmp0oSHCSmWuLnEONS3svDpioivBXWEPUBNqWAtJmqxdmrXeOvg0J33gG1Idxudd+/c6eOfXwHTNWp7R2oEceOsPQV3PIcviA/P1FBv6wIp5KmSnr+Md0cOGHD/EJ2UOtV3NzTOG9V19yxs= X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 6:waVk714+YWl9MNrI0OqV6aLhMpqLS96whMvjUXzkPEdVHpHHYsZVSGSVn6cIr2LThaD/eHPKhVRX5CHwaAZGcOWlUUTmbuPehGiKVTIukJewmfybFmOuJwL0b5BJz4R4hV8+OEiGDWYGKd8GtXP0AVPHfS7qR6iyz7Kvcddvf2JEKGGVgzBdC9OhDy6Z9lIr3/JTEobWbLi+TN16wCmb8m1NH7dYRo2HDLqahASvl6kQ3bo5Pgx5yGooGqBcdtDCOu256j5r/UM4sPvmVlrZkYClai3hE5ljJwFU4VLR1vI6G1lC6wDU4zM1d5xAeNbFmDH38fOGtAYJOnMBDdPM/fxXWWCzpILW+2BH2zhaTYW/RReWVrRcIpEWqmX1yZNvUJ1wnXtSqSN0ieNy+Q53SBhjf5EIUIuddVMULsMjLc2dxGCdWCoLCFyykfxBMM6pBAmqvV5h5SwmxxnbY72YBA==; 5:t9mhjJZMyLY17LMvjt8PJ5bl0hK50rszWWgncSFkLlczAIPjIy7O629ewY3rZrNbNxipAHz7/6nnte3/hHkRVp3IZSoGDBgFsoFzPsp94IK3aDxjkV/s5b3DF0++KoAdxL3nzRyTVVdAV5ia0vNUERgSz7gN/uBOWAF/jVWfmNg=; 24:VZV9zt5KMt7vjSS0IJwQMGAf7lBYO9F00kLrygTh2dPa3v23C7Uwsm34F7kNXK9fzIwwaj52LA7MysrZQZou2C+vSv4xBFOnq7pQKYZVEKA= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 7:8WMoPMo2wpi0WGee6C+kYUQLF6qV34iVngUsL2XkfrT/V1k1TEnxXcKSpA1KwXXxPooZKOzTH6AJhhJTnzl1+yfAQWt3/VNplsdGd+yeoZtbtLLSQTSpDtRp6FBwQVslMm+cJ8Vc0nFmkqRxjSsUSp2ee35QtHCc00rHhHg/dqokMmdY2QYcp/B81g2Jypp+tcLOZeS5papIegzDV14Kvco4MEDxjYRYRMKUoUXcCoEubNOp+K3e5ZOx553f+AyC X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jul 2018 11:19:25.1094 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: a604f963-abf0-49b9-096d-08d5e58dd66e X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0401MB2427 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 Reviewed-by: Robin Murphy --- 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 Mon Jul 9 11:18:22 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nipun Gupta X-Patchwork-Id: 941205 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="ZFG77paY"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 41PNCw5P8dz9s1B for ; Mon, 9 Jul 2018 21:20:12 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933303AbeGILUJ (ORCPT ); Mon, 9 Jul 2018 07:20:09 -0400 Received: from mail-eopbgr10063.outbound.protection.outlook.com ([40.107.1.63]:14912 "EHLO EUR02-HE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S932519AbeGILTj (ORCPT ); Mon, 9 Jul 2018 07:19: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=h3LUbKn+NfpULplUoriITqfUZ0k7NzbW9xgQogrfMms=; b=ZFG77paY28DK2PRqqA1ed0wkDebFxPm4vS/kttuc6c5gYhiFydxngIPFy4+lnEIyKvjTsW3Qs1xy3xJpOKnNqMC7YGNBvYq2qRE4/lqQI55m8cIUNjThUPvTBgs5y0s1gpPEHsj7NnvdaWvopzfmn6CaoZHQMQwkh3Z38+ljTew= 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 HE1PR0401MB2427.eurprd04.prod.outlook.com (2603:10a6:3:25::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.930.21; Mon, 9 Jul 2018 11:19:30 +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, hch@lst.de Cc: 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 v6] bus/fsl-mc: set coherent dma mask for devices on fsl-mc bus Date: Mon, 9 Jul 2018 16:48:22 +0530 Message-Id: <1531135103-10699-7-git-send-email-nipun.gupta@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1531135103-10699-1-git-send-email-nipun.gupta@nxp.com> References: <1531135103-10699-1-git-send-email-nipun.gupta@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: BM1PR0101CA0068.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:19::30) To HE1PR0401MB2427.eurprd04.prod.outlook.com (2603:10a6:3:25::24) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 654a7a6a-00c2-498e-f491-08d5e58dd9b3 X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(5600053)(711020)(48565401081)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(8990107)(2017052603328)(7153060)(7193020); SRVR:HE1PR0401MB2427; X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 3:o3S0g/4NcHFlVMBHHu8rG1F9qpu6aKAl1sK0HVbvHqLGQedlxIrFndcAcQh2gWKqp2AatxQzSXLT5I17bbZcV41WAIFPbCoMvAMfV9KZaSThKK2f2z4DNwW9Ye5oWXRJDNMBUKDzYKUCjE4VasCARvqf06SG2a6b5VBpFmfV7Ze2X9qTNaKiGr5vtyUPN/nZuANCj/uH4stDt+AqEMuEj7Wgk1Lx0rYCXDgkWJLMbWqjjOnLZm1J4z+GYZtqXG1O; 25:zlObgAL20Y5kPtKY8GPu/99vdfuI6u42+7gi19MlS2jZ47fzxQ5ZsvQO/F0/zn/GU0rg8KgYX+P0wpH7pi/4TVKiX9008aDoSj7RJ9lc+r6yTpkxOhjpn4z/XKRtn6BTfMfzSHWI989umHmIkp07jC31NE678wfc6PIjZF5sGiCcrmAJdygYj+fHb7I5ELV+QOlpmhQ07yVDxg4X8fwTbERGEdoQ56sZ+kO8Pnx9bGUeOurgvvaf9dJ008+vaUEvddTO0K7gmdPSZBcZpAoJJPQhpdK6t3d5VOTtqIDRGb7IotfcyJ2Fc+CYNa7KgEurwIC6upAIQNrh7wuVAabvfA==; 31:EeyLtWGuNqTyB1c+n8Oj1/jQWDam7Ws2TC3228UJ/7MrpTMl9qSShy86IVT5D58lkKyXoKaaKquHw8ltsM6DL0v1CSOy13RiT+tEUqAwLw5gEaTAfXFDHII+JiRMmvb5Dm5hQedRfl2bPh+siFvTXoVNlyNrehFQhFDiZ1IqygTHwzmHHr/vXCQrWsVjWNH6LSbWYFzy3UET62aclo62qDlImGaAR2/XwN99Dq5Ygd8= X-MS-TrafficTypeDiagnostic: HE1PR0401MB2427: X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 20:hrmcaRxNqyxcVWfOnJr+NAxL1TBacbBIVjT3/PSnKyuBGR/SIuC1gsUAYdVbIreRwrPc6CG92eDgCI4YPFkAaH8kW/OVuH+0gqYPdHGgeJBZqmP6GZCHSW//VGCtFIfPlFiEH4B3yxmCN2JXiXp1MwiLXH/NfM0j/p/5bRNH1tcF4yIggmNWUm/EkvubwpHud8bu5wXeoWI3WBMEP7o6iUZLRWcJAd+bQoejNTsIMfziwktKE6wKSaVxYMoL+AU6k+aAcfu21Td5zQKnnI6MO/QhJQeweNA2jaq77OoMy9J6RWLP7d81jz7yFsZLv3IM/6Cd93rrHj7F3uiijFoj8HyvcILAwayEmp7fEmtTOF8TXm/BFgQnRkbKKb9yS3yr4BBSDnvkr/NuXfAKxo2pZylYw2tqtQmNqtqh4I1a74VxyYp+brVC28OKad1yKLBENnJM82rcK35QiwRg8hVY8Rvp9JzfCJcAdMU4OdkluxOzG8NhdvLEAhyiN/KZz4jg; 4:BTAfpjBmaFmJYm59gi6Mn9cjrzcx5YxbWczmAAOM+F0zFx0mSeviUGElVcgzqJhSkWRyVwR8gfa5Xo3Xkq3I/OHVvmbaCgH1tTYV9+UrhvMgNfCiXeIGRUTQKejmFZ+Gd30F6a5Eu/qDqlMQstSUj5ZkgIwWJnhJAHYEwdOvMnucQBwDWmCWuNYhMIax05xI3CpwWq3BmKFtscgE6RijUZgeDqrQ93q0+Js61NR8VYqafsGdPf70EyCLXyVqL+b2xzzLyU8+riGGhJchdRWoFQwAgU0g5UPTUUkMbdm2m+OaenuDo9zYUY+5oJD13Hp7tkdZzKlUFdmd6NL5i6obC3fNv6wIsD97aJWtRNydyNo= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(180628864354917)(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)(3231311)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123564045)(20161123562045)(6072148)(201708071742011)(7699016); SRVR:HE1PR0401MB2427; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0401MB2427; X-Forefront-PRVS: 07283408BE X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(376002)(396003)(136003)(346002)(39860400002)(366004)(189003)(199004)(44832011)(446003)(25786009)(51416003)(486006)(81156014)(81166006)(2906002)(39060400002)(6506007)(386003)(50226002)(7416002)(316002)(476003)(4326008)(2616005)(50466002)(11346002)(47776003)(8676002)(66066001)(68736007)(956004)(48376002)(5009440100003)(6486002)(7736002)(76176011)(16586007)(53936002)(26005)(478600001)(55236004)(106356001)(105586002)(5660300001)(186003)(52116002)(305945005)(97736004)(8936002)(16526019)(36756003)(3846002)(6666003)(6512007)(86362001)(6116002)(110426005)(921003)(1121003); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0401MB2427; 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; HE1PR0401MB2427; 23:t7TTPZvgKQRUauCLKU8Eeh+6fcjBI2loZa8oUfwgj45CfzrIoMZmz1E4/APNAT2/hL9I6vU8NVbRXRCigftvBG6l0n1CeJ9c59pTeHSET5HXJfC6+KcBPjysFLFxrBrMCGSV9S0GppJI8LTvYfhv8q6XZZbVd5AHhcDlFSZnaMr0Lhu9kszaR4ljgh1ud5ePNcaJ3FjmHfnWSquG71THbeenz0ELJ7Ri1epTV3uFRJHD+D6/TmphZ/JGvcmrN++YD0jF6L/B5CCEompzg3J0Npyg6shFKBSnPYF9PlwR6VlZIGtRfFCX4SjQsubzjwytDEXY8HJRbqS7ihMnNUWZu6iWRKgIG3UWhiA5eSZCJOrVyazKbHA/RNr1tsfbi/w4d8wZt/Acmy8aErzv7U/F3qnTplHG+SJ9L7oy0t5q17/qDzPwJn4HQ5aJpLd3N5koVnZYjzcFWyhiWkL7p2JPG/he804+h4KD8WAzy4S4kBwW+n0iDW9ujQ09tfat43eNYbnv/y8A5RqlyYLHCmJZlT2O3FSLQEREweGJk4ZCbOerAsIqq3eB33FuOVxUrpayjHFZgrTo6ootBs27T51o1tL8eZPW/k4JiuBABY9c1urvjVxqNZqZ17qEqpGyiVA7LMmDM+B4s7Aza2/PNZmS8Xf6oNhEkQ0SmkYWN0J+/mnva+MoOlTJt+b9qe4jVlc+xvGZEt2rARwcoocUypHmBs6c6ZpMUakWfzgtp9H6xCV6WU3cCN0bOJVxxgldqhvxEarU7/soi762g538O6eVuLIwEOgLMdiCEOxgurp32npBzgtTGNUYRPdvFvAL35tUnuY9P6ddXcxc5TY1RILfQLu+hHFUXrOk/T5y38JIZvPys8HTAkBO5fsPs89Z9/1x8Z4V/25W1rNbuuRf7elqrMEwarES9SxGFdpbDgPEtSGYcUga7UBrGRRe3gKGN8KHqSp1NhWgSzpfmJG525EUuFdoFl6i2D3rcoIUuob76Wm8G3Yc14Jixm8SgyQzxsvbNEJI3+Q0m6/Mi6hof3DqXcTb76sa61NvbofP7pBxHX2tbZb2tOQxA5kF3za31CpYzziO4nCXhjdFMUSMzGSUSWLHoz5569oxiKt+DNwTxixjGDMIF+5bEzyT9g3pQxIlAnnvG1knF25PFLPnqIucOIWeKYkK6cm+h9MM8Wo4oQH7eHZL+e5FG/BesocFUO0LyF7G237By0eY2JT3QfrEU/GElUGEqDZ5hjsDIoGg7wB5lz955IbC3Xyuv4kZBocLscINaLXEobmtucvijzB23/V7pYdZXWJs0LWj0K8AiQxuLO5gqELOzX1R7de9IxV/ X-Microsoft-Antispam-Message-Info: nVu1/vAo2XiHgcL6rhXDfiyNWM5Hdgud5vVgIXEKGJb15g+I1+QUTRT8WpzAbRrEgBjssfTAFKsumx0MnvODYWsrVXzB/amD24HmLzgTl4PNHBwTtEDk3VCpM5Ol96UCvKV1Ysbbtbk7Zm5GCuwWiotIlAAZ9AXh3npa4yUWMxTJgaPltjVl5XFYal/ZEbA0gmmeDxLbPH1e5PY/NuZ16DdhFwoM3JyxbJpF26RVmtTrmUioTYP90KOsMScEDcjTM7A3cEISqwW4nWQ7ByoU3/81V8tdS9jWR1ZU/SHNrFhxclwn3UCe3PHZpVXixoEf/fnkDLZq/fN5Zlrl1pzJdZMFmZSk8nGqkFvT6x3BWdA= X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 6:nL3ccDImSq656LbsEy+1MF1/wkEMt8Mr4JqFWvNfPQ1yXVRlQrH7xRGYhDyZSd04Kylx55SVxqd0YnMzmnXmlf6kL84q5HY5WC88GPyM83QGpU50XIeYlqekSxC3AKX4g8gaUwmpnoCLp/8FGbgEvYvAjKfpb+Gmh/ne2F+eoiZwdtfMicnI8NuUrXk1GIbd3U6Jzh/WPInpWXDFSUIj3b/+boPhXoT0Ex3qWiQwMn0RU6vWL6R6SZk4R3orinmn56I4+BHKwK6Yf73V/tVahOzNW6M3OrRyxVNvTk5RTJAl/BwOr21Ue7HW6D0Ya7x8be/L8lnN+rDbTOwUii4P0L5MPAMVqiA5z4HHILKP8LuHV8ncYO/dLSkONON5rCI0hpVoE97tz6Xm+FeP56qCBBB3Lr3/9HSXnd8oonXM51jwiKh9druQmv4mfrkLgf0mN8ROxcKg8ZLRndwcN0HGyw==; 5:Qh2iunb71QuyRrV4RkYEpwF7nRWTRROgz9mLPsVySeP3UtDZhfqCqtQBI9X8H7cyvoE9S5W6CSHRy5nzGNrxDSwUWJZZKbgPzTrOPCZ/KD8aUU6Qmh6/YRXVcChDxhXAGTA1dzz8yNOvxPhxT1IYI7W6gmDh280ffUtA+hyJq5M=; 24:ni0JQQKWJdR7+fremItK2JxfiBr9MTlUn26knUvpT23acF7WgtdxDHRcFLwX+R0CVT2WDlPZ7g3oNhI90ARnaBPKN/a331fVDnvT4xCruks= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 7:xpiSJ1e0xXzLJ5OEJzsNcr0ephk6i8juagQg1xDthMh/25rd3rOuK/9NzbsLNrdjSwySOiiy5iV1pr1JT5455HuERb4LMe2dt18O+Y63uvI8m6vRkmXOn2VVDrVhig6OXNL0QUjHgpMLEBMlP7ruNqHBy7CMbGSe4eaXMsuqAeun8LBqtkW1QPs+KwGY4Whe+wbIqW0jXtzKYa7opTJL94giLrKkt3u6mcxejYp5HXV2hOU53Ef5IdzEoPsdKMrc X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jul 2018 11:19:30.5928 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 654a7a6a-00c2-498e-f491-08d5e58dd9b3 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0401MB2427 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 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 Mon Jul 9 11:18:23 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nipun Gupta X-Patchwork-Id: 941204 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="MsEip3xr"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 41PNCr5VMhz9s19 for ; Mon, 9 Jul 2018 21:20:08 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932992AbeGILTw (ORCPT ); Mon, 9 Jul 2018 07:19:52 -0400 Received: from mail-eopbgr10071.outbound.protection.outlook.com ([40.107.1.71]:7218 "EHLO EUR02-HE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S932984AbeGILTt (ORCPT ); Mon, 9 Jul 2018 07:19:49 -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=mSF6WsMiQFz9osmzQtZq5/GO4k6ZQuqdRQNL+BJQVlw=; b=MsEip3xrrJOheLV1kkVYAG6LduNo0uWMOFWoaR64Lzu7aDFCjrVQIvRw8qMC5pd2hcQ4c4yHYu/DrDAATWeXPCrF6EfZW+vYRToTXrvXeSb8+v7sSLZTmKBBxHk+43mvaKnJ26rfAiXAkmtSq3FVeIeKLPjrcjHnFQ/6vJyls5E= 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 HE1PR0401MB2427.eurprd04.prod.outlook.com (2603:10a6:3:25::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.930.21; Mon, 9 Jul 2018 11:19:35 +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, hch@lst.de Cc: 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 v6] arm64: dts: ls208xa: comply with the iommu map binding for fsl_mc Date: Mon, 9 Jul 2018 16:48:23 +0530 Message-Id: <1531135103-10699-8-git-send-email-nipun.gupta@nxp.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1531135103-10699-1-git-send-email-nipun.gupta@nxp.com> References: <1531135103-10699-1-git-send-email-nipun.gupta@nxp.com> MIME-Version: 1.0 X-Originating-IP: [14.142.187.166] X-ClientProxiedBy: BM1PR0101CA0068.INDPRD01.PROD.OUTLOOK.COM (2603:1096:b00:19::30) To HE1PR0401MB2427.eurprd04.prod.outlook.com (2603:10a6:3:25::24) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: e77f9660-6a60-4fe4-2a13-08d5e58ddcdd X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(5600053)(711020)(48565401081)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(8990107)(2017052603328)(7153060)(7193020); SRVR:HE1PR0401MB2427; X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 3:y4aiRNijK3QnwTk/zcKKRaJte4Pc2ut/078cbTVoMdVDtHq2pgi/IhPWcev5EaG7Ny9tRypxCGKDUIQomiAxue/QWl+Wk4aVC28YyvCnEueW6rHMP6XxHCAkzbn8nprSW6zta2pwPmaWhiihDK14cTTVznbwWBbOo0oBgrEYete3EiRolgwGJvG3aHWthgKbFlQgZy7W2n62GMjEKd382xejvsUljbUqFB8AvGcwr009MIKBWheo/9RCyycJeCQr; 25:VFa93EDAfdOCQQAO5DUF3mQ+5ekS5GcQ2D37SyZIA3183+mvgZUSznBPRrn307KeViyDNPo1vngyTTdcz/Z6rQ3Hv52QXRrR0xzxl0wYJnTrfafCWyn3DZd4jJKMGOoF0wPcjs2uAkMR2ctY4wCB8N29yhadYhvHOKDZbXrELKIlv777e04XWn1878fnPkCLZWSoPdgcNlkNiaqD016Fp3dSCetSvbUbC1u/PgLwuFL7yn9o96ApX+SbjPnD6qCn3jP5W2CamXrTTpgV0Rr+qlgngG8kCVC8JRaWUCYcqnrLPa1Ib2hNeX7hQRLXAtQv5El2ghC5J9/e591/ARArgw==; 31:i1maHVIHavrGo3ZB8WdIr5Cddk1dfvDGdIKtd4/gvLrm0S28CtF9Li5OfFDku9p54Z1X01s/Z5yz481pUoKYtdpqJ2bknWlZEvooAxEjOahN4MOXpL+DRQ3ycG68RbYcOYxtVUO8rQamAYkziJofD1rKwWZD5JRFymbhedZMmV0XGiuvRS1remCy5NC4gYNP/tnsPyS5oDT9yGeg4V8pDShEMNCzdKUx7M9eIRHosaY= X-MS-TrafficTypeDiagnostic: HE1PR0401MB2427: X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 20:qFrxG8xZ54zDfowUQ9aQNkjuf1H8DFmh7b4fewbNZgYbl2JIhiO/EEkvwJBJEmo9vIScQEDY52hsbaPoQd1xwmkKZPHRT/j/vEKOxsyVh+74B3x8GOyoIqZFpg7qAShui+OPFrJWQWAGYLHnyHLjV98eRHciLbiPn5oKabVFoIzoRbmKtrl2CURWl4m5weAsIuiZ/nSZRMTrqWmNAE3bUFUSnMzMnxSuwkzsoj/SGhzsfV7x9hsLbgYGUY808jJaSE2XoWx5PAKqezyhKaoMOa4wTyvQE1q8q91FOraJMnw+HGL1Ile73Aytb0IBL5RSODuhJuqW5CAWaKFiZctBhYI3vMIR9pJGqLnWB3v7hDXJRBm91We1S4HDIHYO7i69/bVJ/X+aoRMQ1Ju0EiMxPYzvHZHG7H20VG6THt3lu1jmkV8HWfzr5KWI1UvB04HesJ29I4tR8umMr+chmt0OsiR0QeNhD4T0aRT75Ctyd7wku52kCTnrHbwnhasnbMvW; 4:cCvqswcPR0kzyRQoVPcy1HSmMyLCsgdg3ZMNUD4KfhmV0A1/KIERsW0KRJ9CYM2Pqr7qVEu/1i7xpiBY+kiZF5pC8Z9b4Uz4UXGsIi0nIHDeq2FSxBNSot5zbNBDMDvrcCP0b4VCipw0R9zMI6DuRolC7nFTTwfF/QmQPivvMSSLHFXcvoP4WHzqBKtNxIC7jPK064DsHZn0Xx2cwcubTVw9vs47Qv74T8vBNKZxHrpBsVvnMOAHYcAo5Jc3jglW5V7GtkXeJx8q1mKHOU1d2DD8orL4pCt5QaTeIauzen8w9KNQkDT9yu0Ggmcvl2WoprIngqZjRx7WD1mTghsJwTgnKhsy+4SRkjD/40uPWXo= 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)(3231311)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123558120)(20161123564045)(20161123562045)(6072148)(201708071742011)(7699016); SRVR:HE1PR0401MB2427; BCL:0; PCL:0; RULEID:; SRVR:HE1PR0401MB2427; X-Forefront-PRVS: 07283408BE X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(376002)(396003)(136003)(346002)(39860400002)(366004)(189003)(199004)(44832011)(446003)(25786009)(51416003)(486006)(81156014)(81166006)(2906002)(39060400002)(6506007)(386003)(50226002)(7416002)(316002)(476003)(4326008)(2616005)(50466002)(11346002)(47776003)(8676002)(66066001)(68736007)(956004)(48376002)(5009440100003)(6486002)(7736002)(76176011)(16586007)(53936002)(26005)(478600001)(55236004)(106356001)(105586002)(5660300001)(186003)(52116002)(305945005)(97736004)(8936002)(16526019)(36756003)(14444005)(575784001)(3846002)(6666003)(6512007)(86362001)(6116002)(110426005)(921003)(1121003); DIR:OUT; SFP:1101; SCL:1; SRVR:HE1PR0401MB2427; 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; HE1PR0401MB2427; 23:j/aqOP0mGz5v/XFZwZFkMe4R643zt6Okp7TAJvPn+eUsBaDk94YUsCi+5SWyFeoBAGaUkyFJK4J4x6dcFj52t+u8zNfnxjx/ocQbtbOmi6YRnbx0fqotzm5dXMfu6hGcLtAkffzyWyI7ejDSe/qXt6tzJHdtlpogx9eT74w/HP2zhcLRCMs2r8aATWs9HlP1w5R3XTCA7ga17txHqH3QcGaLrnENpUPpBzoultwfxxk2kWrPvIltMIfMUhOQ7sfW3gBj2XdiQ5HqIVKfByqyJC/uURRp7wakivDMgSi8xIGk2IXtt2+0RauXZWv6RyiD3+hHtZyvllzig8d9qEe5RHTv9CGBCOkj5WSsO+LCL2as95AHV+/LCcdnwzHOKvVHoiJNOszi2mY8p4M4aso22GqzBFqTXlErUxd5KdILOY9/BKAS0ylCJZgYSAn9yHAQ1+IaPQN+xDTT6lJ34lSIHMOy4BH/oia4v1EN7wMHvba4XKvgNc3KotlOQyWmhKEysoXTcdo5QHQkJLp1wIpR69uVW6iVky2iwNpveBeA7o7mH/HeztJ3jdyKpbVLcLgmTvZqzk5amZfQwHi1RdYjof4qcxJYG+uBeksIC3t8hb5oADfO8lZyjW24zQJbFwBOhfDxLFZXyQC6rNyi+RI0m8eIGDLex2ket9hpTIANKSO7vKMCGBnpSqTBHP+HwT9BlRuDu6qWxWGkUCi5sGfcWP2P1aHWOJEeDJoGdIxfQ1Oblz5+W0G31vpOeQ0Ibp7BLwzce5vTWfoaUgdrXNyifudPMiAfK4L6UwNFhm/RQZ0+88sAORkM8aJhEf6SiEXt4hBw7RoUqi1NQgYoEdqS2NnPWbGjaCRMvmkQRz+GaQBECncuTvELc45F1iY3vYWsxIHSxLg6lyE8XZIlrTU78kUyxVqr7RmPSd6lHumceljuG6PvaC+9cfTsAv7q4aYEj7oFXcUl+xTPP2oSVTm5wQN1HpGBkJ+X0KzrT6+SFeAu/kLX3C21pR7LhFJw5134rc0/SLJcoDy8gloSu3ARiHeWwxKsUnyTnKNLcVO5D04qienAjrqiI3LH9j27UkvxaSukh1iVLgpSi96nkDD8p0WnO1Aiz3V/xtcNtjlz27MEZISezMQ8n3B1d7HGZfUGZrxLosYF7dUnEvEHyanFQn3d4kaB4jnmr0SLkidPUADWlV/79O2UbDxsNqB+uyJD1B2ZPMlvLKp575ES+21c/xTuuXdg2ghext0AQJ7z/gxMbwe7xrJ5LUR9Z1SHSh3j2ClU2KPEfIUcDR50++W4qUIB3Z3Eq2WCAByViB9ispDwLoZ0zJBOMktcMWaelIi+sFM2gMhsQIdKw/TkF/W8lEvA2DBnLOb4LhoProyfK0g= X-Microsoft-Antispam-Message-Info: 2/NAIT13mD9NZrosLsNto1i9cE7OpdrLOtsMAvSUumNQcJiG1lFHK3iei9kKoj18Z/shkblaS9Ghm5P066jrXyqkySuPXGtRe/BqIrEVbVVfWcClXPs5VA3H2tOLeWpsfuPt6crY5d6I2OTc2iJGa2/It+VJUk9yqDkklw7xiXtUMsfnxXsPHk0vT1Sx0SbqqB3Bvkw8LJoLhqhw0YB/myPASw4Ln1yUZTT2fbUu8aVZ8UVnhTU8BPpVwoQ6e7dOq/lLcl8la/lAbyGs/9sMNFkhS/pJjku3pJzYv+hkas6Fqx9EbUfz0oF2GswgWck+mVJ8WkGf4ZnMc9JVsk4uNur09U58CN1Hcsb7i81ayjk= X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 6:oxODgz6YsxOGxNjVeXSGpqqzzcRgoGTcnxFRoPnWX2domazMfcSQauJOTRt9JrAO9ErHtII7wHPsGBIPrLhB4OTmanPfeyjAUsPVXtzIXkx5pGMI1d0LebMLEmry/CTat+lQw+sRR2crCmZpRyv+FYb94KsJDOJHF7N3p3DWrozrRwz+STH7wwX/5rfTejm33b75syx5qjhaA9UGFe4p72I7Qtb1S6dJzRkG8m/Eg13mH+301CSusDmXFnLfkgXRENg/0+POpz49XegQdIbjANe29EDdt+OqfLnnR6252Aw3+Vl+wUu++vvgDo4LbtB0lUILBWs40KT5ZpwUVIJOZ5fDgkWa09XPx/OV/LJvxUqHx6K3iZ4tcbKj3NYj8i3QDEfJ5bgisrqrjRLfJ/VF0fJ1LkwOmVtFhQ+lO4+3skeeZZkSIjCKwUamqiKAMY2kvUC3wWc/ybyta8hHXi5d+w==; 5:OiQciVgpG8kR+YyotrsfZQcllkcjjavB3LiyOPGpe0DTFLAk/xKT9r9LrGgJuafC59IF6kyvoGGy7060s8DYYoctPVL46WbaA2cqkinelw71yV7fbsr/zpGQ+WkaOtIsDcja7lrpBi8oUgHs9jwgu+YqLtfVAaRG8HCLB/aU7gQ=; 24:AvAqSmIS73V7N7mMG9XNGPocCITR8a+ok0fwLGVRMKeCVwEL3qifTDDuK4xyZd1AxBPptO3Avb7RHjm2FtvflJRvyQIDyn6FCVt58visTo8= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; HE1PR0401MB2427; 7:MipNM2ec8Aj0XOXcCz/xXVnQtMhJdm0I0+w9iY/ZYfGh54dwYRm+c0Chwes+U3kUenuXMu0UuUzcallFj9DD4LufG6R68FbiqzoDJ3GIcbNpTg5OWBACtcob8eMYt5I44kHTagU8lspCWmKmWwhKi/k7cLSCbQ2OyKf7ZCH4tQYBw+dAixuWtgNcuD9puQFB7FYQu8U7/+NWhS5tTQ+JuMgnhJ83w96wrAqrf86YMs875aT+9QztGqUb55vukuCX X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jul 2018 11:19:35.9100 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: e77f9660-6a60-4fe4-2a13-08d5e58ddcdd X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0401MB2427 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 | 7 ++++++- 1 file changed, 6 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..3d5e049 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,9 @@ compatible = "arm,mmu-500"; reg = <0 0x5000000 0 0x800000>; #global-interrupts = <12>; + #iommu-cells = <1>; + stream-match-mask = <0x7C00>; + dma-coherent; interrupts = <0 13 4>, /* global secure fault */ <0 14 4>, /* combined secure interrupt */ <0 15 4>, /* global non-secure fault */ @@ -502,7 +508,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 {