From patchwork Thu Jun 8 04:44:19 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Kulkarni, Ganapatrao" X-Patchwork-Id: 9773847 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id C7959601C3 for ; Thu, 8 Jun 2017 04:45:55 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id B66E22847A for ; Thu, 8 Jun 2017 04:45:55 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id A8F352848F; Thu, 8 Jun 2017 04:45:55 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=0.9 required=2.0 tests=BAD_ENC_HEADER,BAYES_00, DKIM_SIGNED, DKIM_VALID, RCVD_IN_BL_SPAMCOP_NET, RCVD_IN_SORBS_WEB autolearn=no version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [65.50.211.133]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 1E66E2847A for ; Thu, 8 Jun 2017 04:45:55 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=PYRfyeQM5FG+QeXXPJBhdErc6MbRqOUE9rVGSGxKw/U=; b=R8pnTbTwAfCfw6 EHB/4s27SO9g6klqNR0f7XTE9V9+/ZXJJXTRC6MW+e5xJ6x+M1IPZO4qdxOgaCkdBzCCt1jYskdvT yBa2a5+eLFke3nsqQ8adajaA4+xINm+POso3FvBBxWVwSvp/ke1M1m35ZQBu2DP5Z5wWAe0bmcjiu bTKuOtIXtTIjRodxE4NTPX2xFNdMvy/A5EGeMejlS5paCfBDscFKz5mV78tcUxi10sZDoHpQlvGz6 gXdRPsxrqdRQYByJukJunnVA+/4doj5cko82LQAbaO5qBKN0RQ+ZVC6IWCqSLV709Oyimu0qK9UM0 tTJMsGQsNOfg6cHcrWjQ==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux)) id 1dIpKT-0000Hb-L8; Thu, 08 Jun 2017 04:45:53 +0000 Received: from mail-by2nam01on0060.outbound.protection.outlook.com ([104.47.34.60] helo=NAM01-BY2-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.87 #1 (Red Hat Linux)) id 1dIpK3-0006vT-My for linux-arm-kernel@lists.infradead.org; Thu, 08 Jun 2017 04:45:29 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=U+bi1vCig5tgPLpL+aSmxdY5e4kI8C6VE+VhdN3xi7A=; b=Ehqfimhvy5hm/Un/ueNCc8BSsY+p6qrw9B3kQVc2o3DlXPUTHbJoPD8TNs4KpKerEG423b90/LoqEfDWZ8fTFjBZQOxZfxCIkfw9GIxydVfBBdmukfyo5c9FoWjBKJRWxkWEZX9euEqwcVz9Dq19pV3sXfbrDtVPVxcqOuwnEX4= Authentication-Results: vger.kernel.org; dkim=none (message not signed) header.d=none; vger.kernel.org; dmarc=none action=none header.from=cavium.com; Received: from mypc.caveonetworks.com (111.93.218.67) by CY1PR07MB2571.namprd07.prod.outlook.com (10.167.16.26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1157.12; Thu, 8 Jun 2017 04:45:06 +0000 From: Ganapatrao Kulkarni To: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-acpi@vger.kernel.org, iommu@lists.linux-foundation.org Subject: [PATCH v3 2/2] acpi/iort: numa: Add numa node mapping for smmuv3 devices Date: Thu, 8 Jun 2017 10:14:19 +0530 Message-Id: <1496897059-8272-3-git-send-email-ganapatrao.kulkarni@cavium.com> X-Mailer: git-send-email 1.8.1.4 In-Reply-To: <1496897059-8272-1-git-send-email-ganapatrao.kulkarni@cavium.com> References: <1496897059-8272-1-git-send-email-ganapatrao.kulkarni@cavium.com> MIME-Version: 1.0 X-Originating-IP: [111.93.218.67] X-ClientProxiedBy: BM1PR01CA0093.INDPRD01.PROD.OUTLOOK.COM (10.174.208.161) To CY1PR07MB2571.namprd07.prod.outlook.com (10.167.16.26) X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CY1PR07MB2571: X-MS-Office365-Filtering-Correlation-Id: 11003bb3-9f35-4253-49ec-08d4ae292564 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(201703131423075)(201703031133081); SRVR:CY1PR07MB2571; X-Microsoft-Exchange-Diagnostics: 1; CY1PR07MB2571; 3:+zoRZ11n2tOS3JrAQd2HsOMr0y2nl94W1v/cqIKotDjKCfckX1B1BnrCeJc2+0+ZJoDjHTGMkXeTuvUqhJSFEfgFhIyIFcTgcGsyzuupBfNOnzYEvz0c8ED1esGS31+HVV5D0yesh35u8AaztJRnGpT9iX/FlsHIGPiXWJ2We05HHBS4wIeG18OQBywsX7zBlURw+LWKjbSc5bQgon1STRFP8u+hNdkJNrArvy50ZB1X5BXHkttZzX5CRpjF2s0ehHpaHIcCQE9F7CfWtaePAUpIdeGAmpMZTFrrigoRCiMnKtNFLFT0IVTnaslwdqnyh7R4N6gsLyIRKTneMpd3ng==; 25:7GDG0G7pcrWXfqwq4MleHXKvkjVA7XVRq9vOvJdqSPsenAZcE/yI1CDHu1au3XFmCCAVR/i0h/xCYCCnnoapEIWAU0oxc5tHDKVHaA9YNy1VLG0ofPFO+YbHQ67piElrc5J76f2bZWXlKtsZ46fYwAj/zku3F+stQ29fXen29KzmT2+rMjK8Xz7ZZ4+Ey2JlAMjjFLWwdyIA+2PckZUUCpvZsX2Px2/5BkljK9oHOkRdZDe/4LabP/gpfqkrhcRuuVwN6BOElxP9MPPrChsfiRvtbNBAp98p0WmWOMd/qCO8wMLYvaYH5fdHblze5HoWVEOFlpafC1nsEWn2b+DIRTpMEg1ttrAQcyW1iuMTYy8PX/rWnVEuQsvO0VpG0XUo6jO8PumUS+cuMMFboEC1rhlBogQZ5d0Ig50GCcOZoz1rlV1Rtw6ZKf5+rGz/3i6hbgifn3ZySAAeV1Cigumj+4UMNFwJywLl/ptyu2YGIl8= X-Microsoft-Exchange-Diagnostics: 1; CY1PR07MB2571; 31:LGDKlMiukC1VlAv328Ly/8vhLjeNz9QRSm0W39RfzioaB/yNc0b32S/RUa/x6rLjp+1DmX7gg4D97zQxPBNye97cvxQ1nz2x7ZUOEnGi5KQz1REeU+iQTx2BCHqrn6gZcLa7Z8Hpyr9jm3Dy2b7cvl/WgFPC1/WFLPOJ//45tCN82T1D64cUckVA9F7m7a1F054/5hssTUVSheIkzy1V4fKbTAns+9AQpE6+yld4nTk=; 20:kpAq8ib6vEUnJ4LqwZ4H+s5j6d4d+knGqwDqgDI5ItxBk1Sw1TeTNzE/u66bSPUKpoYSd2D/cCq0AeIq05NuTIBY7LW7jUyQ8fr2T9MOy4ynwB97YDTrqq95lSBrTRv8Gkrv7KYtgk1tVVQGisU2TyYttW0G8srXrughLSlM54JA5P6Qkvfsx+JqmOZahwa+Hl5n0QcfUki/9ZXgUoJVJqjD8vwZ8IZ6j3TdTMX+w/8tZj7uUUR7ZMV41ZJWxBH9Z/Z5UUgVcXyRx0q4M3oHDb5J5IHhOI3sOvpqYajHp4oCA6cOQfW9eGxSxdzQk+OPYRjZ31p665KKmaNrX/YZAeTjYizcfu+rgXwzTK0WHxo1Mu9UTAonhTiPGQUUJiYjV85HxVBfb9YHbvOfHISLNnv5GnrZhdhxnyt2eKvmODlV8n87EpZMxHDf1zSJPHaUltulWtGAklri6joygyrUZLkA0lkU1dViqjHcPknKX36o4fiupgSf7XuPDP6K77zN X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(93006095)(93001095)(3002001)(100000703101)(100105400095)(10201501046)(6041248)(20161123558100)(20161123555025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123562025)(20161123560025)(20161123564025)(6072148)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:CY1PR07MB2571; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:CY1PR07MB2571; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY1PR07MB2571; 4:GwtFCujfEaavERo3UqbPvKKyB4lxxgcEFVBd5ttYuG?= =?us-ascii?Q?1ZwTn7meMvgDgcoo430ukFcL+csiMtxIq5I1lRu/c4A7SB8hrRDa+4pvy0nc?= =?us-ascii?Q?DVnb2xy7zHQLXiCVYJLKwcEnhzMpjQBywoKyHEjL57xlSDpAluUI9hT27ppv?= =?us-ascii?Q?l6hYh98ikel4ZhPZ5NebqFvaXw/vyLEGeeb3805Dfvd1LEXXTV2RzCWn14eQ?= =?us-ascii?Q?2p3ITkG5BxedvhxHS8ZfpZxCKldqKFUav9W2UutWdvw5Xh2CBEB68wEMBDcb?= =?us-ascii?Q?3hh9EoI/CkYqUNJlIXjPke+ZjnPO/pDS2U6FEckvqGXxgyL3Z2YBHiSEuLnF?= =?us-ascii?Q?msoVuIuRVrc89rB1PWD+zfs6YDsIqHwEFHaFS2TA77cc4JqeC4JKW7vD2CWD?= =?us-ascii?Q?RokKRsQADLeAimmJaeeG17XYfo0fy/I7ruaGHWpX0oHM5j0KgDcvxZwCrSk5?= =?us-ascii?Q?pre01WzV61/cjz8LoBP90Lopwn9JdTwE8+d5HGE8KmD3h7Op4rDwS0x2DS/O?= =?us-ascii?Q?xy+YPlGDaK4j6ASUdJdad8J1rqjozAsLmZzPfzCb6m2j0o86U/UvP5JsLY+5?= =?us-ascii?Q?4NDSnikBM94jyNbr/Yjt8t3P0HGBZRmauzJuRhluHIfa7c+KN3YCgwm1Z/Js?= =?us-ascii?Q?KkTi/xrLoMEnJtyI9RsIbVSGDuiTSO79ynDKZ123Aq0rK+btqhc9WVwiD3M7?= =?us-ascii?Q?mRsh/8IQ8oZX830YUzwjQFrZMk+smIq9OtUojRsCa7fsVbTwF6k+0NdU8jta?= =?us-ascii?Q?yzuKwdw2nc6UB4cMqfd2EBzS0TWRN5rG4tn7yG3kzO6GTk6lrLYa/O4OC+OD?= =?us-ascii?Q?PZQffAla93OCuOqSdhTjE2l+zEQZxlaMEfAnOw2y3ECghove91Chies5c4+h?= =?us-ascii?Q?jVnYAVwD6mmRcJ9tlJk3xIF59JJ0UDmWpFHywNDpuG0lEA0/4SDfRlJjj6GK?= =?us-ascii?Q?uhekn0yGuyjLh+Eq4hBAdF4OtqW1hJuFWnu3oEeNLRFZNHR84w1dQgwsBvSV?= =?us-ascii?Q?lrJY/ldYUykFjPVbadQon/VAEotSb5KDOdmOlLj05HNEnMYM+mp2Nav0Ni3U?= =?us-ascii?Q?vZqyXcVvJ5rTAMQpcoVFyaj7QcjdGJGtmVwXwZhxC7lrZYK3Odil8ObjFrnB?= =?us-ascii?Q?EXcociqoQbJd/3+6qEWG1eMwrTTrOJ?= X-Forefront-PRVS: 0332AACBC3 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(39850400002)(39400400002)(39410400002)(39450400003)(39840400002)(72206003)(38730400002)(3846002)(110136004)(50986999)(66066001)(6512007)(6486002)(86362001)(2950100002)(53936002)(76176999)(6666003)(6506006)(4720700003)(81166006)(6116002)(50226002)(8676002)(42186005)(5003940100001)(47776003)(53416004)(189998001)(36756003)(33646002)(48376002)(5660300001)(478600001)(25786009)(4326008)(7416002)(5009440100003)(50466002)(7736002)(305945005); DIR:OUT; SFP:1101; SCL:1; SRVR:CY1PR07MB2571; H:mypc.caveonetworks.com; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY1PR07MB2571; 23:B7zlSVBanKdo0kJsxbArJWmtaoD2zwcBSvIk9NSdA?= =?us-ascii?Q?rpVtHoAFDdhPCxrdJdXIfdWZDjAI9Evw2gsk5B3o/n+QUMxFKYFJ5Lnl5wK7?= =?us-ascii?Q?51K+YQ/f6gRwMkZb2mPQ3juc4MwS6th+MH/KUGRU7dO1ZRGgMp4HtF6/hgMe?= =?us-ascii?Q?5i5Rap1b0n27nR7Z4azewnI5mzfk8zvqrAiDTN8KjTSywcG3/5y8sC2qK+TG?= =?us-ascii?Q?HzqJdpPkLLZlcWjrzAdr05Ub3sNivZWfQ4lwfeRYJEfXvKjfDrJDhFgtW3QY?= =?us-ascii?Q?5tKhV44uLcH3A7hfTnYpIBQIhplhBgzG8qjoP/t13sUoMGmTwok04NTojPsX?= =?us-ascii?Q?5kPled3/00ob3ZUssBtrAoNvyEevbkTJejTq6qXYRWKgipA7gwZO4eao4uoF?= =?us-ascii?Q?4xSrlbJtygpCSqg7CuuTP+HAS82/mbTcV0xOudxKHegIICXNBjIwTRnedSTt?= =?us-ascii?Q?xl8BFnJsXDrSbC97fD+Hiiee8kUcf2ugGFJWDWl/4CZlMvFBGCPqMcgXjY0K?= =?us-ascii?Q?8zXSmifL9kYwsp/eQhTafVHEfajIusE07l9w9jreuhuNiuyRwBxL5w1i8Laq?= =?us-ascii?Q?FbQCbFdCEQv5wM8SbwpZojI1VcXSE6AbC79IqZbs+00jZPVw9SB05XroxQ/P?= =?us-ascii?Q?e5+UZL+mMF3ungh3v6piSYUjqbC9lk1azieNxzljOEr/8wMuiSedijJUEm6T?= =?us-ascii?Q?x4nebkJZrud6MzDo7zrZuo1eJk93KEdlEjrxXjyC1lJ6Ba9YkkQNXaV1bVQO?= =?us-ascii?Q?n1G+7dJdOncdWdi2v17VRv9NvSH9pMZtwbtxDBWaKSWiOjvU3b/WSCqNArxm?= =?us-ascii?Q?t9b3hhBKgrBhduqW4zegB1hQljoqP29amrAhppmpxa8wTbxU0ILID25A2dBa?= =?us-ascii?Q?wtagpLkNSVQAahTSkG4nyaYYUbkTEuT0PoZkosOZjNep6zq6DuhchEnbRnpd?= =?us-ascii?Q?HZVoHE8KG4chQLZc1lC0UNMNGHwwNdxOhCZWKoFDxaqCxm9L6uv3eeLRbQdo?= =?us-ascii?Q?CL7mNq4CBrjE87RohBN4z1adotbEsk05zJ6U6gGhtzbbrhBrtbjNSIKKwpGR?= =?us-ascii?Q?XJApXjurnN5Qcvn5KO5XPrqa2Ax5R5nd+aKeqsE5AKsY72Hwvn6LzqPCc2q7?= =?us-ascii?Q?c1oa2ME7H8=3D?= X-Microsoft-Exchange-Diagnostics: 1; CY1PR07MB2571; 6:HqSrbzjEHyI11fH/ovUu5InCDLCeIaw5ZmfbbWU3GgYAVXik59nxOW3xku1xFUc1B4Gjm7X7omS2EX37XKnItTY/KN+gHb5ipewKU27GpW2W0lbPwud29CHb1QSIluj3pfr8nJx8YM7HrPTP79YsZKRxzM1xad3hAxzE8asrFjQJLMF8hSUPa4ydRYAJhYv86aFmBq7lmt2vY2AUJ8ih6KxzShvIjtlq7cSFapMqDmk33dnmbiGYwQU6NGeCuynDRdOYjX5j8CvSoAacPo08DjGRbiBSnT5WRy5V7BUsn9rwACFE9P6P7Kc798j3X+9eUStz6Bi+B31uIM5wjuh2ZnQY7XFLO5blynWrZmM1m6X2tHKR6TuU7cDBFGNuFV0FhPW+4+AqgCnJVzQfyuCcx2HvjoOzhHjSyTHHCwT5XmKHPW1GPlZP6BL+B0NesQjUFvbqckv2/gqHu7z8aLpZiYagZvRM78hivqV9YasWODzpnj51cVK5TwAtvbxT0k+JEE3VVkRvHBO7TXU2Wfbzbg== X-Microsoft-Exchange-Diagnostics: 1; CY1PR07MB2571; 5:H55zekqumujUYTpZp+EihHbSMA4S5QAtNt44H55hDYRSuI8HTBQ34HthdgoVbB0IdWdImaRPS683ggxQ87x+Liqg89YBmicnDLOKmWicaw9NRZFbtyeNs6zBFo6k1ljYL+fqb4wBg3YneOV3J5avac04OaFuTLj2VIhUs7s0z++M7Zf29borreDOSfAJUOyIgUtakOCzNjt0ZHeLI8MjS1QuEhveF5Z67A0xdA52ujXpRI5F37aDBveSM+sVXhgniGKkH3D2DBsfRcXJQC7huW7jq1MgORGllLhv/EBgPZm0cU4IgZr3ycDn0chbXU7wr7Ate/BXgqUfbtvqrHiissXoPP/2u7g3tjMmRv4543B7hUBmqZJGClL0MwWuoTnbv5gMdtbsbG2F4sOol/dCIZvNoaTlhSI1zz7Kc0a5OW21lHnQyOyWTRFynZRGGYsnDg3AgKHl4YV6eToNMxZIHlYvu7yI4JNZ+cX5FfBPSESAHMrxsoCIQ9i/FDKdLYtH; 24:r3wd+Fb/cAFmQPVkpho3Vr+2ns1QA6qDctIQ5YUMwOPH5Z8aBkI16l+PrrvowObomMaYtCxSfskgcslB+nC75aUaKZL65UX7AQrO8iPy/J8= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; CY1PR07MB2571; 7:ZZWoJ7+J6jPG6t/ZXypREeQnnBr25ju2w3cGni0MfOk3GE90MSlRNMlNyfUfEEv09r6iTA/lXoXXnjV3CVyI3xaoZM1EGRY2MbRTwDyj2lsaniZMOFowxoU9mdauo0hgmnTq6Fr2wiDQxwQnQmkH4eD5uxXEnP4+o+Zq/be/SN+Irfs2l5YRz7JFfYH25dkjWf3bemEq7LYtfVzu1HuiWUXcHA3jofWFCgfFeCzhRAd+FsnVRp9SNKfvZP5q40R92bHI8FuOCaoNBZlAbjCWsIgBLUb2dF1pue2lN9DCc6JQ3QcLCdSNtIqJ9S7f5n+C2y2Nhp9c0VBJ0T8EvosUQQ== X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Jun 2017 04:45:06.1502 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR07MB2571 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20170607_214527_877521_4D137731 X-CRM114-Status: UNSURE ( 9.21 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: lorenzo.pieralisi@arm.com, rjw@rjwysocki.net, joro@8bytes.org, gpkulkarni@gmail.com, Will.Deacon@arm.com, jnair@caviumnetworks.com, lv.zheng@intel.com, sudeep.holla@arm.com, lenb@kernel.org, robin.murphy@arm.com, hanjun.guo@linaro.org Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP Add code to parse proximity domain in SMMUv3 IORT table to set numa node mapping for smmuv3 devices. Signed-off-by: Ganapatrao Kulkarni --- drivers/acpi/arm64/iort.c | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/drivers/acpi/arm64/iort.c b/drivers/acpi/arm64/iort.c index bba2b59..e804386 100644 --- a/drivers/acpi/arm64/iort.c +++ b/drivers/acpi/arm64/iort.c @@ -882,6 +882,23 @@ static bool __init arm_smmu_v3_is_coherent(struct acpi_iort_node *node) return smmu->flags & ACPI_IORT_SMMU_V3_COHACC_OVERRIDE; } +/* + * set numa proximity domain for smmuv3 device + */ +static void __init arm_smmu_v3_set_proximity(struct acpi_iort_node *node, + struct device *dev) +{ + struct acpi_iort_smmu_v3 *smmu; + + smmu = (struct acpi_iort_smmu_v3 *)node->node_data; + if (smmu->flags & ACPI_IORT_SMMU_V3_PXM_VALID) { + set_dev_node(dev, acpi_map_pxm_to_node(smmu->pxm)); + pr_info("SMMUV3[%llx] Mapped to Proximity domain %d\n", + smmu->base_address, + smmu->pxm); + } +} + static int __init arm_smmu_count_resources(struct acpi_iort_node *node) { struct acpi_iort_smmu *smmu; @@ -951,20 +968,24 @@ struct iort_iommu_config { int (*iommu_count_resources)(struct acpi_iort_node *node); void (*iommu_init_resources)(struct resource *res, struct acpi_iort_node *node); + void (*iommu_set_proximity)(struct acpi_iort_node *node, + struct device *dev); }; static const struct iort_iommu_config iort_arm_smmu_v3_cfg __initconst = { .name = "arm-smmu-v3", .iommu_is_coherent = arm_smmu_v3_is_coherent, .iommu_count_resources = arm_smmu_v3_count_resources, - .iommu_init_resources = arm_smmu_v3_init_resources + .iommu_init_resources = arm_smmu_v3_init_resources, + .iommu_set_proximity = arm_smmu_v3_set_proximity }; static const struct iort_iommu_config iort_arm_smmu_cfg __initconst = { .name = "arm-smmu", .iommu_is_coherent = arm_smmu_is_coherent, .iommu_count_resources = arm_smmu_count_resources, - .iommu_init_resources = arm_smmu_init_resources + .iommu_init_resources = arm_smmu_init_resources, + .iommu_set_proximity = NULL }; static __init @@ -1002,6 +1023,9 @@ static int __init iort_add_smmu_platform_device(struct acpi_iort_node *node) if (!pdev) return -ENOMEM; + if (ops->iommu_set_proximity) + ops->iommu_set_proximity(node, &pdev->dev); + count = ops->iommu_count_resources(node); r = kcalloc(count, sizeof(*r), GFP_KERNEL);